我有一个树莓派,我有一个程序,只有当我需要从应用程序运行。 所以,基本上需要从公共互联网连接到我的树莓派。 不知道这一点,我认为我需要从公共互联网上做我的树莓派ssh,即直接通过一些IP地址连接。
我怎样才能做到这一点? 我试图通过简单的SSH连接到我的Linux系统,而不工作。 任何指南和指针去?
谢谢
首先,你应该确保ssh守护进程在你的RP上正确安装。 你可以用它来安装
sudo apt-get update && apt-get install ssh
接下来,您应该尝试在本地连接到您的SSH服务器,也就是说,直接在您的RP上打开一个终端并尝试连接到本地运行的SSH服务器:
ssh root@localhost
甚至更好,使用RP的当前IP地址而不是本地主机。 如果可以连接,一切都在这一边工作。 现在您可以尝试从本地网络中的另一个盒子连接到您的RP。 它也应该工作。 如果没有的话,你最有可能在这个盒子上有一个防火墙阻止外出的SSH连接,或者你的RP本身阻塞了传入的连接。 通常,它不应该阻止它,除非你用iptables配置类似的东西,例如。
如果你可以连接你的局域网,你可以进一步。 您需要配置路由器的防火墙以将SSH所需的端口转发到您的RP。 另外,许多路由器可以把主机放到所谓的DMZ中。 这对于测试非常有用,因为它可以让您无限制地访问互联网。
接下来,您需要在WAN端找到您的公共IP地址。 有很多像这样的网站显示您当前的外部IP地址。 如果一切正确配置,你现在应该能够连接到root@[your external ip]
。 它应该从您的本地网络以及从互联网工作。 另外,您应该考虑在RP或路由器上使用动态DNS服务客户端,以便连接到静态主机名而不是更改动态IP地址。
也许您的pi的IP地址因DHCP而改变。 如果这是你的问题,你可以阅读: http : //developer-blog.net/en/programming/get-your-external-ip-address/#more-1267
另一种可能是你的路由器阻塞了需要的端口。 对于SSH端口22应该是开放的。