Sunday, March 31, 2019

Monitoring Squid mengunakan SARG

Tak perlu panjang lebar langsung ajah kita buka teminal dan masuk sebagai root dengan user yang bisa di akses heheheh,,,,
lanjut koneksikan perangkat anda dengan internet yang jelas penginstallan SARG perlu koneksi internet setelah semua terkoneki balik lagi ke terminal
yee langsung ketikan perintah

#apt-get install sarg

klu ada kendala mungkin perlu pake perintah

#apt-get update

klu sudah selesai update lanjut ketikan perintah pertama

setelah semua perintah selesai lanjut konfigurasi pada bagian sarg.conf

bila anda bingung kemana file sarg.conf
ketikan saja perintah

#whereis sarg.conf

sudah ketmuu yeee..lanjut kita rubah di sarg.conf

lanjut ketikan perintah di teminal

# nano /etc/sarg/sarg.conf

 edit isi file yang ada pada sarg.conf isikan sebagai berikut di bawah ini

#sarg.conf
language English
access_log /var/log/squid/access.log
graphs yes
graph_days_bytes_bar_color orange
title "My Squid User Access Reports"
font_face Tahoma,Verdana,Arial
header_color darkblue
header_bgcolor blanchedalmond
font_size 9px
background_color white
text_color #000000
text_bgcolor lavender
title_color green
temporary_dir /tmp
output_dir /var/www/sarg
resolve_ip
user_ip yes
topuser_sort_field BYTES reverse
user_sort_field BYTES reverse
date_format u
lastlog 0
remove_temp_files yes
index yes
index_tree file
overwrite_report yes
records_without_userid ip
use_comma yes
mail_utility mailx
topsites_num 50
topsites_sort_order CONNECT D
index_sort_order D
max_elapsed 28800000
site_user_time_date downloads
long_url no
date_time_by bytes
charset Latin1
show_successful_message yes
show_read_statistics yes
topuser_fields NUM DATE_TIME USERID CONNECT BYTES %BYTES IN-CACHE-OUT USED_TIME MILISEC %TIME TOTAL AVERAGE
user_report_fields CONNECT BYTES %BYTES IN-CACHE-OUT USED_TIME MILISEC %TIME TOTAL AVERAGE
topuser_num 0
site_user_time_date_type table
download_suffix "zip,arj,bzip,gz,ace,doc,iso,adt,bin,cab,com,dot,drv$,lha,lzh,mdb,mso,ppt,rtf,src,shs,sys,exe,dll,mp3,avi,mpg,mpeg"

setelah semua di disesuaikan seperti diatas simpan dan jalankan dengan perintah
 buat folder
ketikan perintah

# mkdir /var/www/sarg

#sarg

perintah untuk generate

#
/usr/bin/sarg -l /var/log/squid/access.log





Tampilan awal pada sarg

Tampilan grafis
Tampilan Top Site



Tampilan site user IP

untuk monitor setiap hari

#nano /etc/crontab

masukan perintah di bawah ini

@/usr/sbin/sarg-reports daily



Friday, February 22, 2019

Cara konfigurasi Proxy external single port



saya ambil atau copy paste dari grup facebook ipfire indonesia,yaitu pak fajar.

biar gak hilang atau tertimbun oleh panjangnya post di facebook.




Khusus untuk webproxy bawaan IPFire (squid 3.x) atau addon squid-2.7STABLE9.




Non-aktifkan transparent di web interface -> Save & Restart




Edit file atau tambahkan file /etc/squid/squid.conf.pre.local, tambahkan baris berikut :

http_port 3129 transparent tproxy

[root@IPFire ~]# modprobe xt_TPROXY

[root@IPFire ~]# modprobe xt_socket

[root@IPFire ~]# modprobe nf_tproxy_core

[root@IPFire ~]# modprobe xt_mark

[root@IPFire ~]# modprobe nf_nat

[root@IPFire ~]# modprobe nf_conntrack_ipv4

[root@IPFire ~]# modprobe nf_conntrack

[root@IPFire ~]# modprobe nf_defrag_ipv4

[root@IPFire ~]# modprobe ipt_REDIRECT




Sesuaikan IP Address pada interface green. Sebagai contoh, saya pake 172.16.5.1




[root@IPFire ~]# iptables -t mangle -N DIVERT

[root@IPFire ~]# iptables -t mangle -A DIVERT -j MARK --set-mark 1

[root@IPFire ~]# iptables -t mangle -A DIVERT -j ACCEPT

[root@IPFire ~]# iptables -t mangle -A INPUT -j ACCEPT

[root@IPFire ~]# iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT

[root@IPFire ~]# iptables -t mangle -A PREROUTING -d 172.16.5.1/32 -p tcp --dport 80 -j ACCEPT
[root@IPFire ~]# iptables -t mangle -A PREROUTING -d 172.16.5.1/32 -p tcp --dport 3128 -j ACCEPT
[root@IPFire ~]# iptables -t mangle -A PREROUTING ! -d 172.16.5.1/32 -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129




[root@IPFire ~]# ip rule add fwmark 1 lookup 100
[root@IPFire ~]# ip route add local 0.0.0.0/0 dev lo table 100
[root@IPFire ~]# sysctl net.ipv4.ip_nonlocal_bind=1
[root@IPFire ~]# sysctl net.ipv4.ip_forward=1


Setting Mikrotik :
/ip firewall mangle
add action=mark-routing chain=prerouting disabled=no dst-port=80 \
in-interface=ether1-client new-routing-mark=proxy passthrough=no protocol=tcp
add action=mark-connection chain=prerouting disabled=no dst-port=80 \
in-interface=ether5-PROXY new-connection-mark=tproxy passhrough=yes protocol=\
tcp src-address=!172.16.5.1
add action=mark-routing chain=prerouting connection-mark=tproxy disabled=no \
in-interface=!ether5-proxy new-routing-mark=proxy passthrough=no


