Openvpn + Slackware

Akhirnya selesai juga saya membangun VPN Server dikantor, dan seperti biasanya artikel ini saya tulis sebagai referensi buat saya sendiri.
OK, langsung saja…saya menggunakan Slackware R12 sebagai servernya dan menggunakan OpenVPN-1.6.0

root@slackware:/usr/local/openvpn/openvpn-1.6.0# tar -zxvf openvpn-1.6.0.tar.gz
root@slackware:/usr/local/openvpn/openvpn-1.6.0# cd openvpn-1.6.0

root@slackware:/usr/local/openvpn/openvpn-1.6.0# ./configure
root@slackware:/usr/local/openvpn/openvpn-1.6.0# make
root@slackware:/usr/local/openvpn/openvpn-1.6.0# make install
Baca entri selengkapnya »

Iklan

Analisa Squid dengan SARG

Untuk melihat halaman-halaman yang pernah dibuka oleh user kita 8-> yang menggunakan squid kita dapat menggunakan aplikasi sarg yang menurut saya lumayan menarik -D, langsung saja, untuk proses instalasinya tidak terlalu sulit, dan berikut adalah langkah langkahnya, pertama download sarg di http://sarg.sourceforge.net/sarg.php : Baca entri selengkapnya »

Ditulis dalam Linux, Proxy. Tag: , . Leave a Comment »

Penangganan otomatis + SQUID

Setiap yang punya ‘server’ tentu saja punya kecemasan tersendiri kalo jauh dari server dan dimana dia tidak bisa memonitor server sama sekali, apalagi jika tidak ada orang lain yang bisa mengawasi server, bagaimana jika terjadi sesuatu dengan server?

Bagaimana jika squid mati sendiri padahal iptables dengan transparan proxy aktif ? siapa yang akan mengabari ? bagaimana jika koneksi putus ? berbagai macam permasalahan timbul jika jauh hal yang paling utama adalah ‘tidak mendiskreditkan machine, tapi berbuat baik lah ;)”
Pertama-tama, mungkin ‘kita’ harus sedikit mengetahui bagaimana penggunaan crontab dan sedikit bash script, command-command nya dapat di liat langsung di

 

# man crontab
dan juga sedikit pengetahuan mengenai bash scripting, permasalahan yang paling menakutkan mungkin pada iptables dan squid transparant proxy , dengan sedikit script pada system mungkin akan sangat membantu.. let’s try script yang sedikit saya modify dari punya nya wombel Alamat e-mail ini telah dilindungi dari tindakan spam bots, Anda butuh Javascript dan diaktifkan untuk melihatnya <!– document.write( ” ); //–>

# cd /etc/rc.d/

# pico -w ceksquid ## paste script dibawah ini

#!/bin/sh

# ganti baris ini ke direktori squid anda

squiddir=”/squid”

cd $squiddir

if test -r logs/squid.pid; then

# cek apa pid nya masi aktif ?
squidpid=`cat logs/squid.pid`
if `kill -CHLD $squidpid >/dev/null 2>&1`; then

# squid masi berjalan
exit 0
fi
echo “”

echo “squid ngak aktif”
rm -f logs/squid.pid

fi

echo “”
echo “squid ngak ada di background, test re-load..”
echo “”

# cek config
if test -r etc/squid.conf; then

# kalo ada config nya, jalankan squid
/squid/sbin/squid -sYD

exit 0

fi

# kalo gagal

echo “uh! squid nga bisa di jalankan”

exit 0

# selesai sampe disini 😉 #

setelah file itu terbentuk, jadikan file eksekusi

# chmod 755 ceksquid

# crontab -e # masukan ke dalam crontab baris di bawah ini, untuk lebih detail penggunaan nya baca ‘ man crontab’

0,10,20,30,40,50 * * * * /etc/rc.d/ceksquid

Selesai… mungkin kalau anda iseng, coba matikan squid service dan tunggu 10 menit squid pasti akan berjalan lagi di background.

 

Duh.. enak ya kalo sistem itu bisa ngobrol sendiri sama adminnya 😉 pasti ndak kerepotan ngurus tiap kerusakan -:p

by : ibenez yusuf

Ditulis dalam Linux, Proxy. Tag: , . Leave a Comment »

