Existe algum padrão ou convenção para onde os certificados SSL e as chaves privadas associadas devem ir no sistema de arquivos UNIX / Linux?
Obrigado.
Existe algum padrão ou convenção para onde os certificados SSL e as chaves privadas associadas devem ir no sistema de arquivos UNIX / Linux?
Obrigado.
Respostas:
Para uso em todo o sistema, o OpenSSL deve fornecer a você /etc/ssl/certs
e /etc/ssl/private
. O último dos quais será restrito 700
a root:root
.
Se um aplicativo não estiver executando um privsep inicial a partir de root
então, convém localizá-lo em algum lugar local do aplicativo com a propriedade e as permissões restritamente relevantes.
/etc/ssl/certs
É aqui que o Go procura certificados raiz públicos :
"/etc/ssl/certs/ca-certificates.crt", // Debian/Ubuntu/Gentoo etc.
"/etc/pki/tls/certs/ca-bundle.crt", // Fedora/RHEL 6
"/etc/ssl/ca-bundle.pem", // OpenSUSE
"/etc/pki/tls/cacert.pem", // OpenELEC
"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem", // CentOS/RHEL 7
Também :
"/etc/ssl/certs", // SLES10/SLES11, https://golang.org/issue/12139
"/system/etc/security/cacerts", // Android
"/usr/local/share/certs", // FreeBSD
"/etc/pki/tls/certs", // Fedora/RHEL
"/etc/openssl/certs", // NetBSD
Isso varia de distribuição para distribuição. Por exemplo, nas instâncias do Amazon Linux (baseadas no RHEL 5.xe partes do RHEL6, e compatíveis com o CentOS), os certificados são armazenados /etc/pki/tls/certs
e as chaves são armazenadas /etc/pki/tls/private
. Os certificados da CA têm seu próprio diretório /etc/pki/CA/certs
e /etc/pki/CA/private
. Para qualquer distribuição, especialmente em servidores hospedados, recomendo seguir a estrutura de diretório (e permissões) já disponível, se houver alguma disponível.
O Ubuntu usa /etc/ssl/certs
. Ele também possui o comando update-ca-certificates
que instalará os certificados /usr/local/share/ca-certificates
.
Portanto, recomenda-se instalar seus certificados personalizados /usr/local/share/ca-certificates
e em execução update-ca-certificates
.
http://manpages.ubuntu.com/manpages/latest/man8/update-ca-certificates.8.html
Se você estiver procurando por um certificado usado por sua instância do Tomcat
keystoreFile
atributo que contém o caminho para o arquivo keystore.Parece
<Connector
protocol="org.apache.coyote.http11.Http11Protocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="${user.home}/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS" />