Reset Password Root Linux Bandel !
Lupa atau hilang password? Sesuatu yang menjengkelkan bukan… apalagi klo yang ilang tadi itu password root dari server kita. Solusinya ? tentu saja reset password !
Pada dasarnya tidak mungkin melakukan reset password, kecuali kita punya akses langsung ke fisik dari si mesin. (ga bisa secara remote). Eh bisa sih… cuman hrs menggunakan exploit atau rootkit atau apapun itu.. tp itu juga tidak secara langsung, butuh effort yang besar dan syarat perlunya adalah sistem operasi atau aplikasi yang berjalan mengandung bug yang memungkinkan akses ke shell.
Metode umum yang bisa digunakan a.l :
1. Menggunakan sudo
2. Masuk ke mode single user
3. Masuk menggunakan media bootable yang sejenis.
Edisi Linux Bandel (Debian Style, termasuk *buntu-2an)
Untuk cara yang pertama tentunya mensyaratkan program sudo terinstal di sistem (Ubuntu secara default tidak mengaktifkan account root, semua harus dilakukan via sudo) dan sebuah account user yang masuk ke sudoers
1. install program sudo
2. tambahkan di /etc/sudoers
nama_user ALL=(ALL) ALL
3. untuk bertindak dengan privileges root gunakan perintah sudo. Login sebagai user yg masuk sudoers dan lakukan :
nama_user@localhost~>sudo su -
Password: masukkan password user
#whoami
root
#passwd
Tapi untuk bisa menggunakan cara ini tentu saja tetap harus ingat password user yang masuk sudoers tadi itu.. klo tidak ya… gimana… terpaksa harus menggunakan cara selanjutnya.
Cara yang kedua adalah standar, masuk ke single user atau runlevel 1. Caranya adalah dengan menambahkan parameter pada option kernel pada bootloader.
a. LILO
Pada saat akan masuk ke lilo, tekan tombol SHIFT sehingga muncul prompt-nya LILO
lilo :
Ketikkan nama kernel diikuti “single” atau “1″
lilo : linux 1
Maka kita akan masuk ke runlevel 1 dan bisa merubah password root dari situ
sh#/usr/bin/passwd
b. GRUB
Setelah masuk ke menu GRUB ketikkan ESC utk melihat detail menunya. Kemudian pilih salah satu kernel dengan menggunakan tombol panah lalu sorot dan tekan ‘e’ (edit)
Pada bagian kernel tambahkan di bagian terakhir option “single dan “1″. Setelah itu ketik ‘b’ (boot) untuk booting ke kernel dengan option-option yang telah dispesifikkan.
Maka kita akan masuk ke mode single user. Lakukan perubahan password dari situ.
Tapiiiii…………. tunggu dulu…
Linux yang menganut pakem Debian style tidak akan semudah itu membiarkan kita masuk ke single user, karena untuk masuk ke single user pun kita ditanyakan password root (buset dah…. )
Untuk itu yg harus dilakukan adalah bukan mengetikkan “single” atau “1″ namun “init=/path/to/shell” misal “init=/bin/bash” agar kita langsung lompat masuk ke shell tanpa ditanyakan password.
Setelah masuk ke shell bukan berarti kita langsung bisa merubah password. Merubah password sebenarnya adalah merubah file /etc/shadow. Hal itu sementara tidak bisa langsung dilakukan karena pertama kali boot filesystem kita termount dengan akses ro (readonly) saja.
Untuk itu kita harus me-remount filesystem kita (terutama / ) dengan option rw (read write) agar kita mempunyai hak write ke /etc/shadow
Setelah masuk ke shell lakukan :
#mount / -o remount, rw
#mount /usr -o remount, rw
#passwd
New UNIX password:*******
Retype new UNIX password: *******
passwd: password updated successfully
#mount / -o remount, ro
#mount /usr -o remount, ro
#sync
#reboot
*sync digunakan untuk mem-flush buffer dari filesystem sebelum direboot.
Cara yang ketiga adalah last resort, cara kasar dan terakhir jika cara yang lain tidak bisa digunakan.
Bersambung …
Arsip untuk November 19th, 2008
Reset Password Linux Bandel!
Ditulis oleh Naruto di/pada 19 November 2008
Ditulis dalam Uncategorized | Leave a Comment »
Membuat Cluster Load Balancing Dengan Cepat dan Mudah
Ditulis oleh Naruto di/pada 19 November 2008
Selama ini orang selalu menganggap bahwa membuat cluster load balancing adalah hal yang rumit dan memusingkan. Dan.. memang benar pendapat ini. Tapi sebenarnya ada satu cara mudah untuk mencapainya dengan menggunakan yang namanya balance.
Sebelumnya kita bahas dahulu sedikit mengenai konsep Clustering. Secara prinsip clustering mempunyai 2 buah pendekatan:
1. High Availability (Failover), adalah bila satu server gagal melayani service tertentu, maka tugas server tersebut otomatis akan dilempar ke server lainnya.
2. High throughput (Performance), disini yang diinginkan adalah performance yang tinggi yang dicapai dengan “membagi2″ tugas yang ada ke sekumpulan server. Contohnya adalah:
2a. High-performance Computing (HPC), adalah sekumpulan server yang bekerja bersama-sama pada saat yang bersamaan untuk mengerjakan sesuatu tugas tertentu, biasanya dalam bentuk tugas perhitungan yang berat2, seperti simulasi bumi, me-render film animasi, dll.
2b. Load Balancing, adalah membagi2 beban kerja ke sekumpulan server diluar konteks computing, misalnya membagi beban kerja web server, mail server, dll.
Bagaimana mencapai hal ini?
Ada beberapa software opensource yang dapat kita gunakan:
1. Linux High-Availability (http://www.linux-ha.org)
2. RedHat Cluster Suite dan Piranha (http://www.redhat.com)
3. Linux Virtual Server (http://www.linuxvirtualserver.org)
4. BeoWulf Cluster (http://www.beowulf.org)
5. Openmosix (http://openmosix.sourceforge.net)
Namun solusi2 di atas kadang kala terlalu “canggih” atau “overkill” untuk mencapai tujuan clustering kita. Disinilah ‘balance’ masuk. Apa yang dapat ia sediakan?
1. Merupakan user-space program. Tidak perlu compile kernel dll. Langsung jalan secara command line.
2. Load balancing secara tcp. Cukup menyebutkan protocol atau port tcp berapa yang ingin kita load balancing.
Cara setup:
1. Download paketnya dari http://www.inlab.de/balance.html
wget http://www.inlab.de/balance-3.40.tar.gz
2. Extract, compile dan install:
2a. tar zxvf balance-3.40.tar.gz
2b. cd balance-3.40
2c. vi Makefile
Ubah baris ini: MANDIR=${BINDIR}/../man/man1
Menjadi: Untuk Ubuntu: MANDIR=/usr/share/man/man1
Untuk RedHat: MANDIR=/usr/local/share/man/man1
2d. make
2e. make install
Done!
Cara pakai:
Sebelumnya kita misalkan skenario seperti ini:
Kita mempunyai sebuah website yang ingin kita bagi beban kerjanya ke 3 buah server web. Maka kita perlu mensetupnya seperti terlihat di gambar (Oya, gambarnya adalah foto PC zaman dulu, tapi itu hanya ilustrasi yah, nanti servernya jangan pakai PC zaman dulu juga. Hehe…). Tiga buah server web yaitu www1 (192.168.0.1), www2 (192.168.0.2), dan www3 (192.168.0.3). Di depan mereka kita install sebuah server (192.168.0.254) yang bertugas membagi2 bebas kerja para server www tersebut. Jadi IP yang akan diakses oleh user adalah IP 192.168.0.254, jangan ke masing2 server www.

Commandnya: (Jalankan command ini di 192.168.0.254) balance
Bila diketik tanpa option dia akan muncul seperti ini:
_ _
| |__ __ _| | __ _ _ __ ___ ___
| ‘_ \ / _` | |/ _` | ‘_ \ / __/ _ \
| |_) | (_| | | (_| | | | | (_| __/
|_.__/ \__,_|_|\__,_|_| |_|\___\___|
this is balance 3.40
Copyright (c) 2000-2006,2007
by Inlab Software GmbH, Gruenwald, Germany.
All rights reserved.
usage:
balance [-b addr] [-B addr] [-t sec] [-T sec] [-adfpHM] \
port [h1[:p1[:maxc1]] [!%] [ ... hN[:pN[:maxcN]]]]
balance [-b addr] -i [-d] port
balance [-b addr] -c cmd [-d] port
-a enable channel autodisable option
-b host bind to specific address on listen
-B host bind to specific address for outgoing connections
-c cmd execute specified interactive command
-d debugging on
-f stay in foregound
-i interactive control
-H failover even if Hash Type is used
-M use MMAP instead of SHM for IPC
-p packetdump
-t sec specify connect timeout in seconds (default=5)
-T sec timeout (seconds) for select (0 => never) (default=0)
! separates channelgroups (declaring previous to be Round Robin)
% as !, but declaring previous group to be a Hash Type
examples:
balance smtp mailhost1:smtp mailhost2:25 mailhost3
balance -i smtp
balance -b 2001:DB8::1 80 10.1.1.1 10.1.1.2
balance -b 2001:DB8::1 80
Jadi cara pakainya adalah misalnya:
balance -f http 192.168.0.1 192.168.0.2 192.168.0.3
Option -f itu artinya balance jalan di foreground, berguna untuk kita debug dan cancel. Kalau misalnya sudah ok, bisa kita jalankan tanpa option -f, maka balance akan jalan di background.
Untuk melihat cara bekerja balance adalah dengan membuka sebuah terminal dan meload website 192.168.0.254 secara berulang2. Untuk mudahnya dapat kita gunakan text browser seperti elinks:
watch elinks –dump http://192.168.0.254
Untuk kebutuhan testing, dapat kita atur agar isi website di 192.168.0.1, 192.168.0.2, dan 192.168.0.3 berbeda, jadi command di atas akan menampilkan isi website yang berbeda, tanda bahwa balance sudah meload balancing traffik web ke tiga buah server tersebut.
Contoh lain adalah:
balance -f http 192.168.0.1::100 ! 192.168.0.2::100 ! 192.168.0.3
Arti option di atas adalah: koneksi http akan diprioritaskan ke server 192.168.0.1 sampai sebanyak 100 koneksi, bila sudah penuh maka akan dilempar ke 192.168.0.2 sampai sebanyak 100 koneksi juga, sisanya akan ke 192.168.0.3
Bagaimana jika kita ingin menghandle koneksi yang memerlukan session seperti website dynamic pakai php? Hal ini bisa dicapai dengan option ‘%’ yaitu mengaktifkan session seperti ini:
balance -f http 192.168.0.1 192.168.0.2 192.168.0.3 %
Untuk option2 selengkapnya dapat kita lihat di ‘man balance’.
Apakah hanya dapat digunakan untuk akses http? Tentu tidak, dengan sedikit eksplorasi kita dapat pula menggunakannya untuk keperluan lain seperti load balancing akses internet, email, proxy, dll.
Penutup
Program balance ini menyediakan sebuah solusi praktis dan mudah untuk membuat sebuah cluster load balancer. Performance yang dihasilkan cukup bagus. Namun bila kita ingin menggunakan solusi yang lebih handal, kita dapat menggunakan LVS (linux virtual server) dengan kombinasi linux-ha. Namun tentu saja settingannya akan jauh lebih rumit. Kita akan membahasnya di lain kesempatan. Selamat mencoba
Tutorial ini dapat di download dari menu Download sebelah. Jangan lupa register dulu yah untuk mendownload.
Download > Artikel > Linux Admin > Sort berdasarkan Submit Date > adm_cluster_loadbalancing_mudah.
Ditulis dalam Uncategorized | 2 Komentar »
Trobelshooting Linux
Ditulis oleh Naruto di/pada 19 November 2008
Sumber : KPLI Jakarta
Ahmed Unies KLAS
Berikut ini beberapa kumpulan trobuleshhoting yang dilakukan dilunyx :
# Mendeteksi Hardware menggunakan lspci
Untuk mengetahui perangkat apa saja yang berhasil dikenali oleh Linux dapat diketahui dengan menjalankan perintah pada konsol dengan perintah lspci. Untuk mengetahui ringkasan semua perangkat yang terkoneksi pada bus PCI dengan menjalankan :
# sbin/lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 02) 00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP]
00:06.0 Ethernet controller: Linksys Network Everywhere Fast Ethernet 10/100 model NC100
(rev 11)
…
Gunakan parameter -v dan -vv untuk menampilkan informasi yang lebih detail :
# /sbin/lspci -v
0000:01:00.0 VGA compatible controller: 3Dfx Interactive, Inc. Voodoo 3 (rev 01) (prog-if
00 [VGA])
Subsystem: 3Dfx Interactive, Inc.: Unknown device 1252
Flags: 66MHz, fast devsel, IRQ 10
Memory at d4000000 (32-bit, non-prefetchable) [size=32M]
Memory at d8000000 (32-bit, prefetchable) [size=32M]
I/O ports at c000 [size=256]
Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: [54] AGP version 1.0
Capabilities: [60] Power Management version 1
Perintah lspci membaca semua informasi yang berada pada bus PCI, lalu menampilkan informasi berdasarkan database ID hardware, vendor, perangkat yang berada di /usr/share/misc/pci.ids. Ada perintah untuk melakukan updatenya :
# update-pcids
Menggunakan dmesg untuk Mengumpulkan Informasi Hardware
Selain PCI masih ada perangkat lain yang dapat diketahui informasi mengenainya, seperti untuk USB, SCSI, konfigurasi memori dan lain-lain.
Dengan menjalankan perintah dmesg, dmesg mencatat yang terdeteksi oleh kernel.
Untuk melihat semua output dari dmesg dengan menggunakan :
$ dmesg | less
Anda juga dapat memfilter output untuk mencari lebih spesifik perangkat tertentu, misal untuk mencari perangkat usb :
$ dmesg | grep -i usb
Untuk perangkat ISA :
$ dmesg | grep -i isa
isapnp: Scanning for PnP cards…
isapnp: SB audio device quirk – increasing port range
isapnp: Card ‘SupraExpress 56i Voice’
Untuk melihat sebarapa banyak memori fisik yang digunakan pada sistem dengan menggunakan :
$ dmesg | grep -i memory
Memory: 256492k/262080k available (1467k kernel code, 5204k reserved, 516k data, 96k init,
0k highmem)
Untuk mengetahui port serial :
$ dmesg | grep -i tty
ttyS00 at 0×03f8 (irq = 4) is a 16550A
Mengetahui Sistem yang Sedang Berjalan dengan /proc
Jika Anda ingin mengetahui memori fisik dan informasi mengenai CPU, identifikasi driver dapat menggunakan dengan membaca filesystem yang berada di /proc. Untuk membacanya hanya dengan menggunakan perintah :
$ cat /proc/filename
Anda dapat melihat isi /proc seperti layaknya membaca isi direktori dengan perintah :
$ ls /proc
bus cmdline cpuinfo devices dma driver filesystems ide kcore kmsg ksyms loadavg
meminfo misc modules mounts mtrr partitions pci scsi swaps sys tty
Sebagai contoh untuk melihat informasi mengenai CPU dengan menjalankan :
$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 3
model name : AMD Duron(tm) Processor
stepping : 1
cpu MHz : 801.442
…
Untuk melihat memori fisik dan swap yang digunakan :
$ cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 262746112 237740032 25006080 0 11575296 150138880
Swap: 534601728 81661952 452939776
MemTotal: 256588 kB
MemFree: 24420 kB
…
Untuk mengetahui mengenai hard drive IDE :
$ cat /proc/ide/via
——-VIA BusMastering IDE Configuration———
Driver Version: 3.37
South Bridge: VIA vt82c686a
Revision: ISA 0×22 IDE 0×10
Highest DMA rate: UDMA66
BM-DMA base: 0xd400
PCI clock: 33.3MHz
…
Untuk melihat geometry disk, baik secara real dan logikal :
$ cat /proc/ide/ide0/hda/geometry
physical 39870/16/63
logical 2501/255/63
Untuk mengindentifikasi drive :
$ cat /proc/ide/ide0/hda/model
IBM-DTLA-305020
Untuk mengetahui semua versi drive untuk semua IDE :
$ cat /proc/ide/drivers
de-scsi version 0.93
ide-cdrom version 4.59-ac1
ide-floppy version 0.99.newide
ide-disk version 1.17
ide-default version 0.9.newide
Untuk mengetahui kapabilitas dari drive CD :
$ cat /proc/sys/dev/cdrom/info
CD-ROM information, Id: cdrom.c 3.12 2000/10/18
drive name: sr1 sr0
drive speed: 40 32
…
Can read multisession: 1 1
Can read MCN: 1 1
Reports media changed: 1 1
Can play audio: 1 1
Can write CD-R: 1 0
Can write CD-RW: 1 0
Can read DVD: 0 1
Can write DVD-R: 0 0
Can write DVD-RAM: 0 0
Melihat Partisi Hardisk Menggunakan fdisk
Anda perlu melihat semua partisi pada hardisk atau drive. Anda ingin mengetahui space yang tersedia, partisi sistem operasi lain, mengkonversi partisi yang tidak digunakan, atau untuk mengetahui angka /dev berdasarkan partisi yang ada. Untuk melakukan itu Anda dapat menggunakan perintah fdisk.
Untuk mengetahui informasi detail mengenai partisi yang ada dengan menggunakan :
# /sbin/fdisk -l
Disk /dev/hda: 20.5 GB, 20576747520 bytes
255 heads, 63 sectors/track, 2501 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 893 7172991 7 HPFS/NTFS
/dev/hda2 894 1033 1124550 c W95 FAT32 (LBA)
/dev/hda4 1034 2501 11791710 f W95 Ext’d (LBA)
/dev/hda5 2437 2501 522081 82 Linux swap
/dev/hda6 1034 1670 5116639+ 83 Linux
/dev/hda7 1671 2436 6152863+ 83 Linux
Disk /dev/hdb: 40.0 GB, 40020664320 bytes
16 heads, 63 sectors/track, 77545 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
/dev/hdb1 * 1 4162 2097616+ 82 Linux swap
/dev/hdb2 4163 77545 36985032 83 Linux
Untuk mengetahui partition table berdasarkan drive :
# /sbin/fdisk -l /dev/hda
Disk /dev/hda: 20.5 GB, 20576747520 bytesDisk /dev/hda: 20.5 GB, 20576747520 bytes
255 heads, 63 sectors/track, 2501 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Ditulis dalam Uncategorized | Leave a Comment »
Membuat SMS Gateway dgn Modem GSM Itegno, Kannel, & Playsms
Ditulis oleh Naruto di/pada 19 November 2008
Membuat SMS Gateway sendiri memiliki tantangan yang cukup berat. Di internet sebenarnya telah tersedia banyak dokumentasinya, namun yang masih kurang adalah tutorial yang benar2 cocok untuk newbie. Setelah bergadang hampir 2 minggu akhirnya penulis berhasil menyetelnya. Berbeda dengan program SMS bawaan dari telepon genggam, dengan Kannel dan Playsms, kita bisa menjadikannya multi-user dan bisa diakses dari mana saja.
Pertama2 penulis ingin berterima kasih kepada semua rekan yang telah banyak membantu, terutamanya:
1. Developer modem Itegno yang telah memberikan daftar AT command modemnya.
2. Mas Anton Rahardja dan team yang telah menyediakan playsms dan bersedia ditanya2 jam 2 dini hari ![]()
3. Pak Adi Prasaja yang telah memberikan kunci2 settingan modem gsm.
4. Semua rekan2 yang telah berbaik hati berdiskusi, Mas Dave Muhammad, Mas Rist. Andy Nugroho, Arief Suherlan, dll.
5. Oom Google dan Pakde Milist
Baiklah mari kita mulai. Hal2 yang diperlukan adalah:
1.
Modem GSM. Dalam hal ini penulis menggunakan Itegno 3000 yang menggunakan koneksi USB (http://www.dsc.co.id/?page=category&catid=5&pid=120). Sebenarnya kita dapat pula menggunakan telepon genggam GPRS kita, tapi mungkin di lain artikel yah.
2. Kannel (http://www.kannel.org) sebagai sms engine.
3. Playsms (http://playsms.sourceforge.net) sebagai web-based Mobile Portal System.
4. Linux OS dgn MySQL, kali ini penulis menggunakan Fedora Core 4, dengan kernel terbaru 2.6.15-1.1830.
5. Kopi kental, roti bakar, dan mie instant sesuai selera sebagai teman bergadang
Langkah2 yang harus dilakukan adalah:
1. Mensetting Modem GSM.
2. Menginstall dan mensetup kannel.
3. Menginstall dan mensetup playsms.
4. Mentesting
A. Mensetting Modem GSM
Masukkan kartu GSM ke dalam modem GSM, dan jangan lupa pasang tutupnya. Sebab kalau tidak terpasang, modem tidak akan berfungsi dengan baik.
Hidupkan Linux, dan colokkan modem ke port USB.
Buka terminal, dan lakukan tail -f /var/log/messages. Di dalam /var/log/messages itu akan terlihat ini bila Linux berhasil mengenali modem GSM kita:
Feb 18 19:36:01 fc4 kernel: usb 2-2: new full speed USB device using uhci_hcd and address 3
Feb 18 19:36:01 fc4 kernel: usbcore: registered new driver usbserial
Feb 18 19:36:01 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
Feb 18 19:36:01 fc4 kernel: usbcore: registered new driver usbserial_generic
Feb 18 19:36:01 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core
Feb 18 19:36:02 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for pl2303
Feb 18 19:36:02 fc4 kernel: pl2303 2-2:1.0: pl2303 converter detected
Feb 18 19:36:02 fc4 kernel: usb 2-2: pl2303 converter now attached to ttyUSB0
Feb 18 19:36:02 fc4 kernel: usbcore: registered new driver pl2303
Feb 18 19:36:02 fc4 kernel: drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver
Secara fisik kita bisa melihat apakah Modem telah dikenali dengan baik dari lampunya yang berkedip2.
B1. Menginstall kannel.
Kita bisa menginstall dari source, ataupun dari binary. Tidak masalah. Menggunakan FC4, kita dapat menginstallnya dengan cara:
yum install kannel kannel-devel
Ia berada di dalam repository extras.
B2. Mensetup kannel.
Selanjutnya yang cukup sulit adalah mensetting kannel. Sangat disarankan kita mendownload dan mempelajari kannel userguide dari kannel.org. Playsms telah menyediakan settingan awal untuk kita, kita tinggal melengkapinya sesuai perlengkapan yang kita gunakan.
Berikut ini adalah file /etc/kannel.conf penulis:
# CORE
group = core
admin-port = 13000
admin-password = pwd
status-password = pwd
log-file = “/var/log/kannel/kannel.log”
log-level = 0
access-log = “/var/log/kannel/access.log”
smsbox-port = 13001
store-file = “/var/log/kannel/kannel.store”
# SMSC Fake
#group = smsc
#smsc = fake
#host = localhost
#port = 13013
#SMSC modem gsm
group = smsc
smsc = at
host = localhost
port = 13013
smsc-id = linuxku
modemtype = wavecom
device = /dev/ttyUSB0
speed = 115200
sms-center = 0816124
group = modems
id = WAVECOM
name = wavecom
detect-string = WAVECOM
init-string = “AT+CNMI=1,2,0,1,0;+CMEE=1″
# SMSBOX SETUP
group = smsbox
bearerbox-host = localhost
sendsms-port = 13131
sendsms-chars = “0123456789+”
log-file = “/var/log/kannel/smsbox.log”
log-level = 0
access-log = “/var/log/kannel/access.log”
# SEND-SMS USERS
group = sendsms-user
username = playsms
password = pwd
# SMS SERVICE ‘Default’
# there should be default always
group = sms-service
keyword = default
max-messages = 0
exec = /usr/local/bin/kannel_incoming %t %q %a
#get-url = “http://localhost/~playsms/plugin/gateway/kannel/geturl.php?t=%t&q=%q&a=%a”
Penjelasan:
Bagian SMSC Fake kita comment out sebab dia berfungsi untuk testing saja. Kita tidak akan bisa mengirimkan sms yang sesungguhnya menggunakan SMSC Fake ini. Sebaliknya, kita definisikan group smsc modem gsm. sms-center juga kita sesuaikan dengan kartu gsm kita.
Kita definisikan juga group modems. Yang penting disini adalah init-stringnya yaitu “AT+CNMI=1,2,0,1,0;+CMEE=1″, CMEE=1 itu berarti kita menginstruksikan modem agar menyebutkan jenis error yang terjadi pada Mobile Equipment kita. Kalau tidak dibuat verbose, maka ketika terjadi error misalnya pulsa kita habis sehingga tidak bisa kirim sms, modem gsm kita cuma bilang error tapi tidak disebutkan kenapa, sehingga kannel tidak mengetahui error apa yang terjadi:
2006-02-18 10:20:46 [8984] [7] ERROR: AT2[/dev/ttyUSB0]: Error occurs: ERROR (error number not known to us. ask google and add it.)
Setelah dibuat verbose menjadi keliatan sebab errornya:
2006-02-18 10:25:20 [8984] [7] CMS ERROR: +CMS ERROR: 38 (Network out of order)
Kemudian yang juga penting adalah bagian max-messages = 0 di group sms-service. Option max-message = 0 ini berguna agar modem kita tidak mengirimkan reply ketika menerima sms. Sebab akan terjadi kesalahan yang sangat fatal yaitu looping send-receive, dimana jika kita mengirimkan sms ke diri sendiri, maka modem akan mengirimkan reply ke diri sendiri, dan selanjutnya reply ini akan di reply, begitu seterusnya, sampai pulsa kita habis.
Bagaimana kannel bekerja?
Kannel sebenarnya lebih dari sekedar sms engine, dia juga dapat berfungsi sebagai wap engine. Ada 3 komponen utama kannel, yaitu: bearerbox, smsbox, dan wapbox. Bearerbox ini adalah inti dari kannel. Dia berfungsi sebagai koordinator dari 2 komponen lainnya yaitu smsbox dan wapbox. Kira2 demikian deh
C. Menginstall dan mensetup playsms
Untuk lengkapnya, baca file INSTALL dari playsms yah! Berikut cuplikannya:
1. It is important to meet all minimum requiments above (Its a must!)
2. Setup a system user named ‘playsms’ to manage PlaySMS
# adduser playsms
# passwd playsms
Note: on some Linux distributions adduser and passwd combined
3. On most Linux distributions actions (2) will create system user and group named playsms
with home directory /home/playsms, there you will install all PlaySMS files
4. Create public_html on user’s home directory, if its not already exists
# mkdir /home/playsms/public_html
5. Extract PlaySMS package somewhere (Place in /usr/local/src if you want to)
# tar -zxvf playsms-x.x.x.tar.gz -C /usr/local/src
# cd /usr/local/src/playsms-x.x.x
6. Copy ‘web’ directory to public_html directory and set owner back to user playsms again
(for security reason)
# cp -rR web/* /home/playsms/public_html
# chown -R playsms /home/playsms/public_html
# chmod 701 /home/playsms
7. Setup database (import database)
# mysqladmin -u root -p create playsms
# mysql -u root -p playsms < /usr/local/src/playsms-x.x.x/db/playsms.sql
Note: you dont need to use MySQL root access nor this method to setup PlaySMS
database, but this is beyond our scope, you should read MySQL manual’s for custom
installation method
8. Edit config.php on playsms web directory (/home/playsms/public_html/config.php)
Please read and fill all required fields carefully
9. Enter bin directory and copy playsmsd and playsmsd_start to /usr/local/bin
# cd /usr/local/src/playsms-x.x.x
# cd bin
# cp playsmsd playsmsd_start /usr/local/bin/
10. Enter /etc/init.d or /etc/rc.d/init.d and look for file rc.local, im sure you’ll
found it. Edit that file and put “/usr/local/bin/playsmsd_start” (without quotes) on the
bottom of the file (before exit if theres exit). This way playsmsd_start will be run
everytime the system startup. You need ‘root’ access for this purpose.
11 Browse http://localhost/~playsms and login using default administrator user
username: admin
password: admin
12. At this point you should be able to logon PlaySMS webbased interface.
Lets move on to gateway module part, the hard one
If you decide to use kannel gateway module, then you must install kannel on the same
server where PlaySMS installed. There are discussion on hoto install Kannel on separate machine
with PlaySMS.
Due to complexity of installation process for kannel, we decide to leave this module for experts.
Well experts, there’s something you should see on this package contrib/kannel/kannel.conf,
sms service ‘Default’ part.
Dont forget to:
1. Create kannel cache directory and make it writable to the web servers user
# mkdir /usr/local/cache
# mkdir /usr/local/cache/smsd
# chmod -R 777 /usr/local/cache
Note:
- make it writable to the world (chmod -R 777) just to simplify installation
- it is better if you know what is the web server’s user (eg: ‘nobody’)
and instead chmod -R 777 you use:
# chown -R nobody /usr/local/cache
2. Create log directory
# mkdir /var/log/kannel
3. Enter bin directory in this package, and copy kannel_incoming to /usr/local/bin
If you decide to use kannel gateway module, but you dont want to use ‘exec’ method in sms service,
just replace you kannel.conf near to sms service ‘Default’ part, with sms service ‘Default’ part in
this package contrib/kannel/kannel-geturl.conf
After copying sample configuration, dont forget to change ‘CHANGE_THIS_TO_YOUR_PLAYSMS_URL’
in your kannel.conf near to sms service ‘Default’ part, to your working PlaySMS URL
Catatan:
Di FC4, secara default direktori home user ngga bisa diakses dari web. Untuk membuatnya aktif, kita edit file /etc/httpd/conf/httpd.conf. Cari baris berikut dan beri tanda comment di depan UserDir disable:
# UserDir: The name of the directory that is appended onto a user’s home
# UserDir is disabled by default since it can confirm the presence
# UserDir disable
Ok, sekarang kita restart apache, dan kemudian kita coba buka web playsmsnya. Kalau ada di localhost, kita ketik ini di browser:
http://localhost/~playsms
Loginlah dengan username: admin, password: admin

D. Mentesting
Setelah semua siap, marilah kita testing.
- Jalankan bearerbox
bearerbox /etc/kannel.conf
2006-02-16 09:11:48 [6196] [0] INFO: Kannel bearerbox II version 1.4.0 starting
2006-02-16 09:11:48 [6196] [0] INFO: Loading store file `/var/log/kannel/kannel.store’
2006-02-16 09:11:48 [6196] [0] INFO: Store-file size 0, starting to unpack
2006-02-16 09:11:48 [6196] [0] INFO: Retrieved 0 messages, non-acknowledged messages: 0
2006-02-16 09:11:48 [6196] [7] DEBUG: Thread 7 (gw/smsc/smsc_at.c:at2_device_thread) maps to pid 6196.
2006-02-16 09:11:48 [6196] [0] INFO: MAIN: Start-up done, entering mainloop
2006-02-16 09:11:48 [6196] [0] DEBUG: AT2[linuxku]: start called
2006-02-16 09:11:48 [6196] [8] DEBUG: Thread 8 (gw/bb_smscconn.c:sms_router) maps to pid 6196.
2006-02-16 09:11:48 [6196] [8] DEBUG: sms_router: time to sleep
2006-02-16 09:11:48 [6196] [8] DEBUG: sms_router: list_len = 0
2006-02-16 09:11:48 [6196] [7] DEBUG: AT2[linuxku]: detecting modem type
2006-02-16 09:11:48 [6196] [7] INFO: AT2[linuxku]: opening device
2006-02-16 09:11:48 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:49 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:49 [6196] [7] INFO: AT2[linuxku]: speed set to 115200
2006-02-16 09:11:49 [6196] [7] DEBUG: AT2[linuxku]: –> ^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: –> AT^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– AT
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: –> AT&F^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– AT&F
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: –> ATE0^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– ATE0
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: –> ATI^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– WAVECOM MODEM
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– MULTIBAND 900E 1800
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: found string <WAVECOM>, using modem definition <wavecom>
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CSMS=?^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– +CSMS: (0,1)
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:51 [6196] [7] INFO: AT2[linuxku]: Phase 2+ is supported
2006-02-16 09:11:51 [6196] [7] INFO: AT2[linuxku]: closing device
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: opening device
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: init device
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: speed set to 115200
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> ATZ^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> AT^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– AT
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> AT&F^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– AT&F
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> ATE0^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– ATE0
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> AT+IFC=2,2^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CPIN?^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <– +CPIN: READY
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CSCA=”0816124″^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CMGF=0^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CSMS=?^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– +CSMS: (0,1)
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:12:03 [6196] [7] INFO: AT2[linuxku]: Phase 2+ is supported
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CSMS=1^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– +CSMS: 1,1,1
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CNMI=1,2,0,1,0;+CMEE=1^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:12:03 [6196] [7] INFO: AT2[linuxku]: AT SMSC successfully opened.
- Jalankan smsbox:
smsbox /etc/kannel.conf
2006-02-12 13:36:20 [7002] [0] DEBUG: Kannel smsbox version 1.4.0 starting
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 4 (gw/smsbox.c:obey_request_thread)
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 5 (gw/smsbox.c:url_result_thread)
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 6 (gw/smsbox.c:http_queue_thread)
2006-02-12 13:36:20 [7002] [0] INFO: Connected to bearerbox at localhost port 13001.
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 7 (gw/heartbeat.c:heartbeat_thread)
2006-02-12 13:36:20 [7002] [2] DEBUG: Thread 2 (gwlib/http.c:server_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [3] DEBUG: Thread 3 (gw/smsbox.c:sendsms_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [1] DEBUG: Thread 1 (gwlib/fdset.c:poller) maps to pid 7002.
2006-02-12 13:36:20 [7002] [4] DEBUG: Thread 4 (gw/smsbox.c:obey_request_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [5] DEBUG: Thread 5 (gw/smsbox.c:url_result_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [6] DEBUG: Thread 6 (gw/smsbox.c:http_queue_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [7] DEBUG: Thread 7 (gw/heartbeat.c:heartbeat_thread) maps to pid 7002.
- Buka playsms dan coba kirim sms ke temen kita:

Di /var/log/kannel/kannel.log akan terlihat:
2006-02-16 09:12:16 [6196] [6] DEBUG: Started thread 9 (gw/bb_boxc.c:function)
2006-02-16 09:12:16 [6196] [9] DEBUG: Thread 9 (gw/bb_boxc.c:function) maps to pid 6196.
2006-02-16 09:12:16 [6196] [9] INFO: Client connected from <127.0.0.1>
2006-02-16 09:12:16 [6196] [9] DEBUG: Started thread 10 (gw/bb_boxc.c:boxc_sender)
2006-02-16 09:12:16 [6196] [10] DEBUG: Thread 10 (gw/bb_boxc.c:boxc_sender) maps to pid 6196.
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <– +CMT: ,35
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <– 059126181642040C9126189519497500006020619041628212502B284C6EA7DDA0B03C0D5297D9E535
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: Numeric sender (international) <+628153314433>
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: User data length read as (18)
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: Udh decoding done len=18 udhi=0 udhlen=0 udh=”
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: –> AT+CNMA^M
2006-02-16 09:15:06 [6196] [10] DEBUG: send_msg: sending msg to box: <127.0.0.1>
2006-02-16 09:15:06 [6196] [10] DEBUG: boxc_sender: sent message to <127.0.0.1>
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <– OK
2006-02-16 09:15:07 [6196] [9] DEBUG: boxc_receiver: got ack
2006-02-16 09:15:07 [6196] [1] DEBUG: Dumping 0 messages and 0 acks to store
2006-02-16 09:15:16 [6196] [9] DEBUG: boxc_receiver: heartbeat with load value 0 received
Di /var/log/kannel/smsbox.log akan terlihat:
2006-02-17 11:08:30 [9423] [3] INFO: smsbox: Got HTTP request </cgi-bin/sendsms> from <127.0.0.1>
2006-02-17 11:08:30 [9423] [3] INFO: sendsms used by <playsms>
2006-02-17 11:08:30 [9423] [3] INFO: sendsms sender:<playsms:+62816195566> (127.0.0.1) to:<+628153314433> msg:<Test kirim sms – fajar>
2006-02-17 11:08:30 [9423] [3] DEBUG: message length 56, sending 1 messages
2006-02-17 11:08:30 [9423] [3] DEBUG: Status: 202 Answer: <Sent.>
2006-02-17 11:08:30 [9423] [3] DEBUG: HTTP: Destroying HTTPClient area 0×91794e0.
2006-02-17 11:08:30 [9423] [3] DEBUG: HTTP: Destroying HTTPClient for `127.0.0.1′.
2006-02-17 11:08:35 [9423] [4] INFO: Starting delivery report <playsms> from <+628161922701>
2006-02-17 11:08:35 [9423] [4] DEBUG: Started thread 8 (gwlib/fdset.c:poller)
2006-02-17 11:08:35 [9423] [4] DEBUG: Started thread 9 (gwlib/http.c:write_request_thread)
2006-02-17 11:08:35 [9423] [8] DEBUG: Thread 8 (gwlib/fdset.c:poller) maps to pid 9423.
2006-02-17 11:08:35 [9423] [9] DEBUG: Thread 9 (gwlib/http.c:write_request_thread) maps to pid 9423.
2006-02-17 11:08:35 [9423] [9] DEBUG: Parsing URL `http://localhost/~playsms/plugin/gateway/kannel/dlr.php?type=8&slid=93&uid=1′:
2006-02-17 11:08:35 [9423] [9] DEBUG: Scheme: http://
2006-02-17 11:08:35 [9423] [9] DEBUG: Host: localhost
2006-02-17 11:08:35 [9423] [9] DEBUG: Port: 80
2006-02-17 11:08:35 [9423] [9] DEBUG: Username: (null)
2006-02-17 11:08:35 [9423] [9] DEBUG: Password: (null)
2006-02-17 11:08:35 [9423] [9] DEBUG: Path: /~playsms/plugin/gateway/kannel/dlr.php
2006-02-17 11:08:35 [9423] [9] DEBUG: Query: type=8&slid=93&uid=1
2006-02-17 11:08:35 [9423] [9] DEBUG: Fragment: (null)
Kalau kita lihat di Outboxnya playsms, akan kelihatan apakah sms kita sampai (delivered) atau tidak:

Penutup
Demikianlah tutorial membuat gateway sms menggunakan Modemn GSM Itegno, Kannel, dan Playsms. Tutorial ini tentu saja masih jauh dari sempurna, namun begitu diharapkan dapat bermanfaat sebagai panduan langkah awal bagi kita yang ingin memiliki sms gateway sendiri.
Merdeka!
Ditulis dalam HP | Bertanda: SMS GATEWAY, MODEM GSM, Kannel, Itegno, PlaySMS | 1 Komentar »
Squid-Password Authentikasi, Bandwidth Management dan Tanpa Multiple Login Using NCSA
Ditulis oleh Naruto di/pada 19 November 2008
Ditulis dalam Linux | Bertanda: NCSA, Squid, bandwidth, Management | Leave a Comment »
Menghemat Quota dan mempercepat internet dengan toonel
Ditulis oleh Naruto di/pada 19 November 2008
Karena internet di negeri kita yang tercinta ini masih menjadi kebutuhan golongan menengah keatas dengan kata lain. Internet di indonesia masih tergolong mahal. Maka aplikasi ini bisa berguna untuk kita agar kita dapat berhemat sedikit. Dan juga negara kita sering yang namanya ngeblok situs2
Aplikasi ini bisa menghemat badwidth karena mekanisme kerjanya yakni mekanisme sistem kompresi. Jadi aplikasi ini sangat cocok digunakan untuk perhitungan tarif internet yang berdasarkan banwidth/kuota. Seperti contohnya speedy, atau intenet melalui operator telpon selular (gprs, cdma, dll). Ok, langsung saja. aplikasi ini namanya toonel.
Untung, aplikasi ini gratis. Aplikasi yang sama dan mengharuskan kamu untuk membayar seperti nitro, onspeed, dll. Mudah-mudah aplikasi ini akan tetap gratis untuk seterusnya. Jika kamu mengunjungi situsnya, maka kegunaan toonel adalah sebagai berikut
toonel.net is an experiment in a technique for conserving network bandwidth. If you are paying a fee based on the amount of data you transfer (e.g. 3G/GPRS/DSL/CDMA) and have monthly download limit, or if you have narrowband connection (e.g. dialup modem) then you are most likely to appreciate the service toonel.net offers. There are number of toonel.net client application packages. All solutions are 100% Java based and therefore this service can be used on any platform with an installed Java Runtime Environment, including mobile phones.
Yang, jago bahasa ingris, pasti sudah bisa mengerti tujuannya toonel. berikut adalah step by step, menjalakan toonel pada windows xp (kebetulan dilaptop saya yang terinstall adanya windows xp), dan browsing dengan firefox (ini juga karena saya memang senang browsing dengan rubah api ini)
1. pertama tentunya kita harus mendownload dulu, aplikasinya silahkan kunjungi link ini :
http://www.toonel.net/downloads.html
kemudian pilih yang “Toonel Generic Swing Package (Linux, Sun Solaris, Windows)”. karena kita akan menginstall nya pada windows (oya, toonel juga tersedia untuk PDA/windows mobile, sybmian, dll).
2. wah…. ternyata file extensionnya jar, file apa lagi ini? jangan kaget dulu. “Jar” itu adalah aplikasi yang dijalankannya dengan java runtime. Jadi kamu harus menginstall java dulu di komputer kamu. silahkan kunjungi situsnya dan download kemudian install aja langsung dari situsnya (java.com). atau buka firefox mu trus klik link ini :
http://www.java.com/en/download/windows_xpi.jsp?locale=en&host=www.java.com (sekitar 7mb)
३. setelah menginstall Java, maka tinggal klik aja lansung file toonel.jar yang kamu download tadi, and kamu akan menemukan tampilan aplikasi toonel kurang lebih seperti ini.
berarti toonel sudah aktif. sekarang tinggal kita menyuruh firefox untuk make toonel kalo mau browsing internet, biar banwidthnya terkompresi (biar lebih hemat dan cepat).
4. buka firefox mu. klik tools / option. maka akan dapat seperti ini :
klik connection setting maka akan dapat layar seperti ini :
kemudian ubah http proxy menjadi 127.0.01 port 8080, pokonya ikuti aja sesuai digambar.
5. kemudian restart firefox mu. coba deh visit google.com kalo bukan google dalam bahasa indonesia, berarti selamat, Kamu sudah berinternet dengan hemat dan cepat. kalo masih dalam bahasa indonesia, coba perhatikan langkah diatas lagi.
Oya tambahan jadi tiap kali kamu mau browsing internet harus jalankan toonel dulu baru bisa pake firefox mu.
Ditulis dalam Internet | Bertanda: Internet, toonel | Leave a Comment »
Membuat Billing Hotspot dengan Linksys WRT54GL
Ditulis oleh Naruto di/pada 19 November 2008
Ketika suatu hari ke cafe dan disitu terdapat tulisan Free Hotspot, rasanya pengen juga nerapin dan mencobanya sendiri. Pada artikel kali ini menggunakan Wireless Linksys WRT54GL versi 1.1 (Pastikan ada code L = Linux dan versinya sebaiknya 1.1 karena versi 1.0 ukuran file flash yang lebih terbatas), juga tetap memerlukan 1 PC (kebetulan di install debian linux) komputer untuk login sistem ke hotspotnya (via freeradius dan mysql), serta dapat lebih lanjut dikembangkan sebagai billing sistem pula(phpMyPrepaid namun mengenai phpmyprepaid tidak dijelaskan disini).
Tutorial dan instruksi ini tidak memberikan garansi apapun. Kejadian yang mungkin terjadi selama proses flashing firmware, dan kerusakan apapun pada alat Wireless Router Anda itu merupakan tanggung jawab Anda sendiri. Lakukan dengan hati-hati dan sabar dalam flashing karena penulis juga pernah merusakan firmware ketika berpindah dari openwrt ke dd-wrt ini.
Flash Firmware
Menggunakan firmware dd-wrt sebagai pengganti dari Linksys Anda. Hati-hati saat melakukan flash ini ikuti langkah demi langkah dengan tenang dan sabar. Kesalahan akan menyebabkan Alat Router Anda tidak bisa dipakai lagi. Jadi sebaiknya pakai yang masih bergaransi jadi sewaktu-waktu Anda bisa kembalikan lagi seperti yang penulis alami ketika terjadi kesalahan flashing.
Sebaiknya proses flashing dimulai dari firmware bawaan default Linksys,
1. Login ke WRT54GL dengan Default IP adalah : 192.168.1.1 dengan User: <kosongin>; Password: admin
2. Masuk ke Menu Administration dan klik Factory Defaults dan pilih Yes
3. Klik tombol Save Settings, kemudian akan muncul halaman baru tekan Continue
4. Masuk ke Menu Administration dan klik Firmware Upgrade
5. Klik tombol Browse dan arahkan ke file dd-wrt
6. Klik tombol Upgrade, kemudian router akan mengupload file dan melakukan flash firmware. Kemudian akan muncul halaman yang menunjukkan proses upload berhasil. Tunggu kurang lebih 5 menit sebelum menekan Continue
7. Jika kemudian router tidak bisa diakses, jangan panik tekan tombol Reset selama kurang lebih 30 detik.
8. Log In menggunakan user: root dengan password: admin.
Setting DD-WRT
1. Masuk Ke Menu Setup, lalu ke sub menu Basic Setup
Internet Connection Type : Sesuaikan dengan sistem yang ada di lingkungan Anda
Network Setup – Router IP
- Local IP Address isi dengan Lokal IP Address di LAN Anda, disini diasumsikan 192.168.0.20
- Subnet Mask : 255.255.255.0
- Gateway : 192.168.0.20
- Local DNS : IP DNS ISP
Disable DHCP
2. Masuk ke Menu Administration – Hotspot (diasumsikan IP komputer 192.168.0.13)
Enable Chillispot
Separate Wifi from the LAN Bridge : Disable
Primary Radius Server IP/DNS : 192.168.0.13
Backup Radius Server IP/DNS : 192.168.0.13
DNS IP : IP DNS ISP
Redirect URL : https://192.168.0.13/cgi-bin/hotspotlogin.cgi
Shared Key : testing123
DHCP Interface : LAN&WLAN
Radius NAS ID : wasp1
UAM Secret : testing123
UAM Any DNS : 0
Setting free-radiu s
1. Buat IP Alias – 192.168.0.13 (Karena PC ini mendapatkan IP automatis dr Chillispot – Linksys)
# ifconfig eth0:1 192.168.0.13
2. Buat database radius dan salin file sql dari free radius kedalamnya.
3. Edit /etc/freeradius/radiusd.conf
$INCLUDE {$confdir}/sql.conf
4. Edit /etc/freeradius/client.conf
client 192.168.0.0/24 {
secret = testing123
shortname = priv-net
nastype = other
}
5. Edit /etc/freeradius/sql.conf
sql {
driver = "rlm_sql_mysql"
server = "localhost"
login = "root"
password = ""
radius_db = "radius"
Setting Web Login
1. Pada akhir dari /etc/apache2/sites-enabled/000-default tambahkan
<VirtualHost *:443> DocumentRoot /var/www SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem 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> </VirtualHost>
2. Rubah bagian <VirtualHost *> menjadi <VirtualHost *.:80>
3. Pada file /etc/apache2/ports.conf tambahkan: Listen 443
4. Edit /usr/lib/cgi-bin/hotspotlogin.cgi
$uamsecret= "testing123";
Lumayan sekarang orang mesti login dulu jika mau menggunakan internet via Access Point kita. (username dan password nya sama dengan username dan password di PC jadi kalo belom ada mesti di tambahkan usernya dulu)
Ditulis dalam Network | Bertanda: Biling, Hotspot, Linksys WRT54GL | 2 Komentar »
Memblokir akses ke situs web dengan squid
Ditulis oleh Naruto di/pada 19 November 2008
Artikel pertama saya ini akan membahas mengenai konfigurasi proxy web cache dengan squid agar dapat memblokir situs-situs tertentu, terutama situs yang bernuansa pornografi, kekerasan dan sebagainya. Hal ini mungkin diperlukan di warnet atau pun di tempat lain dimana memerlukan proteksi dari situs-situs tertentu.
Langkah yang saya lakukan telah saya uji pada sistem RH6.2 dengan squid-2.3.STABLE2 dan juga bisa diterapkan pada versi lainnya.
Catatan :
- Squid telah terinstal dengan baik dan mendukung Transparent proxy, jika belum lihat artikel “Mengkonfigurasi squid (proxy web cache) sebagai transparan proxy ” oleh hari-huhui (
<!–
var prefix = ‘ma’ + ‘il’ + ‘to’;
var path = ‘hr’ + ‘ef’ + ‘=’;
var addy36561 = ‘h4ri’ + ‘@’;
addy36561 = addy36561 + ‘telkom’ + ‘.’ + ‘net’;
document.write( ‘<a ‘ + path + ‘\” + prefix + ‘:’ + addy36561 + ‘\’>’ );
document.write( addy36561 );
document.write( ‘<\/a>’ );
//–>\n h4ri@telkom.net
<!–
document.write( ‘<span style=\’display: none;\’>’ );
//–>
).
- Ipchains atau Iptables telah terinstal dan mendukung transparent proxy.
- Alamat IP lokal yang digunakan 192.168.30.0/24
- Squid dikonfigurasi menggunakan port 8080
Prinsip Kerja :
—————–
Pada prinsipnya ada beberapa cara untuk memblokir situs porno dengan mengatur file konfigurasi “squid.conf” :
1. Menyaring berdasarkan nama domain atau URL lengkap, misalnya memblokir situs “www.playboy.com” maka cukup ditambahkan dua baris berikut ini :
acl bad dstdomain www.playboy.com
http_access deny bad
Kelemahan cara ini, situs “playboy.com” masih bisa diakses dan juga akan banyak acl yg harus di definisikan. Solusinya dengan cara membuat file khusus yg berisi daftar situs-situs yang diblokir sehingga konfigurasinya menjadi sbb :
acl bad dstdomain “/etc/squid/sex”
http_access deny bad
dan isi file “/etc/squid/sex” misalnya sbb:
vicidi.com
bedclip.com
indonona.com
exoticazza.com
dewasex.com
2. Menyaring berdasarkan kata yang terkandung pada nama domain, misalnya saya ingin memblokir situs yang mengandung kata “nude” maka konfigurasinya sbb :
acl bad url_regex -i nude
http_access deny bad
atau dengan membuat file khusus berisi daftar kata-kata yang dilarang maka sbb:
acl bad url_regex -i “/etc/squid/badwords”
http_access deny bad
dan isi file “/etc/squid/badwords” misalnya sbb:
theorgy
penthousemag
playboy
1stsex
lolita
3. Kedua cara diatas masih lemah karena situs “playboy.com” masih bisa diakses jika Anda tahu IP address situs tersebut. Tentunya hal ini terjadi jika client komputer Anda pada pinter-pinter, jika hal diatas masih belum mencukupi maka hal yang cukup berat harus kita lakukan yaitu dengan cara membuat file daftar IP address situs-situs yang diblokir. Hal ini bisa dilakukan dengan menggunakan utility nslookup, misal #nslookup playboy.com.
Contoh Konfigurasi :
————————
OK deh, cukup masalah teorinya. Berikut ini adalah konfigurasi squid yang saya buat dengan menggunakan cara ke-2 untuk memblokir beberapa situs porno :
1.) Konfigurasi “/etc/squid/squid.conf”
http_port 8080
icp_port 0
cache_mem 80 MB
maximum_object_size 256 KB
cache_dir ufs /cache 200 16 256
memory_pools_limit 32 MB
redirect_rewrites_host_header off
replacement_policy GDSF
half_closed_clients off
#———–transparent proxy ———–
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
#——————————————-
acl QUERY urlpath_regex cgi-bin ?
no_cache deny QUERY
acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
acl lan src 192.168.30.0/255.255.255.0
acl Safe_ports port 80 443 210 119 563 70 21 1025-65535
acl CONNECT method CONNECT
acl notsex url_regex -i “/etc/squid/notsex”
acl sex url_regex -i “/etc/squid/sex”
no_cache deny SEX
http_access allow notsex all
http_access deny sex all
http_access allow lan
http_access allow localhost
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all
#—————- administration info ————
cache_mgr
<!–
var prefix = ‘ma’ + ‘il’ + ‘to’;
var path = ‘hr’ + ‘ef’ + ‘=’;
var addy26540 = ‘alfinux’ + ‘@’;
addy26540 = addy26540 + ‘telkom’ + ‘.’ + ‘net’;
document.write( ‘<a ‘ + path + ‘\” + prefix + ‘:’ + addy26540 + ‘\’>’ );
document.write( addy26540 );
document.write( ‘<\/a>’ );
//–>\n alfinux@telkom.net
<!–
document.write( ‘<span style=\’display: none;\’>’ );
//–>
cache_effective_user squid
cache_effective_group squid
log_icp_queries off
cachemgr_passwd mypassword all
forwarded_for off
buffered_logs on
visible_hostname alfinuke.edcentral.pdk
ftp_user
<!–
var prefix = ‘ma’ + ‘il’ + ‘to’;
var path = ‘hr’ + ‘ef’ + ‘=’;
var addy4844 = ’squid’ + ‘@’;
addy4844 = addy4844 + ‘edcentral’ + ‘.’ + ‘pdk’;
document.write( ‘<a ‘ + path + ‘\” + prefix + ‘:’ + addy4844 + ‘\’>’ );
document.write( addy4844 );
document.write( ‘<\/a>’ );
//–>\n squid@edcentral.pdk
<!–
document.write( ‘<span style=\’display: none;\’>’ );
//–>
2.) Buat daftar situs yang diblokir (vi /etc/squid/sex) dengan editor favorit Anda.
Dan berikut ini file daftar situs yg di blokir baik berdasarkan kata maupun nama situs (/etc/squid/sex):
.*.(praline|eroticworld|orion).de
.*.(theorgy|penthousemag|playboy|1stsex|lolita|sexpix|sexshop).*
.*.(smutland|hustler.onprod|hustler2.onprod|cybervixen|asiansex).*
ftp.netcom.com/pub/ac/acott
www.tvtoday.de:9600
.*.(carolcox|eroticbodies).*
.*.(cyberlustxxx|cyberporn|intersex).inter.net*
.*.(eroticxxx|sexy4you|dani|danni|hotsex|kinky|lesbos|porno|xpics).*
.*.(over21|regsex|sexnet|sextoy|smeggy|sordid).*
.*.(cybersex|hcabaret|livesex|sex4you|sexmall).*
.*.(lovesexy|nastysex|pantless|playware|showgirl).*
.*.(2xxxcite|dreamsex|futuresex|sover21sex|explaza).*
.*.(xxxparadise|playbabe|celebnude|greyhawks|sexfinder|xxx-video).*
.*.(sexaphone|beate-uhse|fantasysex|sexparlor|sexnetwork).*
.*.(cybervixen|internetsex|silverotica|erotica2000|ultimatexxx).*
.*.(xxx-rawsex-xxx|amateurs|amateursweb|erotica-toys|orion-erotic).*
.*.(sexy-jewelry|hollywoodxxx|cybererotica|sexfantasy).*
.*.(danisherotica|sexy-playmates|nastyhabits|sugarandspice|kathryn).*
.*.(persiankitty|adultplayground|supernudes|playsex).*
.*.(pinupmall|porn.byus|smutland|sizzle|heavyhangers).*
.*.(hardcorjunky|fetish|adultplayhouse|pornpics|asiansex).*
.*.(hustler|freepics|wetgirls|tropixxx|sex|pixxxcity).*
.*.(4adultsonly|peepshow|voulezvous|rated-x|69pornplace).*
.*.(shavedsluts|nudepalace|xxxguide|pics-xxx|naughty|thehotzone).*
.*.(nervemag|carolcox|snatches|freeporn|playgirlmag|cyberspice).*
.*.(erotica|afro-erotica).*
(teen|girls|xxxpic).*
(www.sex|*****.bahnhof).*
.*.(gay|sex).*
.*.fun.nl
www.playmen.it/
www.gisa.it/sex/
www.iol.it/sexol/
globall.com/j/xxx/
www.hh.nl/n-m/pic/
www.pi.net/~pauze/
www.oden.se/~hedback/
aau.diasoft.ru/~hotsex/
www.donsworld.com/xadultx/
www.well.com/user/sexymate/
ftp.zippo.com/pictures/erotica/
mm.iit.uni-miskolc.hu/Data/ladies/
drn.zippo.com/zippo-bin/wwwdecode/
pilot.msu.edu/user/rozwadow/pamela
#——manual——–
pageseeker.com
arsipceritaseru
freeones
vicidi
bedclip
indonona.com
exoticazza.com
dewasex.com
extrajos.com
bopekindo.com
sanggrahan.org
sanggrahan.com
grahan.com
vicidi.com
17tahun.com
ceritaseru.org
ceritapanas.com
celebdirectory.com
hiburan.web1000.com
seeasians.com
nyamuk.adultnations.com
3.) Daftar situs exceptions (pengecualian
) (vi /etc/squid/notsex)
Dan satu lagi daftar situs yang bukan termasuk situs porno, sebagai pencegahan agar tidak diblokir :
.*.msexchange.*
.*.msexcel.*
.*freetown.*
.*geek-girls.*
.*scsext.*
missingheart
documen
button
wirelessexcite
msexchange
msexcel
aids.lv
freetown
geek-girls
scsext
steen
adulteducation
sekst
newshits
glass
georgia
peet
chicag
speech
speed
speedtest
liputan6.com
expedia.com
Maintenance/Updating
————————–
Walaupun dengan beberapa kelemahan yang ada, tapi cara-cara yang digunakan masih cukup efektif untuk mencegah para pengguna Internet pemula mengakses situs-situs yang tidak baik. Dan tentunya tugas Anda sebagai Administrator dari proxy server tersebut adalah menjaga agar Anda tidak kalah dengan client yang lain dalam hal perbendaharaan situs “nude” yang diaksesnya. Tentu saja dengan selalu mengupdate file-file daftar tersebut (/etc/squid/sex dan /etc/squid/notsex). Jika ternyata ada situs yang client Anda ingin akses dan ternyata diblokir, maka nama situs tersebut bisa Anda masukkan pada daftar di “/etc/squid/notsex”.
Halaman Peringatan/Redirector
————————————-
Dan untuk sedikit peringatan kepada client bahwa kita mengawasi aktivitas mereka, bisa dilakukan dengan memodifikasi file “/etc/squid/errors/ERR_ACCESS_DENIED” dan masukkan sedikit javascript untuk meredirect ke situs lain, contoh yang saya lakukan sbb yang akan mengarahkan client ke situs intranet atau situs lain (biar insyaf, eling atuh !!!
) :
#————— /etc/squid/errors/ERR_ACCESS_DENIED ———————–
<HTML><HEAD>
<TITLE>ERROR: The requested URL could not be retrieved</TITLE>
<–
var howMany = 10; // jumlah situs pengganti
var page = new Array(howMany+1);
page[0]=”http://192.168.10.65″;
page[1]=”http://www.eramuslim.com”;
page[2]=”http://www.klikdt.com”;
page[3]=”http://www.dikmenjur.net”;
page[4]=”http://www.dikmenjur.com”;
page[5]=”http://www.jis.or.id”;
page[6]=”http://www.harunyahya.com”;
page[7]=”http://www.hidayatullah.com”;
page[8]=”http://www.myquran.com”;
page[9]=”http://www.sekolah2000.or.id”;
page[10]=”http://www.percikaniman.com”;
function rndnumber(){
var randscript = -1;
while (randscript < 0 || randscript > howMany || isNaN(randscript)){
randscript = parseInt(Math.random()*(howMany+1));
}
return randscript;
}
quo = rndnumber();
quox = page[quo];
window.location=(quox);
</HEAD>
<BODY>
<H1>ERROR</H1>
<H2>The requested URL could not be retrieved</H2>
While trying to retrieve the URL:
%U
The following error was encountered:
Access Denied.
Access control configuration prevents your request from
being allowed at this time. Please contact your service provider if
you feel this is incorrect.
Your cache administrator is %w.
#————— /etc/squid/errors/ERR_ACCESS_DENIED ———————–
Pengembangan lebih lanjut dari blokir akses ini bisa menggunakan aplikasi pihak ketiga di bawah ini dan kalau ada waktu mungkin akan saya buat artikel penggunaannya
:
- http://blacklist.dansguardian.org/ (DanGuardian)
- http://www.squidguard.org/ (SquidGuard)
Penutup :
———-
Demikian tulisan yang cukup panjang ini. Mudah-mudahan ada penyempurnaan dan tambahan dari para master sekalian. Terima kasih saya ucapkan kepada rekan-rekan di milis
<!–
var prefix = ‘ma’ + ‘il’ + ‘to’;
var path = ‘hr’ + ‘ef’ + ‘=’;
var addy23703 = ‘linux-admin’ + ‘@’;
addy23703 = addy23703 + ‘linux’ + ‘.’ + ‘or’ + ‘.’ + ‘id’;
document.write( ‘<a ‘ + path + ‘\” + prefix + ‘:’ + addy23703 + ‘\’>’ );
document.write( addy23703 );
document.write( ‘<\/a>’ );
//–>\n linux-admin@linux.or.id
<!–
document.write( ‘<span style=\’display: none;\’>’ );
//–>
dan juga Master Onno
. Kritik,saran maupun pertanyaan silakan japri ke
<!–
var prefix = ‘ma’ + ‘il’ + ‘to’;
var path = ‘hr’ + ‘ef’ + ‘=’;
var addy26540 = ‘alfinux’ + ‘@’;
addy26540 = addy26540 + ‘telkom’ + ‘.’ + ‘net’;
document.write( ‘<a ‘ + path + ‘\” + prefix + ‘:’ + addy26540 + ‘\’>’ );
document.write( addy26540 );
document.write( ‘<\/a>’ );
//–>\n alfinux@telkom.net
<!–
document.write( ‘<span style=\’display: none;\’>’ );
//–>
.
Referensi :
————
- Securing & Optimizing Linux : RedHat Edition by Gerhard Mourani
- Squid.conf
- http://web.onda.com.br/orso/sxcontrol.html
- http://blacklist.dansguardian.org/
Wassalamu’alaikum wr.wb.
Ditulis dalam Linux | Bertanda: Squid, blok | 1 Komentar »
Mysql based auth di squid
Ditulis oleh Naruto di/pada 19 November 2008
artikel ini dibuat untuk kamu2 yg ingin membuat authentifikasi squid dan user dan password disimpan di database mysql
asumsi-2:
1. squid-2.4 atau squid-2.5 terinstall dgn baik, dan user dan group yg menjalankan Squid adalah squid (lihat /etc/passwd)
2. mysql (versi berapa aja) terinstall dgn baik
3. RH 7.1 (atau linux yg lainnya
4. gcc, et al
5. admin tidak gila
6. yg kurang mohon ditambahkan sendiri
file yg perlu di download:
mysql_auth-0.5.tar.gz (http://freshmeat.net/projects/mysql_auth/)
langkah2 :
1. Ekstrak file mysql_auth
# tar xzpf mysql_auth-0.5.tar.gz
# cd mysql_auth-0.5
2. Cari dan catat lokasi file mysql.h dan libmysqlclient.a
# locate mysql.h
/usr/include/mysql/mysql.h
# locate libmysqlclient.a
/usr/lib/mysql/libmysqlclient.a
3. edit file Makefile
# vi Makefile
ubah baris2 berikut :
a. CFLAGS = -I/usr/local/include -L/usr/local/lib
menjadi
CFLAGS = -I/usr/include/mysql -L/usr/lib/mysql
note : perhatikan yg dicetak tebal di langkah 2 harus sama dengan yg dicetak tebal pada langkah diatas
b. $(INSTALL) -o nobody -g nogroup -m 755 mysql_auth /usr/local/squid/bin/mysql_auth
menjadi
$(INSTALL) -o squid -g squid -m 755 mysql_auth /usr/bin/mysql_auth
c. $(INSTALL) -o nobody -g nogroup -m 600 $(CONF) /usr/local/squid/etc/mysql_auth.conf
menjadi
$(INSTALL) -o squid -g squid -m 600 $(CONF) /etc/mysql_auth.conf
d. $(INSTALL) -o nobody -g nogroup -m 600 $(CONF) /usr/local/squid/etc/mysql_auth.conf.default
menjadi
$(INSTALL) -o squid -g squid -m 600 $(CONF) /etc/mysql_auth.conf.default
catatan : bila user dan group yg menjalankan bukan “squid”, misalnya “otong”, ganti -o squid -g squid menjadi -o otong -g otong
4. edit src/define
# vi +5 src/define.h
ubah baris
#define CONFIG_FILE “/usr/local/squid/etc/mysql_auth.conf”
menjadi
#define CONFIG_FILE “/etc/mysql_auth.conf”
5. compile dan install
# make
# make install
6. tambahkan database untuk authentifikasi
# cd scripts
# mysql -u root -p < create_script
7. untuk konfigurasi file /etc/mysql_auth.conf, tambahkan user yang bisa menangani mysql_auth database, misalnya user squid dan password squid
a. ganti user menjadi
user squid
b. ganti password menjadi
password squid
c. enkripsi password user menjadi
encrypt_password_form YES
8. tambahkan user ke database
# /usr/bin/mypasswd userbaru passwordnya
9. test mysql_auth
# /usr/bin/mysql_auth
userbaru
passwordnya
OK / ERR
10. konfigurasi squid
a. untuk squid 2.4 tambahkan direktif ini
proxy_auth_realm Squid proxy server
authenticate_program /usr/bin/mysql_auth
authenticate_ttl 10 seconds
authenticate_children 10
acl butuhpasswd proxy_auth REQUIRED
http_access allow butuhpasswd
http_access deny all
b. untuk squid 2.5. tambahkan direktif ini
auth_param basic program /usr/bin/mysql_auth
auth_param basic realm Squid proxy-caching web server
auth_param basic children 5
auth_param basic credentialsttl 2 hours
acl password proxy_auth REQUIRED
http_access allow password
authenticate_ip_ttl 2 hours
http_access deny all
11. arahkan browser dengan menggunakan proxy, klik tool -> internet option -> Connections -> LAN Settings
Ditulis dalam Linux | Bertanda: Squid, mysql | 1 Komentar »
Squid-Password Authentication Using NCSA
Ditulis oleh Naruto di/pada 19 November 2008
Anda bisa mengatur Squid untuk menanyakan para pemakai untuk satu username dan password. Squid datang dengan satu program yang disebut ncsa_auth yang membaca NCSA-compliant apapun meng-enkripsi file password. Anda bisa menggunakan program htpasswd yang datang meng-install dengan Apache untuk menciptakan password anda. Berikut cara membuatnya:
1) Buat file password. Nama file password harus /etc/squid/squid_passwd, dan anda perlu untuk meyakinkan itu dapat dibaca universal.
[root@bigboy tmp]# touch /etc/squid/squid_passwd
[root@bigboy tmp]# chmod o+r /etc/squid/squid_passwd
2) Gunakan program htpasswd untuk menambahkan user ke file password. Anda bisa menambahkan para user setiap saat tanpa harus merestart Squid. Dalam hal ini, anda menambahkan satu username www:
[root@bigboy tmp]# htpasswd /etc/squid/squid_passwd www
New password:
Re-type new password:
Adding password for user www
[root@bigboy tmp]#
3) Temukan file ncsa_auth menggunakan perintah locate.
[root@bigboy tmp]# locate ncsa_auth
/usr/lib/squid/ncsa_auth
[root@bigboy tmp]#
4) Edit squid.conf; khususnya, anda perlu untuk mendefinisikan program autentikasi di squid.conf, dalam hal ini ncsa_auth. Berikutnya, buat satu ACL bernama ncsa_users dengan kata kunci REQUIRED dimana memaksa Squid untuk menggunakan NCSA auth_param metoda yang anda definisikan sebelumnya. Akhirnya, buat satu masukan http_access yang memungkinkan lalu lintas yang cocok dengan masukan ncsa_users ACL . Berikut contoh autentikasi user sederhana; urutan statement merupakan hal yang penting:
# Add this to the auth_param section of squid.conf
#
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
#
# Add this to the bottom of the ACL section of squid.conf
#
acl ncsa_users proxy_auth REQUIRED
#
# Add this at the top of the http_access section of squid.conf
#
http_access allow ncsa_users
5) Ini memerlukan autentikasi password dan memungkinkan akses hanya selama jam kerja. Sekali lagi, urutan statement adalah penting:
#
# Add this to the auth_param section of squid.conf
#
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
#
# Add this to the bottom of the ACL section of squid.conf
#
acl ncsa_users proxy_auth REQUIRED
acl business_hours time M T W H F 9:00-17:00
#
# Add this at the top of the http_access section of squid.conf
#
http_access allow ncsa_users business_hours
Ingatlah untuk merestart Squid sehingga dapat diperoleh efek dari perubahan yang dilakukan.
Ditulis dalam Linux | Bertanda: Authentication, NCSA, Squid | Leave a Comment »