istilah dalam DNS

SOA MNAME adalah field yang menunjukkan master server pada puncak/root dari zona authority. Hanya diperbolehkan terdapat satu master server tiap zona authority. Contohnya domain servas.net memiliki SOA MNAME ns1.servas.net

 

SOA RNAME
SOA RNAME adalah email address dari orang atau organisasi yang bertanggung jawab pada zona ini. Format field ini berbeda dengan format email biasa (yaitu memakai tanda ‘@’). Format yang digunakan dalam field ini adalah mailbox-name.domain.tld. Misalnya servas.net akan ekuivalen misal@server.net Alamat e-mail ini telah dilindungi dari tindakan spam bots, Anda butuh Javascript dan diaktifkan untuk melihatnya <!– document.write( ” ); //–>

 

SOA Serial Number
SOA Serial Number adalah field yang menunjukkan serial number dari DNS server. Field ini berisi nilai unsigned 32 bit mulai dari 1 hingga 4294967295 dengan jumlah increment maksimal 2147483647. Dalam implementasi BIND (Berkeley Internet Name Daemon), field ini didefiniskan dalam 10 digit. Format yang paling populer dalam penamaan serial number ini adalah yyyymmddss dengan yyyy adalah tahun, mm adalah bulan, dd adalah tanggal, dan ss adalah jumlah perubahan yang dilakukan pada hari itu. Nilai dari field ini harus diubah ketika terjadi perubahan pada zone file. Perubahan ini wajib dilakukan karena server lain menyimpan informasi mengenai zona berdasarkan serial number. Selama serial number server tidak berubah, maka data di cache juga tidak akan berubah.

 

SOA REFRESH
SOA REFRESH adalah field yang menunjukkan waktu slave server akan merefresh zona dari master server. Field ini dalam satuan detik dengan nilai signed 32 bit. RFC1912 merekomendasikan 1200 hingga 43200 detik. 1200 detik jika datanya cepat berubah dan 43200 detik jika data jarang berubah.

 

SOA RETRY
SOA RETRY adalah field yang menunjukkan berapa lama waktu jeda antara percobaan slave server mengkontak master server jika kontak pertama mengalami kegagalan ketika slave master me-refresh cache dari master server. Field ini dalam satuan detik dengan nilai signed 32 bit. Nilai yang ideal tergantung keadaan dan kecepatan network local. Biasanya nilainya adalah 180 (dua menit) hingga 900 (tiga belas menit) atau lebih tinggi.

 

SOA EXPIRE
SOA EXPIRE adalah field yang menunjukkan berapa lama zona-data masih authoritative. Field ini hanya berlaku untuk slave atau secondary server. Ketika nilai ini telah expired, maka slave master akan mengontak master server untuk membaca SOA record pada zona dan merequest AXFR/IFXR jika serial number berubah. Jika slave gagal mengontak master, maka slave akan terus mencoba mengontak master dan masih melayani query hingga waktu SOA EXPIRE habis. Setelah itu slave akan berhenti melayani query hingga kontak ke master server berhasil. RFC 1912 merekomendasikan 1209600 hingga 2419200 (2-4 minggu).

 

SOA MINIMUM TTL
SOA MINIMUM TTL adalah nilai default TTL (Time To Live) untuk semua record pada zone file. Field ini dalam satuan detik. Implementasi BIND9 mendefinisikan field ini dalam nilai negatif.

CNAME

CNAME, Canonical Name for Alias adalah record yang menjelaskan primary name untuk owner. Nama ownernya disebutkan dalam alias. Formatnya adalah: CNAME

 

MX
MX adalah record yang menjelaskan tentang domain mail exchange. Formatnya adalah sebagai berikut:
[domain-name] IN MX [Preference] [Exchange]
Dimana:
Preference adalah 16 bit integer yang menunjukkan preferences dari suatu domain dengan domain lainnya. Semakin kecil nilainya maka preferencesnya semakin bagus. Exchange adalah domain yang akan menangani mail exchange untuk owner name (tertulis di paling kiri itu loooh ^x^)

 

A
A adalah field yang menunjukkan alamat Ipv4. Nama owner akan ekuivalen dengan IP address yang didefinisikan setelah record A.

 

 

