Senin, 15 April 2013
Modul 2 - Optimasi Apache
Konfigurasi optimasi Apache dengan asumsi guaranted RAM sebesar 8 MB.
Cara konfigurasinya :
1. Ketik free -m maka keluar seperti gambar dibawah ini :
2.Catat nilai yang dicatat sama used
3. Berapa tuh nilai apache yang ada di kamu. Kalau saya ada 8 mb
4. Kalikan sama 0.8 buat rata-rata AVAILABLE APACHE POOL
5. Bagi AVAILABLE APACHE POOL sama nilai RES tertinggi
6. Open httpd.conf . Kalau di saya sih: nano /etc/apache2/apache2.conf
7. Set MaxClients yang udah tadi dihitung
8. Set KeepAlive jadi Off. Sebenarnya mau OFF apa ON bisa aja sih. Eh ada beda sih, kalau OFF ntar server akan menangani banyak request per detik. Tapi pasti bakal butuh banyak memori tuh. Jadi amannya di OFF in aja dah
9. Set Timeout jadi nilai normal.
10. Set MaxKeepAliveRequest antara 70-200.
11. Set MinSpareServers 10-20% MaxClient
12. Set MaxSpareServers 10-20% MaxClient
13. Set StartServers sama dengan MaxSpareServers dan MinSpareServers
14. Set MaxRequestsPerChild antara 500-10000.
15. Save konfigurasinya. Jangan lupa aktifkan apachenya lagi. Caranya: service apache2 start
Modul 2 - Proxy Server
Cara
Install Squid Proxy :
- Pertama-tama
install terlebih dahulu squid melalui terminal atau
melalui command prompt dengan cara :
# apt-get install squid - Setelah
selesai maka Squid langsung dapat di konfigurasikan dengan cara :
# nano /etc/squid/squid.conf - Tetapi
sebelum di edit terlebih dahulu backup dulu file aslinya agar kalau rusak
bisa dikembalikan ke default :
# nano /etc/squid/squid.conf /etc/squid/squid.conf.bak - Baru
kemudian kita mulai bermain-main dengan konfigurasi script Squid :
# nano /etc/squid/squid.conf
Cara setting
konfigurasi Squid Proxy :
Biasanya untuk mengatur kecepatan internet kita lakukan
Filtering:
- Filtering : Ini merupakan bagian terpenting dari Squid, dengan ini kita bisa mngatur rule-rule, dari mulai siapa saja yang bisa mengakses internet sampai website apa yang diizinkan untuk di akses.Access List : Siapa saja yang dapat mengakses Internet
- contoh perintah : acl host1 src 172.16.0.1
- acl : merupakan perintah access list
- user : nama user yang memiliki IP atau group
- src : merupakan source ip yang digunakan, bisa menggunakan range jika ingin membuat group
2. Filtering Waktu : Memberikan izin akses berdasarkan waktu dan hari
- perintah : acl waktu-akses time MTWHFA 00:00-14:00
- acl : perintah access list
- waktu-akses : caption untuk perintah acl
- time : perintah squid utk mendefinisikan waktu
- MTWHFA : merupakan perintah squid untuk mendefinisikan waktu
- M : Monday, T : Tuesday, etc…..
- 00:00-14:00 : Merupakan waktu yang diperbolehkan untuk memberikan akses internet ke penggunaFiltering Website : Memfilter website apa saja yang tidak boleh diakses oleh pengguna.
- misal kita melarang untuk mendownload file .pdf .mp3 dan .doc
- acl file url_regex -i \.pdf$ \.doc$ \.mp3$
3.Untuk
membatasi kecepatan kita menggunakan delay pool
contoh:
delay_pool3
delay_class 1 1
delay_access 1 allow host1 waktu !weekend
delay_parameters 1 10000/10000
4.Untuk membuat user lain dapat menggunakan proxy maka proxy
harus di export terlebih dahulu dengan cara:
export http_proxy=ip_proxy:port_proxy
Modul 2 - Web Server :User Directory Configuration
Cara Melakukan userdir.conf (User Directory Configuration)
1. sudo a2enmod userdir
Setelah itu kita konfigurasi
Apachenya.
2. sudo nano
/etc/apache2/mods-enabled/userdir.conf
3. Ganti dengan source code ini:
listen 8080
<VirtualHost *:80>
<VirtualHost *:80>
DocumentRoot /var/www/
Alias /admin /home/admin/
AliasMatch /coba /var/www/coba/coba.html
<Directory/>
Options -Indexes FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options -Indexes FollowSymLinks MultiViews
AllowOerride None
Order allow,deny
Allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible value include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog $${APACHE_LOGDIR}/access.log combined
</VirtualHost>
<VirtualHost *8080>
DocumentRoot /var/www2/
Alias /admin /home/admin
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www2>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
Require valid-user
</Directory>
</VirtualHost>
AliasMatch /coba /var/www/coba/coba.html
<Directory/>
Options -Indexes FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options -Indexes FollowSymLinks MultiViews
AllowOerride None
Order allow,deny
Allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible value include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog $${APACHE_LOGDIR}/access.log combined
</VirtualHost>
<VirtualHost *8080>
DocumentRoot /var/www2/
Alias /admin /home/admin
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www2>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
Require valid-user
</Directory>
</VirtualHost>
Seperti pada Gambar dibawah ini :
4. Restart Apache Anda service
apache2 restart mkdir /home/$USER/public_html disini saya mkdir
/home/admin/public_html
5. Kemudian, buat file index.html
nano index.html lalu isi text html
disana:
6. test dengan cara: lynx
localhost:80/public_html
Modul 2 - Web Server : SSL
Cara Membuat self-signed-certificate SSL Apache
1. Aktifkan Modul SSL
sudo a2enmod ssl
2. Restart Apache
sudo service apache2 restart
3. Buat directory baru
sudo mkdir /etc/apache2/ssl
4. Buat self-signed-certificate SSL
sudo openssl req -x509 -nodes -days 365
-newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key
-out /etc/apache2/ssl/apache.crt
5. Pada sesi ini isikan yang berlabel merah sesuai keinginan kita
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]:US State or Province Name (full name) [Some-State]:New York Locality Name (eg, city) []:NYC Organization Name (eg, company) [Internet Widgits Pty Ltd]:Awesome Inc Organizational Unit Name (eg, section) []:Dept of Merriment Common Name (e.g. server FQDN or YOUR name) []:example.com Email Address []:webmaster@awesomeinc.com
6. Buka konfigurasi SSL
sudo nano /etc/apache2/sites-available/default
7. Konfigurasi apache
nano
/etc/apache2/sites-available/default
8.Kemudian isi code berikut di baris terbawah :
SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile
/etc/ssl/private/server.key
Modul 2 - Web Server : Membuat Routing Sederhana
Topologi jaringan adalah hal yang menjelaskan hubungan geometris antara unsur-unsur dasar penyusun jaringan, yaitu node, link, dan station. Berikut contoh topologi jaringan.
Keterangan:
eth0 : eth0 yang diatas adalah tuntap.
eth1: daemon ke topologi
Buka terminal di Ubuntu Anda, lalu ketik :
ssh -X –l e10 10.151.36.205
Setelah itu Anda akan dimintai password. Isi password
tersebut.
Lalu buatlah file script. Caranya:
nano start.sh
Kemudian isi di dalamnya
uml_switch -unix switche22 >
/dev/null < /dev/null &
xterm -T router -e linux ubd0=satu,uml umid=satu
eth0=tuntap,,,10.151.70.40 eth1=daemon,,,switche22 mem=50M &
xterm -T host1 -e linux ubd0=dua,uml umid=dua eth0=daemon,,,switche22 mem=50M &
xterm -T host2 -e linux ubd0=tiga,uml umid=tiga eth0=daemon,,,switche22 mem=50M &
xterm -T host3 -e linux ubd0=empat,uml umid=empat eth0=daemon,,,switche22 mem=50M &
satu = router
dua = web server
tiga = proxy server
empat = host
xterm -T host1 -e linux ubd0=dua,uml umid=dua eth0=daemon,,,switche22 mem=50M &
xterm -T host2 -e linux ubd0=tiga,uml umid=tiga eth0=daemon,,,switche22 mem=50M &
xterm -T host3 -e linux ubd0=empat,uml umid=empat eth0=daemon,,,switche22 mem=50M &
satu = router
dua = web server
tiga = proxy server
empat = host
Penjelasan:
systax awal: uml_switch -unix switche22 >
/dev/null < /dev/null &
xterm -T satu -e linux
ubd0=satu,uml umid=satu eth0=tuntap,,,10.151.70.40$ : uml umid : satu berarti kita menamai komputer
virtual kita dengan nama satu sebagai router. tuntap 10.151.70.40 adalah
tuntap saya. Sedangkan mem=50M adalah pengalokasian memori RAM
kita sebesar 50Mb. dan & adalah membuatnya sebagai daemon.
Karena disini tadi saya memberi nama fil dengan nama start.sh, maka
saya cukup ketik bash start.sh
Nah, file tersebut digunakan untuk menjalankan UML.
Masalahnya bagaimana cara mematikannya? Caranya adalah membuat script untuk
mematikannya. Berikut scriptnya:
nano stop.sh
lalu isi code di dalamnya:
uml_mconsole satu halt &
uml_mconsole dua halt &
uml_mconsole tiga halt &
uml_mconsole empat halt &
uml_mconsole dua halt &
uml_mconsole tiga halt &
uml_mconsole empat halt &
Penjelasan:
uml_mconsole [nama uml kita] halt &[& artinya
daemon]
Lalu run file yang telah Anda buat tadi. Caranya, bash
[nama_file_anda]
Sekarang konfigurasi 4 host tersebut.
- komputer satu bertindak sebagai router
- komputer dua bertindak sebagai web server
- komputer tiga bertindak sebagai proxy server
- komputer empat bertindak sebagai client
Sekarang, kita masuk ke komputer virtual satu.
Pertama kali, login dan masukan password Anda.
1. Install update. Caranya: apt-get update
2. Edit file rc.local. Caranya: nano /etc/rc.local
Tambahkan di baris sebelum exit 0 dengan:
iptables -A
FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
3. Edit nano /etc/sysctl.conf
uncoment #net.ipv4.ip_forward=1. Hilangkan tanda #
4. setting interface: nano /etc/network/interfaces.
Berikut code-nya:
auto lo
iface lo inet loopback
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.151.70.42 (tuntap Anda +1)
netmask 255.255.255.0 (default)
gateway 10.151.70.41 (tuntap Anda)
iface eth0 inet static
address 10.151.70.42 (tuntap Anda +1)
netmask 255.255.255.0 (default)
gateway 10.151.70.41 (tuntap Anda)
auto eth1
iface eth1 inet static
address 151.151.1.1 (digit terakhir terserah Anda)
netmask 255.255.255.0 (default)
iface eth1 inet static
address 151.151.1.1 (digit terakhir terserah Anda)
netmask 255.255.255.0 (default)
4. reboot
5. coba cek dengan cara ping its.ac.id (karena menggunakan
jaringan ITS)
Sekarang, kita masuk ke komputer virtual dua . Disini
dia bertindak sebagai web servernya. Hampir mirip dengan yang pertama, tapi
disini kita perlu install phpmyadmin, apache2 dan lynx. Tetapi sebelum itu kita setting network interfaces nya terlebih dahulu:
Setelah itu berikut step-stepnya:
Setelah itu berikut step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. apt-get install phpmyadmin
3. apt-get install apache2
4. apt-get install lynx
5. reboot
6. ping its.ac.id
Sekarang, kita masuk ke komputer virtual tiga. Hampir mirip dengan yang pertama, tapi disini kita perlu install phpmyadmin, apache2 dan lynx. Sama seperti virtual dua, kita setting network interfaces nya terlebih dahulu :
Setelah itu berikut step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. apt-get install squid3
3. reboot
4. ping its.ac.id
Sekarang, kita masuk ke komputer virtual empat. Hampir
mirip dengan yang virtual dua dan tiga, tapi disini kita perlu install lynx.
Sebelum itu seperti biasa kita setting network interfacesnya terlebih dahulu :
Setelah itu berikut step-stepnya:
Setelah itu berikut step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. apt-get install lynx (lynx itu
bertindak sebagai browser Anda)
3. reboot
4. ping its.ac.id
Langganan:
Postingan (Atom)