Minggu, 02 Oktober 2011

Setting MMS three untuk Iphone 3 GS

sudah beberapa bulan ini saya mencoba menggunakan operator selular baru (three) dari beberapa hal operator ini sudah memberikan saya sedikit kepuasan dalam berinternet ria na masalah muncul ketika saya ingin mengirimkan foto (mms) ke teman saya.
jadi qta mulai saja settingan Tree pada HP iphone
-> masuk ke settings
->pilih General
->terus pilih Network
->terus pilih Cellular Data Network
->MMS APN diisi 3mms
->Username diisi 3mms
->Password diisi 3mms
->MMSC diisi http://mms.three.co.id
->MMS Proxy diisi 10.4.0.10:3128

done
silahkan mencoba mengirim dan menerima MMS

Jumat, 05 Februari 2010

Samba Server

LANGKAH-LANGKAH
1. Install Komponen Samba
Setelah samba terinstall saatnya

2. Edit smb.conf
OpenSuSE secara default meneyimpan setting samba pada /etc/samba. Buka file /etc/samba/smb.conf dengan text editor dan replace isinya dengan setting sebagai berikut :

[global]
log file = /var/log/samba/log.%L
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8129
admin users = root
domain master = yes
time server = yes
logon home = \%L\profiles%u
netbios name = server
writeable = yes
usershare max shares = 100
server string = Server Utama – Samba %v on %L
invalid users = bin,daemon,sys,man,postfix,mail,ftp
workgroup = vavai.co.id
logon path = \%L\profiles%u
os level = 65
create mode = 777
add machine script = /usr/bin/useradd -d /dev/null -g samba-clients -s /bin/false -M %u
preferred master = yes
directory mode = 777
log level = 2
domain logons = yes
# gunakan logon path untuk Windows NT/200x/XP
# gunakan logon home untuk Windows 9x
;logon script = logon.bat
[homes]
comment = Home Directories
browseable = no
read only = no

[netlogon]
path = /srv/samba/netlogon
browseable = no
public = no
writeable = no

[profiles]
path = /srv/samba/profiles
writeable = yes
create mask = 0700
directory mask = 0700
browseable = no

[sharedata]
comment = data public
writeable = yes
invalid users = bin,daemon,sys,man,postfix,mail,ftp
path = /srv/share-data

[Accounting]
comment = Data Accounting
valid users = acct-01, acct-02,acct-03,acct-04,acct-05,@it
create mode = 777
write list = acct-02,acct-03,acct-04,acct-05,tono,acct-01
path = /local/data-msa/Accounting
directory mode = 777

[HRD]
comment = Data HRD
valid users = hrd-01, hrd-02, hrd-03,@it
path = /local/data-msa/HRD

Keterangan untuk masing-masing opsi :
[global] : Opsi Utama
log file : Lokasi log yang terkait dengan aktivitas Samba
socket options : Nggak tahu ini buat apa, lupa euy :-D
admin users : Nama user yang bertindak sebagai Administrator
domain master : Bertindak sebagai master domain
time server : Bertindak sebagai server untuk pencocokan waktu
logon home : Nama direktori mapping user
netbios name : Nama yang tampil pada list My Network Places atau Network Neighborhood atau Samba
writeable : Permission
server string : Keterangan mengenai Server, berguna jika server > 1
invalid users : Nama User yang tidak boleh digunakan
workgroup : Nama workgroup / domain
logon path : Nama direktori logon script
os level : Level hak sebagai server domain controller. Rata-rata server Windows memiliki os level 32
create mode : Permission status untuk file yang baru dibuat di samba folder. Bisa disetup sesuai kebutuhan
add machine script : Script untuk penambahan client komputer
preferred master : bertindak sebagai master browser
directory mode : Permission status untuk folder yang baru dibuat di samba folder. Bisa disetup sesuai kebutuhan
domain logons : Menjadi PDC

Opsi Home, Netlogon dan Profiles digunakan untuk menyimpan konfigurasi setting masing-masing client.

Opsi Share Data, Accounting dan HRD adalah contoh folder yang dishare untuk user. Saya memberikan contoh dengan masing-masing perbedaan peruntukan.

[sharedata]
comment = data public
writeable = yes
invalid users = bin,daemon,sys,man,postfix,mail,ftp
path = /srv/share-data

[Accounting]
comment = Data Accounting
valid users = acct-01, acct-02,acct-03,acct-04,acct-05,@it
create mode = 777
write list = acct-02,acct-03,acct-04,acct-05,tono,acct-01
path = /local/data-msa/Accounting
directory mode = 777

