Apache Webszerver, PHP és SSL támogatással
Telepítsük az Apache-ot:
#apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert
Majd a PHP5-öt és bővítményeit is:
#apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
Töltsük be az SSL modult az Apache webszerverünkbe:
#a2enmod ssl
Töltsük újra az Apache beállításokat:
#/etc/init.d/apache2 force-reload
Keltsük életre az SSL-t:
#apt-get install openssl
Generáljunk egy önmagunk által aláírt tanúsítványt:
#mkdir /etc/apache2/ssl
#openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem \
-keyout /etc/apache2/ssl/apache.key
Válaszolunk néhány kérdésre (nem függ semmi a válaszoktól):
Generating a 1024 bit RSA private key
...................................++++++
..............................++++++
writing new private key to '/etc/apache2/ssl/apache.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:HU
State or Province Name (full name) [Some-State]:Pest
Locality Name (eg, city) []:Budapest
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Linux fans Ltd
Organizational Unit Name (eg, section) []:Home Server
Common Name (eg, YOUR name) []:Admin József
Email Address []:mail@cimem.hu
Az apache2 ports.conf fájlban engedélyezzük a szerverünk hostjára az SSL-t (443-as portot):
#nano /etc/apache2/ports.conf
A következő sor hozzáadásával:
NameVirtualHost szerverem.homelinux.org:443
Létrehozzuk a szükséges VirtualHost bejegyzést, ami életre kelti az SSL-t:
#nano /etc/apache2/sites-enabled/000-default
Hozzáadjuk a következőt:
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
ServerAdmin email@cimem.hu
ServerName szerverem.homelinux.org
DocumentRoot /var/www/ssl/
ErrorLog /var/www/ssl/logs/error.log
CustomLog /var/www/ssl/logs/access.log combined
</VirtualHost>
(A fenti beállítás feltételezi, hogy a /var/www/ssl könyvtár létezik. Ebbe helyezzük el az oldalunk azon részét, amit titkosított csatornán akarunk közölni. Ezután a https://szerverem.homelinux.org címre kattintva már működnie is kell a dolognak. A böngészők panaszkodhatnak a saját magunk által aláírt tanúsítvány miatt, de ez minket ne zavarjon. Természetesen a http://szerverem.homelinux.org is él, de csak abban az esetben, ha az alap 80-as portra is állítottunk be VirtualHostot. Nálam vendégek részére egy korlátozott oldal jelenik meg, a https lekérésére viszont hitelesítés után hozzáférek egy általam készített webes felületen az összes programhoz és szolgáltatáshoz.)
Indítsuk újra az Apache-ot:
#/etc/init.d/apache2 restart
Teszteljük le az eddigieket, próbáljuk lekérni az oldalunk, immár https-el. Ha mindent jól csináltunk és található is index fájl a /var/www/ssl alatt, akkor működni fog.
A cikk még nem ért véget, kérlek, lapozz!