我有以下情况:
在家里,我在一台机器的 22 端口上运行 ssh 服务器。我想从互联网访问它,所以我对其进行了端口转发。我将外部端口设为 2222,这样就不会像往常一样遇到试图入侵 22 端口的机器人攻击。
这在实践中效果很好,但是当我有一个脚本或别名尝试连接到这些机器时,我需要继续编辑它尝试连接的端口,具体取决于我是在网络内还是网络外。
解决此问题的最佳方法是什么?据我所知,我的一些选择是:
- 实际上在 2222 上托管 ssh
- 以某种方式实际将本地流量路由到我的路由器的端口 2222,因此它会通过端口转发选项
- 根据我所在位置的不同,使用不同的别名/脚本(呸)。
有没有我不知道的更好的选择?如果没有其他选择,我可能会默认在 2222 上托管 ssh。
答案1
Socat 端口转发机器:
socat SCTP-LISTEN:2222,fork TCP:localhost:22