Apache SSL

From Ilianko
Revision as of 11:41, 20 October 2015 by Anko (talk | contribs)

Конфигуриране на 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 сървър

  1. 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