Linux / PHP / Java / Designer

As melhores dicas estão aqui.

CentOS 5.x – Instalando SSL no Apache

| 3 Comentários

Esse post é sobre como gerar os certificados SSL no CentOS utilizando o OpenSSL e ativá-los no Apache para permitir conexões criptogradas ao seu servidor Web, para isso precisamos inicialmente instalar os pacotes necessários (caso ainda não estejam instalados):

# yum install mod_ssl openssl

Agora iremos gerar a chave privada:

# openssl genrsa -out ca.key 1024

Gere o arquivo CSR:

# openssl req -new -key ca.key -out ca.csr

  1. You are about to be asked to enter information that will be incorporated<br />
  2. into your certificate request.<br />
  3. What you are about to enter is what is called a Distinguished Name or a DN.<br />
  4. There are quite a few fields but you can leave some blank<br />
  5. For some fields there will be a default value,<br />
  6. If you enter '.', the field will be left blank.<br />
  7. -----<br />
  8. Country Name (2 letter code) [GB]:BR<br />
  9. State or Province Name (full name) [Berkshire]:Alagoas<br />
  10. Locality Name (eg, city) [Newbury]:Maceio<br />
  11. Organization Name (eg, company) [My Company Ltd]:Exemplo<br />
  12. Organizational Unit Name (eg, section) []:<br />
  13. Common Name (eg, your name or your servers hostname) []:www.exemplo.com<br />
  14. Email Address []:admin@exemplo.com

Please enter the following extra attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

OBS.: Common Name deverá ser a URL do serviço, nesse exemplo www.exemplo.com.

Assine o arquivo CSR utilizando a chave privada para gerar o certificado:

# openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt

Mova os arquivos para a localização correta:

# mv ca.crt /etc/pki/tls/certs
# mv ca.key /etc/pki/tls/private/ca.key
# mv ca.csr /etc/pki/tls/private/ca.csr

Caso não utilize Virtual Host no seu servidor Apache, basta alterar as linhas abaixo no arquivo de configuração do SSL:

# vim /etc/httpd/conf.d/ssl.conf

  1. SSLCertificateFile /etc/pki/tls/certs/ca.crt<br />
  2. SSLCertificateKeyFile /etc/pki/tls/private/ca.key

E reinicie o serviço:

# /etc/init.d/httpd restart

Caso utilize Virtual Host será necessário alterar o arquivo de configuração do Virtual Host ao invés do arquivo de configuração do SSL, abra o arquivo e adicione no início do arquivo:

# vim /etc/httpd/conf.d/meu_vhost.conf

  1. NameVirtualHost *:443

E após a configuração do <VirtualHost *:80> adicione a entrada referente ao SSL:

# vim /etc/httpd/conf.d/meu_vhost.conf

  1. <br />
  2. SSLEngine on<br />
  3. SSLCertificateFile /etc/pki/tls/certs/ca.crt<br />
  4. SSLCertificateKeyFile /etc/pki/tls/private/ca.key

AllowOverride All

DocumentRoot /var/www/vhosts/exemplo.com/htdocs
ServerName www.exemplo.com

Feito isso reinicie o serviço:

# /etc/init.d/httpd restart

Pronto! Basta acessar seu servidor ou Virtual Host pelo seu navegador/browser preferido utilizando https para verificar o certificado criado!

Configurando o Firewall para aceitar SSL

iptables -A INPUT -p tcp --dport 443 -j ACCEPT
/sbin/service iptables save
iptables -L -v

Fonte: http://wiki.centos.org/HowTos/Https

3 Comments

  1. agora comprei um certificado como faço pra usar ele ?

  2. Cada empresa de host tem suas configurações entre em contato com eles que lhe darão o suporte. Dependendo da empresa você vai precisar comprar um ip dedicado também para seu domínio.

  3. Se estiver usando um servidor próprio é só usar os passos mas sem criar o certificado.

Deixe uma resposta

Campos requeridos estão marcados *.