SSHにプロキシパスまたはiptablesを設定する方法は?

SSHにプロキシパスまたはiptablesを設定する方法は?

自宅でPy用のnginxサーバーを設定しようとしています。問題は、動的更新に時間がかかることです。したがって、私のgitoliteサーバーにアクセスできません。

そのため、dyndnsを使用する代わりにec2インスタンスを設定しました。私のドメインに入ってくるすべてのトラフィックはこのec2 IPを使用します。そこで私はnginxを使って私のPyへのトラフィックを調整します。 httpとhttpsサーバーの両方でうまく機能します。 SSH用のストリーミングサーバーを設定することもできます。これで問題が発生します。私が知っている限り、SSHプロトコルはDNSを提供しません。まあ、私はシステム管理者ではないので、用語を間違って使用している可能性があります。

私のパイにFail2banをインストールしました。すべてのSSHトラフィックは同じIPを使用してnginxサーバーを通過します。それからFail2banによってブロックされたら。まったくアクセスできません。

nginxを使いたい人のために。お勧めしませんが、動作します。

stream {
    upstream ssh {
        server xx.xxx.xxx.xxx:22;
    }

    server {
        listen        22;
        proxy_pass    ssh;
    }            

    upstream ssh {
        server xx.xxx.xxx.xxx:2288;
    }

    server {
        listen        2288;
        proxy_pass    ssh;
    }

}

私はこれがnginx ^ 1.2でのみ動作すると思います。

可能なすべての設定を試しました。

#   proxy_bind $remote_addr:$remote_port transparent;
#   proxy_bind $remote_addr transparent;
#   proxy_set_header Host $host;
#   proxy_protocol on;

それらのどれもIPを通過できませんでした。おそらく、構成にどのような問題があるのか​​を知っている人はいますか?

また、iptablesの使用に関するいくつかの提案も読みました。その後、次のすべてを試しました。

#iptables -t nat -I PREROUTING -p tcp -i eth4 --dport 22 -j DNAT --to xx.xxx.xxx.xxx:22
#iptables -A FORWARD -i eth4 -o eth1 -p tcp --dport 22 -j ACCEPT
#iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 22 -j DNAT --to-destination xx.xxx.xxx.xxx
#iptables -A FORWARD -p tcp -d xx.xxx.xxx.xxx --dport 22 -m state --state NEW,ESTABLISHED,RELAT$
#iptables -t nat -A PREROUTING -p tcp --dport 22 -j DNAT --to-destination xx.xxx.xxx.xxx:2244

#iptables -A FORWARD -m state -p tcp -d xx.xxx.xxx.xxx --dport 22 --state NEW,ESTABLISHED,RELAT$
#iptables -t nat -A PREROUTING -p tcp --dport 22 -j DNAT --to-destination xx.xxx.xxx.xxx:2244

なぜ動作しないのか分かりません。 -i eth4 -o eth1 これがネットワークだと思います。そうではありませんか? ppp0も含まれていますか?私のパイにはeth0が1つしかありません。

誰かが私に教えてもらえますか?ここで問題は何ですか?同じポートを使って出入りできますか?それとも別のポートでなければなりませんか? iptablesの設定の説明が役に立ちます。

ありがとうございます!

ベストアンサー1

おすすめ記事