Pendahuluan
Ketika saya pertama kali menginstal paket Samba pada Solaris, ternyata tidak ada peran ADDC dalam paket ini. Pencarian panjang di Internet membawa saya ke jawaban semacam ini - paket Samba pada Solaris tidak mendukung peran ini, dan beberapa menulis bahwa peran ini secara umum tidak mungkin diterapkan pada Solaris. Penelitian lebih lanjut membawa saya pada fakta bahwa semuanya bertumpu pada kurangnya ACL Posix di zfs, serta dalam python, yang digunakan dalam Solaris. Untuk mengatasi masalah ini, Anda harus menggunakan hard disk dengan sistem file ufs, serta membangun python (serta Samba) dari kode sumber.
Persiapan
Semua tindakan yang saya lakukan di VMware ESXI, sebelum menginstal sistem, tambahkan hard drive lain ke mesin virtual. Selanjutnya, Anda perlu mengunduh kode sumber untuk Python dan Samba (ke root dari sistem file).
wget https://download.samba.org/pub/samba/stable/samba-4.8.8.tar.gz wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz
Buka paket arsip dan ganti nama folder untuk kenyamanan lebih
gzip -d samba-4.8.8.tar.gz gzip -d Python-2.7.15.tgz tar -xvf Python-2.7.15.tar tar -xvf samba-4.8.8.tar mv Python-2.7.15 python mv samba-4.8.8 samba
Selanjutnya, Anda perlu menginstal gcc dan beberapa dependensi
pkg install gcc pkg install pkgconfig pkg install automake pkg install autoconf
Setel variabel untuk membuat versi x64
export CPP="/usr/gcc/7/bin/gcc -E" export CC="/usr/gcc/7/bin/gcc" export CFLAGS="-m64 -std=gnu99 -fPIC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" export LDFLAGS="-m64 -L/usr/lib -R/usr/lib" export CXXFLAGS="-m64"
Buat sistem file ufs pada hard drive tambahan (sebutkan nama yang digunakan oleh Anda)
newfs /dev/dsk/c1t1d0s2
Selanjutnya, Anda perlu mendaftarkan hard drive ini dalam file vfstab (bukan kesalahan ketik, dalam Solaris file ini disebut demikian). Tambahkan baris ini ke file ini.
/dev/dsk/c1t1d0s2 /dev/dsk/c1t1d0s2 /ADDC ufs fsck yes -
Buat direktori pemasangan dan pasang hard drive ke dalamnya
mkdir /ADDC mount /dev/dsk/c1t1d0s2 /ADDC
Perakitan dan instalasi
Anda dapat mulai membangun Samba dan Python. Pergi ke direktori dengan kode sumber Solaris yang sudah dibongkar dan bangun. Perakitan samba membutuhkan waktu yang cukup lama.
cd /samba ./configure --prefix=/ADDC gmake gmake install
Anda tidak perlu menentukan parameter tambahan untuk membangun python, instalasi akan dilakukan di / usr / local
cd /python ./configure gmake gmake install
Setelah membangun python, Anda perlu menambahkan path ke python yang baru saja dibangun di variabel path
export PATH="/usr/local/bin:/usr/sbin:/usr/bin"
PENTING: Agar semuanya berfungsi dengan benar, Anda harus menentukan variabel PATH seperti ditunjukkan dalam contoh ini, path / usr / local / bin harus berada di tempat pertama.
Setelah langkah-langkah ini, menggunakan Samba sebagai ADDC tidak akan menjadi masalah, untuk ini Anda perlu menjalankan skrip samba-tool
/ADDC/bin/samba-tool domain provision --use-rfc2307 --dns-backend=SAMBA_INTERNAL --realm=office.virusslayer.su --domain=virusslayer --host-name=ad --host-ip=192.168.1.105 --function-level=2008_R2 --adminpass=Password123456
Tunjukkan ranah, domain, nama host yang Anda butuhkan, di host-ip yang digunakan untuk host ini.
Langkah selanjutnya adalah mengkonfigurasi kerberos, untuk ini Anda perlu mengubah file-file berikut
/etc/krb5/krb5.conf /etc/krb5/kdc.conf
File krb5.conf perlu dikonversi
[libdefaults] default_realm = OFFICE.VIRUSSLAYER.SU dns_lookup_realm = false dns_lookup_kdc = true default_tgs_enctypes = aes256-cts-hmac-sha1-96 default_tkt_enctypes = aes256-cts-hmac-sha1-96 permitted_enctypes = aes256-cts-hmac-sha1-96 [realms] OFFICE.VIRUSSLAYER.SU = { kdc = kdc.office.virusslayer.su admin_server = kdc.office.virusslayer.su }
kdc.conf
[realms] OFFICE.VIRUSSLAYER.SU = { profile = /etc/krb5/krb5.conf acl_file = /etc/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s default_principal_flags = +preauth }
Untuk autostart dan stop saya harus menulis skrip sederhana di bash
#!/usr/bin/bash case $1 in start|-start) /ADDC/sbin/samba /ADDC/sbin/smbd /ADDC/sbin/nmbd ;; stop|-stop) rm /ADDC/var/run/*.pid pkill -15 samba pkill -15 smbd pkill -15 nmbd ;; v|-v) /ADDC/sbin/samba -V ;; config|-config) cat /ADDC/etc/smb.conf ;; restart|-restart) rm /ADDC/var/run/*.pid pkill -15 samba pkill -15 smbd pkill -15 nmbd /ADDC/sbin/samba /ADDC/sbin/smbd /ADDC/sbin/nmbd ;; esac
Tempatkan skrip ini dalam file (setelah dibuat sebelumnya) / usr / bin / sambactl, buat itu dapat dieksekusi dan salin ke direktori rc3.d, rc0.d untuk autostart dan menghentikan Samba
touche /usr/bin/sambactl chmod +x /usr/bin/sambactl cp /usr/bin/sambactl /etc/rc3.d/Ssambactl cp /usr/bin/sambactl /etc/rc0.d/Ksambactl
Untuk operasi lebih lanjut yang benar, perlu untuk mengubah server dns sistem (file resol.conf tidak perlu diubah, perubahan disimpan hanya sampai reboot), untuk ini kami akan mengedit layanan dan memperbarui status (tentukan alamat ip sistem saat ini sebagai server)
svccfg -s dns/client setprop config/nameserver="192.168.1.105" svcadm refresh dns/client
Setelah manipulasi ini, Anda dapat memulai Samba, dan juga menambahkan entri dns
/usr/bin/sambactl /ADDC/bin/samba-tool dns add office.virusslayer.su -U administrator office.virusslayer.su kdc.office.virusslayer.su A 192.168.1.105
Periksa karya kerberos
kinit administrator
Jika semuanya benar dan kata sandi dimasukkan dengan benar, tiket akan dibuat di direktori / tmp / volatile-user / 0
Pengaturan Kerberos belum selesai pada ini, Anda juga perlu mengkonfigurasi server sinkronisasi waktu, untuk ini, buat file /etc/inet/ntp.conf, mulai layanan waktu dan buat perubahan yang diperlukan untuk file ini
server 127.127.1.0 prefer server 0.europe.pool.ntp.org server 1.europe.pool.ntp.org server 2.europe.pool.ntp.org server 3.europe.pool.ntp.org driftfile /var/ntp/ntp.drift restrict 192.168.1.0 255.255.255.0 nomodify notrap
Pada baris pembatasan tentukan subnet yang akses ke server waktu akan diizinkan
Mulai dan perbarui layanan
svcadm enable ntp svcadm refresh ntp
Untuk mengedit kebijakan grup, Anda dapat menggunakan Remote Administration Tools (RSAT), alat-alat ini dapat diunduh dari sini
Windows 8.1 https://www.microsoft.com/ru-ru/download/details.aspx?id=39296 Windows 10 https://www.microsoft.com/ru-RU/download/details.aspx?id=45520 Windows 7 https://www.microsoft.com/ru-ru/download/details.aspx?id=7887
Setelah menginstal RSAT di Windows 7, alat ini harus diaktifkan di panel kontrol (Mengaktifkan atau menonaktifkan fitur Windows). Setelah komputer dimasukkan ke dalam domain, mulai editor kebijakan grup, di Kebijakan Domain Default, edit kebijakan yang bertanggung jawab untuk server waktu

Di bagian ini, Anda harus mengaktifkan opsi "Aktifkan klien Windows NTP", "Konfigurasikan klien Windows NTP", setel jenis NTP, tentukan NtpServer office.virusslayer.su
Selain itu, Anda dapat mengkonfigurasi firewall, mengedit file /etc/firewall/pf.conf (membawanya ke formulir berikut).
set skip on lo0 pass quick on lo0 from any to any no state pass in quick on net0 proto {tcp,udp} from any to any port {22,53,123,135,137,464,389,515,636,631,445,139,88,3268,3269,49152:65535} flags S/SA modulate state pass out quick on net0 proto tcp from any to any port {80,443,21,20,53} flags S/SA modulate state pass out quick on net0 proto udp from any to any port=53 keep state pass out quick on net0 proto icmp from any to any block from any to any fragment block from any to any block all
Mulai layanan dan tentukan file dengan aturan
svcadm enable firewall pfctl -f /etc/firewall/pf.conf
Kesimpulan
Seperti yang dapat Anda lihat dari publikasi ini pada Solaris, dimungkinkan untuk menggunakan Samba sebagai ADDC, meskipun jauh lebih rumit daripada sistem operasi lainnya.