Apache SSL
Конфигуриране на Apache с поддръжка на https (TLS/SSL)
Опитна постановка
Attacker
Играе ролята на рутер, токча за достъп към Интернет. Linux Debian, с два активирани интерфейса. Първият е свързан в режим Bridge Adapter, а вторият във internal.
Настройки на Интерфейси:
- nano /etc/resolv.conf
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 10.3.45.2XX
netmask 255.255.255.0
gateway 10.3.0.1
allow-hotplug eth1
iface eth1 inet static
address 172.16.1.1
netmask 255.255.255.0
Активиране на NAT
iptables -A POSTROUTING -t nat -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward
Web сървър
- The primary network interface
allow-hotplug eth0 iface eth0 inet static address 172.16.1.2 netmask 255.255.255.0 gateway 172.16.1.1
Victim
windows XP
- IP: 10.3.45.1XX/16
- gateway: 10.3.0.1;
- DNS: 8.8.4.4
- през cmd се добавя път към вътрешна мрежа:
route add 172.16.1.0 MASK 255.255.255.0 10.3.45.2XX
Web сървър
Host машина
Добавяне на път от host машината към web сървъра
route add -net 172.16.1.0/24 gw 10.3.45.100
3. Инсталиране на софтуерни пакети openssl, apache2, ssh
:~$ apt-get update :~$ apt-get install apache2 openssl ssh
4. Проверка дали работи web сървърът.
От брaузър на хост машината се зарежда IP адреса на web сървъра.
5. Свързване от Хост компютъра към виртуалния Web сървър през ssh.
Отваря се терминал на хост машината и се изпълнява
:-$ ssh student@10.3.45.10X
6. Генериране на ...
Да се създаде директория ~/keys
:~$ mkdir ~/keyes :~$ cd ~/keys
Генериране на само-подписан сертификат и частен ключ
:~$ openssl req -new -x509 -days 365 -nodes -out apache.pem -keyout apache.key
Common Name (e.g. server FQDN or YOUR name) []: tugab.bg
Проверете генерираните файлове
7. Настройка на Apache2
Активиране на ssl модул
:~$ a2enmod ssl
Настройка на web директория Apache. Ще се модифицира примерната конфигурация
:~$ cd /etc/apache2 :~$ cp sites-available/default-ssl sites-enabled/ :~$ nano sites-enabled/default-ssl
Редактирайте пътищата към сертификата и частния ключа
SSLEngine on
# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /root/keys/apache.pem
SSLCertificateKeyFile /root/keys/apache.key
9. Рестатирайте apache и Тествайте връзката към https://10.3.45.10X
:~$ /etc/init.d/apache2 restart
https://wiki.debian.org/Self-Signed_Certificate
http://blog.donovan-jimenez.com/2011/03/adding-new-trusted-certificate-on.html
http://httpd.apache.org/docs/2.2/ssl/ssl_faq.html
http://www.thegeekstuff.com/2011/03/install-apache2-ssl/
http://onlamp.com/onlamp/2008/03/04/step-by-step-configuring-ssl-under-apache.html