web-dev-qa-db-ja.com

ローカルネットワークに制限されるようにSSHを設定するにはどうすればよいですか?

11.10を実行している新しいラップトップを、SSHを使用してルーターを介して8.04を実行している古いラップトップにリンクしようとしています。

この質問は、ここのubuntuforumsで質問され回答されます:

http://ubuntuforums.org/showthread.php?t=1648965

ここでより明確な答えを得ることが役立つと思いました。

注:最初に、firestarterを使用してファイアウォールのSSHポートを接続して開こうとしているラップトップにopenssh-serverをインストールする必要がありました。

31
klenwell

Sshサーバーへのアクセスをさまざまな方法で制限できます。

IMOで最も重要なのは、sshキーを使用してパスワード認証を無効にすることです。

詳細については、次のWikiページを参照してください

https://help.ubuntu.com/community/SSH/OpenSSH/Keys

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Disable_Password_Authentication

いくつかの方法で特定のサブネットへのアクセスを制限できます。私のsshサーバーはIPアドレスが192.168.0.10のサブネット192.168.0.0/16にあると想定しますが、それに応じて調整してください;)

ルーター

防衛線の1つは、ルーターを使用することです。必ずUPnPを無効にし、ポート転送を許可しないでください。

SSH設定

/etc/ssh/sshd_configでいくつかのオプションを設定できます。 1つはリスンアドレスです。サブネットにリスンアドレスを設定した場合。プライベートIPアドレスはインターネット上でルーティングできません。

http://compnetworking.about.com/od/workingwithipaddresses/f/privateipaddr.htm

ListenAddress 192.168.0.10

AllowUsersを使用することもできます

AllowUsers [email protected]/16

多少関連がありますが、ポートを変更することもできます

Port 1234

http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html を参照してください

TCPラッパー

フォーラムの投稿で概説されているように、TCP Wrapperを使用できます。 TCPラッパーは、/etc/hosts.allow/etc/hosts.denyの2つのファイルを使用します

/etc/hosts.allowを編集してサブネットを追加します

sshd : 192.168.0.

/etc/hosts.denyを編集し、すべてを拒否します

ALL : ALL

http://ubuntu-tutorials.com/2007/09/02/network-security-with-tcpwrappers-hostsallow-and-hostsdeny/ も参照してください

ファイアウォール

最後に、サーバーをファイアウォールで保護できます。 iptables、ufw、またはgufwを使用できます。

iptables

Sudo iptables -I INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT
Sudo iptables -A INPUT -p tcp --dport 22 -j REJECT

IptablesでDROPを使用しないでください。 http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject を参照してください

uFW

Sudo ufw allow from 192.168.0.0/16 to any port 22

gufwにはグラフィカルインターフェイスがあります

GUFW

https://help.ubuntu.com/community/UFW を参照してください

https://help.ubuntu.com/community/IptablesHowTo

43
Panther

ssh(セキュアシェル)は、データに安全にアクセスして転送するために使用されます(RSA_KEYSペアを使用)。 2つの方法でsshを使用してデータにアクセスできます1.コマンドライン2.ファイルブラウザーを使用して

コマンドライン:このため、何もインストールする必要はありません。最初のタスクは、他のコンピューターにログインすることです。

ssh other_computer_username@other_computer_ip

このコマンドは、他のコンピューターのパスワードであるパスワードを要求します(特定のユーザー名の場合)。他のコンピューターのシェルにログインしました。この端末はコンピュータのシェル端末のようなものだと思います。 Shellを使用して、コンピューターで実行できる他のコンピューターにすべてを実行できます。

ファイルブラウザ:openssh-serverをインストールする必要があります

Sudo apt-get install openssh-server

ログインするには、file-> connectToServerに移動します

enter image description here

1
shantanu