Bergabung ke Domain NT dengan Samba 2.0

Jeremy Allison, Samba Team

7th October 1999

terjemahan/translated by : M. ZEN Muttaqien



Bergabung ke NT Domain dengan Samba 2.0
-----------------------------------

Untuk bergabung dengan NT Domain dari Samba, anda harus lebih dulu menambahkan nama NetBIOS server Samba ke dalam domain NT di PDC dengan Server Manager (Lewat Windows NT PDC anda). Ini akan membuat sebuah 'machine account' dalam SAM (Security Account Manager) di PDC. Catatan : Anda harus memasukkan mesin Samba anda sebagai NT Workstation atau Server, JANGAN sebagai PDC (Primary Domain Controller atau BDC (Backup Domain Controller).

Umpamanya anda punya server dengan Samba-2.x.x dan memiliki nama NetBIOS SERV1 dan tergabung dalam domain NT bernama DOM, dan memiliki PDC (Primary Domain Controller) dengan nama NetBIOS DOMPDC dan dua BDC (Backup Domain Controller) masing-masing DOMBDC1 dan DOMBDC2.

Untuk bergabung ke dalam domain DOM, pertama-tama anda harus menghetikan semua daemon Samba, dan jalankan perintah

smbpasswd -j DOM -r DOMPDC

Begitu anda berhasil bergabung ke dalam domain dan diterima oleh PDC, maka anda akan melihat pesan berikut:

smbpasswd: Joined domain DOM.

Dalam terminal/console anda. Silakan lihat manual tentang smbpasswd untuk lebih jelasnya.

Perintah ini langsung mengakses protokol untuk merubah 'machine account' dan menulis password untuk mesin ini ke dalam file di mana smbpasswd berada. Jika anda melakukan kompilasi dari source code, ia akan tersimpan di

/usr/local/samba/private

Nama file tersebut akan terlihat seperti berikut:

<NT DOMAIN NAME>.<Samba Server Name>.mac

Suffix .mac merupakan singkatan dari Machine Account Password. Jadi berdasarkan contoh kita di atas, maka file-nya akan menjadi

DOM.SERV1.mac

File ini hanya bisa dibuat dan dimiliki oleh root, dan tidak bisa terbaca oleh user. File .mac ini juga merupakan kunci untuk sekuriti level domain di dalam sistem, dan harus diperlakukan dengan hati-hati seperti kita memperlakukan shadow password

Sebelum Samba kita restart, anda harus mengedit dulu file smb.conf untuk memberitahu Samba, bahwa sekuriti yang dipakai sekarang adalah sekuriti level domain.

Tambahkan atau Ubah baris

"security ="

di dalam [global] dari smb.conf anda menjadi:

security = domain

Kemudian ubah

"workgroup ="

masih di dalam [global] menjadi:

workgroup = DOM

Samakan dengan nama domain tempat kita bergabung.

Anda pun harus merubah parameter "encrypt passwords" menjadi "yes". Gunanya adalah agar user anda bisa di-autentikasi di PDC NT anda

Akhirnya, ubah:

"password server ="

di dalam [global] menjadi:

password server = DOMPDC DOMBDC1 DOMBDC2

Sebagai nama PDC dan BDC, sehingga mesin Samba anda akan selalu mencoba untuk memperoleh data autentikasi user dari PDC dan BDC tersebut. Samba akan mencoba mengontak server di dalam parameter itu sesuai urutan. Jadi jika anda mengubah urutan tersebut, maka autentikasi akan terbagi di setiap domain controller, dan meringankan beban PDC dan BDC NT anda.

Sebagai alternatif, jika anda ingin smbd secara otomatis menentukan sendiri daftar Domain Controller untuk autentikasi, anda bisa merubah baris :

password server = *

Metode ini baru diterapkan sejak Samba 2.0.6, memungkinkan Samba untuk menggunakan mekanisme yang sama persis seperti NT, baik lewat broadcast atau database WINS, untuk mencari sendiri Domain Controllers guna autentikasi.

Akhirnya, restart Samba daemons dan anda dan klien anda sudah bisa menggunakan sekuriti level domain.

Kenapa sekuriti level domain lebih baik dari level server?
---------------------------------------------

Sekuriti level domain di Samba tidak menjadikan anda bisa dengan bebas mengunakan setiap user di Unix menjadi user di dalam server. Artinya, jika di ada user di dalam domain bernama DOM\Udin, maka di dalam mesin Unix yang menjalankan Samba harus ada juga user Udin ini. Sistem ini sama persis seperti mode sekuriti lama di Samba "security=server", dimana Samba akan memberikan permintaan autentikasi ke PDC NT dengan cara yang sama seperti yang dilakukan mesin Windows.

Keuntungan sekuriti domain level ini adalah, autentikasi diberikan dengan cara serupa seperti NT Server melakukan autentikasi lewat RPC channel. Artinya dalam trust-relationship di domain NT, Samba ikut termasuk dengan cara dan mekanisme yang sama seperti mesin NT lain. Jadinya, anda bisa meletakkan mesin Samba anda dalam daftar resource di dalam domain, dan autentikasi untuk akses ke resource tersebut (seperti shared folder atau printer) akan diberikan lewat PDC NT di domain tersebut.

Sebagai tambahan, dengan "security=server" setiap Samba daemon di dalam server harus tetap membuka koneksi jika ada user yang lulus dalam proses autentikasi. Ini akan menghabiskan sumber daya jalur koneksi di dalam server NT, dan menyebabkan server NT kehabisan jalur koneksi yang tersedia. Sedang dengan "security =domain", Samba daemons akan mengontak PDC/BDC seperlunya saja untuk kepentinan autentikasi saja, sehingga jalur koneksi akan tetap terpelihara.

Dengan melakukan seluruh proses yang sama dengan NT server meng-autentikasi ke PDC, Samba akan memperoleh informasi autentikasi dari dari seluruh user, seperti SID, daftar grup di domain tersebut, dan lainnya. Seluruh informasi ini akan memungkinkan Samba berkembang menjadi apa yang oleh para developer disebut sebagai 'appliance mode.' Dalam mode ini, tidak diperlukan adanya local UNIX account, dan Samba akan mengumpulkan user ID dan group ID dari PDC NT. Sehingga Samba akan benar-benar 'plug and play'di dalam domain Windows NT, bukan sekedar 'plug and pray.' Kode ini sekarang sedang dalam pengembangan

CACATAN, sengaja salah: Sebagian besar dokumen ini pertama kali diterbitkan sebagai artikel di majalah Web "LinuxWorld" dengan judul "Doing the NIS/NT Samba".