多くの場合、ファイルサーバーはさまざまなクライアントシステムに対応する必要があります。 Sambaを実行すると、Windowsシステムがファイルに接続してアクセスできるようになり、他のLinuxシステムやMacOSにもアクセスできるようになります。別の解決策は、FTP / SFTPサーバーを実行することです。これは、多くのシステムからの接続もサポートできます。
このガイドでは、AlmaLinuxでSambaサーバーをセットアップする手順について説明します。これは、AlmaLinuxをインストールした後、またはCentOSからAlmaLinuxに移行した後、ファイルサーバーを準備するための優れた方法です。また、他のAlmaLinuxクライアントコンピューターからファイルサーバーに接続する方法についても説明します。
このチュートリアルでは、次のことを学びます。
- AlmaLinuxにSambaをインストールする方法
- Sambaがfirewalldを通過できるようにする方法
- Sambaユーザーを作成する方法
- ディレクトリを共有するようにSambaを構成する方法
- SELinuxを介してSambaを許可する方法
- AlmaLinuxクライアントからSambaサーバーに接続する方法
カテゴリ | 使用する要件、規則、またはソフトウェアバージョン |
---|---|
システム | AlmaLinux |
ソフトウェア | サンバ |
その他 | rootまたはsudo を介したLinuxシステムへの特権アクセス コマンド。 |
コンベンション | # –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudo を使用して、root権限で実行する必要があります。 コマンド$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります |
Sambaのインストール
最初のステップは、Sambaがまだシステムにインストールされていない場合に備えて、AlmaLinuxにインストールすることです。次のコマンドを使用して、dnfパッケージマネージャーを介して必要なSambaパッケージをインストールします。
$ sudo dnf install samba samba-client
パッケージがインストールされたら、smb
を起動して有効にする必要があります およびnmb
起動時のデーモン。 1つ目は実際の転送と共有操作の実行を処理するデーモンで、2つ目はNetBIOS
を実行します。 名前の解決。Windowsでネットワークを閲覧するときにリソースを表示できるようにします。これで、1つのコマンドで両方のsystemdサービスを有効にして開始できます:
$ sudo systemctl enable --now {smb,nmb}
ファイアウォールを通過するSambaを許可する
AlmaLinuxにはデフォルトでfirewalldが有効になっており、Sambaサービスにアクセスしようとしている他のコンピューターからの他の接続をブロックします。次のコマンドを実行することで、firewalldを通過する適切なポートを許可できます。必ず--zone
を追加してください 構成に必要な場合は、コマンドのオプション。
$ sudo firewall-cmd --permanent --add-service=samba $ sudo firewall-cmd --reload
Sambaユーザーを作成する
接続にアカウントのクレデンシャルを必要としないSamba共有を設定することは可能ですが、明らかなセキュリティ上の懸念があるため、ほとんどの状況では実用的ではありません。代わりに、Samba共有に接続するユーザーのユーザーアカウントを作成することをお勧めします。
各Sambaユーザーには、AlmaLinuxシステムの通常のユーザーアカウントが必要です。これは、ホームディレクトリやシェルなどを提供する必要があるという意味ではありませんが、ユーザーアカウントは必要です。システムにすでにユーザーアカウントがある場合は、それで十分です。それ以外の場合は、新しいアカウントを作成する必要があります。次のコマンドを使用して、Samba共有の新しいユーザーアカウントを作成します。
$ sudo adduser -M sambauser -s /sbin/nologin
-M
コマンドに渡されるオプションは、--no-create-home
の短縮形です。 、これは非常に自明です。そして-s
オプションを使用すると、シェルを指定できます。この場合、意図的に無効なシェルを指定できます:/sbin/nologin
。このユーザーアカウントのパスワードを設定する必要はありません。Sambaサービスのパスワードのみを設定してください。
次のコマンドを使用して、新しく作成したユーザーのSambaパスワードを作成します。
$ sudo smbpasswd -a sambauser New SMB password: Retype new SMB password: Added user sambauser.
ディレクトリを共有するようにSambaを構成する
Sambaを実行し、新しいユーザーを作成したので、Sambaを介して共有するディレクトリを構成しましょう。
この例では、共有ディレクトリを/mnt/shared
に作成します。 。
$ sudo mkdir -p /mnt/shared $ sudo chmod 777 /mnt/shared
次に、Samba構成ファイルを編集して、共有するこの新しいディレクトリについてサービスに通知します。 nanoまたはお気に入りのテキストエディタを使用して、次の構成ファイルを開きます。
$ sudo nano /etc/samba/smb.conf
このファイルの一番下まで移動し、次の行を貼り付けます。
[linuxconfig] path = /mnt/shared guest ok = no read only = no
この例では、共有に linuxconfigという名前を付けていることに注意してください。 角かっこ内に入れます。共有をリモートサーバーにマウントするときは、この名前を知っている必要があります。
ファイルへの変更を保存して終了します。次に、Sambaサービスを再起動して、新しい変更を有効にします。
$ sudo systemctl restart {smb,nmb}
SELinuxを介してSambaを許可する
SELinuxはAlmaLinuxでデフォルトで有効になっています。次のコマンドを使用して、共有ディレクトリとファイルに適切なコンテキストを割り当てる必要があります。これにより、SELinuxを推奨される強制モードに保ちながらSambaが機能できるようになります。
$ sudo chcon -R -t samba_share_t /mnt/shared
AlmaLinuxクライアントからSambaサーバーに接続する
これで、専用のSambaユーザーと共有ディレクトリを備えた完全に機能するSambaサーバーができました。他のシステムは、Sambaサーバーからファイルをアップロードまたはダウンロードするために、このディレクトリに接続できる必要があります。このセクションでは、別のAlmaLinux(クライアント)システムからSambaサーバーに接続する方法を示します。
クライアントシステムで、リモートSamba共有のマウントポイントとして使用できる空のディレクトリを作成する必要があります。
$ sudo mkdir -p /mnt/fileserver
次に、mount
を使用します 作成したフォルダにリモートSamba共有をマウントするコマンド。リモートマシンのホスト名またはIPアドレスのいずれかを使用できます。
$ sudo mount -t cifs -o username=sambauser //192.168.1.10/linuxconfig /mnt/fileserver
パスワードを入力すると、Samba共有がマウントされます。
または、次の構文を入力して、GNOMEのファイルマネージャーからSamba共有にアクセスすることもできます。必要に応じてIPアドレスを置き換えます。
smb://127.0.0.1/linuxconfig/Samba共有へのパスを入力してください
ログイン後、Samba共有はGNOMEのファイルマネージャーの左側にマウントされます。
Samba共有がマウントされましたまとめ
このチュートリアルでは、AlmaLinuxにSambaをインストールする方法を学びました。また、Samba共有、Sambaユーザーを作成し、Sambaを許可するようにファイアウォールとSELinuxを構成する方法についても説明しました。次に、クライアントマシンからSambaサーバーに接続する手順を確認しました。このガイドを使用すると、さまざまなオペレーティングシステムからの接続をホストできるファイルサーバーを作成できるはずです。