
Sambaは、ビジネス環境でLinuxを使用する上で重要なコンポーネントです。このサブシステムを使用すると、ユーザーはネットワーク経由でディレクトリを共有し、他のユーザーがその内容を閲覧したり編集したりできるようになります。
参照: 知っておくべきオープンソースと Linux の用語 40 選 (TechRepublic Premium)
Ubuntu Desktopなどの一部のLinuxディストリビューションでは、多くのコンポーネントがデフォルトで用意されています。一方、Red Hat Enterprise Linuxベースのディストリビューションなどでは、Sambaをすぐに動作させるために必要なものがすべて含まれていない場合があります。そこで、RHELベースのLinuxディストリビューションでSambaを起動して動作させる手順を解説します。
RHELベースのディストリビューションでSambaを実行するために必要なもの
Samba をインストールするために必要なのは、RHEL ベースの Linux ディストリビューションと sudo 権限を持つユーザーだけです。ここでは EuroLinux を使って説明しますが、この手順はほぼすべての RHEL ベースのディストリビューションで動作するはずです。
Sambaのインストール方法
まず最初にSambaをインストールする必要があります。Linuxディストリビューションにログインし、ターミナルを開きます。ターミナルウィンドウから次のコマンドを実行します。
sudo dnf install samba samba-common samba-client -y
次のコマンドでサービスが開始され、有効になっていることを確認します。
sudo systemctl enable --now smb
インストールはこれで完了です。共有を作成しましょう。
Samba共有を作成する方法
/srv 内に共有を作成しましょう。そのためには、次のコマンドで新しいフォルダを作成します。
sudo mkdir -p /srv/samba/euroshare
samba ディレクトリ内の共有には好きな名前を付けることができます。
次のコマンドを使用して、新しい共有に適切な権限を付与します。
sudo chmod -R 755 /srv/samba/euroshare
sudo chown -R nobody:nobody /srv/samba/euroshare
sudo chcon -t samba_share_t /srv/samba/euroshare
次に、smb.conf ファイル内に共有を作成します。以下のコマンドでファイルを開き、編集します。
sudo nano /etc/samba/smb.conf
そのファイルの下部に次の行を追加します。
[Public]
path = /srv/samba/euroshare
public = yes
guest only = yes
writable = yes
force create mode = 0666
force directory mode = 0777
browseable = yes
ファイルを保存して閉じます。次のコマンドでSambaを再起動します。
sudo systemctl restart smb
ファイアウォールの調整方法
次に、Sambaにアクセスできるようにファイアウォールを開く必要があります。まず、以下のコマンドで新しいファイアウォールルールを作成します。
sudo firewall-cmd --add-service=samba --zone=public --permanent
次のコマンドでファイアウォールをリロードします。
sudo firewall-cmd --reload
この時点で、Samba共有はネットワーク上の他のマシンからアクセス可能になっているはずです。また、smb.confのPublic設定により、匿名ユーザーでも共有への読み取りと書き込みの両方のアクセス権を持つようになります。
登録ユーザーへのアクセスを制限する方法
共有への広範なアクセスを許可したくない場合は、正当なユーザーのみが共有にアクセスできるように設定できます。ただし、この設定には、そのユーザーがマシンにアカウントを持っている必要があるという注意点があります。もちろん、sambashareユーザーを作成すれば、そのユーザーの認証情報のみを渡せば済みます。sambashareユーザーを作成するには、以下のコマンドを実行します。
sudo adduser sambashare
ユーザーに強力かつ一意のパスワードを付与するようにしてください。
次に、次のコマンドで新しいユーザーに Samba パスワードを付与します。
sudo smbpasswd -a sambashare
次に、次の操作を実行してユーザーを有効にします。
sudo smbpasswd -e sambashare
次に、smb.conf の Public エントリは次のようになります。
[Public]
path = /srv/samba/euroshare
browsable = yes
writable = yes
guest ok = yes
read only = no
create mask = 0644
directory mask = 2777
次に、次のコマンドで sambashare ユーザーにフォルダーへのアクセス権を与える必要があります。
sudo chown -R sambashare /srv/samba/euroshare
次のコマンドでSambaを再起動します。
sudo systemctl restart smb
これで、sambashare ユーザーは共有へのフルアクセス権を持つようになります。
これが、RHELベースのLinuxディストリビューションでSambaを使用する方法です。これで、ネットワーク上のユーザーがSamba内のファイルやフォルダにアクセスできるようになるので、安心して作業を進めることができます。
Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube で TechRepublic の How To Make Tech Work を購読してください。