[HRD]
comment = Data HRD
valid users = hrd-01, hrd-02, hrd-03,@it
path = /local/data-msa/HRD

Folder Sharedata untuk semua user
Folder Accounting hanya untuk user acct-01 s/d acct-05 (buat user di samba)
Folder HRD diperuntukan untuk bagian HRD (user name hrd-01 s/d hrd-03)

comment : Keterangan mengenai share folder
valid users : User yang berhak mengakses
create mode : Permission untuk file yang baru dibuat, bisa diubah sesuai kebutuhan
write list : User yang berhak baca & tulis
Path : Lokasi fisik pada harddisk server
directory mode : Permission untuk folder yang baru dibuat, bisa diubah sesuai kebutuhan

Dalam contoh, saya menggunakan 2 folder fisik, yaitu /srv dan /local. Hal ini karena harddisk /srv hanya berkapasitas 70 GB jadi saya menambah harddisk baru berkapasitas 250 GB dan saya mount sebagai /local.

Konfigurasi untuk hak user samba dapat lebih mudah disetup menggunakan webmin. Nanti kita membahasnya pada sesi lain.

Setelah setting smb.conf dibuat dan disimpan, sekarang kita bisa meminta SuSE menjalankan samba. Berikan perintah :

service samba start

Jika sudah berjalan, kita bisa meminta samba untuk melakukan load konfigurasi ulang dengan :

service samba restart

OK, satu tahap instalasi sudah selesai. Sekarang kita pindah ke bagian setting client untuk akses.

- Menambah group khusus untuk nama komputer
groupadd machine

- Menambah nama komputer client (contoh : nama komputer = hrd, nama user : hrd-01)
useradd -g machine -s /bin/false hrd$

- Mengunci user yang bersangkutan
passwd -l hrd$

- Menambah komputer ke Samba
smbpasswd -a -m hrd –> pastikan nama komputer tanpa tanda $

- Menambah nama user lokal di server
useradd hrd-01

- Merubah password
passwd hrd-01

- Memasukkan user lokal kedalam user samba
smbpasswd -a hrd-01

- Membuat home folder di lokasi profiles, sesuaikan dengan nama user
cd /srv/samba/profiles
mkdir hrd-01

- Merubah kepemilikan home folder tersebut
chown hrd-01 hrd-01/

Setelah selesai membuat user dan konfigurasinya, kita tinggal melakukan koneksi komputer klien ke Server yang baru kita setup.

- Jika klien berupa SuSE Linux, kita bisa menggunakan YAST | Network Services | Windows Domain Membership untuk koneksi. Langkahnya mudah, tinggal ikuti wizard. Untuk distro Linux lain, biasanya bisa menggunakan KDE Control Center untuk bergabung dengan Samba.

- Jika komputer klien berupa Windows 98 atau ME, koneksi dilakukan pada properties network neighborhood seperti halnya koneksi ke server Windows

- Jika komputer klien berupa Windows 2000, koneksi dilakukan pada properties my computer dan isikan nama domain.

- Jika komputer klien menggunakan Windows XP lakukan sedikit modifikasi terlebih dahulu, berupa langkah-langkah :

1. Buka regedit
START | RUN | REGEDIT

2. Cari entry HKLM (HKEY_LOCAL MACHINE) – SYSTEM – CurrentControlSet – Service – Netlogon – Parameters

3. Klik pada windows sebelah kanan, klik kanan pilih New – DWORD value, namanya requiresignorseal, valuenya 0.

4. Kalau entry tersebut sudah ada namun bernilai 1, ganti menjadi 0

5. Tutup regedit

Setelah update registry selesai, kita bisa melakukan koneksi Windows XP ke Server Samba seperti halnya pada sistem operasi Windows 2000

