Sambaインストール · 3 min read · Dec 08, 2025
CentOS 8にSambaサーバーをインストールする方法

Sambaは、LinuxとWindowsシステム間でファイル、フォルダー、およびプリンターを共有するために使用できる無料のオープンソースソフトウェアです。また、認証と認可、名前解決、サービスアナウンスにも使用されます。Linux、Unix、OpenVMSなど、さまざまなオペレーティングシステムで実行できます。
このチュートリアルでは、Sambaをインストールし、CentOS 8でスタンドアロンの共有サーバーとして構成する方法を学びます。
前提条件
- CentOS 8を実行しているサーバー。
- サーバーにルートパスワードが設定されていること。
Sambaサーバーのインストール
デフォルトでは、SambaパッケージはCentOSのデフォルトリポジトリにあります。次のコマンドでインストールできます:
dnf install samba samba-common samba-client -ySambaをインストールした後、次のコマンドでSMBサービスを開始し、システム再起動後に自動的に開始するように設定します:
systemctl start smb
systemctl enable smb次のコマンドでSambaサービスを確認できます:
systemctl status smb次の出力が得られるはずです:
? smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2020-03-02 23:03:30 EST; 8s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 2072 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 25028)
Memory: 33.8M
CGroup: /system.slice/smb.service
??2072 /usr/sbin/smbd --foreground --no-process-group
??2074 /usr/sbin/smbd --foreground --no-process-group
??2075 /usr/sbin/smbd --foreground --no-process-group
??2076 /usr/sbin/smbd --foreground --no-process-groupSambaでパブリック共有を作成する
このセクションでは、Sambaを使用してパブリック共有を作成し、誰でもパスワードなしでパブリック共有ディレクトリにアクセスできるようにします。
パブリック共有ディレクトリの作成
まず、publicという名前の共有フォルダーを作成し、その中に2つのファイルを作成します:
mkdir -p /samba/share/public
touch /samba/share/public/file1.txt
touch /samba/share/public/file2.txt次に、次のコマンドで必要な権限と所有権を割り当てます:
chmod -R 0755 /samba/share/
chmod -R 0755 /samba/share/public
chown -R nobody:nobody /samba/share
chown -R nobody:nobody /samba/share/publicSambaの構成
次に、Sambaを構成してパブリックディレクトリを共有する必要があります。
まず、次のコマンドで/etc/samba/smb.confファイルのバックアップコピーを作成します:
mv /etc/samba/smb.conf /etc/samba/smb.bak次に、新しいSamba構成ファイルを作成します:
nano /etc/samba/smb.conf次の行を追加します:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = samba-server
security = user
map to guest = bad user
dns proxy = no
[Public]
path = /samba/share/public
browsable =yes
writable = yes
guest ok = yes
read only = noファイルを保存して閉じます。次に、変更を適用するためにSambaサービスを再起動します:
systemctl restart smb次に、次のコマンドでSamba構成をテストします:
testparm次の出力が表示されるはずです:
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
dns proxy = No
map to guest = Bad User
netbios name = SAMBA-SERVER
security = USER
server string = Samba Server %v
idmap config * : backend = tdb
[Public]
guest ok = Yes
path = /samba/share/public
read only = NoSELinuxとファイアウォールの構成
次に、次のコマンドで共有ディレクトリに適切なSELinuxブール値とセキュリティコンテキスト値を設定します:
setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
semanage fcontext -a -t samba_share_t "/samba/share/public(/.*)?"
restorecon /samba/share/public次に、次のコマンドでfirewalldを介してすべてのSambaサービスを許可します:
firewall-cmd --add-service=samba --zone=public --permanent
firewall-cmd --reloadUbuntu GnomeからSamba共有にアクセスする
Samba共有にアクセスするには、リモートマシンに移動し、Gnomeファイルマネージャーを開いて、以下のようにサーバーに接続をクリックします:

SambaサーバーのIPアドレスを入力し、接続ボタンをクリックします。接続に成功すると、次の画面にSamba共有が表示されます:

次に、Publicディレクトリをクリックすると、次の画面にファイルが表示されます:

