Thursday, February 28, 2008

Samba Server Ubuntu 6.06

Samba adalah program aplikasi yang mengimplementasikan protokol Server Massage Block (SMB) di lingkungan Unix atau Linux. Protokol ini mempunyai fungsi utama untuk berbagi (sharing) file dan printer. Samba dapat menjadi jembatan untuk mengatasi masalah komunikasi antar jaringan, baik dalam lingkungan Linux/unix maupun platform lainya.

How to install Samba Server for files/folders sharing service
plilih menu Applications/Accessories/Terminal
ketik su [enter]
Password:

sudo apt-get install samba smbfs

How to add/edit/delete network users
To add network user:
sudo smbpasswd -a system_username

gksudo gedit /etc/samba/smbusers

Insert the following line into the new file

system_username = “network username”

Save the edited file

To edit network user:
sudo smbpasswd -a system_username

To delete network user:
sudo smbpasswd -x system_username


How to share home folders with read only permission (Authentication=Yes)
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gksudo gedit /etc/samba/smb.conf

Find this line

; security = user

Replace with the following lines

security = user
username map = /etc/samba/smbusers

Save the edited file

sudo testparm
sudo /etc/init.d/samba restart

How to share home folders with read/write permissions (Authentication=Yes)
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gksudo gedit /etc/samba/smb.conf

Find this section

# By default, the home directories are exported read-only. Change next
# parameter to ‘yes’ if you want to be able to write to them.
writable = no

Replace with the following lines
# By default, the home directories are exported read-only. Change next
# parameter to ‘yes’ if you want to be able to write to them.
writable = yes

Save the edited file

sudo testparm
sudo /etc/init.d/samba restart

How to share group folders with read only permission (Authentication=Yes)
sudo mkdir /home/group
sudo chmod 777 /home/group/
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gksudo gedit /etc/samba/smb.conf

Append the following lines at the end of file
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = no
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup

How to share group folders with read/write permissions (Authentication=Yes)
sudo mkdir /home/group
sudo chmod 777 /home/group/
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gksudo gedit /etc/samba/smb.conf

Append the following lines at the end of file
[Group]
comment = Group Folder
path = /home/group
public = yes
writable = yes
valid users = system_username1 system_username2
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup

Save the edited file

sudo testparm
sudo /etc/init.d/samba restart

How to share public folders with read only permission (Authentication=Yes)
sudo mkdir /home/public
sudo chmod 777 /home/public/
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gksudo gedit /etc/samba/smb.conf

Append the following lines at the end of file
[public]
comment = Public Folder
path = /home/public
public = yes
writable = no
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup

Save the edited file

How to share public folders with read/write permissions (Authentication=Yes)
Append the following lines at the end of file
[public]
comment = Public Folder
path = /home/public
public = yes
writable = yes
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup

How to share public folders with read only permission (Authentication=No)
security = share

Append the following lines at the end of file
[public]
comment = Public Folder
path = /home/public
public = yes
writable = no
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup

Save the edited file

udo testparm
sudo /etc/init.d/samba restart

How to print on remote Ubuntu machine via samba
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
gedit /etc/samba/smb.conf

Find the following lines

# printing = cups
# printcap name = cups

and uncomment them.
printing = cups
printcap name = cups

Restart cups server
sudo /etc/init.d/cupsys restart

Now printers working on your Ubuntu machine should be acessible via samba.

How to permanently mount a samba share
Example names:
Remote machine: remotehost
Remote username: remoteuser
Remote password: remotepass
Remote share name: remoteshare
Local username: localuser
Local mountpoint: /home/localuser/mnt/
sudo apt-get install samba smbfs
sudo gedit /root/.smbcredentials

In the .sbmcredentials file put the appropriate username and password to access the samba share in the following format:
Password:
username=remoteuser
password=remotepass

Save and close the edited file

Open /etc/fstab
sudo gedit /etc/fstab

Add the share to /etc/fstab using the .smbcredentials file by appending the following line.

