PEMBUATAN APLIKASI PRIMARY DOMAIN CONTROLLER UNTUK JARINGAN WEBROTHER

PEMBUATAN APLIKASI PRIMARY DOMAIN CONTROLLER
UNTUK JARINGAN WEBROTHER

Disusun Oleh :
M.S. Harlina, SKom., MM / NIP : 880082
M.S. Herawati, SKom., MMSi / NIP : 011015

FAKULTAS ILMU KOMPUTER
Universitas Gunadarma Depok,
Oktober 2010

PEMBUATAN APLIKASI PRIMARY DOMAIN CONTROLLER UNTUK
JARINGAN WEBROTHER
1 M.S. Harlina
2 M.S. Herawati
Fakultas Ilmu Komputer Universitas Gunadarma

ABSTRAKSI
Aplikasi pengaturan jaringan Webrother sebagai pusat pengontrol jaringan
server terpusat, bermanfaat demi untuk menjaga keamanan data, serta mengatur
pemanfaatan sumberdaya jaringan lebih efisien dan efektif dangan bantuan sistem

operasi linux dengan distro Ubuntu 9.10.
Kata kunci : Webrother, LAN, Sistem Operasi, Database

PENDAHULUAN
Keamanan data merupakan satu hal yang harus diperhatikan dalam membangun
server yang kompleks, dengan mengacu pada keamanan data server baik dari virus,
serangan peretas (hacker), kemudahan akses dan
kemampuan saling berbagi data
(sharebility). Untuk efisiensi sumberdaya, dibentuklah penataan jaringan komputer yang
memanfaatkan server terpusat sehingga masalah yang timbul dalam pengembangan
jaringan dapat teratasi.
Pelaksanaan sistem server terpusat merupakan hal yang wajib dilakukan pada
jaringan LAN yang cukup besar seperti jaringan Webrother. Pemusatan server pada suatu
jaringan LAN seringkali dijumpai menggunakan Sistem Operasi Windows Server 2003.
Permasalahan yang sering muncul bila menggunakan Sistem operasi windows adalah
mahalnya biaya lisensi, harga dan kehandalan dalam menangani banyaknya pemakai
(client). Lain halnya dengan Linux yang tidak membutuhkan biaya lisensi, dan handal
dalam menangani banyaknya pemakai (client). Hal ini disebabkan oleh Linux yang
bersifat Open Source.
Pada kasus pengembangan jaringan LAN Webrother yang terletak dibelakang

kampus E Gunadarma kelapa dua. Linux digunakan sebagai Sistem Operasi untuk
mengontrol segala aktifitas di jaringan tersebut. Jaringan yang terbentuk pada awal 2003
ini pada awalnya tidak menggunakan domain sebagai pusat pengontrol jaringan, namun
karena semakin banyak pemakai yang bergabung dan semakin berkembangnya teknologi
akhirnya digunakan Sistem Operasi Linux dengan distro UBUNTU 9.10 sebagai Domain
Utama.
Tujuan dari pembuatan suatu alternatif keamanan data dan pemanfaatan
sumberdaya jaringan yang lebih efisien dan efektif dengan cara : Meningkatkan
keamanan data, memanfaatkan Sistem Operasi yang gratis sehingga dapat menghemat

biaya, Mempermudah kontrol manajemen user, Membatasi paket data uang masuk dari
dalam dan luar.

TINJAUAN PUSTAKA
Sekilas Tentang Linux
Linux adalah sebuah sistem operasi yang tampilan dan cara kerjanya mirip
dengan sistem operasi UNIX. Pada mulanya Linux dibuat oleh Linus Torvald dari
Finlandia, yaitu sekitar pertengahan tahun 1991. kemudian Linus Torvald menjadikan
Linux sebagai software open source. Sehingga Linux dapat digunakan oleh siapa saja
secara cuma – cuma. Selain itu, setiap pengembang software mendapat kebebasan

memodifikasi dan mendistribusi ulang Linux dengan distro dan nama lain. Hal ini,
dimungkinkan karena Linux berada dibawah lisensi GPL (General Public License).
Varian atau distro Linux sangat banyak. Linux dapat dijumpai dalam berbagai
distro. Beberapa distro Linux yang popular diantaranya : Red Hat, Fedora, Debian,
Slackware, Corel, SuSE, Xandros, Knoppix, Ubuntu, Mandriva.
Dalam penulisan ini, distro Linux Ubuntu 9.10 digunakan sebagai sistem operasi,
yang merupakan varian terbaru dari distro Linux Ubuntu.

Primary Domain Controller (PDC)
PDC adalah pengatur utama domain untuk mengatur atau menyambungkan antara
komputer server dengan komputer pengguna jaringan. Dengan menggunakan username
dan password untuk mengakses server domain dalam suatu jaringan computer. PDC
merupakan salah satu server domain yang difungsikan untuk mengelola database
pemakai. PDC pada OS Windows seringkali dijumpai menggunakan OS Windows 2000,
Windows NT, Windows Server 2003 dan sebagainya. Kali ini penulis menggunakan OS
Linux Ubuntu sebagai sistem operasi yang digunakan untuk membuat sebuah PDC yang
dalam Linux dikenal sebagai SAMBA.

Domain Name System (DNS)
Domain Name System (DNS) adalah distribute database system yang digunakan

untuk pencarian nama komputer (name resolution) dijaringan yang menggunakan TCP/IP
(Transmission Control Protocol/Internet Protocol). DNS biasa digunakan pada aplikasi
yang terhubung ke Internet seperti web browser atau e-mail, dimana DNS membantu
memetakan hostname sebuah komputer ke IP address. Selain digunakan di Internet, DNS
juga dapat diimplementasikan ke private network atau intranet dimana DNS memiliki
keunggulan seperti : Mudah, DNS sangat mudah karena pemakai tidak perlu lagi
direpotkan untuk mengingat IP address sebuah komputer, cukup hostname (nama
computer), Konsisten, IP address sebuah komputer dapat berubah tapi hostname tidak
berubah, Simple, Pemakai hanya menggunakan satu nama domain untuk mencari baik di
internet maupun di intranet.