Monday, February 18, 2019

Cara memonitor kinerja Proxy external squid







Squid merupakan software Proxy yang sangat terkenal dikalangan Network Administrator. Berhubung begitu pentingnya squid ini, kita perlu untuk selalu memonitor kinerja sang squid agar kita mengetahui seberapa efisienkah konfigurasi yang kita punya.
Untuk melakukan monitoring Squid Proxy, ada beberapa tools yang cukup terkenal diantaranya SARG, Cacti, maupun Mysar. Namun pada postingan ini saya ingin memberikan alternatif tools lain bernama Squid Analyzer. Apa itu Squid Analyzer? Squid Analyzer merupakan salah satu tools penganalisa log milik Squid yang dapat menyajikan statistik lengkap meliputi waktu, hit, byte, pengguna, jaringan, hingga top url dan top domain yang paling sering diakses. Keunggulan yang ditawarkan dari Squid Analyzer diantaranya adalah tidak perlu adanya database apapun untuk dapat menjalankannya, dan juga tampilan Squid Analyzer ini termasuk yang cukup user friendly dibandingkan SARG ataupun Mysar.
Yuk, mending kita langsung coba saja ya.
Yang perlu disiapkan
1. Squid sudah terinstall dan jalan dengan baik. Boleh menggunakan Squid3, Squid 2.7, maupun Lusca. Saya tidak akan membahas tentang cara instalasi Squidnya ya, kalian tinggal cari saja di Google tentang cara instalasi Squidnya.
2. Install Webserver dan Perl :
$ sudo apt-get install apache2 php5 perl
Pastikan tidak ada pesan error yang muncul. Atau lihat artikel instalasi Webserver yang sudah pernah saya tulis disini.
3. Install SSH :
$ sudo apt-get install ssh
SSH disini digunakan untuk mengirim file dari client ke server menggunakan metode SCP.
Instalasi
1. Download paket SquidAnalyzer disini.
2. Kirimkan file squidanalyzer-5.3.tar.gz yang sudah kalian download dari komputer klien ke komputer server dengan menggunakan metode SCP.
Disini letak file squidanalyzer saya ada di direktori Downloads pada komputer klien dan ingin saya kirimkan ke home direktori milik user rizal yang ada di komputer server dengan ip 192.168.0.2. Maka eksekusi perintah berikut pada komputer klien :
$ scp Downloads/squidanalyzer-5.3.tar.gz rizal@192.168.0.2:
Ketik Yes jika muncul pertanyaan untuk menambahkan key SSH. Setelah itu masukkan password user rizal. Tunggu hingga proses pengiriman selesai.
3. Sekarang pindahlah ke komputer Server. Disini saya anggap kalian login sebagai user rizal. Maka kalian bisa langsung mengekstrak file squidanalyzer yang sudah kalian kirimkan sebelumnya :
$ tar -xvf squidanalyzer-5.3.tar.gz
$ cd squidanalyzer-5.3
4. Ganti menjadi user root :
$ sudo su
5. Install Squid Analyzer-nya :
# perl Makefile.PL
# make
# make install
6. Selanjutnya, khusus bagi yang menggunakan squid selain versi 3, kalian harus mengedit file konfigurasi Squid Analyzer untuk mengganti letak file log squidnya :
# nano /etc/squidanalyzer/squidanalyzer.conf
Ganti bagian LogFile /var/log/squid3/access.log menjadi LogFile /var/log/squid/access.log. Simpan dengan menekan CTRL + X > Y > Enter.

7. Berhubung Squid Analyzer adalah tools berbasis web, maka kalian harus mengedit file httpd.conf-nya apache agar webserver kalian bisa menampilkan halaman Squid Analyzernya.
# nano /etc/apache2/httpd.conf
Tambahkan script berikut didalam file tersebut :
Alias /squidreport /var/www/squidanalyzer
    
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    Allow from all
    
Simpan dan tutup filenya jika sudah.

Jangan lupa restartlah webserver apache kalian :
# service apache2 restart
8. Setelah itu jalankan service squid-analyzer untuk pertama kalinya :
# /usr/local/bin/squid-analyzer
9. Agar Squid Analyzer bisa merefresh log squid setiap 10 menit sekali, maka kalian harus menambahkan script berikut kedalam jadwal cron :
# crontab -e
Jika muncul pertanyaan kalian ingin mengedit filenya menggunakan text editor apa, pilih saja text editor Nano agar mudah. Dibaris paling bawah file konfigurasi crontab tersebut, tambahkan script ini :
*/10 * * * * /usr/local/bin/squid-analyzer > /dev/null 2>&1
Simpan jika sudah.
10. Terakhir, akseslah Squid Analyzer melalui web browser dengan mengarahkannya ke alamat http://ipserver/squidreport

Cara bypassed konten menggunakan Proxy squid

cara bypass ip atau situs agar tidak melalui proxy squid

cara 1 :
acl bypass_ip dst 192.168.0.0/24 192.168.1.0/24
cache deny bypass_ip
always_direct allow bypass_ip

acl bypass_situs dstdomain .hotmail.com  .youtube.com
cache deny bypass_situs
always_direct allow bypass_situs


Cara 2 :
acl bypass_situs dstdomain "/etc/squid/bypass.txt"
no_cache deny bypass_situs
always_direct allow bypass_situs

buat  file bypass.txt :
touch /etc/squid/bypass.txt
nano /etc/squid/bypass.txt

masukan situs yg ingin di bypass atau deny cache
youtube.com
facebook.com
yahoo.com

squid3 -k rec


Bypass Ext  :
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \? \.flv \.exe
no_cache deny QUERY