FTPサーバのPASV時のポート設定について

古いPowerMacG3(Tiger)を有効利用としてFTPサーバの運用しています。

パッシブFTP(PASV)の使用ときのファイアーウォール設定ですが、

通常はポート番号49152-65535を開けるようになっている用ですが、

こちらのシステムの都合で使用するポートを変更する必要があります。

ファイアーウォールの変更は良いのですが、肝心のサーバ側から

クライアントに指示するポート番号の範囲を変更する必要があります。

どこをいじったら良いのでしょう?

PowerMacG3 B&W-OTHER, Mac OS X (10.4.11)

投稿日 2010/03/22 22:47

返信
返信: 4

2010/03/23 01:10 un-an への返信

あまり詳しく無いので,以下は私の拙い理解を書きます。


サーバ側をPASVにした場合,クライアント側はアクティブモードにする必要があるようです。


サーバ側のファイアーウォールは待機中は21番(制御ポート)だけ開かれ,クライアント側からの認証の後にクライアント側から指定されたポートのみ一時的に開くようです。


クライアント側がデータポートを指定してそのポートのファイアーウォールを開くのがアクティブモードのようです。


間にMac以外のファイアーウォールがある場合にどうなるかは分かりません。


ただし,接続を切った後もしばらくはそのポートが開かれたままになるようなので少し気持ち悪いです。


このメッセージは次により編集されています: kanekaka すいません,投稿した後に気付いたのですが全然的外れな回答をしてしまったようです。データポートに使用する範囲を変更する方法の質問ですよね。これについては分かりません。失礼しました。

2010/03/23 02:35 kanekaka への返信

man ftpd


>FILES

> /etc/ftpchroot List of normal users whose root directory should be changed via chroot(2).

> /etc/ftpd.conf Configure file conversions and other settings.

> /etc/ftpusers List of unwelcome/restricted users.

> /etc/ftpwelcome Welcome notice before login.

> /etc/motd Welcome notice after login.

> /etc/nologin If it exists, displayed and access is refused.

> /var/run/ftpd.pids-CLASS

> State file of logged-in processes for the tnftpd class `CLASS'.

> /var/run/utmp List of logged-in users on the system.

> /var/log/wtmp Login history database.



man ftpd.conf



> portrange class [min max]

> Set the range of port number which will be used for the passive data port. max must be greater than min, and both numbers must be be between IPPORT_RESERVED (1024) and 65535. If class is ``none'' or no arguments are specified, disable this.

>

> Each authenticated user is a member of a class, which is determined by ftpusers(5). class is used to determine which ftpd.conf entries apply to the user. The following special classes exist when parsing entries in ftpd.conf:

> all Matches any class.

> none Matches no class.



/etc/ftpd.conf

を作成してportrangeで指定すればよいようです。


このメッセージは次により編集されています: kanekaka 試しに指定してみたら,指定通りの範囲で接続されました。

2010/03/23 02:53 kanekaka への返信

/etc/ftpd.conf

を作成してportrangeで指定すればよいようです。



重複しちゃいますが、日本語の解説ページがありましたので参考までにリンクかけておきます。


コマンド解説ページ(日本語訳)

http://www.jp.freebsd.org/cgi/mroff.cgi?sect=5&cmd=&lc=1&subdir=man&dir=jpman-6.0.0%2Fman&subdir=man&man=ftpd.conf



ftpd.confという名前のプレーンテキストファイル(改行コードLF)を/etc/内に作成して、中身に以下の1行を入力します(パーミッションは644だったかな)。で、ftpデーモンを再起動すればデータポートの範囲が指定されます。


portrange all [min] [max]

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

FTPサーバのPASV時のポート設定について

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。