Fungsi dari DNS adalah menerjemahkan nama komputer ke IP address
(memetakan). Client DNS disebut dengan resolvers dan DNS server disebut dengan name
servers. Resolvers atau client mengirimkan permintaan ke name server berupa queries.
Name server akan memproses dengan cara mengecek ke local database DNS, lalu
menghubungi name server lainnya atau akan mengirimkan message failure jika ternyata
permintaan dari pemakai tidak ditemukan. Proses tersebut disebut dengan Forward
Lookup Query, yaitu permintaan dari pemakai dengan cara memetakan nama komputer
(host) ke IP address. Sebuah jarigan lokal yang lumayan besar seperti Webrother
membutuhkan sebuah server DNS. Server DNS berfungsi seperti sebuah database daftar

hostname dan IP address dari network tertentu.

Mail Server
E-mail atau surat elektronik adalah suatu hal yang sangat umum saat ini. Surat
yang pada masa lampau bisa diterima setelah 3 sampai 5 hari dikirim, kini bisa diterima
hanya dalam hitungan detik. Dalam E-mail, terdapat tiga software yang berperan penting.
Yang pertama adalah software Mail Transfer Protocol (MTA) yang berfungsi untuk
mengirimkan surat ke kantor pos tujuan. Kedua, adalah software Mail Delivery Agent
(MDA) yang merupakan kantor pos tujuan itu sendiri. Terakhir, adalah software Mail
User Agent (MUA) yang mengantarkan surat dari kantor pos ke tempat tujuan. Didunia
Linux, dapat dijumpai banyak pilihan software MTA, MDA, atau MUA yang bisa
digunakan.

Web Server
Web server adalah software yang menjadi tulang belakang dari World Wide Web
(www). Web server menunggu permintaan dari pemakai yang menggunakan browser
seperti Netscape Navigator, Internet Explorer, Mozilla Firefox dan program browser
lainnya. Jika ada permintaan dari browser, maka web server akan memproses permintaan
itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke
browser. Data ini mempunyai format yang standar, disebut dengan format SGML

(Standard General Markup Language). Data yang berformat ini kemudian akan
ditampilkan oleh browser sesuai dengan kemampuan browser tersebut. Contohnya, bila
data yang dikirim berupa gambar, browser yang hanya mampu menampilkan teks
(misalnya lynx) tidak akan mampu menampilkan gambar tersebut, dan jika ada akan
menampilkan alternatifnya saja. Web server, untuk berkomunikasi dengan penggunanya
(web browser) mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol).
Dengan protokol ini, komunikasi antara web server dengan web browser dapat
saling berhubungan satu sama lain. Seperti telah dijelaskan diatas, format data pada world
wide web (www) adalah SGML. Tapi para pengguna internet saat ini lebih banyak
menggunakan format HTML (hypertext markup language) karena penggunaannya lebih
sederhana dan mudah dipelajari. Kata Hypertext mempunyai arti bahwa seorang
pengguna internet dengan web browsernya dapat membuka dan membaca dokumen –
dokumen yang ada dalam komputernya atau bahkan jauh tempatnya sekalipun. Hal ini
memberikan cita rasa dari suatu proses yang tridimensional, artinya pengguna internet
dapat membaca dari satu dokumen ke dokumen lainnya hanya dengan mengklik beberapa

bagian dari halaman – halaman dokumen (web). Proses yang dimulai dari permintaan
webclient (browser), diterima web server, diproses dan dikembalikan hasil prosesnya
oleh web server ke web client lagi dilakukan secara transparan. Setiap orang dapat
dengan mudah mengetahui apa yang terjadi pada tiap – tiap proses. Secara garis besarnya

web server hanya memproses semua masukan yang diperoleh dari web clientnya.

ANALISA DAN PEMBAHASAN
Installasi Linux Ubuntu 9.10
Sebelum memulai proses penginstallan domain penulis sedikit membahas tentang
cara menginstall Linux Ubuntu 9.10 sebagai sistem operasi domain di jaringan
Webrother. Adapun Persyaratan untuk menginstall Linux Ubuntu 9.10 :
• CD instalasi Linux Ubuntu 9.10
CD dapat di download dari salah satu server linux seperti http://ubuntu.com atau
di situs software lainnya.
• Komputer generasi 486 keatas
Dengan RAM dan space hardisk yang memadai untuk commandline (server)
sistem, ubuntu meminta RAM minimal 64MB (direkomendasikan 256MB) dan
space harddisk 1 GB.
Masukkan CD Linux Ubuntu 9.10 kedalam CD-ROM lalu setting firstboot
komputer agar booting pertama kali dari CD-ROM drive, setelah booting selesai maka
akan muncul tampilan awal untuk instalasi Linux Ubuntu 9.10 terdapat beberapa menu
seperti gambar dibawah ini. Lalu pilih Install Ubuntu.

Gambar 1 Booting CD


Gambar 2 Memilih Bahasa
Pilih bahasa yang ingin digunakan (default english). Setelah itu klik forward untuk ke
menu selanjutnya.

Gambar 3 Memilih Zona Waktu
Memilih zona waktu (Indonesia, Jakarta), klik tombol forward untuk ke menu
berikutnya.

Gambar 4 Memilih Keyboard Layout