NOTE: Substitute the appropriate remote machine, remote share name, and local mount point to this line before appending to /etc/fstab
//remotemachine/remoteshare /home/localuser/mnt/ smbfs credentials=/root/.smbcredentials,dmask=777,fmask=777 0 0

This share will always mount when the computer starts if the samba server on the remote machine is running properly. The share can also be accessed by all users. To mount the new share immediately type the following command:

sudo mount -a

Sumber:
http://ubuntuguide.org/wiki/Dapper#How_to_install_Samba_Server_for_files.2Ffolders_sha

Instalasi DNS menggunakan Bind pada Fedora

BIND merupakan salah satu aplikasi yang banyak digunakan untuk DNS server. Saat ini bind sudah mencapai versi 9.4.1. pada tutorial kali ini saya akan melakukan instalias bind dari source tarball. Dalam dunia unix mauoun linux, terdapat banyak macam paket. Pada Redhat, paket sendiri ada 2 macam , yaitu paket binary dari RPM dan paket tarball. Paket tarbal berekstensi tar.gz.

Instalasi kali ini menggunakan Fedora 7

Dependensi Paket

Untuk melakukan instalasi Bind ini, ada paket-paket yag harus sudah terinstall terlebih dulu, yaitu :

  • Gcc

rpm -qa | grep gcc

gcc-c++-4.1.2-12

libgcc-4.1.2-12

gcc-gfortran-4.1.2-12

gcc-4.1.2-12

  • Compatible c++

# rpm -qa | grep c++

libstdc++-4.1.2-12

libstdc++-devel-4.1.2-12

gcc-c++-4.1.2-12

  • Paket glibc

# rpm -qa | grep glibc

glibc-2.6-3

glibc-headers-2.6-3

glibc-common-2.6-3

glibc-devel-2.6-3

  • Aplikasi make

# rpm -qa | grep make

automake-1.6.3-5

make-3.79.1-17

automake15-1.5-7

automake14-1.4p6-6

  • Aplikasi perl

# rpm -qa | grep perl

perl-Compress-Zlib-1.42-1.fc6

perl-File-RsyncP-0.62-3.fc6

perl-CPAN-1.76_02-18.fc7

perl-devel-5.8.8-18.fc7

perl-Archive-Zip-1.16-1.2.1

perl-suidperl-5.8.8-18.fc7

perl-URI-1.35-3

perl-Test-Simple-0.62-18.fc7

perl-String-CRC32-1.4-2.fc6

perl-Test-Harness-2.56-18.fc7

perl-5.8.8-18.fc7

perl-libs-5.8.8-18.fc7

perl-ExtUtils-Embed-1.26-18.fc7

perl-ExtUtils-MakeMaker-6.30-18.fc7

  • Openssl yang bisa di download di

http://www.openssl.org/source/openssl-0.9.8d.tar.gz

Instalasi

Berikut langkah-langkahnya :

1. Install paket openssl

a. Download paket

wget http://www.openssl.org/source/openssl-0.9.8d.tar.gz

b. Ekstrak paket

tar -xvzf openssl-0.9.8d.tar.gz

hasil ekstraksi akan mambuat suatu file bernama openssl-0.9.8d. masuk ke directory tersebut.

#cd openssl-0.9.8d

c. Lakukan konfigurasi

#./config –prefix=/usr/local/openssl –openssldir=/usr/local/openssl

Instalasi akan meletakkan openssl di dalam directory /usr/local/openssl

d. Kemudian lakukan kompilasi

#make && make test && make install

Sampai saat ini , instalasi openssl telah selesai dilakukan

2. Download paket bind

wget ftp://ftp.planetmirror.com/pub/isc/bind9/9.4.1/bind-9.4.1.tar.gz

3. Ekstrak paket

#tar xfvz bind-9.3.4.tar.gz

Kemudian masuk ke directory hasil ekstraksi

# cd bind-9.3.4

4. Lakukan konfigurasi

