[Linuxスタディノート24-1]ネットワークファイルシステムのsamba共有設定+自動マウントおよびautofsのアンインストール

0-1実験環境

  • サーバー側:node1 ===> 192.168.43.101
  • クライアント:node2 ===> 192.168.43.111

0-2WindowsとLinuxはファイルを共有します

  • WindowsホストIP:192.168.43.1
  1. 新しいフォルダwestos
  2. ファイルのプロパティを開く===>共有===>高度な共有===>共有フォルダ===>共有名を設定
  3. ファイル属性===>共有===>矢印===>全員を選択===>追加===>共有===>完了

ここに写真の説明を挿入
ここに写真の説明を挿入
ここに写真の説明を挿入

  • Linuxクライアント:node2ホスト

smbclient -L //192.168.43.1/共享名称 -U administrator

1.サンバサービスの紹介

SambaはSMBの実装方法であり、主にLinuxシステムのファイルおよび印刷サービスを実装するために使用されます。Linuxユーザーは、Sambaサーバーを構成して使用することにより、Windowsユーザーとリソースを共有できます。

Sambaは、SMBプロトコル(ServerMessage Block)に基づくオープンソースソフトウェアです。Sambaは、SMBプロトコルの商標でもあります。SMBは、LinuxおよびUNIXシステムでファイルやプリンターなどのリソースを共有するために使用できるプロトコルです。このプロトコルはClient \ Serverプロトコルに基づいています。クライアントは、SMBを介してサーバー上の共有リソースにアクセスできます。Windowsがクライアントで、CentOSがサーバーの場合、Sambaを使用してSambaを介してLinuxリソースにアクセスし、2つのシステム間のデータ相互作用を実現できます。

Sambaは、unix / linuxで実行されるソフトウェアです。サーバー側とクライアント側に分かれており、cifsプロトコルで記述された機能を実現しています。Windowsおよびunix / linuxについては、ファイル共有を参照してください

cifs:Windowsでのファイル共有プロトコル、その前身はSMBプロトコルです

2.サンバの基本情報

  1. サービス起動スクリプト
    smb.service

  2. メイン構成ディレクトリ
    / etc / samba

  3. メイン構成ファイル
    /etc/samba/smb.conf

  4. セキュリティコンテキスト
    samba_share_t

  5. 139445

  6. インストールパッケージ
    サンバ
    samba-common:ツールキット
    samba-client:クライアント

3.sambaのインストールとアクティベーション

  1. dnf search samba:検索
  2. dnf install samba -y:サーバー側のインストール
    dnf install samba-common -y:サーバーとクライアントの両方をインストールする必要があります
    dnf install samba-client -y:クライアント側のインストール
  3. systemctl enable --now smb.service:sambaサービスを開始します
  4. ファイアウォールが開いているときにsambaを有効にする::ファイアウォールで
    firewall-cmd --permanent --add-service=sambasambaを永続的に開く
    firewall-cmd --reload:ファイアウォールを更新して設定を有効にする

ここに写真の説明を挿入
ここに写真の説明を挿入
ここに写真の説明を挿入

  • テスト:

smbclient -L //192.168.43.101:指定されたIPによって提供される共有ファイルを一覧表示します

(rootパスワードを入力する必要がある場合は、Enterキーを直接押してください)

ここに写真の説明を挿入

4.サンバユーザーの設立

sambaユーザーはローカルユーザーである必要があります

  1. smbpasswd -a 用户名:sambaユーザーを追加
  2. pdbedit -L:sambaユーザーのリストを表示する
  3. pdbedit -x 用户名:sambaユーザーを削除する

ここに写真の説明を挿入

5.sambaユーザーアクセスホームディレクトリ

  1. setsebool -P samba_enable_home_dirs on

ここに写真の説明を挿入

  • Windowsでのアクセス

Windows + R ===>\\192.168.43.101実行を入力

ここに写真の説明を挿入
ここに写真の説明を挿入

  • Linuxでのアクセス

smbclient -L //IP/共享名称 -U 用户名:指定されたIPによって提供される共有ファイルを一覧表示します

ここに写真の説明を挿入

6.sambaサービス共有ディレクトリ

6.1自作ディレクトリの共有

  1. mkdir /westosdir:共有ディレクトリを作成する
  2. touch /westosdir/file1:ファイルを作成する
  3. semanage fcontext -a -t samba_share_t ‘/westosdir(/.*)?’:共有ディレクトリのSelinuxセキュリティコンテキストを変更します
  4. restorecon -RvvF /westosdir:更新
  5. cp /etc/samba/smb.conf.example /etc/samba/smb.conf:テンプレートファイルをコピーする
  6. vim /etc/samba/smb.conf:共有ディレクトリを追加する
	[LEE]	#共享名称
	comment = westos dir	#共享说明
	path = /westosdir	#共享路径
  1. systemctl restart smb.service:サービスを再開する