Memilih keyboard layout yang digunakan (default english), klik tombol forward
untuk ke menu selanjutnya.
Melakukan partisi pada harddisk terdapat empat pilihan yaitu Guided-resize,
Guided – Use entire hardisk, Guide-use the largest countinous free space dan manual.
Penulis menggunakan tipe partisi manual.

Gambar 5 Mempartisi Harddisk

Format partisi yang digunakan untuk instalasi ubuntu adalah ext3 dan swap.

Untuk ext3, penulis memberikan 9 GB dan 1 GB untuk swap area. Untuk ext3 harus
diberikan mount point „/‟ (slash), karena akan menjadi root utama ubuntu. Sementara
swapadalah virtual memori jika seandainya partisi utama penuh maka virtual memori
berfungsi sebagai media penyimpanan sementara. Setelah proses partisi hardisk selesai
lalu klik forward untuk ke menu berikutnya.
Pengaturan nama pemakai, password pemakai, nama desktop (nama komputer)
dan nama untuk log-in seperti pada gambar dibawah ini.

Gambar 6 Pengaturan Pemakai

Gambar 7 Persiapan Untuk Menginstall

Gambar layar konfirmasi diatas muncul setelah semua pengaturan selesai. Klik
tombol install untuk melakukan installasi

Gambar 8 Proses Penginstallan

Gambar 9 Tampilan Awal Sistem Operasi Linux

Setelah proses penginstallan selesai restart komputer dan Linux Ubuntu 9.10

siap untuk digunakan.

Instal Samba PDC dan OpenLDAP
Bagian ini menjelaskan cara mengatur windows domain dengan menggunakan
Samba dan OpenLDAP sebagai Domain Controller utama yang menyimpan informasi
account windows pada jaringan Webrother. Yang menyediakan otentifikasi terpusat
untuk komputer pengguna windows pada jaringan Webrother. Pengguna juga dapat
menggunakan profil roaming, dimana pengguna dapat masuk ke setiap windows PC
dijaringan tanpa harus mengubah pengaturan terlebih dahulu.
Bagian yang harus tercapai : Windows PC dapat bergabung dengan domain,
Windows domain user dapat masuk ke PC, Windows domain user bisa mengubah
password mereka, dengan menekan Ctrl-Alt-Delete, dll , Drive M: muncul dan akses
benar, Roaming profil secara otomatis dibuat bila pengguna domain log-off pada akhir
sesi pertama mereka, Ubuntu server sudah berhasil disiapkan untuk menggunakan LDAP
gabungan dan file sebagai mekanisme otentikasi POSTFIX.
Langkah pertama buka terminal di Linux lalu install OpenLDAP dan Samba :

Gambar 10 Membuka Terminal Linux

1. Install OpenLDAP, Samba dan bagian – bagian lainnya

aptitude install slapd ldap-utils migrationtools db4.7-util
aptitude install samba smbldap-tools smbclient samba-doc libtalloc1
libpam-smbpass

2. Konfigurasi OpenLDAP untuk digunakan dengan Samba
Instal dokumen samba yang berisi skema. Ekstrak Samba,schema dan salin ke
area sistem yang diperlukan untuk OpenLDAP.

cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz
/etc/ldap/schema/
gzip -d /etc/ldap/schema/samba.schema.gz

