puttyとvsftpdでFTP over SSH
古いアプリがftpを使っている!?
PASVモードへの変更は難しくなさそうだ。
FTP over SSH、出番だ!
ftp専用ユーザの作成
useradd -s /sbin/nologin -M -d FTPで接続時のルートとしたいディレクトリパス ユーザ名 passwd ユーザ名
vsftpdの設定
今回は面倒だったのでyumでインストール後サービスとして起動
yum install vsftpd chkconfig vsftpd on
cd /etc/vsftpd/ touch chroot_list
/etc/user_list を編集して、ftpを許可するユーザーのみを記載する。
(デフォルトでは許可しないユーザーのリスト(ブラックリスト)であるが、
この後設定を変えて許可するユーザーのリスト(ホワイトリスト)とする。)
vsftpd.confに以下の設定をする
anonymouse_enable=NO local_enable=YES write_enable=YES local_umask=022 xferlog_enable=YES xferlog_std_format=YES connect_from_port_20=YES idle_session_timeout=600 data_connection_timeout=120 ascii_upload_enable=YES ascii_download_enable=YES chroot_list_enable=YES chroot_local_user=YES chroot_list_file=/etc/vsftpd/chroot_list listen=YES pam_service_name=vsftpd tcp_wrappers=YES userlist_enable=YES userlist_deny=NO pasv_enable=YES pasv_address=127.0.0.1 pasv_min_port=28376 pasv_max_port=28377