Linux – Apache Część 2: Włącz SSL

Istnieje wiele powodów dla, których chcielibyśmy uruchomiś ssl dla naszego http i uzyskać https.

Wpis ten dotyczy konfiguracji SSL dla już działającego serwera www. Jeżeli jeszcze nie uruchomiłeś swojego Apacha, skorzystaj z tego wpisu: Instalacja i konfiguracja Apache 2

Zaczynajmny:

#zainstalujmy aplikację, która pomoże wygenerować nam certyfikaty dla każdego vhosta
apt-get install ssl-cert
#jeżeli zostaniemy zapytani o hostname, wpiszmy tam adres domeny, dla której generujemy certyfikaty
make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/ssl/private/www.example.com
cp /etc/ssl/private/www.example.com /etc/ssl/certs/www.example.com.pem
mv /etc/ssl/private/www.example.com /etc/ssl/private/www.example.com.key
#edytujmy oba pliku, w private musi znajdować się część dotycząca klucza
#w pliku w katalogu certs tylko klucz publiczny
vim /etc/ssl/private/www.example.com.key
vim /etc/ssl/certs/www.example.com.pem
#zabezpieczmy klucz prywatny na serwerze
chmod 600 /etc/ssl/private/www.example.com.key

#teraz uruchamiamy moduł ssl
a2enmod ssl
cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/example.com-ssl.conf
vim /etc/apache2/sites-available/example.com-ssl.conf

#początek pliku example.com-ssl.conf
<IfModule mod_ssl.c>
        <VirtualHost adres.ip:443>
                ServerAdmin webmaster@example.com
                ServerName example.com:443
                DocumentRoot /var/www/example.com/public_html
                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined
                SSLEngine on
                SSLCertificateFile      /etc/ssl/certs/example.pem
                SSLCertificateKeyFile /etc/ssl/private/example.key
                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                </FilesMatch>
                <Directory /usr/lib/cgi-bin>
                                SSLOptions +StdEnvVars
                </Directory>

                BrowserMatch "MSIE [2-6]" \
                                nokeepalive ssl-unclean-shutdown \
                                downgrade-1.0 force-response-1.0
                # MSIE 7 and newer should be able to use keepalive
                BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown

        </VirtualHost>
</IfModule>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
#koniec pliku example.com-ssl.conf
a2ensite example.com-ssl.conf
service apache2 restart

Oczywiście zawsze możesz wrócić do kroków poprzednich:

Linux – Apache Część 1: Instalacja i konfiguracja

Możesz pominać ten krok i przejść naprzód:

Linux – Apache Część 3: PHP

Linux – Apache Część 4: Bazadanych MySQL i MariaDB

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*