GNU/Linux >> Belajar Linux >  >> Linux

Cara Melakukan Instal Direktori Aktif Samba di Linux

Apakah Anda memerlukan manajemen domain terpusat untuk jaringan Anda tetapi tidak tertarik menggunakan Server Windows dan membayar biaya lisensi tambahan? Samba Active Directory adalah salah satu alternatif terbaik dan gratis yang dapat Anda coba di Linux.

Samba adalah solusi sumber terbuka yang terutama dikenal dengan server file jaringan dan layanan cetaknya. Namun sejak versi 4.0, Samba memungkinkan Anda untuk menyediakan peran server Active Directory juga.

Tutorial ini akan mengajarkan Anda cara menginstal dan mengkonfigurasi Samba Active Directory di Ubuntu 20.04. Bersiaplah dan langsung masuk!

Prasyarat

Posting ini adalah demonstrasi langsung. Jika Anda ingin mengikuti, Anda memerlukan persyaratan berikut.

  • Server Ubuntu 20.04. Sepanjang tutorial ini, nama server akan menjadi dc1 , domainnya akan menjadi example.com , dan alamat IP adalah 172.16.1.10 .
  • Akun pengguna dengan hak istimewa sudo.
  • Komputer Windows 10 di jaringan yang sama dengan server Ubuntu.

Menyiapkan Nama Host Server

Langkah pertama adalah mengatur identitas server di jaringan. Untuk melakukannya, Anda harus menetapkan nama host server dan nama domain yang sepenuhnya memenuhi syarat (FQDN) dengan mengikuti langkah-langkah di bawah ini.

1. Pertama, masuk ke server Ubuntu Anda dan buka sesi terminal.

2. Selanjutnya, jalankan hostnamectl perintah di bawah ini untuk mengubah nama host server Anda. Perintah di bawah ini mengubah nama host menjadi dc1 .

# set up the hostname
hostnamectl set-hostname dc1

3. Sekarang, buka /etc/hosts file untuk diedit menggunakan editor pilihan Anda, seperti nano . Di dalam file, tambahkan entri yang menentukan alamat IP server , FQDN , dan nama host dalam format ini – server-IP hostname.domain.com hostname .

Untuk contoh ini, entri file host adalah:# setup FQDN dc1.example.lan 172.16.1.10 dc1.example.lan dc1

# setup FQDN dc1.example.lan
172.16.1.10 dc1.example.lan dc1

Setelah menambahkan entri baru, simpan dan keluar dari file.

4. Terakhir, jalankan perintah di bawah ini untuk memverifikasi FQDN server Samba. # verify FQDN hostname -f # verify FQDN is resolved to the Samba IP address ping -c3 dc1.example.lan

# verify FQDN
hostname -f

# verify FQDN is resolved to the Samba IP address
ping -c3 dc1.example.lan

Seperti yang Anda lihat di bawah, FQDN server Samba adalah dc1.example.lan , yang berubah menjadi 172.16.1.10 .

Menonaktifkan DNS Resolver

systemd-resolved service mengontrol konfigurasi DNS di server Ubuntu, yang tidak sesuai dengan Samba Active Directory. Untuk menyiapkan Samba Active Directory, pertama-tama Anda harus menonaktifkan systemd-resolved service dan ganti /etc/resolv.conf file konfigurasi.

  1. Jalankan perintah berikut untuk menonaktifkan dan menghentikan systemd-resolved layanan sekaligus, dan hapus tautan simbolis ke file /etc/resolv.conf , dalam urutan.
# stop and disable systemd-resolved service
sudo systemctl disable --now systemd-resolved

# remove the symlink file /etc/resolv.conf
sudo unlink /etc/resolv.conf

2. Selanjutnya, buat /etc/resolv.conf baru berkas.

# create a new /etc/resolv.conf file
touch /etc/resolv.conf

3. Buka /etc/resolv.conf menggunakan editor pilihan Anda dan tentukan DNS resolver menggunakan konfigurasi di bawah ini. Pastikan untuk meletakkan alamat IP server Samba di atas baris. Simpan file dan keluar setelah mengedit.

# Samba server IP address
nameserver 172.16.1.10

# fallback resolver
nameserver 1.1.1.1

# main domain for Samba
search example.lan

4. Terakhir, jalankan perintah berikut untuk membuat file /etc/resolv.conf file tidak berubah. Langkah ini memastikan bahwa resolver tidak berubah tanpa diketahui karena alasan apa pun.

# add attribute immutable to the file /etc/resolv.conf
sudo chattr +i /etc/resolv.conf

Menginstal Samba

