NFSリモート共有ストレージとFTPファイル転送サービスの構築

1. NFS リモート共有ストレージ

  1. ファイルシステムレベルの共有(NASストレージ) -------- フォーマット済みなのでそのまま使用可能です。

  1. NFS には多くの機能があるため、機能ごとに異なるポートを使用する必要があります。したがって、NFS はポートを固定できません。したがって、NFS はポートを固定できません。RPC は NFS ポート情報を記録するため、サーバーとクライアントは RPC を通じてポート情報を通信できます。

練習する

環境の準備:

サーバー: Server1 IP: 192.168.56.99

クライアント: web1 IP: 192.168.56.110

ホスト名を変更します:

サーバー: hostnamectl set-hostname server1

クライアント: hostnamectl set-hostname web1

同時に、サーバー クライアント ファイアウォールと selinux カーネル ファイアウォールをオフにします。

[root@server1 ~]# systemctl stop firewalld && systemctl disable firewalld && setenforce 0
[root@web1 ~]# systemctl stop firewalld && systemctl disable firewalld && setenforce 0
  1. NFSサーバーの操作

[root@server1 ~]# yum -y install rpcbind  #安装rpc协议的包
[root@server1 ~]# yum -y install nfs-utils  #安装nfs服务,提供文件系统
[root@server1 ~]# systemctl start nfs && systemctl start rpcbind  #开启nfs服务和rpc协议
[root@server1 ~]# mkdir /nfs   #在根下创建一个名为nfs的目录作为共享存储目录
[root@server1 ~]# echo 'holle NFS' >> /nfs/text   #在目录nfc下创建text文件并追加内容
[root@server1 ~]# vim /etc/exports        #编辑共享文件
/nfs 192.168.56.0(rw,no_root_squash,sync)

【パラメータ値内容の説明】

rw ro このディレクトリによって共有される権限は、読み取り/書き込みまたは読み取り専用です。

同期 非同期 同期は、データがメモリとハードディスクに同時に書き込まれることを意味します。一方、非同期は、データがハードディスクに直接書き込まれるのではなく、まずメモリに一時的に保存されることを意味します。

no_root_squash root_squash NFS ファイル システムを使用するためにクライアントが使用するアカウントが root の場合、システムはこのアカウントの ID をどのように判断しますか? デフォルトでは、クライアント ルートの ID は root_squash 設定によって nfsnobody に圧縮され、サーバー システムにとってより安全になります。ただし、クライアントがルート ID を使用してサーバーのファイル システムを操作できるようにしたい場合は、ここで no_root_squash をオンにする必要があります。

all_squash NFS にログインするユーザーの ID に関係なく、そのユーザーの ID は匿名ユーザー (通常は誰も (nfsnobody)) に圧縮されます。

anonuid anongid anon は匿名(匿名)という意味です 先ほど *_squash で触れた匿名ユーザーの UID 設定値は通常はnobody(nfsnobody)ですが、このUIDの値は自分で設定することができます!もちろん、この UID は /etc/passwd に存在する必要があります。anonuid は UID を指し、anongid はグループの GID を指します。

[root@server1 ~]# systemctl restart nfs-server   #重启nfc服务
[root@server1 ~]# systemctl enable nfs-server   #制作开机启动
[root@server1 ~]#  exportfs -v                  #确认 NFS 服务器启动

クライアント Web1 の操作:

[root@web1 ~]# yum -y install rpcbind  #安装rpc协议的包
[root@web1 ~]# yum -y install nfs-utils  #安装nfs服务,提供文件系统
[root@web1 ~]# systemctl start nfs && systemctl start rpcbind  #开启nfs服务和rpc协议
[root@web1 ~]# mkdir /gyl      #创建挂载点
[root@web-1 ~]# mount -t nfs 192.168.56.110:/nfs /gyl/   #挂载
[root@web-1 ~]# df -Th                                  # 查看挂载是否成功
[root@web-1 ~]# ls /gyl/
text
[root@web-1 ~]# umount /qf  #取消挂载

起動時に自動的にマウントします。

[root@web-1 ~]# vim /etc/fstab
192.168.56.110:/nfs     /gyl                    nfs     defaults        0 0
[root@web-1 ~]# mount -a

