質問1.匿名ユーザーはftpサービスを介してファイルをアップロード、ダウンロード、および削除でき、ディレクトリファイルをアップロードする権限は704です。(Umask = 073 )
実験手順:
- yumソースステータスを表示し、vsftpdパッケージをインストールします
[root@localhost xiaoming]# yum repolist
2.ファイアウォールとselinuxをオフにします
[root@localhost xiaoming]# systemctl stop firewalld //关闭防火墙
[root@localhost xiaoming]# setenforce 0 //关闭selinux
[root@localhost xiaoming]# systemctl status firewalld //查看防火墙状态
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@localhost xiaoming]# getenforce //查看selinux状态
Permissive
3.構成ファイル/etc/vsftpd/vsftpd.confの内容を編集します
①匿名ユーザーがvsftpdホストにログインしてファイルをダウンロードできるようにします:anonymous_enable = YES
②匿名ユーザーにファイルのアップロードを許可する:anon_upload_enable = YES
③匿名ユーザーにディレクトリを作成する権限を与える:anon_mkdir_write_enable = YES
④ディレクトリファイルのアップロード権限を704に設定します。anon_umask= 073
⑤匿名ユーザーにファイルの削除を許可する:anon_other_write_enable = YES
4.設定により、/ var / ftp / pub /ディレクトリにファイルをアップロードできます
[root@localhost ~]# chmod o+w /var/ftp/pub/
5.ftpサービスを再起動します
[root@localhost ~]# systemctl restart vsftpd
6.テスト
①匿名ユーザーログイン:ファイルエクスプローラーまたはブラウザーでftp://192.168.74.130と入力してサーバーに入り、匿名ユーザーがログインできます。
②ダウンロード:元々ファイルhahaを作成したpubディレクトリに入り、hahaファイルをローカルデスクトップにドラッグすると、ダウンロードが成功します!
③アップロード :ローカルデスクトップにceshiフォルダを作成します。ceshiファイルをpubディレクトリにドラッグすると、アップロードが成功します。
④ディレクトリファイルのアップロード許可を確認してください: 704(許可マスク:073)
質問2.ローカルユーザーを介してftpサーバーにアクセスする場合、redhatユーザーを除くすべてのユーザーはホームディレクトリに制限されます。(allow_writeable_chroot = YESを追加することに注意してください)
実験手順:
1.ファイアウォールとselinuxをオフにします
[root@localhost xiaoming]# systemctl stop firewalld //关闭防火墙
[root@localhost xiaoming]# setenforce 0 //关闭selinux
[root@localhost xiaoming]# systemctl status firewalld //查看防火墙状态
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@localhost xiaoming]# getenforce //查看selinux状态
Permissive
2.構成ファイル/var/vsftpd/vsftpd.confの内容を変更します
①匿名ユーザーのログインを拒否する:anonymous_enable = NO
② ローカルユーザーにログインを許可する:local_enable = YES
③chroot オプションを有効にする:allow_writeable_chroot = YES
④chroot3つの制御ファイル:
chroot_local_user = YES
chroot_list_enable = YES
chroot_list_file = / etc / vsftpd / chroot_list
3.redhatユーザーを/ etc / vsftpd / chroot_listファイルに追加します
[root@localhost xiaoming]# vim /etc/vsftpd/chroot_list
redhat
4.ユーザーxiaomingを追加し、パスワードを設定します
[root@localhost home]# useradd xiaoming //创建用户
[root@localhost home]# passwd xiaoming //设置密码
更改用户 xiaoming 的密码 。
新的 密码:
无效的密码: 密码包含用户名在某些地方
重新输入新的 密码:
抱歉,密码不匹配。
新的 密码:
无效的密码: 密码包含用户名在某些地方
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
5.暁明ユーザのホームディレクトリにファイルheiheiを追加します。
[root@localhost home]# cd xiaoming
[root@localhost xiaoming]# echo this is xiaoming > heihei
[root@localhost xiaoming]# ll
总用量 4
-rw-r--r--. 1 root root 17 10月 21 14:27 heihei
6.ftpサービスを再起動します
[root@localhost xiaoming]# systemctl restart vsftpd
7.テスト
①Redhatユーザーはftpサービスにログインします(ホームディレクトリに限定されません)
②その他のユーザー:xiaomingユーザーはftpサーバーにログインします(ホームディレクトリに限定)