websecure.ppt

26
APACHE 2 Secure HTTP With Apache Web Server By GOODLE CREW

Transcript of websecure.ppt

Page 1: websecure.ppt

APACHE 2Secure HTTP With Apache Web Server

By GOODLE CREW

Page 2: websecure.ppt

Web Server

Adalah suatu daemon yang berfungsi menerima request melalui protocol http baik dari local maupun dari internet

Informasi yang direquest oleh web browser bisa berupa file yang ada dalam storage atau meminta server untuk melakukan funsgi tertentu

Page 3: websecure.ppt

IIS (web server untuk html & asp ).Bisa jalan di OS Windows

APACHE webserver (web server untuk html,php,asp,jsp, dsb).Bisa jalan di OS Windows dan LINUX. Sifatnya modular dengan ditambahkan libapache2

Macam Web Server

Page 4: websecure.ppt

HTTPS adalah varian dari protocol HTTP dimana user mengakses dengan https://

Data yang dikirim ke server adalah data yang terenkripsi.

Enkripsi yang digunakan adalah enkripsi SSL (Secure socket Layer).

Menggunakan TCP port 443.

APACHE Web Server dengan HTTPS

Page 5: websecure.ppt

Ilustrasi Koneksi HTTP vs HTTPS

SSL Certificate

Normal HTTP (80)

Encrypted Connection

Secure HTTP (443)

User

UserX

Page 6: websecure.ppt

Install apache2 dan modul PHP4• # apt-get install apache2 php4 libapache2-mod-

php4

Buat Duplikat dari file:/etc/apache2/sites-available/default

• # cp /etc/apache2/sites-available/default

/etc/apache2/sites-available/website-ssl Buat link untuk mengaktifkan modul ssl

saat apache di load• # a2ensite

• Masukkan “website-ssl”

Mengkonfigurasi HTTPS

Page 7: websecure.ppt

Mengkonfigurasi HTTPS

Mengaktifkan modul php4• a2enmod

• dijawab dengan “php4”

mengaktifkan modul ssl• a2enmod

• dijawab dengan “ssl”

Page 8: websecure.ppt

Kemudian Edit • /etc/apache2/sites-enabled/website-ssl

NameVirtualHost *:443

<VirtualHost *:443>

SSLEngine On

SSLCertificateFile /etc/apache2/ssl/apache.pem

...

</VirtualHost>

Mengkonfigurasi HTTPS

Page 9: websecure.ppt

Generate Sertifikat anda sendiri dengan• # apache2-ssl-certificate

• kalo apache2-ssl-certificate tidak ada gunakan :• # mkdir /etc/apache2/ssl

• # openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem

• Kemudian anda akan diminta memasukkan kode negara(ID),State atau propinsi,Nama Kota,Company,Section Unit,Domain,alamat email

Membuat Sertikat SSL

Page 10: websecure.ppt

Menambahkan Port Listen Untuk SSL,untuk melakukanya edit file:• /etc/apache2/ports.conf

Tambahkan Baris :• Listen 443

Mengkonfigurasi HTTPS

Page 11: websecure.ppt

Restart APACHE2• /etc/init.d/apache2 restart

Mengkonfigurasi HTTPS

Page 12: websecure.ppt

Buka web browser Cobalah ketikkan https://localhost/

Mencoba Setting HTTPS

Page 13: websecure.ppt

Tampilan HTTPS

Page 14: websecure.ppt

Tampilan HTTP biasa

Page 15: websecure.ppt

mod-security

Page 16: websecure.ppt

Mengkonfigurasi mod-security

Mod-security ???• Bagaimana cara anda untuk membatasi SQL

injection, mendefinisikan hanya satu web browser saja yg boleh akses, jumlah data, dll... --> membatasi lewat aplikasi

• Apache2 menyediakan modul • libapache2-mod-security

Page 17: websecure.ppt

Mengkonfigurasi mod-security

Install :• # apt-get install libapache2-mod-security

Mengaktifkan module• a2enmod

• isi dengan “mod-security”

Page 18: websecure.ppt

Mengkonfigurasi mod-security

Copy contoh konfigurasi• # cd /etc/apache2/conf.d

• # cp /usr/share/doc/libapache2-mod-security/examples/httpd2.conf.example-full mod-security.conf

Restart apache• # /etc/init.d/apache2 restart

Page 19: websecure.ppt

Uji Coba mod-security

Jalankan aplikasi testingnya• # cd /usr/share/mod-security/test/

• # ./run-test.pl localhost *.test

Buka website dengan webbrowser “w3m” dan mozilla• # w3m http://localhost

• akan terjawab IIS ... lo bukannya tadi install apache2 ???

Page 20: websecure.ppt

Mod-chroot

Page 21: websecure.ppt

Chroot

chroot – change root directory• dir /var/www/

berubah seolah-olah menjadi dir “/”

apache2 jalan di chroot

Page 22: websecure.ppt

Mengkonfigurasi mod-chroot

Install module chroot• # apt-get install libapache2-mod-chroot

Aktifkan module chroot• # a2enmod

• isi dengan “mod_chroot”

Page 23: websecure.ppt

Mengkonfigurasi mod-chroot

Buat konfigurasi untuk mod-chroot, bisa di /etc/apache2/conf.d• # cd /etc/apache2/conf.d

• vim mod-chroot<IfModule mod_chroot.c>

LoadFile /lib/libgcc_s.so.1

</IfModule>

ChrootDir /var/www

Page 24: websecure.ppt

Mengkonfigurasikan mod-chroot

Buat dir untuk chroot• # mkdir -p /var/www/var/run

Jalankan apache2• # /etc/init.d/apache2 start

Rubah pidfile• # cd /var/run

• # ln -s /var/www/var/run/apache2.pid apache2.pid

Page 25: websecure.ppt

Mengkonfigurasi mod-chroot

buat file coba.php<? system(“ls /etc”);?>

Script php untuk melihat isi dir /etc Bandingkan hasilnya antara ada mod-

chroot dan tidak menggunakan mod-chroot

Page 26: websecure.ppt

Selamat mencoba,...