#./configure –prefix=/usr/local/named –enable-ipv6 –enable-libbind –with-openssl=/usr/local/openssl/ –sysconfdir=/etc –sbindir=/sbin/ –bindir=/bin –with-ptl2 –with-libtool –enable-getifaddrs

  • Pada konfigurasi ini, kita melakukan kustomisasi
  • pada letak directory di /usr/local/named
  • mengaktifkan ipv6
  • mengaktifkan library bind
  • menggunakan openssl, yaitu di /usr/local/openssl
  • konfigurasi file diletakkan di /etc
  • file bin diletakkan di /bin dan /sbin

*update sabtu 7 Juli 2007

./configure –prefix=/var/named –enable-ipv6 –enable-libbind –with-openssl=/usr/local/openssl –sysconfdir=/etc/named –sbindir=/sbin/ –bindir=/bin –with-ptl2 –with-libtool –enable-getifaddrs –enable-threads –enable-atomic –enable-largefile

5. Lakukan kompilasi

#make && make clean && make depend && make all && make install

Pembuatan User

Setelah kompilasi dan instalasi selesai, sekarang kita coba membuat konfigurasi filenya. Agar yang menjalankan aplikasi ini bukan root, maka kita buat dulu 1 user

# /usr/sbin/useradd named -s /sbin/nologin -d /var/named/ -r m

Perintah ini akan menambahkan 1 user bernama named, yag tidak memiliki akses login, dan mempunyai directory di /var/named.

*update sabtu 7 Juli 2007

Jika folder /var/named belum ada maka harus dibuat dulu

#mkdir /var/named

Pengubahan kepemilikan Direktory.

Direktory /var/named ini nantinya akan kita tempatkan sebagai directory zone record dns kita. Agar user named bias menggunakannya, kita ubah kepemilikannya menjadi named.

#chown named.named /var/named

Direktory yang lain adalah /usr/local/named/var/run. Yaitu directory untuk meletakkan pid dari named tersebut.

#chown named.named -Rf /usr/local/named/var/run*

* tidak diperlukan lagi

Konfigurasi

Pada instalasi, kita telah mengarahkan aplikasi named, agar memanggil membaca file konfigurasi nya di directory /etc. secara default, nama konfigurasi adalah named.conf. pada saat instalasi tersebut, akan dibuatkan beberapa file dan diletakkan di /sbin. File tersebut anatara lain

Named (sebagai daemon file)

named-checkconf (untuk memeriksa apakah konfigurasi named.conf sudah benar atau tidak)

named-checkzone (untuk memeriksa zone)

rndc (juga sebagai daemon)

rndc-confgen (untuk men-generate rndc key, yang akan diletakkan di /etc/, nama filenya rndc.key.

sebelum ke named.conf , kita ciptakan dulu rndc.conf nya

# /sbin/rndc-confgen >> /etc/rndc.key

*update

#rndc-confgen > /etc/named/rndc.key

Setelah itu , baru kita buat named.conf, berikut contohnya

# more /etc/named.conf

#add by rito

#Sabtu, 7 Juli 2007

include “/etc/named/rndc.key”;

options {

directory “/var/named/domain”;

allow-query {any; };

};

controls {

inet 127.0.0.1 allow { localhost; } keys { “rndc-key”; };

};

zone “.” IN {

type hint;

file “named.ca”;

};

Kemudian, buat file named.ca, localdomain.zone, dan named.local di /var/named. Isinya kurang lebih sebagai berikut :

# more /var/named/named.ca

; This file holds the information on root name servers needed to

; initialize cache of Internet domain name servers

; (e.g. reference this file in the “cache .

; configuration file of BIND domain name servers).

;

; This file is made available by InterNIC

; under anonymous FTP as

; file /domain/named.cache

; on server FTP.INTERNIC.NET

; -OR- RS.INTERNIC.NET

;

; last update: Jan 29, 2004

; related version of root zone: 2004012900

;

;

; formerly NS.INTERNIC.NET

;

. 3600000 IN NS A.ROOT-SERVERS.NET.

A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4

;

; formerly NS1.ISI.EDU

;

. 3600000 NS B.ROOT-SERVERS.NET.

B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201

;

; formerly C.PSI.NET

;

. 3600000 NS C.ROOT-SERVERS.NET.

C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12

;

; formerly TERP.UMD.EDU

;

. 3600000 NS D.ROOT-SERVERS.NET.

D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90

;

; formerly NS.NASA.GOV

;

. 3600000 NS E.ROOT-SERVERS.NET.

E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10

;

; formerly NS.ISC.ORG

;

. 3600000 NS F.ROOT-SERVERS.NET.

F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241

;

; formerly NS.NIC.DDN.MIL

;

. 3600000 NS G.ROOT-SERVERS.NET.

G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4

;

; formerly AOS.ARL.ARMY.MIL

;

. 3600000 NS H.ROOT-SERVERS.NET.

H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53

;

; formerly NIC.NORDU.NET

;

. 3600000 NS I.ROOT-SERVERS.NET.

I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17

;

; operated by VeriSign, Inc.

;

. 3600000 NS J.ROOT-SERVERS.NET.

J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30

;

; operated by RIPE NCC

;

. 3600000 NS K.ROOT-SERVERS.NET.

K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129

;

; operated by ICANN

;

. 3600000 NS L.ROOT-SERVERS.NET.

L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12

;

; operated by WIDE

;

. 3600000 NS M.ROOT-SERVERS.NET.

M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33

; End of File

]# more /var/named/named.local