Setelah Anda mengatur FQDN dan mengkonfigurasi resolusi nama, Anda akan menginstal Samba ke sistem Anda dan mengaktifkan layanan Samba Active Directory. Pada tulisan ini, repositori resmi Ubuntu menyediakan Samba v4.13.

1. Jalankan apt perintah di bawah ini untuk menyegarkan indeks paket server Ubuntu Anda.

sudo apt update

2. Sekarang, jalankan perintah di bawah ini untuk menginstal Samba dengan semua paket dan dependensi.

sudo apt install -y acl attr samba samba-dsdb-modules samba-vfs-modules smbclient winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user dnsutils chrony net-tools

3. Ketik nama domain ranah default dalam huruf besar. Dalam contoh ini, FQDN adalah dc1.example.lan , jadi nama domain ranah default harus EXAMPLE.LAN . Sorot Oke dan tekan Enter.

4. Pada prompt berikutnya, ketik server FQDN. Langkah ini mendefinisikan server Kerberos default. Sorot Oke dan tekan Enter.

5. Selanjutnya, ketik server FQDN lagi untuk menentukan server administratif Kerberos. Sorot Oke, dan tekan Enter untuk menyelesaikan konfigurasi Samba awal.

6. Setelah instalasi Samba, jalankan perintah berikut untuk menghentikan dan menonaktifkan layanan yang tidak diperlukan oleh server Samba Active Directory smbdnmbd , dan winbind . Server hanya membutuhkan samba-ac-dc untuk melayani sebagai Direktori Aktif dan pengontrol domain.

# stop and disable samba services - smbd, nmbd, and winbind
sudo systemctl disable --now smbd nmbd winbind

7. Terakhir, jalankan perintah di bawah ini untuk mengaktifkan dan mengaktifkan samba-ad-dc melayani.

# activate samba-ad-dc service
sudo systemctl unmask samba-ad-dc

# enable samba-ad-dc service
sudo systemctl enable samba-ad-dc

Mengonfigurasi Direktori Aktif Samba

Sekarang Anda telah menginstal Samba di sistem Anda. Ada beberapa langkah lagi untuk mengkonfigurasi Samba Active Directory. Instalasi Samba datang dengan alat baris perintah yang disebut samba-tool untuk menyediakan Direktori Aktif Samba.

1. Pertama, buat cadangan /etc/samba/smb.conf file untuk ukuran yang baik. Proses penyediaan akan menggantikan file ini.

# backup default Samba configuration file
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig

2. Sekarang, jalankan samba-tool perintah di bawah ini untuk memulai penyediaan Direktori Aktif Samba.

# provisioning Samba Active Directory
sudo samba-tool domain provision

3. Di Alam prompt, terima nilai default dan tekan Enter.

4. Di Domain prompt, tekan Enter lagi untuk menerima nilai default.

5. Pada Peran server prompt, biarkan default dan tekan Enter.

6. Di backend DNS prompt, biarkan nilainya sebagai default (SAMBA_INTERNAL ) dan tekan Enter.

7. Selanjutnya, ketik alamat IP penerusan DNS tambahan . Contoh ini akan menambahkan DNS Cloudflare 1.1.1.1 sebagai penerus DNS. Opsi ini hanya tersedia saat Anda menggunakan SAMBA_INTERNAL Dukungan DNS.

8. Ketik kata sandi Samba Active Directory Administrator Anda dan tekan Enter.

Penyediaan secara otomatis membuat file konfigurasi Samba baru (/etc/samba/smb.conf ) dan konfigurasi Kerberos (/var/lib/samba/private/krb5.conf ) berkas.

Setelah penyediaan Samba Active Directory, Anda akan menerima output yang mirip dengan tangkapan layar di bawah ini.

9. Sekarang, jalankan perintah di bawah ini untuk mencadangkan konfigurasi Kerberos default dan menggantinya dengan file /var/lib/samba/private/krb5.conf .

# rename default Kerberos configuration to krb5.conf.orig
sudo mv /etc/krb5.conf /etc/krb5.conf.orig

# copy the Kerberos configuration generated by the samba-tool
sudo cp /var/lib/samba/private/krb5.conf /etc/krb5.conf

10. Terakhir, jalankan systemctl perintah di bawah ini untuk memulai layanan Samba Active Directory samba-ad-dc dan verifikasi bahwa status layanan adalah active (running) .

# start samba-ad-dc service
sudo systemctl start samba-ad-dc

# verify samba-ad-dc service
sudo systemctl status samba-ad-dc

