しばらく前に、ローカルWi-Fiネットワークでvinoサーバーが実行されており、vinoサーバーは、インターネット上の奇妙なIPが接続しようとしていることを示すメッセージをstdoutに書き込みました。知りたい、「私のサーバーは攻撃を受けましたか?」。管理できないローカル、非ローカル、パブリック、プライベートネットワークのサーバーをどのように保護しますか?
次は考えられる考えですか?サーバーホストで実行されている他のプロセスにのみサーバーにアクセスできるようにし、sshd
サーバーホストから転送アクセスを許可する方法はありますか? (このアイデアは次のようです。https://help.ubuntu.com/community/VNC#SSH_port-forwarding。私はそれがどのように行われたのかよく理解していません。説明していただければ幸いです。 )
これにより、他のコンピュータはSSHとポート転送/トンネリングを介してのみサーバーに接続できますか?
このアプローチでは、同じローカルネットワーク上のコンピュータにのみサーバーにアクセスできますか?それとも、ローカルネットワークの外にあるコンピュータからもアクセスできますか?
ローカルネットワーク上の他のすべてのコンピュータがサーバーにアクセスできるようにするよりも安全にサーバーにアクセスする方法はありますか?もしそうなら、SSHは通常他のプロトコルよりも安全であるため、より安全ですか?(例えばvinoが使用するプロトコル?)
ありがとうございます。
答え1
IPテーブルは対応するタスクを実行します。デフォルトではファイアウォールです。
iptablesはほとんどのLinuxシステムにデフォルトでインストールされます。ただし、手動でインストールすることもできます。
apt-get install iptabels
構成することができ、ポートとサービスへのローカルホストアクセスのみを許可する、次のアクションを実装します。(これにより、プロセスが実行されているホストでのみプロセスを使用できます。)
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
ここでは、他のポートとサービスに制限を追加できます。許可したいサービスとポートと、まだ使用されていないこのコンピュータでインターネットに接続する方法を探している場合は、最後に残してくださいiptables -P OUTPUT DROP
。以下は学ぶことができるよいウェブサイトです:
ブート間にファイアウォールを保存するには、またはをインストールしてiptables-persistent
から実行します。iptables-persistent save
netfilter-persistent save
ここで説明されている最初のプロセスを実行すると、コンピュータだけが自分でアクセスできるようになります。 SSHのみの方法は、ルーターポートから外部コンピュータにSSHポートを転送しない限り、ローカルネットワークからコンピュータへのSSH接続のみを許可します。必要なのは diydns または no-ip タイプのサービスであるか、パブリック IP を常に知っているだけです。外部からアクセスするには。
次の手順を実行します。SSHのみ許可次に、より安全なSSHトンネルを介してポートをサービスに転送します。 SSH接続のみを許可します。ただし、パスワードの代わりにキーベースの認証を使用することをお勧めします。