Big*_*337 9 ssh iptables networking
为了澄清,这是问:
我有一台运行 ubuntu 的家用电脑。我希望能够从远程位置 ssh 进入它,例如我将携带笔记本电脑的咖啡馆。
到目前为止,我的尝试都没有成功:我将路由器设置为将家庭计算机的 IP 地址上的端口 22 转发到端口 22。当我 ssh@ 时,连接被拒绝。
我找不到有关如何执行此操作的在线综合指南。我知道它涉及设置一些东西,例如家用机器上的静态 IP 地址,以及路由器端口转发。说了这么多,具体怎么设置静态IP(好像有好几种),用什么IP地址,路由器上转发什么端口,家里ubuntu选择转发到什么端口通过该特定端口登录时的机器、ssh 详细信息等。
L. *_*mes 15
既然您已经验证了本地网络中的服务工作,您就可以将端口从路由器转发到所需的计算机。
您可以通过运行以下命令来获取(验证您计算机的 IP)您计算机的本地 IP 地址。输出将类似于此示例,我将在这些步骤中将其用于示例。
$ hostname -I
192.168.1.5
Run Code Online (Sandbox Code Playgroud)
您希望ssh将路由器配置中的端口(端口 22)转发到您服务器的 IP 地址。
步骤:
ssh端口 22(tcp 协议)转发到您计算机的本地 IP 地址。通过这些步骤,您现在可以从网络外部使用路由器的公共 IP 登录您的计算机。
您可以设置 DNS 以指向路由器的公共 IP 地址,以便您可以方便地使用该名称进行登录,而不必记住 IP 地址。
静态 IP 与动态 IP
大多数家庭互联网服务提供商对静态 IP 地址收取费用。因此,您可能有一个动态 IP,该 IP 会不时更改。如果您有动态 IP 并且无法从远程连接,则必须检查以确保您尝试连接到路由器的正确 IP 地址。
如果没有某种类型的良心配置和意图,静态 IP 不会改变。
如果您有动态 IP,则可以使用ddns 服务(动态域名系统)分配一个名称,该名称会在名称更改时自动更改以指向新的动态 IP。大多数路由器都有一个功能可以将其配置为使用您的 DDNS 服务。
故障排除替代方案
Internet 服务提供商通常会阻止许多常见端口。通常是为了保护用户免受黑客和攻击。有时是为了防止用户运行某些服务并最小化带宽。
无论出于何种目的,您都必须为 ssh 服务器使用备用端口。这可以通过添加或更改 ssh 服务器将侦听的端口来完成。您可以通过编辑/etc/ssh/sshd_config文件来做到这一点。
从远程执行版本升级时,Ubuntu 使用端口 1022作为替代。如果您失去连接,这提供了一种登录恢复会话的方法。我在下面的示例中使用了相同的端口。您可以为当前未用于其他用途的任何端口设置它。
更改服务器上的侦听端口后,请务必将路由器中的端口转发配置更改为 ssh 服务器正在侦听的端口。另外一定要在本地测试新的端口配置。
更改自:
# 打包生成的配置文件 # 有关详细信息,请参阅 sshd_config(5) 联机帮助页 # 我们监听哪些端口、IP 和协议 端口 22 # 使用这些选项来限制 sshd 将绑定到哪些接口/协议
改成:
# 打包生成的配置文件 # 有关详细信息,请参阅 sshd_config(5) 联机帮助页 # 我们监听哪些端口、IP 和协议 端口 22 端口 1022 # 使用这些选项来限制 sshd 将绑定到哪些接口/协议
进行 sshd 服务配置更改后,使用以下命令重新启动 sshd 服务:
$ sudo systemctl restart sshd
Run Code Online (Sandbox Code Playgroud)
ssh 到备用端口的
命令:(此命令可以从任何计算机执行,包括服务器本身,用于测试和登录端口。)
$ ssh -p 1022 username@server.com
Run Code Online (Sandbox Code Playgroud)
一个测试从外部查看端口方式的网站
您可以通过连接到此站点来验证您的设置:
http : //www.canyouseeme.org。
| 归档时间: |
|
| 查看次数: |
14825 次 |
| 最近记录: |