Tentukan password admin LDAP dan menghasilkan kunci hash SSHA untuk itu
root@webrother:~# slappasswd
New password:
Re-enter new password:
{SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+
slappasswd.

; ini hasil generate

Buat file init.ldif nama 4 OUs (Organization Units) Users, Groups, Computer dan Idmap
untuk digunakan dengan smbldap-tools
~# vim

/etc/ldap/init.ldif

dn: dc=webrother,dc=local
objectClass: dcObject
objectClass: organizationalUnit
dc: masterpop3
ou: masterpop3.local
dn: cn=admin,dc=webrother,dc=local
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: {SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+
dari generate slappasswd.

##masukkan hasil

dn: ou=Users,dc=webrother,dc=local
objectClass: organizationalUnit
ou: Users
dn: ou=Groups,dc=webrother,dc=local
objectClass: organizationalUnit
ou: Groups
dn: ou=Computers,dc=webrother,dc=local
objectClass: organizationalUnit
ou: Computers
dn: ou=Idmap,dc=webrother,dc=local
objectClass: organizationalUnit
ou: Idmap

membuat file /etc/ldap/slapd.conf untuk domain ini, dan sesuaikan konfigurasinya
-# vim /etc/ldap/slapd.conf

include
include
include
include
include
include

/etc/ldap/schema/core.schema
/etc/ldap/schema/cosine.schema
/etc/ldap/schema/nis.schema
/etc/ldap/schema/inetorgperson.schema
/etc/ldap/schema/misc.schema
/etc/ldap/schema/samba.schema

pidfile
argsfile
loglevel
modulepath
moduleload
sizelimit
tool-threads
backend
database

/var/run/slapd/slapd.pid
/var/run/slapd/slapd.args
0
/usr/lib/ldap
back_bdb
500
1
bdb
bdb

suffix
"dc= webrother,dc=local"
#sesuaikan
dengan DN yg anda buat.
rootdn
"cn=admin,dc=webrother,dc=local"
#sesuaikan
rootpw
{SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+ #samakan
seperti di init.ldif
directory
"/var/lib/ldap"
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500
index objectClass
lastmod
checkpoint

eq

on
512 30

access to
attrs=userPassword,shadowLastChange,sambaNTPassword,sambaLMPassword
by dn="cn=admin,dc=webrother,dc=local" write
by anonymous auth
by self write
by * none
access to dn.base="" by * read
access to *
by dn="cn=admin,dc=webrother,dc=local" write
by * read

inisialisasi OpenLDAP Database
~#
~#
~#
~#

/etc/init.d/slapd stop
rm -rf /var/lib/ldap/*
mv /etc/ldap/slapd.d /etc/ldap/slapd.d.orig
mkdir /etc/ldap/slapd.d

~# slapadd -v -l init.ldif
/etc/ldap/slapd.conf: line 109: rootdn is always granted unlimited
privileges.
/etc/ldap/slapd.conf: line 126: rootdn is always granted unlimited
privileges.
added: "dc=webrother,dc=local" (00000001)
added: "cn=admin,dc=webrother,dc=local" (00000002)
added: "ou=Users,dc=webrother,dc=local" (00000003)
:
:
:
~# chown -R openldap:openldap /var/lib/ldap

selanjutnya update konfigurasi OpenLDAP
~# cd /etc/ldap
~# slaptest -f slapd.conf -F slapd.d

berhasil jika terlihat: config file testing succeeded, ubah kembali kepemilikan directory
slapd.d
~# chown -R openldap:openldap slapd.d
~# /etc/init.d/slapd start
~# ldapsearch -x -b dc=webrother,dc=local -h 127.0.0.1 | less
dn: dc=webrother,dc=local
objectClass: dcObject
objectClass: organizationalUnit
dc: masterpop3
ou: masterpop3.local
:
:
:

3. Konfigurasi samba sebagai Primary Domain Controller (PDC)
Membuat folder samba untuk keperluan share dan logon
~# mkdir -p /home/samba/{netlogon,profiles,public}
~# chmod 777 /home/samba/{profiles,public}

Membuat atau mengubah file /etc/samba/smb.conf seperti contoh berikut ini
[global]
workgroup = WEBROTHER
netbios name = DC-UBUNTU
server string = DC SERVER
; menjadi sebuah PDC
domain logons = Yes
domain master = Yes
; menjadi sebuah WINS Server
wins support = Yes
security = user

encrypt passwords = Yes
obey pam restrictions = No
dns proxy = No
os level = 35
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
pam password change = Yes
unix password sync = No
ldap passwd sync = yes
passdb backend = ldapsam:ldap://localhost
ldap suffix = dc= ebrother,dc=local
ldap admin dn = cn=admin,dc=webrother,dc=local
ldap machine suffix = ou=Computers
ldap user suffix = ou=Users
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Idmap
ldap ssl = no
add user script = /usr/sbin/smbldap-useradd -m '%u'
delete user script = /usr/sbin/smbldap-userdel %u
add group script = /usr/sbin/smbldap-groupadd -p '%g'
delete group script = /usr/sbin/smbldap-groupdel '%g'
add user to group script = /usr/sbin/smbldap-groupmod -m '%u'
'%g'
delete user from group script = /usr/sbin/smbldap-groupmod -x
'%u' '%g'
set primary group script = /usr/sbin/smbldap-usermod -g '%g'
'%u'
add machine script = /usr/sbin/smbldap-useradd -w '%u'
logon
logon
logon
logon

drive = M:
home = \\DC-UBUNTU\%U
path = \\DC-UBUNTU\%U\Profile
script = logon.bat

server signing = auto
server schannel = Auto
[homes]
comment = Home Directories
valid users = %S
read only = No
browseable = No
[netlogon]
comment = Network Logon Service
path = /home/samba/netlogon
admin users = root

guest ok = Yes
read only = Yes
browseable = No
[Profiles]
comment = Roaming Profile Share
path = /home/samba/profiles
read only = No
profile acls = Yes
browsable = No
[Public]
comment = Public Share
path = /home/samba/public
read only = No
guest ok = Yes
browsable = Yes
writeable = Yes
create mask = 0666
directory mask = 0777

membuat password untuk LDAP admin account (spt: cn=admin,dc=webrother,dc=local)
~# smbpasswd -W
Setting stored password for "cn=admin,dc=webrother,dc=local" in
secrets.tdb
New SMB password:
; password yg sama dengan
LDAP admin
Retype new SMB password:

Restart Samba
~# /etc/init.d/samba restart

Gunakan SMB klien untuk memeriksa bahwa server Samba merespons dengan benar.
~# smbclient -L dc-ubuntu -U anonymous%
Anonymous login successful
Domain=[WEBROTHER] OS=[Unix] Server=[Samba 3.4.0]
Sharename
Type
Comment
-----------------IPC$
IPC
IPC Service (DC SERVER)
Public
Disk
Public Share
Anonymous login successful
Domain=[webrother] OS=[Unix] Server=[Samba 3.4.0]
Server
---------

Comment
-------

DC-UBUNTU
DB-SRV
NIXNUX
TDS
WABAHTIAR-PC
Workgroup
--------WEBROTHER

DC SERVER

Master
------DC-UBUNTU

4. Konfigurasi paket SMBLDAP-TOOL
Gunakan paket smbldap-tools untuk mengisi direktori ldap, menambahkan users,
menambahkan groups, menambahkan workstation, dll .. Namun, toolsnya harus
dikonfigurasi terlebih dahulu.
~#
~#
~#
~#

cd /usr/share/doc/smbldap-tools/examples/
cp smbldap_bind.conf /etc/smbldap-tools/
cp smbldap.conf.gz /etc/smbldap-tools/
gzip -d /etc/smbldap-tools/smbldap.conf.gz

Mengedit file /etc/smbldap-tools/smbldap.conf untuk dikonfigurasi :
~# cd /etc/smbldap-tools/
~# vim smbldap.conf

Konfigurasinya akan terlihat seperti ini, edit dan sesuaikan..
SID="S-1-5-21-1544440099-1215257018-185093263"
sambaDomain="WEBROTHER"
slaveLDAP="127.0.0.1"
slavePort="389"
masterLDAP="127.0.0.1"
masterPort="389"
ldapTLS="0"
verify="require"
cafile="/etc/smbldap-tools/ca.pem"
clientcert="/etc/smbldap-tools/smbldap-tools.pem"
clientkey="/etc/smbldap-tools/smbldap-tools.key"
suffix="dc=webrother,dc=local"
usersdn="ou=Users,${suffix}"
computersdn="ou=Computers,${suffix}"
groupsdn="ou=Groups,${suffix}"
idmapdn="ou=Idmap,${suffix}"
sambaUnixIdPooldn="sambaDomainName=WEBROTHER,${suffix}"
scope="sub"
hash_encrypt="SSHA"
crypt_salt_format="%s"
# Unix Accounts Configuration

userLoginShell="/bin/bash"
userHome="/home/%U"
userHomeDirectoryMode="700"
userGecos="System User"
defaultUserGid="513"
defaultComputerGid="515"
skeletonDir="/etc/skel"
defaultMaxPasswordAge="45"
userSmbHome=
userProfile=
userHomeDrive=
userScript=
mailDomain="webrother.local"
with_smbpasswd="0"
smbpasswd="/usr/bin/smbpasswd"
with_slappasswd="0"
slappasswd="/usr/sbin/slappasswd"

Edit file /etc/smbldap-tools/smbldap_bind.conf ..
~# vim smbldap_bind.conf
slaveDN="cn=admin,dc=webrother,dc=local"
slavePw="passwordmu"
masterDN="cn=admin,dc=webrother,dc=local"
masterPw="passwordmu"

Set permision file
~# chmod 0644 /etc/smbldap-tools/smbldap.conf
~# chmod 0600 /etc/smbldap-tools/smbldap_bind.conf

5. Mengisi populate OpenLDAP Database
Sesuai namanya, smbldap-tools menyediakan hubungan antara Samba dan LDAP
database. Tool ini juga meletakkan/memasukkan inetOrgPerson dan POSIX ke dalam
database.
Smbldap-tools memberikan perintah berikut
• smbldap-groupadd - menambahkan grup baru
• smbldap-groupdel - menghapus grup
• smbldap-groupmod - memodifikasi sebuah grup, termasuk menambahkan atau
menghapus member
• smbldap-groupshow - menampilkan propertis dari sebuah grup, termasuk member
• smbldap-passwd - mengganti password user
• smbldap-populate - mengisi LDAP database, menyediakan struktur yang
diperlukan untuk Samba








smbldap-useradd - menambahkan akun user baru
smbldap-userdel - menghapus sebuah akun user
smbldap-userlist - daftar user atau mesin dengan beberapa info
smbldap-usershow - menampilkan informasi untuk akun user
smbldap-usermod - mengubah Unix dan Samba propertis dalam satu user (banyak
properti)
smbldap-userinfo - mengubah gecos informasi dalam sebuah akun user (hanya
beberapa properti)

Mengisi LDAP database dengan entri Samba sangat penting, karena meliputi
pembentukan grup standard, seperti Administrators dan Domain Users.
Jalankan perintah berikut untuk mengisi LDAP database..
~# smbldap-populate -u 30000 -g 30000
Populating LDAP directory for domain MASTERPOP3 (S-1-5-211544440099-1215257018-185093263)
(using builtin directory structure)
entry dc= webrother,dc=local already exist.
entry ou=Users,dc= webrother,dc=local already exist.
entry ou=Groups,dc= webrother,dc=local already exist.
entry ou=Computers,dc= webrother,dc=local already exist.
entry ou=Idmap,dc= webrother,dc=local already exist.
adding new entry: uid=root,ou=Users,dc= webrother,dc=local
adding new entry: uid=nobody,ou=Users,dc= webrother,dc=local
adding new entry: cn=Domain Admins,ou=Groups,dc= webrother,dc=local
adding new entry: cn=Domain Users,ou=Groups,dc= webrother,dc=local
adding new entry: cn=Domain Guests,ou=Groups,dc= webrother,dc=local
adding new entry: cn=Domain Computers,ou=Groups,dc=
webrother,dc=local
adding new entry: cn=Administrators,ou=Groups,dc= webrother,dc=local
adding new entry: cn=Account Operators,ou=Groups,dc=
webrother,dc=local
adding new entry: cn=Print Operators,ou=Groups,dc=
webrother,dc=local
adding new entry: cn=Backup Operators,ou=Groups,dc=
webrother,dc=local
adding new entry: cn=Replicators,ou=Groups,dc= webrother,dc=local
entry sambaDomainName=WEBROTHER,dc= webrother,dc=local already
exist. Updating it...
Please provide a password for the domain root:
Changing UNIX and samba passwords for root
New password:
;isi password yg sama dg
root
Retype new password:

Pastikan bahwa direktori LDAP database memiliki informasi di dalamnya dengan
menjalankan perintah:
~# ldapsearch -x -b dc= webrother,dc=local -h 127.0.0.1 |less

6. Konfigurasi server untuk menggunakan LDAP authentication
Pada dasarnya perlu memberitahukan server untuk menggunakan otentikasi
LDAP sebagai salah satu pilihan. Maksudnya jika akan menghubungkan sebuah server
maka dapat login sebagai klien ke LDAP server.
Install paket yang diperlukan ..
~# aptitude install auth-client-config libpam-ldap libnss-ldap

Konfigurasi akan menampilkan pertanyaan, dan jawab dengan contekan berikut ini :
Should deb
conf manage LDAP configuration?: Yes
LDAP server Uniform Resource Identifier: ldapi://127.0.0.1
Distinguished name of the search base: dc=masterpop3,dc=local
LDAP version to use: 3
Make local root Database admin: Yes
Does the LDAP database require login? No
LDAP account for root: cn=admin,dc=masterpop3,dc=local
LDAP root account password: 12345

Buka file /etc/ldap.conf untuk di edit ..
~# vim /etc/ldap.conf
host 127.0.0.1
base dc= webrother,dc=local
uri ldapi://127.0.0.1
ldap_version 3
rootbinddn cn=admin,dc= webrother,dc=local
bind_policy soft
pam_password md5 nss_initgroups_ignoreusers avahi,avahiautoipd,backup,bin,bind,couchdb,daemon,games,gdm,gnats,haldaemon,hplip,
irc,kernoops,landscape,libuuid,list,lp,mail,man,messagebus,news,openlda
p,proxy,pulse,root,saned,speechdispatcher,sshd,sync,sys,syslog,uucp,www-data

Buat symlink atau shortcut untuk file ldap.conf
~# ln -s /etc/ldap.conf /etc/ldap/ldap.conf

Buat file baru di /etc/auth-client-config/profile.d/open_ldap :
~# vim /etc/auth-client-config/profile.d/open_ldap
[open_ldap]
nss_passwd=passwd: compat ldap

nss_group=group: compat ldap
nss_shadow=shadow: compat ldap
nss_netgroup=netgroup: compat ldap
pam_auth=auth
required
pam_env.so
auth
sufficient
pam_unix.so likeauth nullok
auth
sufficient
pam_ldap.so use_first_pass
auth
required
pam_deny.so
pam_account=account
sufficient
pam_unix.so
account
sufficient
pam_ldap.so
account
required
pam_deny.so
pam_password=password
sufficient
pam_unix.so nullok md5 shadow
use_authtok
password
sufficient
pam_ldap.so use_first_pass
password
required
pam_deny.so
pam_session=session
required
pam_limits.so
session
required
pam_mkhomedir.so skel=/etc/skel/
session
required
pam_unix.so
session
optional
pam_ldap.so

Backup /etc/nsswitch.conf dan bagian – bagian lainnya :
~#
~#
~#
~#

cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
cd /etc/pam.d/
mkdir backup
cp * backup/

Aktifkan Profil baru Authentication LDAP dengan menjalankan perintah berikut:
~# auth-client-config -a -p open_ldap

7. Menambahkan user domain ke dalam LDAP database
Untuk menambahkan user LDAP. Gunakan account user ini untuk memverifikasi
bahwa otentikasi LDAP sudah bekerja.
~# smbldap-useradd -a -m -M gery -c "Gery Erlangga" gery
~# smbldap-passwd gery
Changing UNIX and samba passwords for gery
New password:
Retype new password:

Berikut ini adalah penjelasan perintah pilihan yang digunakan.
-a yang memungkinkan Windows maupun Linux login
-m membuat direktori home, tinggalkan ini jika Anda tidak memerlukan akses lokal
-M set up username bagian dari alamat email
-c menyebutkan nama lengkap user

Install dan konfigurasi Domain Name Service (DNS)
Setelah melakukan instalasi Ubuntu Linux Server versi 9.10 (Karmic Koala) dan
sudah berfungsi dengan benar. Berikut adalah langkah-langkah untuk melakukan instalasi
paket yang berhubungan dengan server DNS:
1. Install paket bind9 dan dnsutils
$ sudo apt-get install bind9 dnsutils

Hasil instalasi bind9 terdapat pada folder /etc/bind.
2. Setting cache server atau tempat penyimpanan sementara
Sunting file /etc/bind/named.conf.options, hilangkan tanda komentar ( // ) dan
ganti angka 1.2.3.4 dengan alamat server DNS yang diberikan oleh ISP (pada contoh ini
IP DNS adalah 8.8.8.8, milik Google).
forwarders {
8.8.8.8;
};

Restart service bind dengan:
$ sudo /etc/init.d/bind9 restart

Untuk menguji hasil cache server ini, lakukan perintah berikut:
$ dig –x 127.0.0.1
$ dig yahoo.co.id

Pastikan output dari dig mendapatkan ANSWER: 1 (bukan 0).
3. Membuat File Zone
File zone diperlukan untuk resolving (pemetaan) nama ke alamat IP. Ikuti
langkahnya:
Sunting file /etc/bind/named.conf.local, dan buat zone webrother.org:
zone “webrother.org” {
type master;
file “/etc/bind/db.webrother.org”;
};

Isi file dari db.webrother.org dapat disalin dari file db.local dan dilakukan
modifikasi seperlunya. Lihat langkah dibawah ini untuk menyalinnya:
# cp /etc/bind/db.local /etc/bind/db.webrother.org

Sunting file /etc/bind/db.webrother.org dengan ketentuan:
• Ganti localhost. dengan nama_domain yang akan digunakan,
yaitu webrother.org
• Ganti root.localhost dengan webmaster.webrother.com (perhatikan disini email
menggunakan tanda titik (.) bukan @ untuk pemisah dengan domainnya).
• Jangan menghapus tanda “.” yang sudah ada pada setiap akhir nama host.
; Zone file for webrother.org
$TTL 604800
;
@
IN
SOA
ns1.webrother.org.
2
;
604800
;
86400
;
2419200
;
604800 )
;
;
@
ns
www
idschool

NS
A
A
A
CNAME

2 hours
webmaster.webrother.org. (
Serial
Refresh
Retry
Expire
Negative Cache TTL

ns1.webrother.org.
172.168.10.25
172.168.10.20
172.168.10.25
www

4. Membuat File Reverse Zone
File reverse zone ini diperlukan mengkonversi alamat IP ke nama. Berikut adalah
langkah yang harus dilakukan.
Sunting file /etc/bind/named.conf.local, dan masukkan reverse zone berikut:
zone “10.168.172.in-addr.arpa” {
type master;
notify no;
file “/etc/bind/db.172”;
};

Angka 10.168.172 di dapatkan dari reverse alamat (3 oktet pertama) dari alamat
IP yang digunakan untuk server DNS ini.
Langkah berikutnya adalah membuat file db.172 dengan menyalin file db.127:
# cp /etc/bind/db.127 /etc/bind/db.172

Sunting file /etc/bind/db.172, dengan ketentuan:
• Ganti localhost. dengan domain yang akan digunakan, yaitu webrother.org.
• Ganti root.localhost. dengan webmaster.webrother.org. (perhatikan disini email
menggunakan tanda titik (.) bukan @ untuk pemisah dengan domainnya).
• Jangan menghapus tanda “.” yang sudah ada pada setiap akhir nama host.

Berikut adalah hasil setelah perubahan pada file /etc/bind/db.172, setelah di sesuaikan:
; Zone file for reverse zone 10.168.172.in-addr.arpa (172.168.10.x)
$TTL 604800
; 2 hours
@
IN SOA
ns1.webrother.org. webmaster.webrother.org. (
2
; Serial
604800
; Refresh
86400
; Retry
2419200
; Expire
604800
; Negative Cache TTL
;
@
IN
NS
ns1.
20
IN
PTR
ns1.webrother.com.
25

IN

PTR

www.webrother.org.

Restart kembali bind:
$ sudo /etc/init.d/bind9 restart

Sunting file /etc/resolv.conf dengan:
$ sudo /etc/resolv.conf

Isi seperti dibawah ini:
search webrother.org
nameserver 172.168.0.1

Lakukan pengujian:
$ named-checkzone webrother.org /etc.bind/db.webrother.org // check zone webrother.org
$ named-checkzone webrother.com /etc.bind/db.172 // check reverse zone untuk
webrother.org

Kedua perintah pengujian diatas harus memberikan jawaban OK.
Lakukan ping :
$ ping webrother.org
$ ping www.webrother.org
$ ping idschool.webrother.org

Pastikan hasilnya memberikan jawaban (reply).
Install Mail Server

Untuk menginstall mail server ada beberapa tahap dan bagian yang harus
diinstal dan dikonfigurasikan satu persatu
1. Install postfix
Postfix adalah Mail Transfer Agent (MTA) untuk ubuntu. MTA ada didalam
repositori utama Ubuntu yang berarti MTA adalah bagian yang menerima keamanan
dalam suatu Mail Server. Berikut adalah cara untuk menginstall postfix dan
mengkonfigurasikannya sebagai server SMTP sebagai sumber yang aman dijaringan
webrother.
Install postfix terlebih dahulu.
sudo aptitude install postfix

setelah menginstall dilanjutkan dengan konfigurasi postfix tersebut
pada terminal di linux ketik
sudo dpkg-reconfigure postfix

konfigurasi mailbox dengan format maildir :
sudo postconf -e 'home_mailbox = Maildir/'
sudo postconf -e 'mailbox_command ='

Dibawah ini merupakan tempat penempatan mail baru di /home/username/maildir
sehingga perlu untuk mengkonfigurasi Mail Delivery Agent untuk menggunakan jalan
yang sama. Konfigurasi untuk postfix SMTP AUTH menggunakan SASL (saslauthd)
sudo postconf -e 'smtpd_sasl_local_domain ='
sudo postconf -e 'smtpd_sasl_auth_enable = yes'
sudo postconf -e 'smtpd_sasl_security_options = noanonymous'
sudo postconf -e 'broken_sasl_auth_clients = yes'
sudo postconf -e 'smtpd_recipient_restrictions =
permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'
sudo postconf -e 'inet_interfaces = all'

setelah itu ubahlah /etc/postfix/sasl/smtpd.conf dan ketik sebagai berikut :
pwcheck_method: saslauthd
mech_list: plain login

membuat sertifikat yang akan digunakan untuk enkripsi TLS atau otentikasi sertifikat :
touch smtpd.key
chmod 600 smtpd.key
openssl genrsa 1024 > smtpd.key
openssl req -new -key smtpd.key -x509 -days 3650 -out smtpd.crt # has
prompts

openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out
cacert.pem -days 3650 # has prompts
sudo mv smtpd.key /etc/ssl/private/
sudo mv smtpd.crt /etc/ssl/certs/
sudo mv cakey.pem /etc/ssl/private/
sudo mv cacert.pem /etc/ssl/certs/

konfigurasi postfix untuk melakukan enkripsi TLS untuk surat masuk dan surat keluar :
sudo postconf -e 'smtp_tls_security_level = may'
sudo postconf -e 'smtpd_tls_security_level = may'
sudo postconf -e 'smtpd_tls_auth_only = no'
sudo postconf -e 'smtp_tls_note_starttls_offer = yes'
sudo postconf -e 'smtpd_tls_key_file = /etc/ssl/private/smtpd.key'
sudo postconf -e 'smtpd_tls_cert_file = /etc/ssl/certs/smtpd.crt'
sudo postconf -e 'smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem'
sudo postconf -e 'smtpd_tls_loglevel = 1'
sudo postconf -e 'smtpd_tls_received_header = yes'
sudo postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
sudo postconf -e 'tls_random_source = dev:/dev/urandom'
sudo postconf -e 'myhostname = server1.example.com' # remember to
change this to yours

dokumen /etc/postfix/main.cf akan terlihat seperti dibawah ini:
See /usr/share/postfix/main.cf.dist for a commented, more complete
version
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
myhostname = server1.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = server1.example.com, example.com,
localhost.example.com, localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes

smtpd_recipient_restrictions =
permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_tls_auth_only = no
#Use these on Postfix 2.2.x only
#smtp_use_tls = yes
#smtpd_use_tls = yes
#For Postfix 2.3 or above use:
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/ssl/private/smtpd.key
smtpd_tls_cert_file = /etc/ssl/certs/smtpd.crt
smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom

setelah itu restart postfix daemon :
sudo /etc/init.d/postfix restart

2. Konfigurasi postfix untuk menggunakan SASL untuk SMTP AUTH
Pertama install libsasl2-2 dan sasl2-bin dari repository utama lalu ubah beberapa
hal untuk membuatnya bekerja dengan baik. Karena chroot postfix berjalan di
/var/spool/postfix. Untuk itu ubah beberapa jalur untuk berada di root palsu.
/var/run/sasluthd menjadi /var/spool/postfix/var/run/saslauthd. Dengan mengubah jalur
saslauthd aplikasi lain yang menggunakan saslauthd mungkin akan ikut terpengaruh
Ubah /etc/default/saslauthd untuk mengaktikan saslauthd. Hapus # didepan
START = yes, tambahkan PWDIR, params dan garis – garis pidfile dan ubahlah baris di
OPTION terakhir
# This needs to be uncommented before saslauthd will be run
automatically
START=yes
PWDIR="/var/spool/postfix/var/run/saslauthd"
PARAMS="-m ${PWDIR}"
PIDFILE="${PWDIR}/saslauthd.pid"
#
#
#
#

You must specify the authentication mechanisms you wish to use.
This defaults to "pam" for PAM support, but may also include
"shadow" or "sasldb", like this:
MECHANISMS="pam shadow"

MECHANISMS="pam"
# Other options (default: -c)
# See the saslauthd man page for information about these options.
#
# Example for postfix users: "-c -m
/var/spool/postfix/var/run/saslauthd"

# Note: See /usr/share/doc/sasl2-bin/README.Debian
#OPTIONS="-c"
#make sure you set the options here otherwise it ignores params above
and will not work
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

Selanjutnya, perbaharui dpkg “state” dari /var/spool/potfix/var/run/saslauthd.
Skrip saslauthd init menggunakan peraturan untuk membuat direktori yang hilang
dpkg-statoverride --force --update --add root sasl 755
/var/spool/postfix/var/run/saslauthd

setelah itu start saslauthd
sudo /etc/init.d/saslauthd start

untuk melihat apakah SMTP-AUTH dan TLS sudah bekerja dengan baik ketik
telnet localhost 25

setelah ditetapkan koneksi ke postfix mail server, ketik :
ehlo localhost

jika muncul statement
250-STARTTLS
250-AUTH

menyatakan bahwa sistem telah bekerja. setelah itu ketik quit untuk kembali ke system
shell.
Install Web Server
Langkah terakhir dalam penginstallan Domain di jaringan Webrother adalah
penginstallan web server. Pada jaringan webrother yang terhubung lebih dari 150 PC
akan lebih mudah jika melihat dari suatu web server.
1. Install Apache :
sudo apt-get install apache2
Selanjutnya cek apakah web server sudah terinstal dengan baik dengan cara buka
browser anda dan ketikkan localhost.
2. Install Mysql-server
Khusus untuk instalasi mysql akan diminta untuk mengisi user dan password
administrator root mysql yang akan digunakan nanti. Sedangkan paket phpmysql
digunakan untuk editor mysql via web, untuk mengaksesnya buka browser lalu ketik

localhost/phpmyadmin masukkan user dan password root mysql yang sudah dibuat
sewaktu installasi mysql.
Kebanyakan penempatan file – file web diletakkan didalam folder /var/www atau
/usr/share. Agar tidak terjadi pembengkakan di direktori root karena banyaknya aplikasi
web yang di porting ke server, konten web dapat dialihkan ke direktori user di
/home/user/public_html dengan cara mengetikkan kode di terminal sebagai berikut :
sudo a2enmod userdir
kemudian restart web server dengan mengetik pada console
sudo /etc/init.d/apache2 restart
lalu buat direktori di /home/user/public_html dan tes dengan membuka browser
kemudian ketikkan :
http://localhost/~user
3. Install phpmyadmin
sudo apt-get install phpmyadmin
Buka folder /srv/www/htdocs/ yang merupakan folder default untuk localhost
yang akan membaca aplikasi web yang akan dijalankan. Selanjutnya, running localhost
melalui web browser dengan mengetikkan pada address bar :
http://localhost /manual/
Setelah itu muncul informasi tentang Apache, running MySQL dengan bantuan
phpmyadmin melalui web browser dengan mengetikkan pada address bar :
http://localhost/phpmyadmin/

KESIMPULAN
Penggunaan Domain menyebabkan jaringan Webrother menjadi teratur dan lebih
mudah untuk di kontrol penggunaannya. Karena dapat membatasi arus data yang masuk
dan keluar dari jaringan Webrother termasuk virus dan serangan Hacker maupun Cracker.
PDC membuat user atau pengguna dapat mengakses dari beberapa server hanya dengan
satu acoount user. Hal ini merupakan suatu efisiensi dan efektifitas dalam pemanfaatan
jaringan webrother yang sudah semakin padat populasinya.

Daftar Pustaka

1.

Erlangga Al Farozi, An Ubuntu Guide, Penerbit Andi. Jakarta. Januari 2009

2.

URL : http://www.nixnux.or.id/2009/12/10/openldap-sambapdc-ubuntukarmic/, 12 Januari 2010

3.

URL : http://help.ubuntu.com/community/Postfix, 15 Januari 2010

4.

URL : http://www.forumbebas.com/thread-98841.html, 31 Januari 2010

5.

URL : http://ardelindo.livejournal.com/1985.html, 17 Februari 2010

6.

Wahana Komputer, Administrasi Jaringan Menggunakan Linux Ubuntu 7.
Penerbit Andi. Jakarta. 2008.