UbuntuコマンドラインからSamba共有にアクセスする
コマンドラインからSamba共有にアクセスすることもできます。
まず、次のコマンドで利用可能なSamba共有をすべてリストします:
smbclient -L //45.58.38.51次の出力が表示されるはずです:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Sharename Type Comment
--------- ---- -------
Public Disk
IPC$ IPC IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Server Comment
--------- -------
Workgroup Master
--------- -------次に、cifsプロトコルを使用してSamba共有をマウントできます。そのためには、次のコマンドでcifs-utilsパッケージをインストールします:
apt-get install cifs-utils -y次に、次のコマンドでSamba共有を/mntディレクトリにマウントします:
mount -t cifs //45.58.38.51/public /mnt/次のようにパスワードを入力するように求められます:
Password for root@//45.58.38.51/public: パスワードを入力せずにEnterを押してSamba共有をマウントします:
これで、/mntディレクトリでSamba共有にアクセスできます:
ls /mnt/次の出力が表示されるはずです:
file1.txt file2.txtSambaでプライベート共有を作成する
このセクションでは、Sambaを使用してプライベート共有を作成し、認証されたユーザーのみがプライベート共有ディレクトリにアクセスできるようにします。
ユーザーとグループの作成
まず、次のコマンドでprivateという名前のグループを作成します:
groupadd private次に、privateグループに追加されたprivateuserという名前の新しいユーザーを作成します:
useradd -g private privateuser次に、次のコマンドでユーザーのパスワードを設定します:
smbpasswd -a privateuser出力:
New SMB password:
Retype new SMB password:
Added user privateuser.プライベート共有ディレクトリの作成
次に、privateという名前の共有フォルダーを作成し、その中に2つのファイルを作成します:
mkdir -p /samba/share/private
touch /samba/share/private/private1.txt
touch /samba/share/private/private2.txt次に、次のコマンドで適切な権限と所有権を割り当てます:
chmod -R 0770 /samba/share/private
chown -R root:private /samba/share/private次に、次のコマンドでプライベートディレクトリのSELinuxコンテキストを構成します:
semanage fcontext –at samba_share_t "/samba/share/private(/.*)?"
restorecon /samba/share/privateSambaの構成
次に、Samba構成ファイルを開き、プライベート共有を定義します:
nano /etc/samba/smb.confファイルの最後に次の行を追加します:
[Private]
path = /samba/share/private
valid users = @private
guest ok = no
writable = yes
browsable = yesファイルを保存して閉じ、次のコマンドでSambaサービスを再起動して変更を適用します:
systemctl restart smb次に、次のコマンドでSamba構成を確認します:
testparm次の出力が表示されるはずです:
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
dns proxy = No
map to guest = Bad User
netbios name = SAMBA-SERVER
security = USER
server string = Samba Server %v
idmap config * : backend = tdb
[Public]
guest ok = Yes
path = /samba/share/public
read only = No
[Private]
path = /samba/share/private
read only = No
valid users = @privateUbuntuコマンドラインからSamba共有にアクセスする
まず、次のコマンドで利用可能な共有にアクセスします:
smbclient -L //45.58.38.51次の出力が表示されるはずです:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Sharename Type Comment
--------- ---- -------
Public Disk
Private Disk
IPC$ IPC IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Server Comment
--------- -------
Workgroup Master
--------- -------次に、Sambaサーバーに接続し、次のコマンドで利用可能な共有をリストします:
smbclient //45.58.38.51/private -U privateuser次のようにパスワードを入力するように求められます:
Enter privateuser's password: パスワードを入力してEnterを押すと、次のようにSambaシェルにアクセスできます:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
smb: \>次に、次のコマンドで利用可能な共有をリストします:
smb: \> ls次の出力が表示されるはずです:
. D 0 Tue Mar 3 10:03:22 2020
.. D 0 Tue Mar 3 10:01:56 2020
private1.txt N 0 Tue Mar 3 10:03:17 2020
private2.txt N 0 Tue Mar 3 10:03:22 2020
51194 blocks of size 2097152. 49358 blocks available次に、次のコマンドでSambaシェルから退出します:
smb: \>exit/optディレクトリにSamba共有をマウントすることもできます:
mount -t cifs -o user=privateuser //45.58.38.51/private /opt次のようにパスワードを入力するように求められます:
Password for privateuser@//45.58.38.51/private: *********パスワードを入力してEnterを押すと、Samba共有がマウントされます。
次に、次のように/optディレクトリでSamba共有を確認できます:
ls /opt/出力:
private1.txt private2.txtUbuntu GnomeからSamba共有にアクセスする
Samba共有にアクセスするには、リモートマシンに移動し、Gnomeファイルマネージャーを開いて、以下のようにサーバーに接続をクリックします:

SambaサーバーのIPアドレスを入力し、接続ボタンをクリックします。接続に成功すると、次の画面にSamba共有が表示されます:

次に、Privateディレクトリをクリックし、ユーザー名とパスワードを入力して、接続ボタンをクリックします。次の画面にファイルが表示されるはずです:


おめでとうございます!CentOS 8にSambaサーバーを正常にインストールして構成しました。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。