◆SAMBAサーバーの構成
hostname:smb01
IP:192.168.128.12/24
DNS:192.168.128.1
◆smb.conf基礎知識
global #Samba全体の設定を記述。特定の共有には関連付けられていない。
homes #各ユーザーのホームディレクトリが一括して共有される。
printers #定義ファイルで定義されているプリンターが一括して共有される。
⑴SAMBAインストール
# dnf install samba samba-client
(中略)
インストール済み:
libnetapi-4.19.4-105.el9_4.x86_64
samba-4.19.4-105.el9_4.x86_64
samba-client-4.19.4-105.el9_4.x86_64
samba-common-tools-4.19.4-105.el9_4.x86_64
samba-dcerpc-4.19.4-105.el9_4.x86_64
samba-ldb-ldap-modules-4.19.4-105.el9_4.x86_64
samba-libs-4.19.4-105.el9_4.x86_64
完了しました!
⑵ファイアウォール及びSELINUXの設定
ファイアウォールのsambaポートの開放し、SELINUXを使用しない設定に変更後、再起動します。
# firewall-cmd --add-service=samba --permanent
success
sambaで使用するポートは以下のリスト
Service | Port | Protocol |
DNS * |
53 |
tcp/udp |
Kerberos |
88 |
tcp/udp |
ntp ** |
123 |
udp |
End Point Mapper (DCE/RPC Locator Service) |
135 |
tcp |
NetBIOS Name Service |
137 |
udp |
NetBIOS Datagram |
138 |
udp |
NetBIOS Session |
139 |
tcp |
LDAP |
389 |
tcp/udp |
SMB over TCP |
445 |
tcp |
Kerberos kpasswd |
464 |
tcp/udp |
LDAPS *** |
636 |
tcp |
Global Catalog |
3268 |
tcp |
Global Catalog SSL *** |
3269 |
tcp |
Samba AD DC Port Usage - SambaWiki
# vi etc/selinux/config
SELINUX=disabled
# init 6
サーバー再起動後、SELINUXがDisableであることを確認する。
*SELINUXを有効のまま変えない場合は以下のコマンド
# setsebool -P samba_enable_home_dirs on
# getenforce
Disabled
⑶SAMBAの起動及び、自動起動設定
# systemctl enable smb.service nmb.service --now
Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service.
Created symlink /etc/systemd/system/multi-user.target.wants/nmb.service → /usr/lib/systemd/system/nmb.service.
# systemctl is-active smb.service nmb.service
active
active
# systemctl is-enabled smb.service nmb.service
enabled
enabled
⑷Windowsクライアントからのアクセスと動作確認
動作確認用の設定ファイルを作成及びチェックし、サービスを再起動。
# cp -p /etc/samba/smb.conf{,.org}
[global]
map to guest = bad user
[tmp]
path = /tmp
guest ok = yes
# testparm -s
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback)
Server role: ROLE_STANDALONE
# Global parameters
[global]
map to guest = Bad User
idmap config * : backend = tdb
[tmp]
guest ok = Yes
path = /tmp
# systemctl restart smb.service nmb.service
# systemctl is-active smb.service nmb.service
active
active
⑸テスト用のファイルの作成
# touch /tmp/test.txt
# echo 'This is a pen' > /tmp/test.txt
# cat /tmp/test.txt
This is a pen
⑹Windowsクライアントからアクセス
Windowsクライアントの「ファイル名を指定して実行」或いはエクスプローラーのアドレス欄にSAMBAサーバーのIPを入力し、「tmp」共有フォルダが表示されることを確認し、ダブルクリック。
「tmp」共有フォルダの中に「test.txt」がある事を確認し、これをダブルクリック。
先程入力した「This is a pen」が読めることを確認します。
次回はSambaの基本設定を行います。
例題
問題集50頁問3 72頁問1
Sambaを設定する - Linux技術者認定 LinuC | LPI-Japan