最近のトラックバック

無料ブログはココログ

« [ Postfix ] alias設定をする | トップページ | [ iptables ] ポートを開けたい »

2005年4月 9日 (土)

[ Proftpd ] ローカルIPでPASV接続が出来ない

PASVモードでクライアントからサーバにftpdata接続を張るときに,
サーバがローカルIPを返してしまうために起こる不具合である.
具体的には,

>OPEN (host)
220 ProFTPD Server (ProFTPD on host) [192.168.0.x]
>USER test
331 Password required for test.
>PASS [xxxxxx]
230 User test logged in.
>PWD
257 "/" is current directory.
>TYPE A
200 Type set to A.
>PASV
227 Entering Passive Mode (192,168,0,x,yyy,zzz).
...

つまり,PASVが来た時点でサーバ側からグローバルIPを返せばいい.

この設定は,rpmでセットアップを行っているなら,/etc/proftpd.confに,

MasqueradeAddress [(ルータに振られた)グローバルIP]
PassivePorts [最小ポート番号] [最大ポート番号]

を付け加え,ルータのNAT設定で指定したポートを開けてやればよい.
もし,動的IPを使っている場合は,DynamicDNSでドメインを取った上で,

MasqueradeAddress [ドメイン]
PassivePorts [最小ポート番号] [最大ポート番号]

とする.
またこの時,デーモンをstandaloneで走らせている場合は,inetdで走らせる必要がある.
これは,standaloneで走らせた場合,
IPが変わったとしてもデーモンを起動した時点でのIPしか返さないためである.

« [ Postfix ] alias設定をする | トップページ | [ iptables ] ポートを開けたい »

技術情報」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: [ Proftpd ] ローカルIPでPASV接続が出来ない:

« [ Postfix ] alias設定をする | トップページ | [ iptables ] ポートを開けたい »