Os certificados são úteis para o SSL intranet?

Fui encarregado de desenvolver uma interface intranet para software de linha de comando, e agora estou pesquisando opções de segurança. A nossa aplicação da linha de comando está terminada, mas ainda não comecei a escrever a interface web. Eu não sei exatamente quais são os requisitos de segurança para potenciais clientes, embora eu acredite que {[[0]} é geralmente aceitável para a interface da linha de comando. Com isso em mente, Estou pedindo ajuda para desenvolver um menu de escolhas com seus prós/contras associados. Algum dia, podemos considerar liberar nossa interface web para a internet, por isso estou disposto a considerar mais segurança do que atualmente necessário, se for fácil e/ou gratuito.

tenho lido muito, e a minha conclusão provisória é que segurança SSL sem certificado é a melhor abordagem, não porque menos segurança é inaceitável, mas porque SSL é o padrão e porque não parece ser difícil de configurar. Eu, um não-especialista em segurança, não precisaria explicar por que menos a segurança é aceitável para não especialistas em segurança. Eu poderia atualizar minha aplicação para usar um certificado no futuro, se necessário.

Aqui está uma lista de opções de segurança relacionadas com SSL, ordenadas pela minha percepção do nível de segurança com os meus comentários. De que nível de protecção preciso?

  1. Sem SSL.Isto pode ser aceitável se os nossos clientes não estiverem preocupados com os seus empregados verem/alterarem os dados uns dos outros. Seus funcionários podem querer compartilhar resultados com cada um de qualquer forma, e eu poderia usar o controle de acesso baseado em IP e/ou senhas para segurança.

  2. Faça o SSL sem certificado.Isto encripta A comunicação, que pelo menos protege os dados de serem lidos por empregados não autorizados. Usando uma senha, este é o mesmo nível de segurança que ssh na linha de comandos, certo? Não preciso de me preocupar com ataques do homem-no-meio numa intranet, certo? Um golpe para esta abordagem seria se houvesse um monte de aviso de navegador mensagem.

  3. Faça o SSL com um certificado assinado por si próprio.O que é que isto me dá que nenhum certificado me dá? Se o DNS pode ser alterado de forma inadequada, então o cliente, em seguida, a minha aplicação é a menor de suas preocupações. Dito de outra forma, se o DNS pode mudar, então eu acho que ssh seria vulnerável também.

  4. Faça o SSL com uma autoridade local de Certificação.O OpenSSL permite-me fazer a minha própria Autoridade de Certificação. O que é que isto me dá um certificado assinado por si não? Presumo que numa LAN, seja menos importante que o servidor seja verificado.

  5. Faça SSL com uma autoridade externa de Certificação.Há alguma razão para ir por este caminho para uma intranet? Eu encontrei alguns "certificados intranet" para venda on-line -- mas não é claro o que eles estão oferecendo eu não posso fazer sozinho.

para referência, esta página pode ser útil para comparar Certificados:

Http://httpd.apache.org/docs/trunk/ssl/ssl_faq.html#aboutcerts

[actualização]

Aqui está um artigo que discute os riscos e regras de obtenção de um certificado interno de uma AC pública.

Author: amos, 2014-01-03

2 answers

Sim, os certificados ainda são úteis para a Intranet SSL.

Existe uma diferença importante entre o SSH e o SSL-sem-um-certificado: quando se liga pela primeira vez a um servidor com o SSH, o SSH guarda a impressão digital do servidor. Se você, em seguida, tentar se conectar ao que o cliente SSH acredita ser a mesma máquina, mas recebe de volta uma impressão digital diferente, ele alerta que pode haver alguém interceptando suas comunicações.

SSL-without-a-certificate, por outro lado, faz não guardar a impressão digital do servidor. Suas comunicações ainda serão criptografadas, mas se alguém de alguma forma seqüestra o servidor de DNS como você mencionou, ou, como Rushyo notas, faz envenenamento ARP ou algo semelhante, que seria capaz de executar um homem-no-meio-ataque. SSH, como mencionado anteriormente, iria (supondo que você tinha conectado ao servidor correto algum tempo no passado) notar que a impressão digital tinha mudado e alertá-lo.

Um certificado assinado por si próprio seria comparável em segurança para o SSH. Um homem no meio poderia gerar o seu próprio certificado autossignado, mas desde que as suas aplicações estejam configuradas para aceitar apenas que o certificado autossignado, deverá obter um alerta semelhante ao que o SSH lhe dará.

Uma autoridade local de certificação dá-lhe segurança semelhante aos certificados autossignados, mas pode ser mais escalável. Se você tiver vários servidores, cada um pode ter seu próprio certificado, mas um cliente só precisa do nível superior para confia em todos eles. Se um servidor estiver comprometido, poderá revogar o seu certificado em vez de ter de alterar o certificado de cada servidor.

Não acredito que uma autoridade externa de certificação tenha quaisquer vantagens, além de possivelmente menos configuração se as suas máquinas já têm a Autoridade de certificação confiável.

Finalmente, não sei o suficiente sobre autenticação de dois fatores para avaliá-lo, mas para a maioria das aplicações, SSL deve ser suficiente.

aviso: Eu não sou um perito em segurança.

 17
Author: icktoofay, 2015-05-04 05:35:52
  1. Fazer SSL com uma autoridade externa de Certificação. Há alguma razão para ir por este caminho para uma intranet? Eu encontrei alguns "certificados intranet" para venda on-line -- mas não é claro o que eles estão oferecendo eu não posso fazer sozinho.

O benefício é que você não precisa aprender como configurar a sua própria Autoridade de certificado se você precisa gerenciar um número decente de certificados e/ou máquinas. Tal certificado já seria confiado por todos os navegadores sem você precisa instalar seus próprios certificados na loja de confiança.

No entanto , isto é na verdade menos seguro porque alguém poderia comprar um certificado para uma intranet diferente e usá-lo em sua rede. Por esta razão, os vendedores SSL já não oferecem este serviço. Para mais informações, consulte: https://www.godaddy.com/help/phasing-out-intranet-names-and-ip-addresses-in-ssls-6935

Se você só tem uma intranet muito pequena, então eu recomendaria usar um auto-assinado certificado, e em seguida, apenas adicionar cada auto-assinado certificado para a loja de confiança de cada computador.

No entanto, torna-se rapidamente impraticável instalar um novo certificado em cada computador na sua intranet sempre que quiser adicionar um novo computador. Neste ponto, você quer configurar sua própria Autoridade de certificado para que você só precisa instalar um único certificado de AC na loja de confiança de cada computador.

 4
Author: geofflee, 2016-04-14 22:31:11