Make proxy server (Squid) on Fedora
Pertama, kita konfigurasiin semua+routing buat clientnya(virtualbox) biar dapet internet.
1. Setting IP dulu di server
cek ifconfig, liat interface vboxnet0. Lalu ganti IPnya.
2. Aktifin IP Forward
echo "1" > /proc/sys/net/ipv4/ip_forward
3. Set. DNS
vi /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
4. flushing firewall default :
iptables -F
iptables -t nat -F
5. buat NAT
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
*interface buat yg ini pake interface yg ada internetnya*
Yang di client
1. Set. IPnya
*pastiin ipnya harus 1 segmen*
kan kayak tadi di server ipnya 192.168.1.34
yang di client jadi 192.168.1.35
Ifconfig <interface> IP
2. Masukkin gateway
*gatewaynya itu IP server*
Route add default gw <gatewaynya>
3. Set. DNS nya
nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
4. Coba ping ke IP server
pastiin udah bisa yaa :) coba juga ping ke google.com
Udah kan, static routingnya udah bisa. Abis itu lalu jalanin squidnya
1. buat file konfigurasi di server
Masuk ke vi /etc/squid/squid.conf.
Konfigurasinya gini
"
1. Setting IP dulu di server
cek ifconfig, liat interface vboxnet0. Lalu ganti IPnya.
2. Aktifin IP Forward
echo "1" > /proc/sys/net/ipv4/ip_forward
3. Set. DNS
vi /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
4. flushing firewall default :
iptables -F
iptables -t nat -F
5. buat NAT
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
*interface buat yg ini pake interface yg ada internetnya*
Yang di client
1. Set. IPnya
*pastiin ipnya harus 1 segmen*
kan kayak tadi di server ipnya 192.168.1.34
yang di client jadi 192.168.1.35
Ifconfig <interface> IP
2. Masukkin gateway
*gatewaynya itu IP server*
Route add default gw <gatewaynya>
3. Set. DNS nya
nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
4. Coba ping ke IP server
pastiin udah bisa yaa :) coba juga ping ke google.com
Udah kan, static routingnya udah bisa. Abis itu lalu jalanin squidnya
1. buat file konfigurasi di server
Masuk ke vi /etc/squid/squid.conf.
Konfigurasinya gini
"
#-------------------
# ACL Konfigurasi
#-------------------
# Jaringan lokal
acl LAN src 192.168.1.0/24
# Internet akses kontrol
# blok twitter dan facebook
acl blok_somed dstdomain .facebook.com twitter.com
# blok domain akses yang mengandung kata 17+ dan dewasa
# kata2 yang ingin di blok bisa di masukan kedalam sebuah file
# misal: acl blok_dewasa dstdom_regex "/etc/squid/dilarang.txt"
# contoh di bawah ini langsung memasukan kata di dalam konfigurasi squid
acl blok_dewasa dstdom_regex 17+ dewasa
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
#--------------------
# Perizinan Akses
#--------------------
http_access allow localhost manager
http_access deny manager
# Deny requests to certain unsafe ports
http_access deny !Safe_ports
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
# Mengijinkan jaringan LAN & Filter koneksi
http_access allow LAN !blok_somed !blok_dewasa
http_access allow localhost
# And finally deny all other access to this proxy
http_access deny all
# Squid normally listens to port 3128
http_port 8080 transparent
#-----------------
# Cache & Log
#-----------------
# menentukan lokasi direktori cache dan ukuran cache
# 100 -> Ukuran cache sebesar 100 MB
# 16 -> direktori sebanyak 16
# 256 -> masing2 16 direktori tersebut memiliki 256 direktori
cache_dir ufs /var/spool/squid 100 16 256
# menentukan lokasi cache log
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
cache_log /var/log/squid/cache.log
# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid
#--------------------
# Httpd-Accelerator
#--------------------
# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
#--------------------------
# Administrasi Parameter
#--------------------------
cache_mgr admin@smktjs.edu
cache_effective_user squid
cache_effective_group squid
#------------------------------
# Opsi untuk eksternal program
#------------------------------
dns_nameservers 8.8.8.8
*yg tulisan paling atas yg ACL LAN ganti ip yg satu segmen 192.168.1.0/24
2. Cek konfigurasi
Squid -k parse
*pastiin juga semuanya udah lancar, kl emg ada kesalahan cek di squid.conf nya*
3. Buat swap cache direktori squid
Squid -z
4. Jalanin squid
Squid
5. alihin koneksi http client spy pake proxy squid (Transparent):
iptables -t nat -A PREROUTING -i vboxnet0 -p tcp -m multiport –dports 80,3128 -j REDIRECT –to-port 8080
6. Periksa squid udah jalan apa belum
netstat -an | grep 8080
*kl misalkan LISTEN berarti server udah running*
7. cek apa ip forward udah aktif apa belum
cat /proc/sys/net/ipv4/ip_forward
kl nilainya 1 berarti udah aktif dan kalo belum nilai 0.
8. Cek table NAT
Proses NAT cuma ada di chain PREROUTING dan POSTROUTING
Setelah, itu kita uji dengan browser.
tadi di squid.conf kita udah tulis blok detik.com
Coba kita buka browser di client. Kl memang masih terbuka brrti squid blm jalan. Tapi apabila keluar tampilan seperti ini berarti sudah.. ;)
Comments
Post a Comment