SAMBA設定 · 2 min read · Dec 06, 2025
CentOS 7におけるSambaサーバーのインストールと設定
このチュートリアルでは、CentOS 7で匿名およびセキュリティで保護されたSamba共有を構成する方法を説明します。Sambaは、WindowsのようなSMB/CIFSクライアントにシームレスなファイルおよび印刷サービスを提供するオープンソース/フリーソフトウェアスイートです。Sambaは他のSMB/CIFS実装とは異なり、自由に利用でき、Linux/UnixサーバーとWindowsベースのクライアント間の相互運用性を可能にします。
1 予備ノート
私は新しくインストールされたCentOS 7サーバーを持っており、そこにSambaサーバーをインストールする予定です。もちろん、CentOS 7サーバーに到達可能なWindowsマシンが必要です。私のCentOS 7サーバーのホスト名はserver1.example.comで、IPアドレスは192.168.0.100です。
注意:
- Windowsマシンは同じワークグループに属している必要があります。Windowsマシンで値を確認するには、cmdプロンプトで次のコマンドを実行します。
net config workstationこのようになります:

あなたのWindowsマシンは、CentOS 7.0サーバーと同じワークステーションドメインにある必要があります。つまり、私の場合はWORKGROUPです。
- WindowsマシンをWindowsで到達可能にするには、次のように進めます。実行ターミナルでサーバーのIPアドレスのエントリを追加します:
notepad C:\Windows\System32\drivers\etc\hosts私の場合はこのようになっており、値を保存するだけです。
[...]
192.168.0.100 server1.example.com centos2 匿名Samba共有
まず、匿名共有でSambaをインストールする方法を説明します。Sambaソフトウェアをインストールするには、次のコマンドを実行します:
yum install samba samba-client samba-commonこれにより、CentOSソフトウェアリポジトリから現在のSambaバージョンがインストールされます。
次にSambaを構成するために、ファイル/etc/samba/smb.confを編集します。変更を加える前に、元のファイルのバックアップを/etc/samba/smb.conf.bakとして作成します。
cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak空のファイルから始めたいので、catコマンドを使用してsmb.confを空にします。これは、viで全ての行を削除するよりも速いです。
cat /dev/null > /etc/samba/smb.confさらに、次のようにエントリを追加します。
vi /etc/samba/smb.conf[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = centos
security = user
map to guest = bad user
dns proxy = no
#============================ Share Definitions ==============================
[Anonymous]
path = /samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = nomkdir -p /samba/anonymous
systemctl enable smb.service
systemctl enable nmb.service
systemctl restart smb.service
systemctl restart nmb.service
さらに、CentOS 7のFirewall-cmdがSambaアクセスをブロックするため、これを解消するために次のコマンドを実行します:
firewall-cmd --permanent --zone=public --add-service=samba[root@server1 ~]# firewall-cmd --permanent --zone=public --add-service=samba
success
[root@server1 ~]#最後に、変更を適用するためにファイアウォールを再読み込みします。
firewall-cmd --reload[root@server1 ~]# firewall-cmd --reload
success
[root@server1 ~]#これで、WindowsでCentOS 7の共有にアクセスできます。実行プロンプトに移動し、次のように入力します。\centos:
\\centos
Windowsマシンから、フォルダーをブラウズしてテキストファイルを作成しようとしますが、権限拒否のエラーが表示されます。

共有フォルダーの権限を確認します。
ls -l
drwxr-xr-x. 2 root root 6 Jul 17 13:41 anonymous
[root@server1 samba]#匿名ユーザーによるアクセスを許可するには、権限を次のように設定します:
cd /sambachmod -R 0755 anonymous/
chown -R nobody:nobody anonymous/ls -l anonymous/total 0
drwxr-xr-x. 2 nobody nobody 6 Jul 17 13:41 anonymous
[root@server1 samba]#さらに、Samba構成のためにSELinuxを許可する必要があります:
chcon -t samba_share_t anonymous/これで、匿名ユーザーはフォルダーの内容をブラウズおよび作成できます。

サーバーで内容を確認することもできます。
ls -l anonymous/total 0
-rwxr--r--. 1 nobody nobody 0 Jul 17 16:05 anonymous.txt
[root@server1 samba]#3. セキュリティで保護されたSambaサーバー
したがって、smbgrpというグループとsrijanというユーザーを作成して、適切な認証でSambaサーバーにアクセスします。
groupadd smbgrpuseradd srijan -G smbgrpsmbpasswd -a srijan[root@server1 samba]# smbpasswd -a srijan
New SMB password:<--yoursambapassword
Retype new SMB password:<--yoursambapassword
Added user srijan.
[root@server1 samba]# 次に、/sambaフォルダーにsecuredという名前のフォルダーを作成し、次のように権限を設定します:
mkdir -p /samba/secured
再度、SELinuxを通してリッスンを許可する必要があります:
cd /samba
chmod -R 0777 secured/
chcon -t samba_share_t secured/
再度、設定ファイルを次のように編集します:
vi /etc/samba/smb.conf
[...]
[secured]
path = /samba/secured
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yessystemctl restart smb.servicesystemctl restart nmb.serviceさらに、設定を次のように確認します:
testparm[root@server1 samba]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Anonymous]"
Processing section "[secured]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions <--ENTER
[global]
netbios name = CENTOS
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : backend = tdb
[Anonymous]
path = /samba/anonymous
read only = No
guest ok = Yes
[secured]
path = /samba/secured
valid users = @smbgrp
read only = No
[root@server1 samba]# 今、Windowsマシンで適切な資格情報を使用してフォルダーを確認します。

ユーザーsrijanに書き込み権限を与えるために、再度権限の問題に直面します:
cd /samba
chown -R srijan:smbgrp secured/これでSambaユーザーはフォルダーに書き込む権限を持つようになります。おめでとうございます、CentOS 7でのSambaサーバーの設定が完了しました!

新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。