DOWNLOAD DAN COMPILE SAMBA

Sebelum melakukan compile dan instalasi, install terlebih dahulu package-package yang dibutuhkan untuk proses compile

yum install libacl-devel e2fsprogs-devel gnutls-devel readline-devel python-devel gdb pkgconfig gcc libblkid-devel zlib-devel setroubleshoot-server setroubleshoot-plugins policycoreutils-python libsemanage-python setools-libs-python setools-libs popt-devel libpcap-devel sqlite-devel libidn-devel libxml2-devel libacl-devel libsepol-devel libattr-devel keyutils-libs-devel cyrus-sasl-devel krb5-workstation perl openldap-devel bind bind-sdb

Download samba 4 latest update dan simpan pada folder /opt. Samba 4 dapat di download pada link berikut : https://ftp.samba.org/pub/samba/stable/. Saat tulisan ini dibuat, Samba 4 paling update adalah samba-4-0-5

cd /opt
wget -c https://ftp.samba.org/pub/samba/stable/samba-4.0.5.tar.gz
tar -zxvf samba-4.0.5.tar.gz
cd samba-4.0.5
./configure.developer
make
make install

compile-samba-imanudin.com
PROVISIONING SAMBA

Provisioning pada Samba bisa dikatakan sebagai dcpromo-nya pada Windows Server. Pada contoh ini, nama domain yang digunakan adalah imanudin.com dan nama hostname samba4 yang telah dikonfigurasi.  Jalankan perintah berikut pada terminal :

/usr/local/samba/bin/samba-tool domain provision

Pada bagian Realm diisi dengan nama domain, yaitu IMANUDIN.COM dan pada bagian Domain diisi dengan nama domain tanpa TLD (Top Level Domain), yaitu IMANUDIN. Untuk Server Role diisi dengan dc dan DNS backend menggunakan BIND9_DLZ. Isian password minimal 8 karakter dan ada 1 huruf besar, 1 huruf kecil. Tunggu hingga proses provisioning selesai, jika tidak ada masalah seharusnya hasil provisioning seperti berikut :

# /usr/local/samba/bin/samba-tool domain provision
Realm [IMANUDIN.COM]: IMANUDIN.COM
Domain [IMANUDIN]: IMANUDIN
Server Role (dc, member, standalone) [dc]: dc
DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: BIND9_DLZ
Administrator password:
Retype password:
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
Adding DomainDN: DC=imanudin,DC=com
Adding configuration container
Setting up sam.ldb schema
Setting up sam.ldb configuration data
Setting up display specifiers
Modifying display specifiers
Adding users container
Modifying users container
Adding computers container
Modifying computers container
Setting up sam.ldb data
Setting up well known security principals
Setting up sam.ldb users and groups
Setting up self join
Adding DNS accounts
Creating CN=MicrosoftDNS,CN=System,DC=imanudin,DC=com
Creating DomainDnsZones and ForestDnsZones partitions
Populating DomainDnsZones and ForestDnsZones partitions
Unable to find group id for BIND,
set permissions to sam.ldb* files manually
See /usr/local/samba/private/named.conf for an example configuration include file for BIND
and /usr/local/samba/private/named.txt for further documentation required for secure DNS updates
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba 4 has been generated at /usr/local/samba/private/krb5.conf
Once the above files are installed, your Samba4 server will be ready to use
Server Role: active directory domain controller
Hostname: samba4
NetBIOS Domain: IMANUDIN
DNS Domain: imanudin.com
DOMAIN SID: S-1-5-21-2376012262-3063750277-1052043788

STARTING SAMBA 4

Untuk melakukan start, stop samba4 kita dapat menggunakan perintah berikut :

/usr/local/samba/sbin/samba

Check apakah samba sudah berjalan dengan perintah ps

ps aux | grep samba

Untuk melakukan stop, kita dapat menggunakan perintah pkill

pkill samba

Agar otomatis jalan pada saat booting, kita dapat membuat satu script untuk menjalankannya. Buat script dengan nama samba4 pada folder /etc/rc.d/init.d kemudian simpan

vi /etc/rc.d/init.d/samba4

Isi dengan isian berikut :

#! /bin/bash
 #
 # samba4       Bring up/down samba4 service 
 #
 # chkconfig: - 90 10
 # description: Activates/Deactivates all samba4 interfaces configured to \
 #              start at boot time.
 #
 ### BEGIN INIT INFO
 # Provides: 
 # Should-Start: 
 # Short-Description: Bring up/down samba4
 # Description: Bring up/down samba4
 ### END INIT INFO
 # Source function library.
 . /etc/init.d/functions
 
 if [ -f /etc/sysconfig/samba4 ]; then
 	. /etc/sysconfig/samba4
 fi
 
 CWD=$(pwd)
 prog="samba4"
 
 start() {
       # Attach irda device 
       echo -n $"Starting $prog: "
 	/usr/local/samba/sbin/samba
 	sleep 2
 	if ps ax | grep -v "grep" | grep -q /samba/sbin/samba ; then success $"samba4 startup"; else failure $"samba4 startup"; fi
       echo
 }
 stop() {
       # Stop service.
       echo -n $"Shutting down $prog: "
 	killall samba
 	sleep 2
 	if ps ax | grep -v "grep" | grep -q /samba/sbin/samba ; then failure $"samba4 shutdown"; else success $"samba4 shutdown"; fi
       echo
 }
 status() {
 	/usr/local/samba/sbin/samba --show-build
 }
 
 # See how we were called.
 case "$1" in
 start)
 	start
       ;;
 stop)
 	stop
       ;;
 status)
 	status irattach
 	;;
 restart|reload)
 	stop
 	start
 	;;
 *)
       echo $"Usage: $0 {start|stop|restart|status}"
       exit 1
 esac
 
 exit 0

Jalankan perintah berikut untuk mengaktifkannya

chmod 755 /etc/rc.d/init.d/samba4
chmod +x /etc/rc.d/init.d/samba4
ln -s /etc/rc.d/init.d/samba4 /etc/rc3.d/S80samba4
chkconfig --add samba4
chkconfig samba4 on
service samba4 restart

Test masuk ke folder share dengan menjalankan perintah berikut :

/usr/local/samba/bin/smbclient //localhost/netlogon -Uadministrator%Rahasia123

Rahasia123 diatas adalah password yang dipakai pada saat provisioning. Jika berhasil, prompt konsole akan berubah menjadi : smb: \> :

[root@samba4 ~]# /usr/local/samba/bin/smbclient //localhost/netlogon -Uadministrator%Rahasia123
Domain=[IMANUDIN] OS=[Unix] Server=[Samba 4.0.5]
smb: \>

Jika semua perintah diatas dilakukan dan mengeluarkan hasil seperti contoh diatas, maka folder share samba4 sudah OK. Ketik exit untuk keluar dari prompt.

Artikel selanjutnya adalah setup Dynamic DNS & Kerberos untuk keperluan komunikasi dengan sistem klien.

Semoga bermanfaat 😀

Artikel sebelumnya :

  1. http://imanudin.com/2013/05/10/membangun-linux-active-directory-dengan-samba4-pada-redhatcentos-part-1-introduction/
  2. http://imanudin.com/2013/05/11/membangun-linux-active-directory-dengan-samba4-pada-redhatcentos-part-2-instalasi-sistem-operasi/
  3. http://imanudin.com/2013/05/12/membangun-linux-active-directory-dengan-samba4-pada-redhatcentos-part-3-konfigurasi-network-dan-repositori/