ここに写真の説明を挿入

ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアント上の共有ファイルにアクセスします。
  1. smbclient //共享文件主机IP/共享名 -U samba用户名:指定されたIPによって提供される共有ファイルを一覧表示します
  2. mount -o username=samba用户名,password=密码 //共享文件主机IP/共享名 挂载目录:ファイルシステムをマウントする

ここに写真の説明を挿入
ここに写真の説明を挿入

6.2共有システムディレクトリ(セキュリティコンテキストを直接変更することはできません)

  1. vim /etc/samba/smb.conf:共有ディレクトリをシステムディレクトリに変更します
	[LEE]	#共享名称
	comment = westos dir	#共享说明
	path = /mnt	#共享路径
  1. setsebool -P samba_export_all_ro on:bool値を変更します(読み取り共有を許可します)
  2. getsebool -a | grep samba:Sambaのbool値を照会します
  3. systemctl restart smb.service:サービスを再開する

ここに写真の説明を挿入
ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアント上の共有ファイルにアクセスします。

smbclient //共享文件主机IP/共享名 -U samba用户名:指定されたIPによって提供される共有ファイルを一覧表示します

ここに写真の説明を挿入

  • サーバー側の設定を復元する

ここに写真の説明を挿入
ここに写真の説明を挿入

7.sambaの一般的な構成パラメーター

  1. サービスターミナル:
    • chmod 777 共享目录:共有ディレクトリのアクセス許可を変更する
    • vim /etc/samba/smb.conf:パラメータを追加または変更する
    • systemctl restart smb.service:サービスを再開する
  2. クライアントテスト:
    • mount -o username=sdsnzy1,password=sdsnzy1 //192.168.43.101/LEE /mnt/

7.1すべてのユーザーが書くことができます

書き込み可能=はい

  • クライアントのマウント後にファイルの作成に失敗しました!

ここに写真の説明を挿入

  • サーバー側で権限と構成ファイルを変更し、サービスを再起動します

ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアントテスト:再マウントして書き込みます!

ここに写真の説明を挿入

7.2指定されたユーザーが書き込み可能

リストの書き込み=ユーザー

  • サーバー側の構成ファイルを変更して、サービスを再起動してください。

ここに写真の説明を挿入

  • クライアントの再マウントテスト:

ここに写真の説明を挿入

7.3指定されたグループを書くことができます

リストの書き込み= @ User または +ユーザー

  • サーバー側の構成ファイルを変更して、サービスを再起動してください。(sdsnzy1をsdsnzy2の追加グループとして追加し、実験の完了後に復元します)

ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアントの再マウントテスト:

ここに写真の説明を挿入
ここに写真の説明を挿入

7.4指定アクセスユーザー

有効なユーザー=ユーザー

  • サーバー側の構成ファイルを変更して、サービスを再起動してください。

ここに写真の説明を挿入

  • クライアントの再マウントテスト:

ここに写真の説明を挿入

7.5アクセスグループの指定

有効なユーザー= @ User または +ユーザー

  • サーバー側の構成ファイルを変更して、サービスを再起動してください。(sdsnzy1をsdsnzy2の追加グループとして追加し、実験の完了後に復元します)

ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアントの再マウントテスト:

ここに写真の説明を挿入

7.6共有を非表示にするかどうか

閲覧可能=いいえ:共有を表示しない

閲覧可能=はい:共有を表示(デフォルト)

  • サーバー側の設定で共有が表示されない場合は、サービスとクライアント側のテストを再開します。

ここに写真の説明を挿入
ここに写真の説明を挿入

  • サーバー側の設定で共有が表示されたら、サービスとクライアント側のテストを再開します。

ここに写真の説明を挿入
ここに写真の説明を挿入

7.7匿名ユーザーにアクセスを許可する

ゲストにマップ=悪いユーザー :グローバル設定([gloabl]に追加)
ゲストOK =はい:共有名を設定する

  • サーバー側の構成ファイルを変更して、サービスを再起動してください。

ここに写真の説明を挿入
ここに写真の説明を挿入

  • クライアントの匿名マウントテスト:

mount -o username=guest //192.168.43.101/LEE /mnt:匿名マウント

ここに写真の説明を挿入

7.8指定されたホストアクセス(ホワイトリスト)

ホストは許可= 192.168.43.111:ホストのみがアクセスできます(複数のホストIPはスペースで区切られます)

ホストは= 192.168.43を許可します。:このネットワークセグメントの下にあるホストのみがアクセスできます(たとえば、192.168.43.38; 192.168.43.183 ...など)。