PTR
PTR adalah domain name pointer, yaitu record yang menunjuk ke lokasi tertentu dalam domain name space

AAAA

AAAA adalah record seperti record A yang menunjukkan alamat class alamat IPv6 yang spesifik dengan data format 128 bit (sesuai dengan format bit Ipv6).

TXT
TXT adalah record yang menunjukkan text strings, digunakan untuk menangani teks yang berisi deskripsi suatu domain. Semantiknya tergantung dengan domain name dimana teks ditemukan.

Ditulis dalam Linux, Networking. Tag: . Leave a Comment »

Cara Kerja DNS

DNS adalah Domain Name Server, yaitu server yang digunakan untuk mengetahui IP Address suatu host lewat host name-nya. Dalam dunia internet, komputer berkomunikasi satu sama lain dengan mengenali IP Address-nya.Namun bagi manusia tidak mungkin menghafalkan IP address tersebut, manusia lebih mudah menghapalkan kata-kata seperti http://www.yahoo.com, http://www.google.com, atau http://www.friendster.com. DNS berfungsi untuk mengkonversi nama yang bisa terbaca oleh manusia ke dalam IP addresshost yang bersangkutan untuk dihubungi.

Cara kerja DNS adalah sebagai berikut:

  • Ketika kita merequest suatu alamat, misalnya http://www.friendster.com dari host kita, maka host kita akan mengontak name server lokal untuk menanyakan dimanakah http://www.friendster.com berada.
  • Name server kita akan mencari request tersebut di database lokal. Karena tidak ada, maka name server akan mengontak root DNS servernya, siapa yang memegang domain untuk .com. Beberapa daftar Top Level Domain (TLD) yang ada sekarang adalah: com, net, org, biz, info, name, museum, dan tv. Sedangkan Country Code Top Level Domain (ccTLD) adalah: us, uk, fr, es, de, it, jp, ie, dll.
  • Root server akan memberitahu IP address dari server DNS dari http://www.friendster.com. Kemudian DNS server lokal akan mengontak server DNS yang mengelola http://www.friendster.com. Kemudian DNS server tersebut akan memberitahu IP address dari http://www.friendster.com. baru host kita merequest http://www.friendster.com dengan IP address tersebut.
Ditulis dalam Linux, Networking. Tag: . Leave a Comment »

Instalasi Squid Proxy + Slackware

Download source dari squid
#wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE16.tar.gz

Extract squid tersebut
#tar -zxvf squid-2.6.STABLE16.tar.gz -C /usr/local/src (sembarang mau ditaruh di mana hasil ekstraknya squid).

Masuk ke direktori ekstrak squid tersebut
#cd /usr/local/src/squid-2.6.STABLE16
Buat group dan user yang akan di gunakan untuk menjalankan squid
#groupadd _squid
#useradd -c “SQUID PROXY CACHE” -d /dev/null -s /bin/false -g _squid _squid
saya memberi tanda _ di depan squid biar keren seperti style BSD hehehe meski ada alasan tertentu sih demi security aja.

Configure dan install squid
#./configure \
–prefix=/squid/ –sysconfdir=/etc/ –enable-gnuregex –enable-async-io=16 \
–with-aufs-threads=16 –with-pthreads –with-aio –with-dl \
–enable-storeio=aufs –enable-removal-policies=heap –enable-delay-pools \
–disable-wccp –enable-cache-digests –enable-default-err-languages=English \
–enable-err-languages=English –enable-linux-netfilter –disable-ident-lookups \
–disable-hostname-checks –enable-underscores –enable-snmp –enable-useragent-log \
–disable-wccpv2 –enable-epoll –disable-internal-dns –enable-htcp
Keterangan opsi :
–enable-async-io=16 dan –with-aufs-threads=16 di sesuaikan dengan kemampuan mesin server
Untuk pentium III dengan ram 128 kebawah dapat menggunakan 8
Untuk pentium III ram 128 s/d PIV 1,8 Ghz ram 256 dapat menggunakan 16
Untuk pentium IV ram 256 1,8 s/d PIV 2,4 ram 256 dapat menggunakan 24
Untuk pentium di atasnya atau sekelasnya dapat menggunakan 32
Pilihan diatas hanya sebuah perkiraan penulis karena penulis hanya menggunakan P4 ram 256 saja.

