SSH経由で私のサーバーに接続できませんでした。

SSH経由で私のサーバーに接続できませんでした。

私の目標:外部クライアントから私のワークステーションにSSHを介して接続できるようにしたいです。

私のワークステーション(以下サーバーともいいます)はLANにあります。このLANのIPアドレスは、インターネットのIPアドレスと大きく異なります。公開鍵を使用してSSHサーバーを設定しました。

クライアントでsshを試みると、これが起こります。

  1. クライアントが同じLANにある場合:

    私はifconfigから返されたIPを使って私のサーバーをpingしてみました。クライアントは私のサーバーをpingできません。

  2. クライアントが外部にあり、LANにない場合:

    クライアントはサーバーにpingを送信できますが、接続しようとすると次のエラーが発生します。Connection timed out


出力iptables -L -v

Chain INPUT (policy ACCEPT 346K packets, 233M bytes)
 pkts bytes target     prot opt in     out     source               destination         
 346K  233M sshguard   all  --  any    any     anywhere             anywhere            
 346K  233M sshguard   all  --  any    any     anywhere             anywhere            

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 193K packets, 26M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain sshguard (2 references)
 pkts bytes target     prot opt in     out     source               destination   

ベストアンサー1

iptables 構成が表示されます。sshguard使用。確認してみます。sshguardの設定SSH接続を許可します。

トラブルシューティングに役立つようにsshguard()を削除し、sudo apt-get remove sshguardsshが正しく機能していることを確認できます。

sshguardをインストールしたら、iptablesルールと/etc/hosts.denyルールを確認してください。

iptablesの場合は、以下のルールを試してください。sshguard netfilter-iptablesの例:

iptables -N sshguard
# block whatever SSHGuard says be bad ...
iptables -A INPUT -j sshguard
# enable ssh, dns, http, https
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# and block everything else (default deny)
iptables -P INPUT DROP

おすすめ記事