Galaxy Kirin サーバー オペレーティング システム V10SP2 が FTP サーバーを構築

システム環境

OS バージョン: Galaxy Kirin サーバー オペレーティング システム V10SP2 (x86_64)
FTP サーバー: vsftpd-3.0.3-31

ターゲットシナリオ

① FTP ルート ディレクトリを /data/vsftpd/ に設定し、匿名ユーザーによる FTP サーバーへのアクセスを禁止します;
② FTP アクセス アカウント:
管理者ユーザー: 管理者パスワード 111、FTP ルート ディレクトリ全体を所有します /data/vsftpd/ およびサブディレクトリのアップロード、フルダウンロード、変更、削除の権限;
一般ユーザー 1: test1、パスワード 222、作業ディレクトリ /data/vsftpd/test1/ に対するアップロードおよびダウンロード権限のみを持ちます (既存のファイルを変更および削除できません); 一般ユーザー 2:
test2パスワード 333 は、FTP ルート ディレクトリ /data/vsftpd/ およびサブディレクトリに対するダウンロード権限のみを持ちます (アップロード、変更、削除はできません)。

組み立て手順

  1. vsftpd サービスをインストールします。
[root@localhost ~]# yum install -y vsftpd

ここに画像の説明を挿入します
2. vsftpd サービスを起動時に自動的に開始し、すぐに開始するように設定します。

[root@localhost ~]# systemctl enable --now vsftpd

ここに画像の説明を挿入します
3. システム ファイアウォールは vsftpd サービスを許可します。

[root@localhost ~]# firewall-cmd --zone=public --add-service=ftp --permanent
[root@localhost ~]# firewall-cmd --reload

ここに画像の説明を挿入します
4. FTP サーバー構成ファイル /etc/vsftpd/vsftpd.conf を変更し、構成ファイルの末尾に次の内容を追加します。

#禁止用户访问除主目录以外的目录
chroot_local_user=YES
#FTP根目录
local_root=/data/vsftpd
#设置支持ASCII模式上传
ascii_upload_enable=YES
#设置支持ASCII模式下载
ascii_download_enable=YES
#启用虚拟用户登录FTP
guest_enable=YES
#设置虚拟用户使用的系统用户名
guest_username=vsftpd
#设置虚拟用户的配置文件目录
user_config_dir=/etc/vsftpd/vsftpd_user_conf
#设置虚拟用户与本地用户拥有相同的权限
virtual_use_local_privs=YES
#设置仅能访问当前登录用户的根目录
allow_writeable_chroot=YES
  1. システム アカウント vsftpd を作成し、ホーム ディレクトリを /data/vsftpd に設定し、このアカウントを使用してオペレーティング システムにログインすることを禁止します。
[root@localhost ~]# useradd vsftpd -d /data/vsftpd -s /sbin/nologin
  1. 3 人の新しい仮想ユーザー (admin、test1、test2) を作成し、データベース ファイルを生成します。
    注: /etc/vsftpd/ftp_user ファイルの内容の「奇数行」は仮想ユーザー名で、「偶数行」は仮想ユーザー名です。は仮想ユーザーに対応するパスワードです。
[root@localhost ~]# cat /etc/vsftpd/ftp_user
admin
111
test1
222
test2
333
[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/ftp_user /etc/vsftpd/vsftpd_login.db

ここに画像の説明を挿入します
7. vsftpd サービスの PAM 認証モジュール構成を変更します。
変更前:
ここに画像の説明を挿入します
変更後:
ここに画像の説明を挿入します
8. 3 人の仮想ユーザーの FTP アクセス許可を構成します。
まず、仮想ユーザーの構成ファイル ディレクトリを作成します。

[root@localhost ~]# mkdir -p /etc/vsftpd/vsftpd_user_conf

(1) 管理者アカウント: admin
ここに画像の説明を挿入します
(2) 一般ユーザー 1: test1
ここに画像の説明を挿入します
(3) 一般ユーザー 2: test2
ここに画像の説明を挿入します
9. FTP ルート ディレクトリと FTP ユーザー作業ディレクトリを作成し、ディレクトリのアクセス許可を変更します。

[root@localhost ~]# mkdir -p /data/vsftpd/test1
[root@localhost ~]# chown -R vsftpd:vsftpd /data/vsftpd
  1. vsftpd サービスを再起動します。
[root@localhost ~]# systemctl restart vsftpd

ここに画像の説明を挿入します

アクセステスト

クライアント システムが Galaxy Kirin デスクトップ オペレーティング システムの場合、システムの「ファイル マネージャー」または「FTP クライアント」ツール ソフトウェアを使用して FTP サーバーにアクセスできます。クライアント システムが Windows システムの場合は、オープン ソース ツールを使用できます。」 MobaXterm」または「Windows Explorer」を使用して FTP サーバーにアクセスします。
① 管理者ユーザーadminがFTPサーバーにアクセスし、ルートディレクトリに空のフォルダー「test」を作成し、「test1」ディレクトリに空のファイル「admin.txt」「test.txt」を作成し、admin.txtの削除をテストします。ファイル。
ここに画像の説明を挿入します
ここに画像の説明を挿入します
テスト結果: FTP ルート ディレクトリとすべてのサブディレクトリに対して、アップロード、ダウンロード、変更、削除などのすべての操作を実行できます。

② 一般ユーザ test1 が FTP サーバにアクセスし、デフォルトの作業ディレクトリが test1 であることを確認し、上位ディレクトリに移動できないことを確認し、空のファイル test1.txt を作成し、ファイル名、ファイル内容の変更、削除を試みます。ファイル。
ここに画像の説明を挿入します
テスト結果: デフォルトの作業ディレクトリは test1 で、アップロードおよびダウンロードできるのはファイル/フォルダーのみであり、ファイルの変更や削除はできません。

③ 一般ユーザー test2 がサーバーにアクセスし、ファイル/フォルダーのアップロード、ダウンロード、作成、削除、変更を試みます;
ここに画像の説明を挿入します
テスト結果: test2 アカウントは、FTP ルート ディレクトリ /data/vsftpd/ とそのすべてのサブディレクトリのダウンロード権限のみをダウンロードできます。その他には、アップロード、作成、削除、変更のすべての操作で、「550 権限が拒否されました」(権限が不十分です) というメッセージが表示されます。

おすすめ

転載: blog.csdn.net/ShenSeKyun/article/details/128362252