2. FTPファイル転送サービス

  • ファイル転送プロトコル (FTP)。このプロトコルに基づいて、FTP クライアントとサーバーはファイルの共有、ファイルのアップロード、およびファイルのダウンロードを行うことができます。FTP は、TCP プロトコルに基づいて仮想接続を生成します。ユーザーはクライアントを通じて FTP サーバーにファイルをアップロード、ダウンロード、削除できます。FTP サーバーは複数人で同時に共有できます。

  • FTP サービスはクライアント/サーバー (C/S と呼ばれます) モードであり、FTP プロトコルに基づいて FTP ファイルの外部共有と送信を実現するソフトウェアを FTP サーバー ソースと呼び、クライアント プログラムは FTP プロトコルに基づいて、 FTP クライアントは、FTP サーバーにファイルをアップロードおよびダウンロードできます。

  • FTPサーバー

機能: アップロードとダウンロードを実現するファイル共有サービスを提供します。

ポート:

21日、TCP接続のデフォルトポートを確立します。

No.20:データ転送

  • FTP アクティブ モード:

クライアントはポート N (>1023) を開いてサーバーのポート 21 との接続を確立し、同時にポート N+1 を開いてポート N+1 を監視していることをサーバーに伝えます。サーバーがリクエストを受信した後、 20 ポートは送信のためにクライアントの N+1 ポートに接続されます。

ポート21で接続を確立します

ポート 20 はデータを送信します

  • FTP パッシブモード:

クライアントは 2 つのポート (1024、1025) を同時に開き、1 つのポート (1024) がサーバーのポート 21 との接続を確立し、兄弟、私は接続されています、別のポートを開いてもよいと要求します。サーバーはリクエストを受信すると、ランダムにポート (1027) を開き、クライアントにポート 1027 を開いたことを伝えます。クライアントは別のポート (1025) を使用してサーバーの (1027) ポートに接続し、データを送信します。

vsftp サービスの紹介:

  • Very Secure FTP サービス プロセス (Very Secure FTP デーモン、Vsftpd)、Vsftpd は、Unix/Linux ディストリビューションで最も主流の FTP サーバー プログラムであり、小型で軽量、安全で使いやすく、安定性と効率性が高いという利点があります。企業内での部門横断やマルチユーザー利用(1000ユーザー)などのニーズに対応します。

  • vsftpd構成を開始する

環境の準備:

サーバー: Server1 IP: 192.168.56.99

クライアント: web1 IP: 192.168.56.110

ホスト名を変更します:

サーバー: hostnamectl set-hostname server1

クライアント: hostnamectl set-hostname web1

同時に、サーバー クライアント ファイアウォールと selinux カーネル ファイアウォールをオフにします。

[root@server1 ~]# systemctl stop firewalld && systemctl disable firewalld && setenforce 0
[root@web1 ~]# systemctl stop firewalld && systemctl disable firewalld && setenforce 0
  • サーバー構成:

[root@server-1 ~]# yum install -y vsftpd         #下载安装vsftp服务
[root@server-1 ~]# systemctl start vsftpd        #开启vsftp服务
[root@server-1 ~]# systemctl enable vsftpd     #设置开机自启动
[root@server-1 ~]# touch /var/ftp/pub/text.txt     #创建文件到共享目录
[root@server-1 ~]# cd /var/ftp/                             #切换到ftp目录下
[root@server-1 ftp]# ls
[root@server-1 ftp]# chown ftp.ftp pub/ -R            #修改ftp目录的属主与属组
[root@server-1 ftp]# vim /etc/vsftpd/vsftpd.conf          --修改配置文件找到29行将下面的注释取消
 anon_other_write_enable=YES
 anon_umask=000                                      #匿名用户上传下载目录权限掩码
[root@server-1 ftp]# systemctl restart vsftpd.service       #重启vsftp服务
[root@server-1 ftp]# systemctl status vsftpd.service        #查看vsftp服务运行状态

  • クライアント構成