Kompile source
#make && make install

Keterangan tambahan :
–enable-auth=basic \
–enable-basic-auth-helpers=NCSA
Digunakan jika proxy squid akan digunakan dengan menggunakan authentikasi user.

Tanda # didepan perintah maksudnya adalah root di dalam bash bukan comment.
Setelah instalasi selesai dan tidak terdapat kesalahan, langkah berikutnya adalah mengatur konfigurasi squid, bukalah file /etc/squid.conf dengan editor teks favorit anda (vi, pico, dll), file ini adalah file konfigurasi squid.

#pico -w /etc/squid.conf (Silahkan edit dengan editor kesukaan anda)
Rubahlah konfigurasi default squid.conf di sesuaikan dengan kebutuhan.
Jangan lupa untuk membuang yang kira kira tidak perlu dan membebani server.

agar squid dapat berjalan transparan maka untuk squid versi 2.6 keatas dapat memberikan opsi :
–> http_port 3128 transparent
di dalam confignya.

Sebelum squid dapat berjalan, anda harus menciptakan direktori swap dan membuat file log maupun direktori yang di butuhkan. Lakukanlah dengan menjalankan perintah :

#mkdir /var/log/squid
#touch /var/log/squid/access.log <= ini berfungsi membuat file bernama access.log
#touch /var/run/squid.pid
#chown -R _squid._squid /squid/cache/ <= mengubah kepemilikan direktori ke user _squid dan grup _squid
#chown -R _squid._squid /var/run/pid
#chown -R _squid._squid /var/log/squid/access.log

Perintah ini hanya perlu dijalankan satu kali saja ketika squid pertama kali akan dijalankan pada komputer anda.
#/squid/sbin/squid -z

Jika keluar message seperti :
2007/09/20 14:10:22| Creating Swap Directories
#
Dan langsung masuk ke konsole lagi tanpa keterangan error berarti pembuatan swap anda berhasil, bisa dilihat di dalam direktori /squid/cache akan terbentuk beberapa direktori random yang terdiri dari angka angka ajaib 😀
Cek dulu konfigurasi squid sudah benar atau belum
#/squid/sbin/squid -k parse

Kalo masih terdapat kesalahan atau error silahkan di edit kembali konfigurasinya.

Untuk menjalankan squid gunakan perintah :
#/squid/sbin/squid -sYD

Jika perintah sudah dijalankan bisa diihat log di /var/log/messages :
#tail -f /var/log/messages

Jika muncul message :

Sep 20 15:16:27 proxy squid[3152]: 0 Objects expired.
Sep 20 15:16:27 proxy squid[3152]: 0 Objects cancelled.
Sep 20 15:16:27 proxy squid[3152]: 0 Duplicate URLs purged.
Sep 20 15:16:27 proxy squid[3152]: 0 Swapfile clashes avoided.
Sep 20 15:16:27 proxy squid[3152]: Took 1.6 seconds ( 0.0 objects/sec).
Sep 20 15:16:27 proxy squid[3152]: Beginning Validation Procedure
Sep 20 15:16:27 proxy squid[3152]: Completed Validation Procedure
Sep 20 15:16:27 proxy squid[3152]: Validated 0 Entries
Sep 20 15:16:27 proxy squid[3152]: store_swap_size = 0k
Sep 20 15:16:27 proxy squid[3152]: storeLateRelease: released 0 objects

dan ketika di liat proses nya berjalan seperti :

#ps aux|grep squid

muncul :

squid 3152 0.9 0.8 10836 4500 ? Sl 15:16 0:00 (squid) -sDY
squid 3153 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3154 0.0 0.1 1904 592 ? Ss 15:16 0:00 (dnsserver)
squid 3155 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3156 0.0 0.1 1900 596 ? Ss 15:16 0:00 (dnsserver)
squid 3157 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3158 0.0 0.0 1508 300 ? Ss 15:16 0:00 (unlinkd)
root 3177 0.0 0.1 2000 636 pts/0 R+ 15:17 0:00 grep squid

seperti tersebut maka saya ucapkan selamat anda telah berhasil menginstall sebuah proxy server. Jika ada keterangan error berarti belum nasib anda. Edit kembali konfigurasi sesuai kesalahan error didalam log.