samba-ad-dc layanannya adalah active (running) dan enabled , seperti yang Anda lihat di bawah ini. Daemon Samba AD sekarang akan mulai secara otomatis pada startup sistem.

Menyiapkan Sinkronisasi Waktu

Direktori Aktif Samba bergantung pada protokol Kerberos, dan protokol Kerberos mengharuskan waktu server dan workstation AD disinkronkan. Untuk memastikan sinkronisasi waktu yang tepat, Anda harus menyiapkan Network Time Protocol (NTP) server di Samba juga.

Manfaat sinkronisasi waktu AD termasuk serangan replay pencegahan dan penyelesaian konflik replikasi AD.

1. Jalankan perintah di bawah ini untuk mengubah izin default dan kepemilikan direktori /var/lib/samba/ntp_signd/ntp_signed . Pengguna/grup _chrony harus memiliki izin membaca ke ntp_signed direktori.

# allow group _chrony to read the directory ntp_signd
sudo chown root:_chrony /var/lib/samba/ntp_signd/

# change the permission of the directory ntp_signd
sudo chmod 750 /var/lib/samba/ntp_signd/

2. Sekarang, buka file konfigurasi /etc/chrony/chrony.conf di editor teks dan tambahkan konfigurasi berikut ke bagian bawah file. Konfigurasi ini mengaktifkan server NTP kroni dan mengarahkan lokasi soket NTP ke /var/lib/samba/ntp_signd . Simpan file konfigurasi dan keluar dari editor.

# bind the chrony service to IP address of the Samba AD
bindcmdaddress 172.16.1.10

# allow clients on the network to connect to the Chrony NTP server
allow 172.16.1.0/24

# specify the ntpsigndsocket directory for the Samba AD
ntpsigndsocket /var/lib/samba/ntp_signd

3. Selanjutnya, jalankan perintah berikut untuk memulai ulang dan memverifikasi chronyd layanan di server Samba AD.

# restart chronyd service
sudo systemctl restart chronyd

# verify chronyd service status
sudo systemctl status chronyd

Seperti yang Anda lihat di bawah, chronyd layanannya adalah enabled dan active (running) . Di bagian bawah chronyd pesan log, Anda akan melihat pesan MS-SNTP authentication is enabled , yang mengonfirmasi bahwa ekstensi autentikasi NTP berfungsi.

Memverifikasi Direktori Aktif Samba

Setelah instalasi, Anda harus memverifikasi konfigurasi Samba untuk memastikan bahwa apa yang telah Anda lakukan sejauh ini berfungsi. Anda dapat melakukannya dengan memverifikasi konfigurasi Samba DNS, folder bersama default (File Server), dan menguji otentikasi Kerberos.

1. Jalankan host perintah di bawah ini untuk memverifikasi nama domain AD example.lan dan dc1.example.lan .

# verify domain example.lan
host -t A example.lan

# verify domain dc1.example.lan
host -t A dc1.example.lan

Dan hasilnya akan mengonfirmasi bahwa kedua catatan host mengarah ke alamat IP server Samba 172.16.1.10 .

2. Selanjutnya, verifikasi bahwa _kerberos dan _ldap catatan layanan keduanya mengarah ke FQDN server Direktori Aktif Samba Anda.

# verify SRV record for _kerberos
host -t SRV _kerberos._udp.example.lan

# verify SRV record for _ldap
host -t SRV _ldap._tcp.example.lan

Dalam contoh ini, output di bawah ini mengonfirmasi bahwa keduanya SRV catatan diselesaikan menjadi dc1.example.lan .

3. Selanjutnya, jalankan smbclient perintah di bawah ini untuk memverifikasi sumber daya default yang tersedia di Samba Active Directory.

# checking available resources on Samba AD
smbclient -L example.lan -N

Anda akan melihat bahwa folder bersama default di Samba Active Directory adalah sysvol dan netlogon , dan layanan default yang tersedia adalah IPC$ .

4. Terakhir, jalankan kinit di bawah ini perintah untuk mengautentikasi ke server Kerberos menggunakan pengguna Administrator dan verifikasi tiket Kerberos yang di-cache di sistem Anda.

Catatan:Bagian domain harus dalam huruf besare.

# authenticate to Kerberos using administrator
kinit [email protected]

# verify list cached Kerberos tickets
klist

Anda akan menerima output yang mirip dengan tangkapan layar di bawah ini. Tiket administrator Kerberos disimpan di file /tmp/krb5cc_0 dan akan berakhir dalam 41 hari.

Membuat Pengguna Direktori Aktif Samba Baru

