我正在尝试使用SSH通过路由器将运行11.10的新笔记本电脑链接到运行8.04的旧笔记本电脑。
在ubuntuforums上询问并回答了这个问题:
http://ubuntuforums.org/showthread.php?t=1648965
我认为在这里有一个更明确的答案会有所帮助。
注意:我需要先在尝试连接的便携式计算机上安装openssh-server并使用firestarter在防火墙中打开SSH端口。
我正在尝试使用SSH通过路由器将运行11.10的新笔记本电脑链接到运行8.04的旧笔记本电脑。
在ubuntuforums上询问并回答了这个问题:
http://ubuntuforums.org/showthread.php?t=1648965
我认为在这里有一个更明确的答案会有所帮助。
注意:我需要先在尝试连接的便携式计算机上安装openssh-server并使用firestarter在防火墙中打开SSH端口。
Answers:
您可以通过多种方式限制对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上,请相应地进行调整;)
一道防线是使用路由器。确保禁用UPnP,并且不允许端口转发。
您可以在中设置几个选项/etc/ssh/sshd_config
。一个是监听地址。如果您在子网上设置了监听地址。私有IP地址无法通过Internet路由。
http://compnetworking.about.com/od/workingwithipaddresses/f/privateipaddr.htm
ListenAddress 192.168.0.10
您也可以使用AllowUsers
AllowUsers you@192.168.0.0/16
有点相关,您也可以更改端口
Port 1234
参见http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html
如论坛文章所述,您可以使用TCP Wrapper。TCP包装器使用2个文件,/etc/hosts.allow
并且/etc/hosts.deny
编辑/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
友联
sudo ufw allow from 192.168.0.0/16 to any port 22
gufw具有图形界面
ListenAddress
似乎是最简单,最优雅的解决方案
ssh(安全外壳)用于安全地访问和传输数据(使用RSA_KEYS对)。您可以通过两种方式使用ssh访问数据:1.命令行2.使用文件浏览器
命令行:为此,您不需要安装任何东西。第一项任务是登录其他计算机。
ssh other_computer_username@other_computer_ip
该命令将要求输入另一台计算机的密码作为密码(用于特定的用户名)。您刚刚登录到其他计算机的外壳。认为此终端就像您的计算机外壳终端。您可以使用Shell对其他计算机执行所有操作,而您可以在计算机中执行其他操作
文件浏览器:您需要安装openssh-server
sudo apt-get install openssh-server
要登录,请转到文件-> connectToServer