setting transparan iptables nya :
Buat file transparannya biar mudah memanggilnya :
#pico /etc/rc.d/rc.nat
isi dengan :
# Redirect proxy
for SQUID in 80 3128 444 3127 3129
do
iptables -t nat -A PREROUTING -p tcp –dport $SQUID -j REDIRECT –to-ports 3128
done

–> Hal diatas memiliki maksud semua port yang menuju ke 80,3128,444,3127,3129 di larikan ke port 3128 dimana port 3128 adalah port yang kita setting di dalam file squid.conf tsb. BIsa saja kita membuat port lain seperti 444, 1984, 2007 atau lain lain.

Buatlah file agar dapat di eksekusi
#chmod +x /etc/rc.d/rc.nat

Jalankan transparan :
#/etc/rc.d/rc.nat

Untuk membuat squid jalan sendiri setiap kali booting maka tambah kan perintah di atas di /etc/rc.d/rc.local
#pico /etc/rc.d/rc.local
tambahkan baris :
# Squid Proxy Cache
/squid/sbin/squid -sYD
# Transparan Proxy
/etc/rc.d/rc.nat

Sampai disini anda sudah melakukan instalasi, setting dan mengaktifkan squid. Mudah bukan?
Semua diatas telah di di test dan berjalan dengan baik dengan asumsi :
– Partisi Cache berada di /squid/cache dengan partisi ext3 dan kapasitas 10 GB
– Dengan menggunakan komputer Intel(R) Pentium(R) 4 CPU 1.70GHz Ram 256 MB
– Linux Slackware 12 ( Dikompile dengan kernel 2.6.22.6 ) – Tutorial Kompile / upgrade kernel sudah saya jelaskan sebelumnya.
– Dengan menggunakan format partisi ext3

by : Ibanez yusuf

Ditulis dalam Linux, Proxy. Tag: , , . 3 Comments »

Internet Sharing + Ubuntu

sudah seminggu lebih saya menggunakan ubuntu 7.04. dan seperti biasa, saya direpotkan dengan melakukan googling untuk melakukan hal-hal yang ingin saya lakukan dengan instalasi ubuntu saya yang baru. kali ini saya akan menuliskan apa saja yang telah saya lakukan agar bisa menjadi catatan saya di kemudian hari.sebelumnya saya menggunakan ubuntu 5.10 breezy, dan tadinya saya berharap saya bisa melakukan upgrading dengan dapper ini. ternyata harapan saya salah, cd dapper ini tidak ada opsi untuk melakukan upgrade. padahal sewaktu saya dulu mengunduh dvd dapper flight 3, ada opsi untuk melakukan upgrade. sebagai catatan, lebih baik menaruh /home di partisi lain, agar proses instalasi tidak membuyarkan personal setting yang sudah ada.

kembali ke topik, saya akhirnya mendapatkan petunjuk untuk melakukan internet connection sharing di ubuntu. akan saya tulis ulang di sini dalam bahasa indonesia. konfigurasi saya adalah sebuah komputer yang mempunyai dua ethernet, dan salah satu ethernet-nya terkoneksi ke internet.

  1. mulai dengan melakukan konfigurasi network anda sampai anda bisa koneksi ke internet dengan desktop anda. lalu konfigurasikan ethernet yang terkoneksi ke jaringan lokal agar memiliki IP statik, sebagai contoh saya di kantor menggunakan 192.168.0.1, di rumah menggunakan 10.0.0.1.
  2. edit file /proc/sys/net/ipv4/ip_forward (sudo nano /proc/sys/net/ipv4/ip_forward), ganti angka 0 menjadi 1.
  3. jalankan perintah sudo iptables -t nat -A POSTROUTING -j MASQUERADE.
  4. lalukan instalasi dnsmasq dan ipmasq: sudo apt-get install dnsmasq ipmasq.
  5. restart dnsmasq: /etc/init.d/dnsmasq restart.
  6. konfigurasikan ipmasq agar dijalankan setelah network aktif: dpkg-reconfigure ipmasq
  7. tambahkan baris net.ipv4.ip_forward = 1 ke dalam file /etc/sysctl.conf: sudo nano /etc/sysctl.conf.
Ditulis dalam Linux, Proxy. Tag: . 1 Comment »