Pada titik ini, Anda telah selesai mengkonfigurasi Samba Active Directory. Tapi seperti yang Anda tahu, belum ada pengguna. Sekarang saatnya membuat akun pengguna Samba AD pertama Anda menggunakan samba-tool perintah.

1. Jalankan perintah di bawah ini untuk membuat pengguna baru bernama alice , yang sandinya adalah alice_password88 .

# create a new user in Samba
sudo samba-tool user create alice alice_password88

2. Selanjutnya, jalankan samba-tool perintah di bawah ini untuk memverifikasi pengguna yang tersedia di Samba.

# checking users on Samba
sudo samba-tool user list

Seperti yang Anda lihat di bawah, pengguna baru alice tersedia di direktori Samba Active.

Bergabung dan Masuk ke Domain Direktori Aktif Samba

Sekarang setelah Anda membuat pengguna baru, yang tersisa adalah bergabung dengan workstation ke domain Active Directory. Setelah itu, Anda dapat masuk ke workstation menggunakan kredensial pengguna Samba AD.

1. Masuk ke PC Windows Anda dan buka PowerShell sebagai administrator.

2. Jalankan perintah di bawah ini untuk membuat daftar adapter ethernet yang tersedia di PC Windows Anda.

# checking available interface using Powershell command
Get-NetAdapter -Name "*"

Anda mungkin melihat output yang berbeda di layar PowerShell Anda. Contoh ini menunjukkan satu antarmuka jaringan yang disebut Ethernet Instance 0 2 .

3. Jalankan perintah berikut untuk mengubah server DNS adaptor ke alamat IP Samba Active Directory dengan tambahan fallback Cloudflare DNS 1.1.1.1 . Melakukan langkah ini memastikan bahwa workstation Anda menggunakan server Samba AD untuk resolusi nama.

# setup DNS resolver using Powershell
Set-DNSClientServerAddress "Ethernet Instance 0 2" –ServerAddresses ("172.16.1.10","1.1.1.1")

4. Jalankan perintah di bawah ini untuk memverifikasi DNS resolver Anda, dan pastikan komputer Anda menggunakan server Samba AD sebagai DNS resolver default.

# verify DNS resolver
Get-DnsClientServerAddress

Anda akan menerima output serupa seperti tangkapan layar di bawah ini.

5. Sekarang, ping nama host dan domain server.

# ping the AD domain dc1.example.lan
ping dc1.example.lan

# ping the AD domain example.lan
ping example.lan

Anda akan melihat balasan dari server AD seperti di bawah ini. Konfirmasikan bahwa hasilnya menunjuk ke alamat IP server Samba AD.

6. Selanjutnya, jalankan perintah berikut untuk menggabungkan workstation ke domain Samba Active Directory.

# add Windows 10 to Active Directory
Add-Computer -DomainName "example.lan" -Restart

7. Ketik Samba AD administrator nama pengguna dan sandi, klik OK. Komputer akan secara otomatis restart sebagai bagian dari proses bergabung domain.

8. Setelah restart, klik Other users di layar masuk. Ketikkan nama pengguna dan kata sandi Active Directory dari pengguna Samba AD yang Anda buat sebelumnya ([email protected] ), dan tekan Enter untuk masuk.

9. Setelah login berhasil, buka jendela PowerShell dan jalankan atau kedua perintah di bawah ini untuk memverifikasi nama pengguna yang sedang login.

whoami
query user

Kesimpulan

Konsep dan penerapan Active Directory tidak eksklusif untuk ekosistem Windows. Anda telah belajar dalam tutorial ini bahwa Anda dapat menikmati manfaat Active Directory yang sama di Linux dengan menerapkan Samba Active Directory.

Sepanjang tutorial ini, Anda telah belajar cara menginstal dan mengkonfigurasi Samba Active Directory di Ubuntu 20.04. Anda juga telah belajar membuat pengguna baru dan bergabung dengan workstation Windows ke domain Samba Active Directory.

Apa selanjutnya untuk Anda? Bagaimana dengan mengintegrasikan layanan Samba ke CUPS untuk dukungan pencetakan atau menyiapkan server file Samba Share? Anda tahu, Samba lebih dari sekadar Active Directory!


Linux
  1. Cara menginstal Python di Linux

  2. Cara menginstal Java di Linux

  3. Cara Menginstal FFmpeg Di Linux

  1. Cara Menginstal NodeJS Di Linux

  2. Cara Menginstal TeamViewer 15 di Linux

  3. Cara Menginstal PIP di Linux

  1. Cara menginstal Linux dalam 3 langkah

  2. Bagaimana cara menginstal Kali Linux

  3. Cara Menginstal Vagrant Di Linux