$TTL 86400

@ IN SOA localhost. root.localhost. (

1997022700 ; Serial

28800 ; Refresh

14400 ; Retry

3600000 ; Expire

86400 ) ; Minimum

IN NS localhost.

1 IN PTR localhost.

# more /var/named/localdomain.zone

$TTL 86400

@ IN SOA localhost root (

42 ; serial (d. adams)

3H ; refresh

15M ; retry

1W ; expiry

1D ) ; minimum

IN NS localhost

localhost IN A 127.0.0.1

file –file di atas hanya contoh.

Setelah membuat file di atas, sekarang kita membuat init daemonnya. Pada redhat, diletakkan di /etc/rc.d/init.d atau di /etc/init.d

Nama filenya ada named

Isi filenya kurang lebih sebagai berikut :

#!/bin/bash

#

# named This shell script takes care of starting and stopping

# named (BIND DNS server).

#

# chkconfig: - 55 45

# description: named (BIND) is a Domain Name Server (DNS) \

# that is used to resolve host names to IP addresses.

# probe: true

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

[ -r /etc/sysconfig/network ] && . /etc/sysconfig/network

RETVAL=0

prog=”named”

# Check that networking is up.

[ “${NETWORKING}” = “no” ] && exit 1

#add by rito

#jika sebelumnya sudah ada file ini, maka perintah ini bisa dihapus

#[ -r /etc/sysconfig/named ] && . /etc/sysconfig/named

[ -x /sbin/named ] || exit 1

[ -r ${ROOTDIR}/etc/named/named.conf ] || exit 1

start() {

# Start daemons.

if [ -n “`/sbin/pidof named`” ]; then

echo -n $”$prog: already running”

return 1

fi

echo -n $”Starting $prog: “

ckcf_options=”;

if [ -n “${ROOTDIR}” -a “x${ROOTDIR}” != “x/” ]; then

OPTIONS=”${OPTIONS} -t ${ROOTDIR}”

ckcf_options=”-t ${ROOTDIR}”;

if [ -s /etc/localtime ]; then

cp -fp /etc/localtime ${ROOTDIR}/etc/localtime

fi;

fi

conf_ok=0;

if [ -x /sbin/named-checkconf ] && /sbin/named-checkconf $ckcf_options;

then

conf_ok=1;

else

RETVAL=$?;

fi

if [ $conf_ok -eq 1 ]; then

daemon /sbin/named -u named ${OPTION};

RETVAL=$?;

else

named_err=`/sbin/named -g 2>&1 | sed s/\n/\\n/g`;

if [ `tty` != “/dev/console” ]; then

echo -e “\n$named_err”;

echo -n “Error in configuration file /etc/named/named.conf : “;

fi;

failure $”Error in configuration file /etc/named/named.conf : $named_err”;

echo

return $RETVAL;

fi;

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/named

echo

return $RETVAL

}

