[FreeBSD-users-jp 95495] Re: ipfwで特定IP以外の接続を転送したい
Hiroo Ono (小野寛生)
hiroo.ono+freebsd at gmail.com
Mon Mar 30 01:05:40 UTC 2015
小野寛生です。
2015/03/30 午前0:44 <zen-freebsd-users at suzuki.que.ne.jp>:
> 鈴木@葛飾区です。
>
> > ipfwを利用して、特定IP以外からのssh(22/tcp)アクセスは
> > 違うポート(2222/tcp)に転送したいと考えています。
> >
> > 特定IPから22/tcpで接続した場合は普通にsshに接続されるが、
> > それ以外からの22/tcp接続は、kippo(2222/tcp)へ接続させたいと考えています。
> >
> > そこで、ipfwの設定ファイルに下記の記載をしてみました。
> >
> > add 1001 fwd 127.0.0.1,2222 log tcp from not <特定IP> to me 22
> >
> > 接続テストをしたところ、2222に接続せず、そのまま22/tcpのsshに
> > 接続されました。
>
> ipfwの fwd ではリモートに転送する場合ポート番号の変更は行われません(無
> 視されます)。
> リモートポートの変更を行うためにはパケットの中身を書き換えないとダメな
> のでipfw単独では対応していないのだと思います。
> 試していませんので分かりませんが、natdを使ってのポート変換を行うか、
現在の ipfw は nat 機能もありますので、それを使えばよさそうです。
例が ipfw の manpage の EXAMPLES の終わりの方にありますが、ちょっと分かりにくいです。
libalias(3)の機能を使っているようなので、
add 1001 nat 100 log tcp from not <特定IP> to me 22
nat config 100 redirect_port <特定IP>:22 127.0.0.1:2222
でいけないでしょうか。
すみませんが、上記は実際に試してはいません。
まるごと NAT するルールなら家で運用しています。
More information about the freebsd-users-jp
mailing list