Windows でのファイル共有のために RHEL 8 に Samba4 をインストールする
Samba は、オープン ソースの高速、安全、安定した広く使用されているネットワーク ファイル システムで、SMB/CIFS プロトコルを使用してすべてのクライアントにファイル共有と印刷サービスを提供します。 Linux、DOS と Windows のすべてのバージョン、OS/2、その他多くのオペレーティング システムが含まれます。
前回の記事では、CentOS/RHEL システムとWindows マシン間の基本的なファイル共有のために CentOS/RHEL 7 に Samba4 をインストールする方法を説明しました。ここでは、マシン間で匿名かつ安全なファイル共有を行うために Samba を構成する方法を学びました。
この記事では、Windows マシンとの基本的なファイル共有のために RHEL 8 に Samba4 をインストールして設定する方法について説明します。
RHEL 8 に Samba4 をインストールする
1. Samba 4 をその依存関係とともにインストールするには、示されているように DNF パッケージ マネージャーを使用します。
dnf install samba samba-client samba-common
2. インストールが完了したら、Sambe サービスを開始し、システム起動時の自動開始を有効にして、次のように systemctl コマンドを使用してサービスを確認します。
systemctl start smb
systemctl enable smb
systemctl status smb
3. 次に、ファイアウォールが設定されている場合は、システムを介して共有ディレクトリとファイルにアクセスできるように、ファイアウォール設定に Samba サービスを追加する必要があります。
sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload
RHEL 8 で Samba4 を構成する
4. Samba をファイル共有用に構成するには、事前構成設定とさまざまな構成ディレクティブが含まれるデフォルトの Samba 構成ファイルのバックアップ コピーを作成する必要があります。
cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
次に、以下で説明するように、匿名で安全なファイル共有サービス用に samba を構成します。
RHEL 8 での Samba4 匿名ファイル共有のセットアップ
5. このセクションでは、最初のステップとして、サーバー上にファイルを保存する共有ディレクトリを作成します。次に、図に示すように、ディレクトリに適切なアクセス許可を定義します。
mkdir -p /srv/samba/anonymous
chmod -R 0777 /srv/samba/anonymous
chown -R nobody:nobody /srv/samba/anonymous
6. 次に、chcon ユーティリティを使用して、作成された samba 共有ディレクトリの SELinux セキュリティ コンテキストを変更します。
chcon -t samba_share_t /srv/samba/anonymous
7. 次に、お気に入りのテキストベースのファイル エディタを使用して構成ファイルを開き、共有ディレクトリ上で匿名の安全でないファイル共有を構成します。
vim /etc/samba/smb.conf
次のグローバル パラメータを変更し、匿名共有のセクションを追加します。必要に応じて独自の値を設定できることに注意してください (詳細については、man smb.conf を参照してください)。
[global]
workgroup = WORKGROUP
netbios name = rhel
security = user
...
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody
ファイルの変更を保存して閉じます。
8. 次に、次のコマンドを実行して、構成が正しいかどうかを確認します。
testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Unknown parameter encountered: "netbios"
Ignoring unknown parameter "netbios"
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Global parameters
[global]
printcap name = cups
security = USER
idmap config * : backend = tdb
cups options = raw
[homes]
browseable = No
comment = Home Directories
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[printers]
browseable = No
comment = All Printers
create mask = 0600
path = /var/tmp
printable = Yes
[print$]
comment = Printer Drivers
create mask = 0664
directory mask = 0775
force group = @printadmin
path = /var/lib/samba/drivers
write list = @printadmin root
[Anonymous]
comment = Anonymous File Server Share
force user = nobody
guest ok = Yes
path = /srv/samba/anonymous
read only = No
9. Samba 設定がOKな場合は、最近の変更を有効にするために samba サービスを再起動します。
systemctl restart smb
10. 最後に、匿名共有が正常に動作しているかどうかをテストし、Windows マシンにログインしてWindows エクスプローラーを開き、ネットワークをクリックします。 RHEL ホストをクリックするか、サーバーの IP アドレスを使用してアクセスします (サーバー上で ip add コマンドを実行すると、IP アドレスを確認できます)。
e.g. 2.168.43.198
11. 次に、匿名 ディレクトリを開き、そこに他のユーザーと共有するファイルを追加してみます。
RHEL 8 での Samba4 安全なファイル共有のセットアップ
12. 安全な共有ディレクトリを作成するには、Samba システム グループを作成する必要があります。保護された共有のすべてのユーザーがこのグループに追加されます。次のようにgroupadd コマンドを使用してグループを作成できます。
groupadd smbgrp
次に、usermod コマンドを使用してすべてのユーザー (たとえば、tecmint) をグループに追加し、図に示すように各ユーザーのパスワードを設定します。
usermod tecmint -aG smbgrp
smbpasswd -a tecmint
13. 次に、共有ファイルを安全に保存する安全なディレクトリを作成し、そのディレクトリに適切なアクセス許可を設定します。また、ディレクトリの SELinux セキュリティ コンテキストを次のように変更します。
mkdir -p /srv/samba/secure
chmod -R 0770 /srv/samba/secure
chown -R root:smbgrp /srv/samba/secure
chcon -t samba_share_t /srv/samba/secure
14. 次に、設定ファイルを開いて編集します。
vim /etc/samba/smb.conf
そして、ファイルの最後に次のセクションを追加します。
[Secure]
comment = Secure File Server Share
path = /srv/samba/secure
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
変更を保存してファイルを閉じます。
15. 次に、testparm コマンドを実行して、samba 構成を再度確認します。
testparm
16. Samba サービスを再起動して、変更を適用します。
systemctl restart smb.service
systemctl restart nmb.service
安全な Samba ファイル共有のテスト
17. 最後に、セキュア共有が正常に動作しているかどうかをテストします。 Windows マシンから Windows エクスプローラーを開き、ネットワークをクリックしてからRHELホストをクリックするか、次のコマンドを使用してサーバーへのアクセスを試みます。前に説明したように、その IP アドレス。
e.g. 2.168.43.198
RHEL 8 サーバーにログインするには、ユーザー名とパスワードの入力を求められます。
18. ログインすると、すべての samba 共有ディレクトリのリストが表示されます。 Secure ディレクトリにファイルを追加することで、ネットワーク上の他の許可されたユーザーと一部のファイルを安全に共有できるようになりました。
それだけです!この記事では、Windows マシンとの匿名で安全なファイル共有のために RHEL 8 に Samba 4 をインストールして構成する方法を説明しました。このガイドに関してご質問やご意見がございましたら、以下のフィードバック フォームをご利用ください。