Estou tentando instalar um servidor FreeRADIUS em uma VM RHEL 6.9. Esta VM está operando no modo FIPS. Estou enfrentando o problema descrito em um relatório de bug da Red Hat encontrado aqui .
De acordo com esse relatório de bug de março de 2015, o protocolo RADIUS requer suporte MD5. FreeRADIUS (e RADIUS) não podem, portanto, ser suportados no modo FIPS.
Espero que nos 3 anos que se passaram desde o relatório do bug, tenha havido uma correção ou solução alternativa que eu possa implementar para contornar esse problema. Infelizmente, estou restrito a executar no modo FIPS de acordo com os requisitos DISA STIG. Alguém conhece uma maneira de fazer o FreeRADIUS funcionar em uma máquina que está operando no modo FIPS?
Parece que os pacotes FreeRADIUS usados estão sendo construídos com as funções MD5 internas habilitadas e, como tal, não dependem da implementação MD5 do OpenSSL. Isso significa que, neste caso, o FreeRADIUS funcionará com OpenSSL no modo FIPS.
Para o FreeRADIUS 4 (a próxima versão principal), implementei a verificação de tempo de execução para trocar funções internas se o OpenSSL estiver no modo FIPS e para usar as funções do OpenSSL se não estiver no modo FIPS.
Há duas razões pelas quais queremos usar as funções OpenSSL sobre as internas quando pudermos:
Como você postou nos comentários, alguns outros algoritmos usados pelo TLS podem estar indisponíveis. Deve ser possível contornar qualquer algoritmo desabilitado, definindo uma lista de cifras explícita na configuração do módulo EAP e na seção TLS RADSEC relevante (a análise de configuração TLS é um código comum).