proftpd.conf にタイムアウトの設定を記述できる。
単位はすべて秒。
TimeoutLogin: ログイン時にタイムアウトになるまでの時間。
TimeoutNoTransfer: ログイン後、無通信状態でタイムアウトになるまでの時間。
TimeoutIdel: サーバーとクライアント間で何も通信が無い状態でタイムアウトになるまでの時間。
TimeoutStalled: 転送開始後にデータが流れていない状態でタイムアウトになるまでの時間。
TimeoutLogin 300
TimeoutNoTransfer 3600
TimeoutStalled 3600
TimeoutIdle 3600
単位はすべて秒。
TimeoutLogin: ログイン時にタイムアウトになるまでの時間。
TimeoutNoTransfer: ログイン後、無通信状態でタイムアウトになるまでの時間。
TimeoutIdel: サーバーとクライアント間で何も通信が無い状態でタイムアウトになるまでの時間。
TimeoutStalled: 転送開始後にデータが流れていない状態でタイムアウトになるまでの時間。
/etc/proftpd/proftpd.conf を編集して設定する。
<Anonymous /home/samba/public> で、anonymous ユーザに公開するディレクトリを設定。
<Anonymous /home/samba/public> で、anonymous ユーザに公開するディレクトリを設定。
- anonymous ユーザをどのローカルユーザにマッピングするかを設定。
User ftp
Group ftp
- /etc/passwd のユーザ情報を確認し、ローカルユーザが使うログインシェルを設定しておく。
ftp アクセスしか許可しない場合は、そもそもシェルは必要ない。そういう場合、/sbin/nologin や /bin/false を使うそうだ。ftp:x:14:50:FTP User:/var/ftpd:/bin/falseログインシェルを設定しておかない場合、ftp の user コマンドは受け付けられるのだが、e-mail アドレスをパスワードとして入力するところで認証に失敗してしまう。最初は正引きできないドメインだとエラーになってログインできないのかと思ったが、どうやらログインシェルを設定していないためにエラーになっていたようだ。