Chrooted VSFTPDでサブディレクトリを終了し、デフォルトディレクトリに入る方法は?

Chrooted VSFTPDでサブディレクトリを終了し、デフォルトディレクトリに入る方法は?

RHEL7でホストされているvsftpサーバーがあります。 vsftpサーバーに複数のユーザーがログインしています。このVSFTPはルートが変更されました。私の要件は、一部のユーザーはホームディレクトリにログインし、残りのユーザーはホームディレクトリ内の特定のサブフォルダにログインする必要があります。サブフォルダーに入るユーザーは、それぞれのホームディレクトリーに入ることができなければなりません。

Johnのパスワード入力例:

ゾーン:x:1234:123:テストアカウント:/ftp/home/john/./test:/etc/ftponly

上記の設定では、JohnがVSFTPサーバーにログインすると、Johnはホームディレクトリの「test」フォルダに配置されます。ただし、「cd ..」を実行すると、「/ftp/home/john/」フォルダに入ることはできません。

私のリクエスト: john は /ftp/home/john/ フォルダに入れることができなければなりません。しかし、/ftp/home/ではありません。

vsftpd.conf私のファイルの内容は次のとおりです。

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
local_enable=YES
allow_writeable_chroot=YES
dual_log_enable=YES

ベストアンサー1

/ftp/home/john/./test有効な項目ですが、passwdここで.想定した点は意味がありません。

-bash-4.1$ echo $HOME
/home/testuser/./test
-bash-4.1$ pwd
/home/testuser/./test
-bash-4.1$ cd ..
-bash-4.1$ pwd
/home/testuser
-bash-4.1$ cd test
-bash-4.1$ pwd
/home/testuser/test

したがって、ユーザーのホームディレクトリはあなたが考えているものとはjohn異なります。ユーザーのアクセスを許可するには、ホームフォルダを(またはそれ以上)に設定する必要があります。 chroot されたユーザー (ほとんどの場合) は自宅よりも高いところに到達できません。/ftp/home/john/test/ftp/home/johnjohn/ftp/home/john/ftp/home/johnvsftpd

おすすめ記事