7.9指定されたホストアクセス(ブラックリスト)

ホスト拒否= 192.168.43.111:ホストのみのアクセスが禁止されています(複数のホストIPはスペースで区切られています)
ホストは= 192.168.43を許可します。:このネットワークセグメントの下のホストへのアクセスを禁止する

8. Samba + autofsの自動マウントおよびアンマウント

autofs:クライアントでの自動マウントおよびアンロードを実現するソフトウェア。

マウントはファイルシステムをマウントするために使用されます。システムの起動時またはシステムの起動後にマウントできます。ハードディスクなどのローカル固定デバイスの場合、マウントを使用してマウントできます。CD、フロッピーディスク、NFS、SMBなどのファイルシステムは動的です。つまり、必要な場合にのみマウントする必要があります。光ドライブとフロッピーディスクは、マウントが必要な時期は一般的にわかっていますが、NFSとSMBの共有は必ずしもわかっているわけではありません。つまり、NFS共有とSMBをいつマウントできるかは一般的にわかりません。autofsサービスは、動的にロードされたファイルシステムを時間内にマウントできる、Windowsでの光ドライブの自動オープン機能のようなこの機能を提供します。手作業による取り付けの手間を省きます。CD-ROM、フロッピーディスクなどの動的自動マウントを実現するには、関連する構成が必要です。

8.1Autofsクライアントのインストール

dnf install autofs -y

ここに写真の説明を挿入

8.2クライアント構成

  1. vim /etc/auto.master:構成ファイルを編集する
/mnt    	/etc/auto.samba
最终挂载点的上层目录	自动定义子策略文件

ここに写真の説明を挿入

  1. vim /etc/auto.samba:自動定義されたサブポリシーファイルを編集する
samba   -fstype=cifs,username=用户,password=密码      ://服务器端主机IP/共享目录
最终挂载点	挂载参数			挂载资源

ここに写真の説明を挿入

  1. vim /etc/autofs.conf:デフォルトのアンインストール時間を変更する
timeout = 3	#自动卸载时间默认为300秒
  1. systemctl restart autofs.service:サービスを再開する

8.3クライアントテスト

  1. cd /mnt/samba:マウントポイントディレクトリを入力します
  2. df:自動的にマウントされていることがわかりました
  3. cd:3秒後にマウントポイントディレクトリを終了します(リソースがタイムアウトのためにアイドル状態になるのを待って、マウントされたリソースは自動的にアンマウントされます)
  4. df:3秒後、取り付けが自動的にキャンセルされたことがわかります

ここに写真の説明を挿入
ここに写真の説明を挿入

9. Sambaマルチユーザーマウント(cifs)

クライアントで通常のマウント方法を使用すると、ユーザー認証を使用していない人もsambaサービスにアクセスできますが、これは安全ではありません。

認証されたユーザーのみがマウントできます

9.1クライアントにsamba認証ツールをインストールする

dnf search cifs:お問い合わせ

dnf install cifs-utils.x86_64 -y:インストール

ここに写真の説明を挿入

9.2クライアント構成

  1. vim /root/smbauth:マウントユーザーパスワードファイルを作成および編集します(マウントするたびにプレーンテキストでパスワードが安全に入力されないようにするため)
username=sdsnzy1
password=sdsnzy1
  1. vim /etc/auto.master:構成ファイルを編集する
/-      /etc/auto.cifs
最终挂载点的上层目录	自动定义子策略文件
  1. vim /etc/auto.cifs:自動定義されたサブポリシーファイルを編集する
/samba	-fstype=cifs,credentials=/root/smbauth,sec=ntlmssp,multiuser	://192.168.43.101/LEE
credentials=/root/smbauth	#指定认证文件(第一步编辑好的密码文件)
sec=ntlmssp	#指定认证类型
multiuser	#支持多用户
  1. systemctl restart autofs.service:サービスを再開する

ここに写真の説明を挿入
ここに写真の説明を挿入
ここに写真の説明を挿入

9.3クライアント認証

  • cifscreds add -u Samba用户 服务器端主机IP:認証を追加
  • cifscreds clearall:認証されたすべてのユーザーをクリアする
  • cifscreds clear -u Samba用户:指定した認証済みユーザーをクリアする
  • cifscreds update -u Samba用户:証明書の更新

実験:

  1. su - kiosk:通常のユーザーに切り替えます
  2. ls -l /mnt:表示できません
  3. cifscreds add -u sdsnzy1 192.168.43.101:認証を追加
  4. ファイルを表示および作成できます
  5. 他の一般ユーザーに切り替えてください。認証は表示できません。非常に安全です。

ここに写真の説明を挿入
ここに写真の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_46069582/article/details/110307182