
pem ファイルを使用して FTP に接続すると、正常に接続され、デフォルトでは次のディレクトリが表示されます。/home/ubuntu
/home/ubuntu
今、ディレクトリを に変更しようとしています/var/www/myApplication
。私は Linux 初心者ですが、どのコマンドを使用すればよいか教えていただけますか?
vsftpd
フォルダー内にフォルダー/ファイルがない場合、デフォルトの FTP パスを確認するにはどうすればよいでしょうか/etc
?
答え1
ftp ディレクトリはデフォルトでユーザーのHOME
ディレクトリに設定されるため、目的を達成する最も簡単な方法は、新しいユーザーを作成し、そのユーザーのHOME
ディレクトリを次のように設定することです/var/www/myApplication
。
usermod -d /var/www/myApplication/ exampleuser
あなたがしたい場合は制限このディレクトリへのアクセスを設定する必要があります
chroot_local_user=YES
でvsftpd.conf
、次のコマンドを実行して vsftpd サービスを再起動します。
service vsftpd restart
見るUnix & Linux: Centos / Linux インストールで特定の /dir/ アクセスのみを持つ FTP ユーザーを作成する方法
もっと簡単な方法があるかもしれません。ここ:
vsftpd のデフォルトのログイン ディレクトリを変更するには、次の ftp ユーザーのホーム ディレクトリを変更します
/etc/passwd
。ftp:x:116:116:vsftpd daemon:/var/vsftpd:/bin/false
ftp ユーザー (userID=116) のホーム ディレクトリが に変更されました
/var/vsftpd
。これにより、デフォルト/匿名/不明なユーザーが特定の場所 (/var/vsftpd) にアクセスできるようになります。
答え2
どのように設定したかはよくわかりませんが、 をインストールする必要がありますvsftpd
。
手順:
インストール
vsftpd
:sudo apt-get install vsftpd
バックアップを作成
vsftpd.conf
:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
ファイアウォール ルールを設定します。
sudo ufw allow 20/tcp sudo ufw allow 21/tcp sudo ufw allow 990/tcp sudo ufw allow 40000:50000/tcp sudo ufw status
ファイアウォールがない場合は、以下をインストールしてください:
sudo apt-get install ufw
- 有効にする:
sudo ufw enabe
ユーザーを作成し、ホームディレクトリをこれに設定します
/var/www/ftp/myApplication
ftp
他のユーザー用にさらにフォルダーを追加する必要がある場合に備えて、上記のように追加のフォルダーを作成します。ユーザーを作成:
sudo usermod -d /var/www/ftp/myApplication ftpuser
所有権を設定し、次のコマンドで書き込み権限を削除してください。
sudo chown nobody:nogroup /var/www/ftp sudo chmod a-w /var/www/ftp
フォルダに所有権を
myApplication
ユーザーに割り当てるftpuser
sudo chown ftpuser:ftpuser /var/www/ftp/myApplication
セットアップで
/etc/vsftpd.conf
は次の構成を追加します。# Allow anonymous FTP? (Disabled by default). anonymous_enable=NO # # Uncomment this to allow local users to log in. local_enable=YES write_enable=YES # Prevent the FTP-connected user from accessing any files or commands outside # the directory tree chroot_local_user=YES # Add a user_sub_token in order to insert the username in our local_root directory # path so our configuration will work for this user and any future users that might # be added user_sub_token=$USER local_root=/var/www/ftp # Set up the configuration so that access is given to a user only when they # are explicitly added to a list rather than by default userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO
ユーザーを作成して user_list に追加します。
echo "ftpuser" | sudo tee -a /etc/vsftpd.userlist
daemon
新しい構成をロードするには再起動してください:sudo systemctl restart vsftpd
出典: