smbpasswd (8)

Samba

23 Oct 1998

NAMA

smbpasswd - merubah password SMB dari user

SINOPSIS

smbpasswd [-a] [-d] [-e] [-D level debug] [-n] [-r mesin_remote] [-R urutan name resolve] [-m] [-j DOMAIN] [-U nama_user] [-h] [-s] nama_user

DESKRIPSI

File ini merupakan bagian dari suite Samba.

Program smbpasswd memiliki beberapa fungsi berbeda, tergantung siapa yang menjalankannya, apakah sebagai root atau bukan. Saat user biasa yang menjalankannya, user tersebut bisa merubah password SMB mereka.

Secara default (tanpa argumen apa-apa) smbpasswd akan mencoba merubah password user saat itu di mesin lokal. Cara kerjanya sama seperti program passwd (1). Bedanya adalah smbpasswd tidak memiliki setuid root, akan tetapi bekerja dalam mode client-server dan berkomunikasi dengan smbd lokal. Tentunya supaya bisa berjalan, dibutuhkan smbd untuk berjalan sebagai daemon di mesin lokal. Di mesin UNIX, smbpasswd (5) biasanya menyimpan password terenkripsi dari SMB.

Jika user biasa menjalankan smbpasswd, mereka akan mendapat prompt untuk memasukkan password smb lama dan meminta user memasukkan password baru dua kali untuk memastikan password yang di-input benar. Jika anda memiliki password smb kosong (ditunjukkan dari string "NO PASSWORD" di file smbpasswd) maka cukup tekan <Enter> saat ditanya password lama anda.

smbpasswd juga bisa digunakan untuk merubah password SMB mereka di mesin remote, seperti di mesin Primary Domain Controller dari Windows NT. Lihat opsi (-r) dan -U di bawah.

Jika root yang menjalankannya, smbpasswd bisa menambah user baru atau menghapus yang lama di file smbpasswd, begitu juga merubah atribut user. Saat dijalankan oleh root, smbpasswd langsung mengakses file smbpasswd lokal, dan memungkinkan perubahan untuk dilakukan, bahkan jika smbd dalam kondisi tidak berjalan sekalipun.

OPSI

-a
Opsi ini menentukan apakah nama user yang ditulis setelahnya akan ditambahkan ke file smbpasswd lokal atau tidak dengan password baru. Opsi ini akan diabaikan jika user itu sudah ada di file smbpasswd dan hanya akan melakukan perubahan password biasa. Catat bahwa user yang ditambahkan harus ada di file password (biasanya /etc/passwd), jika tidak tidak akan berhasil.

Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

-d
Opsi ini untuk membuat user 'disable' dalam file smbpasswd. Caranya dengan menuliskan flag 'D' dalam kontrol account di file smbpasswd. Begitu ini dilakukan maka user tersebut tidak akan bisa melakukan autentikasi SMB lagi.

Jika file smbpasswd memakai format lama (pre-Samba 2.0) yang tidak memiliki tempat untuk flag ini, maka informasi user yang di-'disable' dibuat dengan membuat karakter 'X' di lokasi password dalam file smbpasswd. Untuk keterangan lebih lengkap tentang perbedaan format ini, lihat smbpasswd (5)

Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

-e
Opsi ini kebalikan dari -d, yaitu untuk membuat user enabled dalam file smbpasswd, jika sebelumnya dibuat disable. Jika tidak maka tidak akan berpengaruh. Jika sudah dibuat enable kembali, maka user akan bisa melakukan autentikasi SMB lagi.

Jika file smbpasswd memakai format lama, maka ia akan memunculkan prompt password baru untuk user tersebut, atau bisa dilakukan dengan membuang flag 'D' dari lokasi kontrol account di file smbpasswd. Untuk keterangan lebih lengkap tentang perbedaan format ini, lihat smbpasswd (5)

Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

-D leveldebug
adalah nilai integer dari 0 - 10.

Nilai default disini jika tidak dimasukkan apa-apa adalah nol.