Tambahan : Kita bisa melakukan proteksi pada file server agar tidak digunakan untuk menyimpan file dengan ekstensi tertentu. Jika kita menambahkan veto files = /*.mp3/*.avi/*.mpg/ pada file share samba, file share tersebut akan menolak penyimpanan file musik dan video.

Kamis, 07 Januari 2010



Load Balancing Dual-WAN dengan DD-WRT


Topologi (dengan ascii art :) )

                                                                 ________
+------------+ /
| | |
+-------------+ Provider 1 +-------
__ | | (WAN 1) | /
___/ \_ +------+-------+ +------------+ |
_/ \__ | if1 | /
/ \ |if0 | |
| Local network -----+ DD-WRT | | Internet
\_ __/ | | |
\__ __/ | if2 | \
\___/ +------+-------+ +------------+ |
| | | \
+-------------+ Provider 2 +-------
| (WAN 2) | |
+------------+ \________

Source: http://lartc.org/lartc.html#LARTC.RPDB.MULTIPLE-LINKS


Penulis mengambil bahan referensi dari link di bawah ini:

  1. Materi Workshop ddwrt oleh Dani Firman Syah
  2. Dual WAN with one as standby backup.
  3. Dual WAN with failover.
  4. Routing for multiple uplinks/providers.

Penulis menggunakan wireless router WRT54GL 1.1 yang sudah diflash ke dd-wrt. Jika pembaca memiliki linksys yang belum diflash ke dd-wrt dan ingin mengetahui apakah linksysnya bisa diflash, silahkan cek di situs ini Router Database | www.dd-wrt.com. Setelah itu pelajari cara flash WRT54G di WRT54G v4 Installation Tutorial.
Then let’s rock ‘n roll :) .

Topologi Network

LAN
Network LAN : 192.168.1.0/24
IP IF0 : 192.168.1.254
IP Client (DHCP): 192.168.1.100 - 192.168.1.120

WAN 1
IP IF1 : 121.101.x.170
Gateway : 121.101.x.254

WAN 2
IP IF2 : 121.101.y.170
Gateway : 121.101.y.254


Setup DD-WRT
Jika telah selesai melakukan konfigurasi di atas maka klik tombol Save.

Menambah WAN port DD-WRT
Untuk mengkonfigurasikan IP address dari WAN 2, perlu di buat terlebih dahulu VLAN baru sebutlah namanya vlan1. Caranya dari web interface DD-WRT, klik menu VLANs dan konfigurasikan Port 4 sebagai VLAN baru.

Setup VLAN DD-WRT
Jangan lupa tekan tombol Save dan Apply untuk menyimpan konfigurasi yang sudah di buat.

Script Startup
Langkah selanjutnya adalah menulis script langsung di interface web dd-wrt. Penulis tidak mengikuti langkah sebagaimana yang ditulis Dani Firmansyah dan manual dd-wrt dari link di atas:

Selanjutnya masuk ke console dengan menggunakan telnet/ssh ke IP address lan (IF0) dan jalankan
command berikut ini:
nvram set vlan0ports="1 2 3 5*"
nvram set vlan1ports="4 5"
nvram set vlan1hwname=et1
nvram commit
reboot


Dari menu web dd-wrt, masuk ke Administration > Commands. Isikan source code (edit seperlunya sesuai dengan topologi network anda) di bawah ini dan masukkan di kotak dialog Commands:

001# File Startup
002#
003# Descriptions:
004# 1. setup interface name for wan2
005# 2. setup routing table wan and wan2
006# 3. create load balancing
007# 4. write script cekkoneksi for dead gateway detection which will be run by cron.
008#
009# Created by Arief Yudhawarman (2009)
010# Email: awarmanff at yahoo.com
011#
012
013# setup interface name for wan2
014#
015WAN2_IFNAME=vlan2
016WAN2_IPADDR=121.101.y.170
017WAN2_GATEWAY=121.101.y.254
018WAN2_NETMASK=255.255.255.0
019if [ "$(nvram get wan2_ipaddr)" != "$WAN2_IPADDR" ]; then
020 nvram set wan2_ifname=$WAN2_IFNAME
021 nvram set wan2_ipaddr=$WAN2_IPADDR
022 nvram set wan2_gateway=$WAN2_GATEWAY
023 nvram set wan2_netmask=$WAN2_NETMASK
024 nvram commit
025fi
026ifconfig $(nvram get wan2_ifname) up $(nvram get wan2_ipaddr) netmask $(nvram get wan2_netmask)
027#
028# setup routing table wan and wan2
029#
030ip rule flush
031ip rule add lookup main prio 32766
032ip rule add lookup default prio 32767
033ip rule add from $(nvram get wan_ipaddr) table 100 prio 100
034ip rule add fwmark 0x100 table 100 prio 101
035ip rule add from $(nvram get wan2_ipaddr) table 200 prio 200
036ip rule add fwmark 0x200 table 200 prio 201
037ip route flush table 100
038ip route flush table 200
039for TABLE in 100 200
040do
041 ip route | grep link | while read ROUTE
042 do
043 ip route add table $TABLE to $ROUTE
044 done
045done
046ip route add table 100 default via $(nvram get wan_gateway)
047ip route add table 200 default via $(nvram get wan2_gateway)
048#
049# load balancing
050#
051route del default
052ip route add default scope global nexthop via $(nvram get wan_gateway) dev $(nvram get wan_ifname) weight 1 \
053 nexthop via $(nvram get wan2_gateway) dev $(nvram get wan2_ifname) weight 1
054ip route flush cache
055#
056# write script cekkoneksi for dead gateway detection which will be run by cron.
057#
058echo '#!/bin/sh
059
060# PARAM
061TIMEOUT=1
062ATTEMPT=5
063IPROUTE=/usr/sbin/ip
064ROUTE=/sbin/route
065SLEEP=/bin/sleep
066RM=/bin/rm
067NUM=0; WAN1=""; WAN2=""; SCORE=0
068
069# SCORING
070# 0: All off
071# 2: WAN1 on
072# 4: WAN2 on
073# 6: WAN1 WAN2 on
074
075# if not found /tmp/SCORE then created
076if [ ! -e /tmp/SCORE ]
077then
078 echo 6 > /tmp/SCORE
079fi
080
081read OLDSCORE < /tmp/SCORE
082
083# Fungsi
084PingGW() {
085i=1
086while [ $i -le $ATTEMPT ]
087do
088 if (/bin/ping -s 16 -W $TIMEOUT -c 1 $Gateway > /dev/null 2>&1)
089 then
090 touch -f /tmp/WAN${ID}-GOOD
091 break 1
092 fi
093 i=$(($i+1))
094done
095}
096
097# cek koneksi WAN 1
098ID=1
099Gateway=$(nvram get wan_gateway)
100PingGW
101if [ -e /tmp/WAN1-GOOD ]
102then
103 LOGS="WAN 1 is ON...."
104 WAN1="nexthop via $(nvram get wan_gateway) dev $(nvram get wan_ifname) weight 1 "
105 NUM=`expr $NUM + 1`
106 SCORE=`expr $SCORE + 2`
107 $RM -f /tmp/WAN1-GOOD
108else
109 LOGS="WAN 1 is OFF..."
110fi
111
112# cek koneksi modem WAN 2
113ID=2
114Gateway=$(nvram get wan2_gateway)
115PingGW
116if [ -e /tmp/WAN2-GOOD ]
117then
118 LOGS="${LOGS}WAN 2 is ON...."
119 WAN2="nexthop via $(nvram get wan2_gateway) dev $(nvram get wan2_ifname) weight 1 "
120 NUM=`expr $NUM + 1`
121 SCORE=`expr $SCORE + 4`
122 $RM -f /tmp/WAN2-GOOD
123else
124 LOGS="${LOGS}WAN 2 is OFF..."
125fi
126
127echo $SCORE > /tmp/SCORE
128
129if [ ! $SCORE -eq $OLDSCORE ]
130then
131 ##echo -e $LOGS >> /tmp/koneksi.log
132 # eksekusi loadbalancing baru
133 if [ $NUM -ge 1 ]
134 then
135 $ROUTE del default
136 $IPROUTE route add default scope global $WAN1 $WAN2
137 $SLEEP 1
138 $IPROUTE ro fl cache
139 else
140 $ROUTE del default
141 $SLEEP 1
142 $IPROUTE ro fl cache
143 fi
144fi' > /tmp/cekkoneksi
145chmod 755 /tmp/cekkoneksi

Keterangan:

  1. Baris 015-026: Setup interface untuk wan 2.
  2. Baris 030-047: Setup routing table wan (wan 1) and wan2.
  3. Baris 051-054: Buat load balancing.
  4. Baris 058-144: Buat script cekkoneksi untuk dead gateway detection dan tulis ke /tmp/cekkoneksi.
  5. Baris 145: chmod 755 /tmp/cekkoneksi agar bisa dieksekusi.

Setelah selesai klik tombol Save Startup.

Script Firewall
Sekarang buat firewall untuk NAT dual-wan dan melindungi router dd-wrt dari trafik yang tidak diinginkan. Script firewall ini akan diletakkan di baris teratas firewall yang telah diciptakan oleh dd-wrt (default).

01#
02# Use Firewall rule already provided by dd-wrt and make a new one
03#
04#
05# DENY_PORTS
06#
07iptables -N DENY_PORTS
08iptables -F DENY_PORTS
09iptables -A DENY_PORTS -p tcp --dport 137:139 -j DROP
10iptables -A DENY_PORTS -p tcp --sport 137:139 -j DROP
11iptables -A DENY_PORTS -p tcp --dport 445 -j DROP
12iptables -A DENY_PORTS -p tcp --sport 445 -j DROP
13iptables -A DENY_PORTS -p tcp --dport 1433 -j DROP
14iptables -A DENY_PORTS -p tcp --sport 1433 -j DROP
15iptables -A DENY_PORTS -p tcp --dport 2049 -j DROP
16iptables -A DENY_PORTS -p tcp --sport 2049 -j DROP
17iptables -A DENY_PORTS -p tcp --dport 5432 -j DROP
18iptables -A DENY_PORTS -p tcp --sport 5432 -j DROP
19iptables -A DENY_PORTS -p tcp --dport 5999:6063 -j DROP
20iptables -A DENY_PORTS -p tcp --sport 5999:6063 -j DROP
21iptables -A DENY_PORTS -p tcp --dport 5900:5910 -j ACCEPT
22iptables -A DENY_PORTS -p tcp --sport 5900:5910 -j ACCEPT
23iptables -A DENY_PORTS -p tcp --dport 9704 -j DROP
24iptables -A DENY_PORTS -p tcp --sport 9704 -j DROP
25iptables -A DENY_PORTS -p tcp --dport 20034 -j DROP
26iptables -A DENY_PORTS -p tcp --dport 12345:12346 -j DROP
27iptables -A DENY_PORTS -p tcp --sport 27665 -j DROP
28iptables -A DENY_PORTS -p tcp --dport 27665 -j DROP
29iptables -A DENY_PORTS -p udp --sport 27444 -j DROP
30iptables -A DENY_PORTS -p udp --dport 27444 -j DROP
31iptables -A DENY_PORTS -p udp --sport 31335 -j DROP
32iptables -A DENY_PORTS -p udp --dport 31335 -j DROP
33iptables -A DENY_PORTS -p tcp --dport 31337 -j DROP
34iptables -A DENY_PORTS -p udp --dport 31337 -j DROP
35iptables -A DENY_PORTS -p tcp --sport 31337 -j DROP
36iptables -A DENY_PORTS -p udp --sport 31337 -j DROP
37#
38# DST_EGRESS
39#
40iptables -N DST_EGRESS
41iptables -F DST_EGRESS
42## Class A Reserved
43iptables -A DST_EGRESS -d 10.0.0.0/8 -j DROP
44## Class B Reserved
45iptables -A DST_EGRESS -d 172.16.0.0/12 -j DROP
46## Class C Reserved
47iptables -A DST_EGRESS -d 192.168.0.0/16 -j DROP
48## Class D Reserved
49iptables -A DST_EGRESS -d 224.0.0.0/4 -j DROP
50## Class E Reserved
51iptables -A DST_EGRESS -d 240.0.0.0/5 -j DROP
52#
53iptables -I FORWARD 1 -p tcp -j DENY_PORTS
54iptables -I FORWARD 1 -p udp -j DENY_PORTS
55iptables -I FORWARD 1 -p all -j DST_EGRESS
56
57#
58# SNAT
59#
60iptables -t nat -D POSTROUTING 1
61iptables -t nat -D POSTROUTING 1
62iptables -t nat -D POSTROUTING 1
63iptables -t nat -A POSTROUTING -o $(nvram get wan_ifname) -j SNAT --to-source $(nvram get wan_ipaddr)
64iptables -t nat -A POSTROUTING -o $(nvram get wan2_ifname) -j SNAT --to-source $(nvram get wan2_ipaddr)

Setelah selesai klik tombol Save Firewall.

Hasilnya seperti gambar di bawah:
Administration Commands DDWRT

Cron/Schedule untuk cek koneksi
Scrip cekkoneksi telah dibuat pada langkah di atas, selanjutnya buat schedule atau cron job yang akan eksekusi script tersebut setiap menit. Caranya masuk ke menu Administration > Managemenet dan isikan di kotak dialog Additional Cron Jobs:

* * * * * root /tmp/cekkoneksi

Administration Cronjob DD-WRT
Klik tombol Save dan selanjutnya langkah terakhir klik Apply Settings.
Jangan lupa membakup konfigurasi yang telah dibuat: Administration > Backup
Tambahan, untuk tes apakah script cekkoneksi berjalan sesuai yang diharapkan, cabut 1 koneksi wan (wan 1 atau wan 2). Tes koneksi dengan ping atau browsing setelah 1 menit apakah masih ada gangguan atau tidak.

Link bisa diliat di http://awarmanf.wordpress.com/2010/01/06/dualwanddwrt/