stop() {

# Stop daemons.

echo -n $”Stopping $prog: “

/sbin/rndc stop >/dev/null 2>&1

RETVAL=$?

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/named || {

# killproc named

# Never do this! Can cause corrupt zone files!

/sbin/rndc stop >/dev/null 2>&1

RETVAL=$?

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/named

echo

return $RETVAL

}

success

echo

return $RETVAL

}

rhstatus() {

/sbin/rndc status

return $?

}

restart() {

stop

# wait a couple of seconds for the named to finish closing down

sleep 2

start

}

reload() {

echo -n $”Reloading $prog: “

p=`/sbin/pidof -o %PPID named`

RETVAL=$?

if [ “$RETVAL” -eq 0 ]; then

/sbin/rndc reload >/dev/null 2>&1 || /usr/bin/kill -HUP $p;

RETVAL=$?

fi

[ “$RETVAL” -eq 0 ] && success $”$prog reload” || failure $”$prog reload

echo

return $?

}

probe() {

# named knows how to reload intelligently; we don’t want linuxconf

# to offer to restart every time

/sbin/rndc reload >/dev/null 2>&1 || echo start

return $?

}

# See how we were called.

case “$1? in

start)

start

;;

stop)

stop

;;

status)

rhstatus

;;

restart)

restart

;;

condrestart)

if [ -e /var/lock/subsys/named ]; then restart; fi

;;

reload)

reload

;;

probe)

probe

;;

*)

echo $”Usage: $0 {start|stop|status|restart|condrestart|reload|p

robe}”

exit 1

esac

exit $?

Kemudian simpan, lalu buat menjadi executables file,

#chmod +x /etc/init.d/named

Buat symbolic link nya:

# ln -s /etc/init.d/named /etc/rc3.d/S80named

# ln -s /etc/init.d/named /etc/rc5.d/S80named

# ln -s /etc/init.d/named /etc/rc4.d/S80named

# ln -s /etc/init.d/named /etc/rc2.d/S80named

Tujuannya agar jika server direstart dapat langsung otomatis menjalankan service named

Menjalankan named

Untuk menjalankan named. Cukup dengan perintah berikut :

/etc/init.d/named start

Starting named: [ OK ]

Kemudia kita periksa apakah sudah jalan atau belum

# ps -ax | grep named

Warning: bad syntax, perhaps a bogus ‘-’? See /usr/share/doc/procps-3.2.7/FAQ

3765 ? Ssl 0:00 /sbin/named -u named

tail -20 /var/log/messages

Jul 7 15:46:27 saturnus named[7118]: no longer listening on 10.3.7.197#53

Jul 7 15:46:27 saturnus named[7118]: exiting

Jul 7 15:46:29 saturnus named[3765]: starting BIND 9.4.1 -u named

Jul 7 15:46:29 saturnus named[3765]: found 4 CPUs, using 4 worker threads

Jul 7 15:46:29 saturnus named[3765]: loading configuration from ‘/etc/named/named.conf’

Jul 7 15:46:29 saturnus named[3765]: listening on IPv4 interface lo, 127.0.0.1#53

Jul 7 15:46:29 saturnus named[3765]: listening on IPv4 interface eth0, 10.3.7.197#53

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 127.IN-ADDR.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 254.169.IN-ADDR.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 2.0.192.IN-ADDR.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 255.255.255.255.IN-ADDR.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: D.F.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 8.E.F.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: 9.E.F.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: A.E.F.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: automatic empty zone: B.E.F.IP6.ARPA

Jul 7 15:46:29 saturnus named[3765]: command channel listening on 127.0.0.1#953

Jul 7 15:46:29 saturnus named[3765]: running

Terlihat named sudah jalan.

Pengujian:

Sebagai cache

Tambahkan ip server di /etc/resolv.conf

nameserver 10.3.7.199

Kemudian uji dengan nslookup

Non-authoritative answer:

www.google.com canonical name = www.l.google.com.

