WindowsとLinuxのシステムは構造が異なり、多くの場合、両者の平和的な共存が課題となることがよくあります。 Sambaのおかげで、2つのシステムがネットワーク経由でファイルとフォルダーを共有できるようになりました。では、サンバとは何ですか ? Sambaは無料のオープンソースプロトコルであり、ファイルを両方のシステム間でシンプルかつシームレスに共有できます。 Linuxサーバー上にSambaサーバーを配置して、Windowsクライアントからアクセスできるさまざまなファイルやフォルダーをホストできます。このチュートリアルでは、CentOS 8に最新バージョンのSambaをインストールして構成する方法を学習します。また、sambaを使用してCentOS8システムからWindowsシステムにフォルダーを共有する方法も学習します。
ステップ1)sambaと必要なパッケージをインストールします
サーバーにログインし、以下のコマンドを実行してSambaとその依存関係をインストールします。
$ sudo dnf install samba samba-common samba-client
また、WindowsシステムとLinuxシステムが同じワークグループにあることを確認する必要があります 。したがって、Windows PCに移動して、コマンドプロンプトを起動します。次のコマンドを入力します:
>ネット構成ワークステーション
出力から、ワークステーションドメインが「 WORKGROUP」を指していることがはっきりとわかります。 ’。これも後でLinuxマシンで構成されます。
ステップ2)Sambaの構成
Sambaをインストールしたら、いくつかの構成を行います。ただし、その前に、samba構成ファイルをバックアップする必要があります。したがって、以下のコマンドを実行します:
$ sudo mv /etc/samba/smb.conf /etc/samba/smb.con.bak
次に、sharedという名前の共有フォルダを作成し、図のように必要な権限と所有権を割り当てます。
$ sudo mkdir -p /srv/samba/shared $ sudo chmod -R 0755 /srv/samba/shared $ sudo chown -R nobody:nobody /srv/samba/shared $ sudo chcon -t samba_share_t /srv/samba/shared
次に、新しいSamba構成ファイルを作成します
$ sudo vim /etc/samba/smb.conf
以下の構成を追加します:
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = centos-8 security = user map to guest = bad user dns proxy = no [Anonymous] path = /srv/samba/shared browsable =yes writable = yes guest ok = yes read only = no
構成ファイルを保存して閉じます。構成が適切であることを確認するには、 testparmを実行します コマンド
$ testparm
ステップ3)ファイアウォールでsambaサービスを許可する
次に、ファイアウォールを越えてSambaを許可し、外部ユーザーがSamba共有にアクセスできるようにします。
$ sudo firewall-cmd --add-service=samba --zone=public --permanent $ sudo firewall-cmd --reload
ステップ4)Sambaサービスを開始して有効にします
最後に、Sambaおよびnmbサービスを開始して有効にします
$ sudo systemctl start smb $ sudo systemctl enable smb
次に、smbサービスが実行されているかどうかを確認します。
$ sudo systemctl status smb
$ sudo systemctl start nmb $ sudo systemctl enable nmb
同様に、smbサービスで行ったのと同じようにnmbサービスが実行されているかどうかを確認します。
$ sudo systemctl status nmb
ステップ5)WindowsマシンからSamba共有にアクセスする
Windows PCから、Windowsキー+ Rを押して、[実行]ダイアログを起動し、次のように入力します
\\hostname-of-sambaサーバー
または
\\ IP-address-of-samba-server
これにより、「匿名」フォルダを含む下のウィンドウが開きます。
Sambaサーバーまたはクライアントからファイルを作成し、他のユーザーと共有することができます
Sambaでの安全な共有の作成
作成したファイル共有には誰でもアクセスでき、すべてのユーザーがファイルを作成および削除できます。重要なドキュメントは上書きまたは削除される可能性があるため、これを共有する場合は問題が発生します。このため、この課題に対処するために安全なファイル共有を作成する必要があります。
まず、次のようにsambaユーザー用の新しいグループを作成します。
$ sudo groupadd secure_group
次に、新しく作成したグループに新しいユーザーを追加します
$ sudo useradd -g secure_group linuxuser
次に、新しい安全なフォルダを作成し、後で以下に示すように必要な権限とファイルの所有権を割り当てます。
$ sudo mkdir -p /srv/samba/secure_share $ sudo chmod -R 0770 /srv/samba/secure_share $ sudo chcon -t samba_share -p /srv/samba/secure_share $ sudo chown -R root:secure_group /srv/samba/secure_share
次に、セキュリティで保護されたファイル共有にアクセスするときに使用するパスワードをsambaユーザーに割り当てます。これにより、SMPパスワードを入力し、後で確認するように求められます。
$ sudo smbpasswd -a linuxuser
それでは、Sambaの構成ファイルに戻りましょう
$ sudo vim /etc/samba/smb.conf
以下に示す構成行を追加します:
[secured] path = /srv/samba/secure_share valid users = @secure_group guest ok = no writable = yes browsable = yes
保存して終了し、Sambaサービスを再起動します
$ sudo systemctl restart samba
WindowsシステムからSambaセキュアフォルダにアクセスする
繰り返しますが、WindowsシステムからSamba共有にアクセスするには、 Windows Key + Rを押します。 「実行」を起動します ' ダイアログ。 \\hostnameまたは\\samba-IPと入力し、 ENTERを押します 。
これで、securedという別のフォルダがあることに気付くでしょう。
アクセスするには、ダブルクリックすると、ログインポップアップでユーザー名とパスワードのクレデンシャルの入力を求められます。
完了したら、[ OK]をクリックします ’ボタンをクリックするか、Enterキーを押してフォルダの内容にアクセスします
LinuxマシンからSambaセキュアフォルダにアクセスする
Linuxシステムから共有ディレクトリにアクセスするには、次のコマンドを実行するだけです。
$ smbclient --user=linuxuser -L //192.168.43.13
プロンプトが表示されたらパスワードを入力し、Enterキーを押します
安全な共有実行にアクセスするには
$ smbclient //192.168.43.13/secured -U linuxuser
他のSambaユーザーと共有するファイルとディレクトリを自由に作成してください。