[root@web-1 ~]# yum -y install lftp          #安装ftp客户端
[root@web-1 ~]# lftp 192.168.56.110         #登录ftp
lftp 192.168.56.110:~> ls
drwxr-xr-x    2 14       50             22 Feb 24 11:24 pub
lftp 192.168.56.110:/> cd /pub/
lftp 192.168.56.110:/pub> ls
-rw-r--r--    1 14       50              0 Feb 24 11:24 text.txt
lftp 192.168.56.110:/pub> get text.txt        # 下载文件
lftp 192.168.56.110:/pub> exit                    # 退出ftp
[root@web-1 ~]# ls
anaconda-ks.cfg       text.txt      initial-setup-ks.cfg  
[root@web-1 ~]# lftp 192.168.56.110
lftp 192.168.56.110:/> mkdir /pub/gao            #创建目录
lftp 192.168.56.110:/> exit
[root@web-1 ~]# touch liang.txt                     #创建测试目录
[root@web-1 ~]# mkdir /text/                         #创建测试文件
[root@web-1 ~]# touch /text/liang-1              #在测试目录下创建测试文件
[root@web-1 ~]# lftp 192.168.56.110
lftp 192.168.56.110:~> cd /pub/
lftp 192.168.56.110:/pub> ls
drwxrwxrwx    2 14       50              6 Feb 24 11:39 gao
-rw-r--r--    1 14       50              0 Feb 24 11:24 text.txt
lftp 192.168.56.110:/pub> put /root/liang.txt       #上传文件
lftp 192.168.56.110:/pub> ls
drwxrwxrwx    2 14       50              6 Feb 24 11:39 gao
-rw-rw-rw-    1 14       50              0 Feb 24 11:45 liang.txt
-rw-r--r--    1 14       50              0 Feb 24 11:24 text.txt
lftp 192.168.56.110:/pub> mirror -R /text/          #上传目录以及目录中的子文件(mirror 下载目录)
Total: 1 directory, 1 file, 0 symlinks
New: 1 file, 0 symlinks
lftp 192.168.56.110:/pub> ls
drwxrwxrwx    2 14       50              6 Feb 24 11:39 gao
-rw-rw-rw-    1 14       50              0 Feb 24 11:45 liang.txt
drwxrwxrwx    2 14       50             21 Feb 24 11:46 text
-rw-r--r--    1 14       50              0 Feb 24 11:24 text.txt

  • FTP ローカル ユーザー ログインを構成する

  • テストユーザーの作成(サーバー操作)

zhangsanを作成し、パスワードを「root」に設定します

[root@server-1 ~]# useradd zhangsan           # 创建zhangsan用户
[root@server-1 ~]# echo 'root' | passwd --stdin zhangsan    # 设置密码
更改用户 zhangsan 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@server-1 ~]# vim /etc/vsftpd/vsftpd.conf  # 添加注释并修改 
 anonymous_enable=NO                       #将允许匿名登录关闭
新添加
local_root=/home/zhangsan     # 设置本地用户的FTP根目录,一般为用户的家目录(可有可无)
local_max_rate=0              # 限制最大传输速率(字节/秒)0为无限制(可有可无)
[root@server-1 ~]# systemctl restart vsftpd        # 重启服务
  • クライアントの操作
[root@web-1 ~]# lftp 192.168.56.110 -u zhangsan           # 使用zhangsan登录ftp
口令: 
lftp [email protected]:~> ls
lftp [email protected]:~> mkdir gyl                  # 创建gyl目录
mkdir 成功, 建立 `gyl' 
lftp [email protected]:~> ls 
drwxr-xr-x    2 1000     1000            6 Aug 02 20:55 gyl
lftp [email protected]:~> put /root/test.txt      # 上传文件text.txt
lftp [email protected]:~> ls
drwxr-xr-x    2 1001     1001            6 Feb 27 02:06 gyl
-rw-r--r--    1 1001     1001            7 Feb 27 01:55 text.txt
  • サーバー側の図
[root@server-1 ~]# cd /home/zhangsan/
[root@server-1 zhangsan]# ls
gyl  text.txt  
[root@server-1 zhangsan]# ll
总用量 4
drwxr-xr-x. 2 zhangsan zhangsan 6 2月  27 10:06 gyl
-rw-r--r--. 1 zhangsan zhangsan 7 2月  27 09:55 text.txt

おすすめ

転載: blog.csdn.net/weixin_63125636/article/details/129196758