Sambaの設定と管理

〜 WindowsとLinuxのファイル共有の橋渡し 〜


目次

🧭 概要

Samba(サンバ)は、WindowsとLinuxの間でファイルやプリンタを共有するためのソフトウェアです。Sambaサーバーを正しく設定することで、LinuxサーバーをWindowsネットワーク内の「共有フォルダサーバー」として利用できます。


📦 Sambaの基本構成

ディレクトリ・ファイル説明
/etc/samba/smb.confSambaの主設定ファイル
/var/log/samba/ログディレクトリ(エラー・アクセスログなど)

🔧 基本ユーティリティとデーモン

コマンド・デーモン説明
smbdSMB/CIFSプロトコルのサービス提供(ファイル・プリンタ)
nmbdネットバイオス名解決(ワークグループ)
winbinddADとの連携、ユーザ名の解決
sambaADドメインコントローラ用の統合サービス
smbclientコマンドラインのWindowsクライアント的操作
smbstatus現在の接続・ロック情報を確認
smbcontrolsmbdプロセスにシグナル送信
smbpasswdSambaユーザーのパスワード管理
netドメイン参加、共有管理など万能ツール
testparmsmb.conf の文法チェック
nmblookup名前解決の確認
samba-toolAD構築や管理用(必要に応じて)

🛠️ smb.conf の基本構成

[global]
workgroup = WORKGROUP
server string = Samba Server
security = user
map to guest = Bad User
log file = /var/log/samba/log.%m
max log size = 50

[share]
path = /srv/samba/share
browsable = yes
writable = yes
guest ok = yes
read only = no

主な設定項目

オプション内容
workgroup参加するWindowsワークグループ名
security認証方式(user, share, ads)
guest okゲスト接続の可否
writable or read only書き込み許可

🧪 設定ファイルの検証と再起動

testparm    # smb.confの文法チェック
systemctl restart smb nmb

👥 Sambaユーザーの管理

SambaはLinuxユーザーとは別に、Samba用のパスワード管理を行います。

sudo useradd username
sudo smbpasswd -a username # Samba用パスワード追加
sudo smbpasswd -e username # アクティブ化

📁 共有ディレクトリの作成と権限設定

sudo mkdir -p /srv/samba/share
sudo chown -R nobody:nogroup /srv/samba/share
sudo chmod -R 0775 /srv/samba/share

※ ゲストアクセスでない場合は、該当ユーザー所有にしてください。


🪪 Windowsユーザー名とのマッピング

[global]
username map = /etc/samba/smbusers

例:/etc/samba/smbusers

windowsuser = linuxuser

🔐 ACL(アクセス制御リスト)の設定

ACL を使えば、Linuxのパーミッション以上に柔軟な制御が可能です。

getfacl /srv/samba/share
setfacl -m u:username:rwx /srv/samba/share
  • getfacl:ACLの表示
  • setfacl:ACLの設定

🌐 Sambaクライアントから接続確認

Linux側からSamba共有を確認:

smbclient //localhost/share -U username

Windowsからは \\<SambaサーバーIP>\share にアクセス。


🧰 トラブルシューティング

問題チェック項目
接続できないfirewalldufwでポート137〜139, 445が開いているか
パスワード認証失敗smbpasswdでアクティブ化されているか
共有が表示されないbrowsable 設定とディレクトリパーミッション

📜 ログファイルの活用

tail -f /var/log/samba/log.smbd
tail -f /var/log/samba/log.nmbd

✅ まとめ

項目ポイント
サービスsmbd, nmbd, winbindd
設定ファイル/etc/samba/smb.conf
ユーティリティtestparm, smbclient, net, smbpasswd
共有管理[share]セクション, ユーザー作成, ACL
トラブル時ログとファイアウォール確認
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次