Makin tinggi nilai di sini, makin detail data aktifitas server yang di-log ke dalam file log. Pada level 0, hanya error yang kritis dan peringatan serius yang dilog. Level 1 merupakan level yang memadai untuk log server harian.

Level diatas 1 akan membuat log yang besar, dan sebaiknya hanya dipakai guna kepentingan investigasi masalah. Level di atas 3 dibuat hanya untuk developer dan akan membuat data log yang GEDE, dan biasanya sangat cryptic.

-n
Menentukan apakah user yang ditulis setelahnya akan dibuat tidak memiliki password (password kosong) di file smbpasswd lokal. Ini dilakukan dengan menulis string "NO PASSWORD" di awal bagian password dari file smbpasswd.

Untuk membolehkan user yang tidak memiliki password untuk logon ke server Samba maka administrator harus memasukkan parameter berikut di section [global] dari smb.conf :

null passwords = true

Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

-r nama mesin remote
Opsi ini memungkinkan user menentukan di mesin mana mereka akan merubah password SMB-nya. Tanpa parameter ini, smbpasswd hanya akan melakukan perubahan di host lokal. "nama mesin remote" setelah -r merupakan nama NetBIOS dari server SMB/CIFS yang akan dikontak. Nama ini kemudian akan di-resolve ke alamat IP menggunakan standar mekanisme resolusi nama dari Samba. Lihat parameter -R name resolve order tentang bagaimana merubah mekanisme ini.

Nama user yang passwordnya dirubah adalah user UNIX yang sedang logon, lihat -U username untuk detail bagaimana merubah password user lain.

Catat bahwa jika merubah password Windows NT Domain, maka nama mesin remote haruslah nama Primary Domain Controller (BDC hanya punya kopi read-only dari database account user, dan tidak membolehkan perubahan password).

Catat Windows 95/98 tidak memiliki database password dalam arti sebenarnya, jadi tidak mungkin merubah password di mesin Win95/98 sebagai target mesin.

-R urutan name resolve
Opsi ini memungkinkan user dari smbclient menentukan servis resolusi nama apa yang akan digunakan untuk melakukan look-up nama NetBIOS dari host yang sedang terhubung.

