Vsftpのインストールはユーザーを作成し、ユーザーを自分のディレクトリに制限します
1、 vsftpdがインストールされているかどうかを確認します
vsftpd -version
2、 vsftpd(CentOS7)をインストールします
yum install -y vsftpd
3、 新しいFTPディレクトリ
作成されるFTPディレクトリは次のとおりです。
/data/KodServer/data/User/tomas/home
4、 新しいユーザーを作成する
ftpnameは、ftp用に作成したユーザー名であり、/ data / KodServer / data / User / tomas / homeはログイン後の場所です。
useradd -d /data/KodServer/data/User/tomas/home -s /bin/bash ftpname
5、 新しく作成したユーザーのパスワードを設定します
passwd ftpname
[備考:cat etc / passwdを使用して、現在のシステムユーザーを表示します]
6、 ホームディレクトリを設定します(個人的なニーズに応じて、ログイン時に表示されるディレクトリを変更します。手順4が設定されている場合、この手順は無視できます)
usermod -d /data/KodServer/data/User/tomas/home ftpname
7、 ユーザーグループを追加します(この手順は無視できます)
groupadd ftpgroup
8、 FTPサービスをファイアウォールに追加する
firewall-cmd --permanent --zone=public --add-service=ftp
firewall-cmd --reload
解決:
①、ftpのSelinuxステータスを確認します:sestatus -b | grep ftp
②。結果で確認できます:ftp_home_dir off
③。ステータスをオンに変更します:setsebool -P ftp_home_dir on
④、vsftpサービスを再起動します:systemctl restart vsftpd.service
setsebool -P ftpd_full_access on
systemctl restart firewalld.service
9、 構成は、他のパスではなく、独自のディレクトリ(/ data / KodServer / data / User / tomas / home)にのみアクセスできます。
/etc/vsftpd.confを変更します
cd /etc/vsftpd/
vi vsftpd.conf
chroot_local_user=YES
ascii_upload_enable=YES
ascii_download_enable=YES
allow_writeable_chroot=YES
vsftpdを保存して再起動します
起動を設定します。
systemctl enable vsftpd.service
vsftpdサービスを開始します
systemctl start vsftpd.service
ftpユーザーがポート22を介してftpサーバーにログインすることを禁止します。
ftpユーザーを自分のディレクトリに制限する必要があるため、ポート21で問題はありませんが、ftpユーザーがsftpでログインしても、上位レベルのディレクトリにアクセスできるため、ftpユーザーのsshログインは禁止され、ポート22での通信は切断されます。
まず、次のコマンドを実行して、nologinのシェルを見つけます。
vi /etc/shells
ログインが禁止されているシェルファイルが/ usr / sbin / nologinであることがわかり、次のコマンドを実行します。
usermod -s /usr/sbin/nologin tomas
tomasのsshログインを復元する場合は、次のコマンドを実行します。
usermod -s /bin/bash tomas
Recommended Posts