Samba は、SMB ネットワークプロトコルを再実装したフリーソフトウェ アで、Andrew Tridgell 氏によって開発されました。Samba は、様々な Microsoft Windows クライアントにファイルと印刷サービスを提供し、ドメインコントローラとして、またはドメインメンバーとして、Microsoft Windows Server ドメインと統合することができます。
バージョン 4 では、Active Directory と Microsoft Windows NT ドメインをサポートしています。
Samba のスタンドアロンサーバーの設定をして、ファイル共有ができることを確認します。
- プリンタサーバー機能は利用しない
- パスワード形式は tdbsam としサーバーに情報を保存
- 各ユーザー毎の共有 [homes] を設定する。
- シンボリック・リンクを辿れるようにする。
--- OUTLINE ---
Samba をインストールおよび設定をする OS は下記のとおりです。
OS | Red Hat Enterprise Linux 9 (Plow) | x86_64 |
RHEL 側の設定
Samba のインストール
次に dnf コマンドで samba と関連パッケージをインストールします。
[bitwalk@rhel9 ~]$ sudo dnf install samba サブスクリプション管理リポジトリーを更新しています。 メタデータの期限切れの最終確認: 0:08:35 時間前の 2022年07月24日 08時03分59秒 に実施しました。 依存関係が解決しました。 =========================================================================================================== パッケージ Arch バージョン リポジトリー サイズ =========================================================================================================== インストール: samba x86_64 4.15.5-108.el9_0 rhel-9-for-x86_64-baseos-rpms 837 k 依存関係のインストール: python3-dns noarch 2.1.0-6.el9 rhel-9-for-x86_64-baseos-rpms 393 k python3-ldb x86_64 2.4.1-1.el9 rhel-9-for-x86_64-baseos-rpms 60 k python3-samba x86_64 4.15.5-108.el9_0 rhel-9-for-x86_64-baseos-rpms 3.3 M python3-talloc x86_64 2.3.3-1.el9 rhel-9-for-x86_64-baseos-rpms 24 k python3-tdb x86_64 1.4.4-1.el9 rhel-9-for-x86_64-baseos-rpms 24 k python3-tevent x86_64 0.11.0-1.el9 rhel-9-for-x86_64-baseos-rpms 22 k samba-common-tools x86_64 4.15.5-108.el9_0 rhel-9-for-x86_64-baseos-rpms 458 k samba-libs x86_64 4.15.5-108.el9_0 rhel-9-for-x86_64-baseos-rpms 107 k tdb-tools x86_64 1.4.4-1.el9 rhel-9-for-x86_64-baseos-rpms 40 k トランザクションの概要 =========================================================================================================== インストール 10 パッケージ ダウンロードサイズの合計: 5.2 M インストール後のサイズ: 24 M これでよろしいですか? [y/N]: y パッケージのダウンロード: (1/10): python3-dns-2.1.0-6.el9.noarch.rpm 957 kB/s | 393 kB 00:00 : : : インストール済み: python3-dns-2.1.0-6.el9.noarch python3-ldb-2.4.1-1.el9.x86_64 python3-samba-4.15.5-108.el9_0.x86_64 python3-talloc-2.3.3-1.el9.x86_64 python3-tdb-1.4.4-1.el9.x86_64 python3-tevent-0.11.0-1.el9.x86_64 samba-4.15.5-108.el9_0.x86_64 samba-common-tools-4.15.5-108.el9_0.x86_64 samba-libs-4.15.5-108.el9_0.x86_64 tdb-tools-1.4.4-1.el9.x86_64 完了しました! [bitwalk@rhel9 ~]$
Samba サービスの起動
Samba のサービスを利用するには、smb に加えて(ホスト名取得のため)nmb(NetBIOS 対応)のサービスも起動する必要があります。
[bitwalk@rhel9 ~]$ sudo systemctl start smb nmb [bitwalk@rhel9 ~]$ sudo systemctl enable smb nmb Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service. Created symlink /etc/systemd/system/multi-user.target.wants/nmb.service → /usr/lib/systemd/system/nmb.service. [bitwalk@rhel9 ~]$
smb.conf の設定
ルート権限で /etc/samba/smb.conf を編集します。今回は、Linux (RHEL) のユーザーアカウントのディレクトリを共有するだけです。あと、シンボリック・リンクを辿れるようにしています。
# See smb.conf.example for a more detailed config file or # read the smb.conf manpage. # Run 'testparm' to verify the config is correct after # you modified it. # # Note: # SMB1 is disabled by default. This means clients without support for SMB2 or # SMB3 are no longer able to connect to smbd (by default). [global] security = user passdb backend = tdbsam #printing = cups #printcap name = cups #load printers = yes #cups options = raw dos charset = CP932 unix extensions = no wide links = yes [homes] comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes #[printers] # comment = All Printers # path = /var/tmp # printable = Yes # create mask = 0600 # browseable = No #[print$] # comment = Printer Drivers # path = /var/lib/samba/drivers # write list = @printadmin root # force group = @printadmin # create mask = 0664 # directory mask = 0775
testparm コマンドで、編集した内容にスペルミスなどがないか確認します。
[bitwalk@rhel9 ~]$ testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
dos charset = CP932
security = USER
unix extensions = No
idmap config * : backend = tdb
wide links = Yes
[homes]
browseable = No
comment = Home Directories
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[bitwalk@rhel9 ~]$
Samba ユーザーの追加とパスワードの設定
Samba ユーザーを登録するには、Linux 上の既存ユーザーの情報を使うか、あるいは新しいユーザーを作成してそのユーザー情報を使います。Samba の pdbedit コマンドに -a -u オプションを指定して以下のように実行します。ここでは、ユーザー bitwalk を Samba ユーザーに追加しています。パスワードは、Linux の bitwalk ユーザーと同じものを設定しています。
[bitwalk@rhel9 ~]$ sudo pdbedit -a -u bitwalk
[sudo] bitwalk のパスワード:
new password:
retype new password:
Unix username: bitwalk
NT username:
Account Flags: [U ]
User SID: S-1-5-21-4010619847-536072473-1214530244-1000
Primary Group SID: S-1-5-21-4010619847-536072473-1214530244-513
Full Name: Fuhito Suguri
Home Directory: \\RHEL9\bitwalk
HomeDir Drive:
Logon Script:
Profile Path: \\RHEL9\bitwalk\profile
Domain: RHEL9
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: 木, 07 2月 2036 00:06:39 JST
Kickoff time: 木, 07 2月 2036 00:06:39 JST
Password last set: 日, 24 7月 2022 08:33:45 JST
Password can change: 日, 24 7月 2022 08:33:45 JST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
[bitwalk@rhel9 ~]$
ファイアウォールの設定
Samba のサービスがファイアウォールを通るように設定します。
[bitwalk@rhel9 ~]$ sudo firewall-cmd --add-service=samba --permanent success [bitwalk@rhel9 ~]$ sudo firewall-cmd --reload success [bitwalk@rhel9 ~]$ sudo firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: enp0s21f0u5 wlp2s0 sources: services: cockpit dhcpv6-client http pmproxy samba ssh ports: 9090/tcp 3389/tcp 443/tcp protocols: forward: yes masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: [bitwalk@rhel9 ~]$
SELinux の設定
SELinux の setsebool コマンドで下記を実行します。
[bitwalk@rhel9 ~]$ sudo setsebool -P samba_export_all_rw 1 [bitwalk@rhel9 ~]$ sudo setsebool -P samba_enable_home_dirs 1
サービスの再起動
編集した設定を反映させるために、サービスを再起動します。
[bitwalk@rhel9 ~]$ sudo systemctl restart smb nmb
Windows から接続
Samba サーバへの接続確認に、下記の Windows PC を使いました。
OS | Windows 11 Home | 21H2, build 22000.778 | x64 ベース |
まず、エクスプローラを開いて、Samba サーバーのアドレスを入力します。この例では ¥¥192.168.150.63 と入力しています。
ネットワーク資格情報の入力が求められますので、設定した Samba のユーザー名とパスワードを入力して OK ボタンをクリックします。
すると Samba サーバー側の bitwalk フォルダが表示されます
フォルダを開けることを確認後、念の為、ファイルの書き込みができることも確認しておきます。
ネットワークドライブをドライブ番号に割り当てる場合は、例えば、参考サイト [1] などを参考にしてください。
参考サイト
にほんブログ村
0 件のコメント:
コメントを投稿