Name: www.l.google.com

Address: 66.249.89.104

Name: www.l.google.com

Address: 66.249.89.99

Name: www.l.google.com

Address: 66.249.89.147

>

Uji di computer client:

Dengan menambahkan ip dns ke computer client.

DHCP Server

DHCP atau Dynamic Host Configuration Protocol, merupakan salah satu mekanisme pemberian IP pada komputer host atau client secara otomatis. Mekanismenya adalah menggantikan peran administrator jaringan dalam, terutama saat memasukkan IP Address di setiap komputer Client. Prinsip kerjasanya kurang lebih adalah sebagai berikut, pada saat Server DHCP aktif, maka server DHCP menyediakan range IP pada kelas tertentu, sesuai dengan aturan yang ditetapkan oleh admin. Kemudian, pada saat komputer client yang terhubung ke jaringan aktif, sistem operasi akan mencari ke DHCP server, apakah ada IP yang bisa direservasi. Jika ada, maka Server DHCP akan memberikan IPtersebut.
Pada DHCP, lama waktu IP yang diberikan pada setiap komputer bisa dibuat dinamis, artinya setelah pada waktu tertentu, maka IP yang ada pada komputer client akan habis masa penggunaannya. Ini disebut lease IP. Ada juga yang sifatnya, IP tersebut tetap berada di komputer client, selama kartu jaringannya tidak rusak tentunya.
Berikut adalah konfigurasi DHCP server di linux. Distro yang digunakan adalah Fedora Core 4.

Untuk mengkonfigurasinya, dibutuhkan priveledge tertinggi, yaitu root.
#rpm -qa | grep dhcp
dhcpv6_client-0.10-13
dhcp-3.0.2-12

setelah terinstall, DHCP server memberikan contoh konfigurasi dhcpd.conf, filenya dapat kita liat dan kopi di /usr/share/doc/dhcp-3.0.2/dhcpd.conf.sample
berikut adalah contoh script dhcpd.conf:

ddns-update-style interim;
ignore client-updates;
#definisi subnet
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name”jakarta”;
option domain-name-servers 192.168.1.3;

# ini buat tamu , jadi mereka tinggal colok kabel aja
range dynamic-bootp 192.168.1.30 192.168.1.35;
default-lease-time 21600;
max-lease-time 43200;

#kalo yang ini buat komputer-komputer yang ada di kantor, jadi walaupun di pindah-pindah IP nya tetep

#=====================================
#Host Team Alpha
#=====================================
#1. komputer nanang
host nanang {
hardware ethernet 00:02:a5:2f:c5:5b;
fixed-address 192.168.1.6;
}
#2. komputer wildan
host wildan {
hardware ethernet 00:e0:4c:d3:66:7e;
fixed-address 192.168.1.7;
}
#3. komputer syaiful
host syaiful {
hardware ethernet 20:04:12:30:31:7A;
fixed-address 192.168.1.8;
}
#4. komputer gian
host gian {
hardware ethernet 00:50:8b:fe:f5:50;
fixed-address 192.168.1.9;
#5 komputer hikmat
host hikmat {
hardware ethernet 00:11:2f:c7:e0:b1;
fixed-address 192.168.1.10;
}

#6 komputer ismail
host ismail {
hardware ethernet 00:14:2a:04:d9:d1;
fixed-address 192.168.1.11;
}

#7
host agunglaptop {
hardware ethernet 00:0a:e4:03:3f:ae;
fixed-address 192.168.1.12;
}

#8
host it-engineer {
hardware ethernet 00:e0:4c:e0:1e:88;
fixed-address 192.168.1.13;
}
#9
host sapuademo {
hardware ethernet 00:0a:e4:12:c7:60;
fixed-address 192.168.1.14;
}

#10
host marketing {
hardware ethernet 00:c0:9f:c4:60:12;
fixed-address 192.168.1.15;
}

#11
host agung-laptop {
hardware ethernet 00:04:23:7d:f7:8b;
fixed-address 192.168.1.20;
}
#12
host marketing-laptop {
hardware ethernet 00:14:a4:27:7d:a1;
fixed-address 192.168.1.21;
}

#13
host pipit-laptop {
hardware ethernet 00:17:42:03:f3:f6;
fixed-address 192.168.1.22;
}
# alokasi IP address untuk server/ perangkat sapua
#13 Wireless Lan IP
host sapua {
hardware ethernet 00:90:4c:91:00:01;
fixed-address 192.168.1.2;
}
#14 Server dummy sapua
host server.sapua {
hardware ethernet 00:E0:4C:44:D4:56;
fixed-address 192.168.1.3;
}
}