Opsi tersebut adalah :"lmhosts", "host", "wins" dan "bcast". Yang akan menyebabkan proses name resolved sebagai berikut:

  • lmhosts : Me-lookup alamat IP di file lmhosts Samba.

  • host : Melakukan standar resolusi nama host ke IP, dengan menggunakan sistem /etc/hosts, NIS dan DNS lookup. Metode ini tergantung pada sistem operasi. Contohn, di IRIX atau Solaris, bisa dikontrol lewat file /etc/nsswitch.conf.

  • wins : Melakukan query nama dengan alamat IP yang terdaftar di parameter wins server dalam smb.conf. Jika tidak ada WINS server, metode ini akan diabaikan.

  • bcast : Melakukan broadcast pada setiap interface lokal yang terdaftar di parameter interfaces dari smb.conf. Reliabilitasnya paling rendah dalam metode resolusi nama, sebab sangat tergantung dengan host yang terhubung di dalam subnet.

  • Jika parameter ini tidak di-set, maka urutan name resolve yang akan dipakai adalah yang ada di file smb.conf dalam parameter name resolve order

    Urutan default adalah: lmhosts, host, wins, bcast dan tanpa parameter ini atau entri di smb.conf sekalipun, urutan inilah yang akan dipakai.

    -m
    Memberi tahu smbpasswd bahwa account yang dirubah adalah account MESIN. Biasanya dipakai jika Samba menjadi Primary Domain Comntroller NT. Saat ini di Samba 2.0, support untuk PDC belum menjadi feature lengkap, dan akan dilengkapi di rilis berikut. Jika anda ingin tahu lebih banyak tentang menjadikan Samba sebagai PDC NT, silakan bergabung ke milis samba-ntdom@samba.org.

    Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

    -j DOMAIN
    Opsi ini dipakai untuk memasukkan Samba server ke dalam Domain Windows NT, sebagai anggota Domain dengan kemampuan sama dengan Windows NT Server yaitu memberikan autentikasi ke user. Lihat opsi security=domain di manual smb.conf (5).

    Supaya hal ini bisa dilakukan, Administrator dri Domain Windows NT, harus menggunakan "Server Manager for Domains" untuk memasukkan nama NetBIOS primer dari server Samba sebagai anggota Domain.

    Setelah selesai, untuk bergabung ke Domain, jalankan smbpasswd dengan parameter ini. smbpasswd akan me-look up Primary Domain Controller dari Domain, berdasarkan daftar di parameter password server dari smb.conf, kemudian merubah password dari mesin untuk membuat komunikasi Domain yang aman (secure). smbpasswd kemudian menyimpan password ini dalam file yang read-only oleh root bernama <Domain>.<Mesin>.mac. Dimana <Domain> merupakan nama Domain tempat smb bergabung, dan <Mesin> merupakan nama NetBIOS mesin kita.

    Begitu operasi ini selesai maka smb.conf akan di-update untuk menge-set parameter security=domain sehingga setiap request login ke server Samba akan diautentikasi oleh PDC Windows NT.

    Catat bahwa meskipun autentikasi dilakukan oleh PDC NT, semua user yang mengakses server Samba harus memiliki account UNIX yang valid di mesin itu.

    Opsi ini hanya bisa dilakukan jika smbpasswd dijalankan sebagai root.

    -U namauser
    Opsi ini hanya bisa dilakukan dengan opsi -r. Saat merubah password di mesin remote, opsi ini memungkinkan kita menentukan nama user di mesin remote tersebut yang passwordnya akan diubah. Sehingga user yang punya nama user berbeda di beberapa sistem bisa merubah password mereka.

    -h
    Memunculkan informasi help dan penggunaan smbpasswd, dan memilih apakah program saat itu dijalankan oleh root atau user biasa.

    -s
    Opsi ini akan membuat smbpasswd dalam mode silent (tidak menampilkan prompt) dan membaca password dari standard input bukan dari /dev/tty (seperti jika kita menggunakan passwd (1)). Opsi ini berguna untuk memudahkan orang menulis skrip yang mengontrol smbpasswd

    namauser
    Menentukan user siapa saja yang bisa mengoperasikan opsi yang bersifat root only. Untuk menjalankan opsi ini hanya root yang bisa melakukan nya, dan akan merubah atribut di file smbpasswd secara langsung.

    CATATAN

    Oleh karena smbpasswd berjalan dalam mode client-server dan berkomunikasi dengan smbd untuk user yang bukan root, maka smbd harus berjalan supaya smbpasswd juga bisa berjalan. Masalah yang kerap timbul ialah penambahan restriksi untuk host yang bisa mengakses smbd di mesin lokal dalam parameter "allow hosts" dan "deny hosts" di dalam smb.conf dan lupa menambahkan "localhost" untuk masuk ke dalam daftar akses ke smbd.

    Sebagai tambahan, perintah smbpasswd hanya berguna jika Samba telah di-set up untuk menggunakan password terenkripsi. Lihat file ENCRYPTION.txt dalam direktori docs untuk detailnya.

    VERSI

    Manual ini berlaku untuk Samba versi 2.0.

    PENULIS

    Software Samba dan utilitas lain pertama kali dibuat oleh Andrew Tridgell samba-bugs@samba.org. Samba sekarang dikembangkan oleh tim Samba sebagai proyek Open Source, sama seperti pengembangan kernel Linux.

    Manual pertama kali ditulis oleh Karl Auer. Manual ini kemudian dikonversikan ke format YODL (satu software hebat lagi dari Open Source, tersedia bebas di ftp://ftp.icce.rug.nl/pub/unix/) dan di-update pada Samba2.0 oleh Jeremy Allison. Terjemahan bahasa Indonesia oleh M. ZEN Muttaqien aka. ZEN el GUAY.

    Silakan lihat samba (7) untuk mengetahui daftar lengkap kontributor dan detail mengenai bagaimana memberikan laporan bugs, komentar dan sebagainya.