CentOSに必要なものはここを参考にした。
1 2 3 4 5 6 7 8 | # yum install gcc libacl-devel libblkid-devel gnutls-devel \ readline-devel python-devel gdb pkgconfig krb5-workstation \ zlib-devel setroubleshoot-server libaio-devel \ 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 cups-devel bind-utils |
1 | # yum install perl |
CentOS7のminimumセットにはwgetが入っていないのでインストール
ついでに後で必要になるであろうネットワーク関連のツールと、killallが使えなかったのでファイルシステムに関するユーティリティをインストール。
1 | # yum install wget net-tools psmisc |
ダウンロード&make&インストール
ここからSamba4の最新版をダウンロード
ftp://ftp.samba.gr.jp/pub/samba/
1 2 3 4 5 6 | # tar xfz samba-4.1.12.tar.gz # cd samba-4.1.12 # ./configure # make # make install |
絶対パスで指定するのが面倒なので /usr/local/(bin|sbin) に シンボリックリンクを作る
1 2 3 4 | # ln -s /usr/local/samba/sbin/samba /usr/local/sbin # ln -s /usr/local/samba/bin/samba-tool /usr/local/bin # ln -s /usr/local/samba/bin/smbclient /usr/local/bin # samba -V |
ここから samba4の Active Directoryの設定
1 2 3 4 5 6 7 8 9 | # samba-tool domain provision --use-rfc2307 --interactive Realm[HOGEHOGE.LOCAL]: <enter> Domain [HOGEHOGE]: <enter> Server Role ( dc , member, standalone) [ dc ]: <enter> DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: (enter) DNS forwarder IP address (write 'none' to disable forwarding) [8.8.8.8]: (enter) Administrator password: Retype password: < /enter >< /enter >< /enter > |
samba4のネームサーバーを参照させるためにDNSを設定する
/etc/resolv.conf は直接書き換えられない(再起動時に上書きされる)ので、別の場所で指定する。
1 2 3 | # vi /etc/sysconfig/network-scripts/ifcfg-enp0p3 DNS1= "127.0.0.1" DNS2= "8.8.8.8" |
1 2 | # mv /etc/krb5.conf /etc/krb5.conf.org # cp /usr/local/samba/private/krb5.conf /etc/krb5.conf |
まずは Active Directory(AD)のDomain Controller(DC)として動作しているかの確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # samba # smbclient -L localhost -U% Sharename Type Comment --------- ---- ------- netlogon Disk sysvol Disk IPC$ IPC IPC Service (Samba 4.1.12) Domain=[HOGEHOGE] OS=[Unix] Server=[Samba 4.1.12] Server Comment --------- ------- Workgroup Master --------- ------- |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | # host -t SRV _ldap._tcp.hogehoge.local _ldap._tcp.hogehoge. local has SRV record 0 100 389 bcnr33.hogehoge. local . # host -t SRV _kerberos._udp.hogehoge.local _kerberos._udp.hogehoge. local has SRV record 0 100 88 bcnr33.hogehoge. local . # host -t A bcnr33.junauto.local bnr32.hogehoge. local has address 192.168.1.100 # samba-tool dns zonelist localhost -U Administrator Password for [HOGEHOGE\Administrator]: 2 zone(s) found pszZoneName : hogehoge. local Flags : DNS_RPC_ZONE_DSINTEGRATED DNS_RPC_ZONE_UPDATE_SECURE ZoneType : DNS_ZONE_TYPE_PRIMARY Version : 50 dwDpFlags : DNS_DP_AUTOCREATED DNS_DP_DOMAIN_DEFAULT DNS_DP_ENLISTED pszDpFqdn : DomainDnsZones.hogehoge. local pszZoneName : _msdcs.hogehoge. local Flags : DNS_RPC_ZONE_DSINTEGRATED DNS_RPC_ZONE_UPDATE_SECURE ZoneType : DNS_ZONE_TYPE_PRIMARY Version : 50 dwDpFlags : DNS_DP_AUTOCREATED DNS_DP_FOREST_DEFAULT DNS_DP_ENLISTED pszDpFqdn : ForestDnsZones.hogehoge. local |
1 2 3 4 5 6 7 8 9 10 11 | # kinit administrator@HOGEHOGE.LOCAL Password for administrator@HOGEHOGE.LOCAL: Warning: Your password will expire in 38 days on 2014年10月21日 15時21分38秒 # klist Ticket cache: FILE: /tmp/krb5cc_0 Default principal: administrator@HOGEHOGE.LOCAL Valid starting Expires Service principal 2014-09-12T17:00:45 2014-09-13T03:00:45 krbtgt /HOGEHOGE .LOCAL@HOGEHOGE.LOCAL renew until 2014-09-13T17:00:42 |
待ち受けポートの確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | # netstat -antp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID /Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1574 /master tcp 0 0 0.0.0.0:636 0.0.0.0:* LISTEN 767 /samba tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 766 /smbd tcp 0 0 0.0.0.0:1024 0.0.0.0:* LISTEN 762 /samba tcp 0 0 0.0.0.0:3268 0.0.0.0:* LISTEN 767 /samba tcp 0 0 0.0.0.0:3269 0.0.0.0:* LISTEN 767 /samba tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 767 /samba tcp 0 0 0.0.0.0:135 0.0.0.0:* LISTEN 762 /samba tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 766 /smbd tcp 0 0 0.0.0.0:464 0.0.0.0:* LISTEN 769 /samba tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 777 /samba tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 824 /sshd tcp 0 0 0.0.0.0:88 0.0.0.0:* LISTEN 769 /samba tcp 0 52 192.168.1.100:22 192.168.1.50:50104 ESTABLISHED 1819 /sshd : root@pts tcp6 0 0 ::1:25 :::* LISTEN 1574 /master tcp6 0 0 :::636 :::* LISTEN 767 /samba tcp6 0 0 :::445 :::* LISTEN 766 /smbd tcp6 0 0 :::1024 :::* LISTEN 762 /samba tcp6 0 0 :::3268 :::* LISTEN 767 /samba tcp6 0 0 :::3269 :::* LISTEN 767 /samba tcp6 0 0 :::389 :::* LISTEN 767 /samba tcp6 0 0 :::135 :::* LISTEN 762 /samba tcp6 0 0 :::139 :::* LISTEN 766 /smbd tcp6 0 0 :::464 :::* LISTEN 769 /samba tcp6 0 0 :::53 :::* LISTEN 777 /samba tcp6 0 0 :::22 :::* LISTEN 824 /sshd tcp6 0 0 :::88 :::* LISTEN 769 /samba |
ドメインレベル・フォレストレベルを昇格させる
1 2 3 4 | # samba-tool domain level raise --domain-level=2008_R2 --forest-level=2008_R2 Domain function level changed! Forest function level changed! All changes applied successfully! |
1 2 3 4 5 6 | # samba-tool domain level show Domain and forest function level for domain 'DC=junauto,DC=local' Forest function level: (Windows) 2008 R2 Domain function level: (Windows) 2008 R2 Lowest function level of a DC: (Windows) 2008 R2 |
1 | # vi /etc/init.d/samba4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #!/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 |
1 2 3 4 | # chmod 0755 /etc/init.d/samba4 # ln -s /etc/init.d/samba4 /etc/rc3.d/S80samba4 # chkconfig --add samba4 # chkconfig --level 35 samba4 on |
参考にしたサイト
Samba4でのActive Directory構築 - OSSでLinuxサーバ構築
Samba 4.xでActive Directoryを1から立てる | OSAKANA TAROのメモ帳
0 件のコメント:
コメントを投稿