nah setelah konfigurasi selesai, aktifkan daemon dhcp
# /etc/init.d/dhcpd start
Memulai dhcpd: [ OK ]

Untuk Melihat, apakah konfigurasi kita berjasil atau tidak, dhcpd mencatat list client yang mendapat reservasi IP dari server, filenya bisa kita lihat di :
/var/lib/dhcp/dhcpd.leases
berikut contoh isi filenya :
[root@b6-uninet-personal-106-142 ~]# more /var/lib/dhcp/dhcpd.leases
# All times in this file are in UTC (GMT), not your local timezone. This is
# not a bug, so please don’t ask about it. There is no portable way to
# store leases in the local timezone, so please don’t request this as a
# feature. If this is inconvenient or confusing to you, we sincerely
# apologize. Seriously, though - don’t ask.
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-V3.0.2

lease 192.168.1.31 {
starts 1 2006/09/11 09:05:21;
ends 1 2006/09/11 15:05:21;
tstp 1 2006/09/11 15:05:21;
binding state free;
hardware ethernet 00:0d:5e:22:2b:1f;
uid “\001\000\015^\”+\037″;
}
lease 192.168.1.34 {
starts 2 2006/09/12 02:40:22;
ends 2 2006/09/12 08:40:22;
tstp 2 2006/09/12 08:40:22;
binding state active;
next binding state free;
hardware ethernet 00:00:00:00:00:00;
uid “\001\000\000\000\000\000\000″;
client-hostname “marketing”;
}

Trik Agar IP Local Dapat Dilihat Oleh IP Luar

Artikel ini sengaja aku tulis karena biar tidak lupa bila suatu saat aku berhadapan dengan kasus ini lagi. Permasalahan nya adalah ketika kita cuma dikasih satu IP Address Publik oleh pihak ISP. Untuk menyiasati hal ini, agar beberapa server kita (Web Server, FTP server, Email Server) yang ada di IP lokal bisa diakses oleh Internet kita dapat menggunakan salah satu aplikasi dilinux yang sudah terkenal bandel…

Bagaimana caranya?

Solusinya adalah dengan NAT (Network Address Translation) yaitu mentranslasikan suatu IP Address ke sisi jaringan yang lain. Pada sistem Operasi Linux kita dapat melakukannya secara standard dengan menggunakan tools iptables. iptables sebagai tools pengatur trafik jaringan memiliki kemampuan untuk melakukan hal tersebut. iptables dijalankan dari sisi server akan meneruskan traffik yang merekues dari sisi publik/internet diteruskan ke sisi lokal.

Sehingga sintaksnya akan menjadi seperti demikian

iptables -t nat -I PREROUTING -p tcp -s IP_Publik_Yang_Merekuest –dport Port_Tujuan -j DNAT –to-destination IP_Lokal_tujuan:Port_aplikasinya

Penjelasan

-t nat = table nat pada iptables
-I PREROUTING = Insert pada chain Prerouting
-p tcp = protokol tcp
-s = Source/sumber Ip address yang merekues. Kalau semua diijinkan = 0/0
–dport = port tujuan yang diminta dari sisi publik
-j DNAT = Target Destination NAT
–to-destination = ke tujuan ip lokal yang diinginkan

Misal kita memiliki ip publik202.130.202.111 dan webserver ada pada sisi lokal 192.168.0.250 maka kita bisa melakukan seperti ini


iptables - t nat -I PREROUTING -p tcp -s 0/0 –dport 80 -j DNAT –to-destination 192.168.0.250:80

Atau jika port 80 telah digunakan oleh server itu sendiri, kitabisa memanfaatkan port yang kosong dari sisi server tersebut misal

iptables - t nat -I PREROUTING -p tcp -s 0/0 –dport 88 -j DNAT –to-destination 192.168.0.250:80

Namun, proses pemanggilan dalam browser harus lengkap menggunakan port

http://202.130.202.111:88

Ya, langkah ini juga bisa di balik apabila seorang administrator jaringan ingin merouting jaringan, agar rekuest ke port tertentu, dapat dialihkan ke route lain, namun logika dibalik dan port destination di belakang di hilangkan. Contoh:

iptables -t nat -I PREROUTING -p tcp -s 192.168.0.0/24 –dport 80 -j DNAT –to-destination 202.130.202.111

Langkah ini juga bisa di gunakan untuk protokol lain juga selain web seperti ssh, remote server dal protokol lainnya.

Sumber : http://intrix.wordpress.com — Thx

Installasi dan setting samba server di Linux

Dokumentasi ini berisi tentang bagaimana cara menginstall dan mengkonfigurasi samba server pada Linux Redhat 6.2 Server. Dokumen ini hanyalah dokumen teknis yg dibuat dengan tujuan "minimal jalan", tanpa dilengkapi dengan security atau optimasi. So, jika ada yang salah CMIIW yaaa :) (hehehehe)
Instalasi samba dilakukan dengan cara:
# rpm -Uvh samba-2.0.6-9.i386.rpm samba-client-2.0.6-9.i386.rpm samba-common-2.0.6-9.i386.rpm --force --nodeps

Mengeset samba server:

Editlah file smb.conf yang terletak di /etc/smb.conf

1. Untuk security level = share (tidak membutuhkan password dalam mengakses samba):
pastikan ada script ini:

security = share
domain master=yes
domain logons=yes
encrypt password=yes
security = share
lalu tentukan nama direktori yg dishare beserta pathnya (direktori yang ingin disharing) dengan option-optionnya.

contoh:
[my share]
comment = multimedia stuff
path = /home/master
public = yes
writeable = yes

2. Untuk security level = user (butuh password ketika mengakses samba):
sama dengan di atas, namun pada baris security isikan dengan kata user (security = user).

Lalu under command prompt (masuk ke shell) tambahkan beberapa user yang telah tercantum di /etc/passwd ke dalam file /etc/smbpasswd dengan cara:
smbpasswd -a -n

contoh:
[root@ltsp etc]# smbpasswd -a -n oval

Kita dapat mengakses samba server dari komputer windows, dengan menggunakan login hari dan dengan mengisikan password hari yang terdaftar di komputer linux.
Secara default user yg ditambahkan ke /etc/smbpasswd tidak memiliki password, kita bisa mengisinya dengan mengetikkan:
# smbpasswd

contoh:
[root@ltsp etc]# smbpasswd oval

3. Mounting file-file yang dishare di windows dari komputer linux
a. Mounting file2 yg ada di windows (dalam satu workgroup):
mount -t smbfs -o username=..., password=... //nama-komputer-windows/direktori-yg-dishare /mnt/mount-pointnya

contoh:
[root@ltsp etc]# mount -t smbfs -o username=guest,password=nedcom //"Kang oval"/crevcom /mnt/net

b. Berbeda workgroup:
mount -t smbfs -o username=...,password=..., workgroup=... //nama-komputer-windows/direktori-yg-dishare /mnt/mount-pointnya

contoh:
[root@ltsp etc]# mount -t smbfs -o username=oval,password=hehehe,workgroup=Lab-komku //optik/master /mnt/net

4. Menggunakan smbclient
smbclient -L = untuk melihat direktori yang dishare di komputer windows
smbclient /// = masuk ke komputer windows pada direktori yang dishare dengan menggunakan format server ftp.

contoh:
[root@ltsp etc]# smbclient -L text
[root@ltsp etc]# smbclient //text/aborsi

Search This Blog