Gar*_*ary 259 ssh port-forwarding
我在同一个路由器后面有两台电脑。我们称它们为 A 和 B。
A 可以通过以下方式 SSH 到 B: ssh usr@<internal ip of computer>
B 可以通过 SSH 连接到 A,但必须使用外部 IP。我已将路由器的端口 22 转发到计算机 A 的 IP,因此这一切对我来说都有意义。
但是,我还想通过使用外部 IP 将端口 26 转发到计算机 B 和来自网络外部的 SSH,但指定端口 22 或 26,以有效地选择要使用的计算机。
我曾尝试通过iptablesA 的OUTPUT和 B 的 INPUT允许端口 26 ,但这似乎不起作用。我也将端口 26 转发到 B 的内部 IP(通过路由器),就像我对 A 的 22 所做的那样。
这是我尝试使用外部 IP 和端口 26 从 A 到 B 的 SSH 时得到的结果:
ssh: connect to host xx.xx.xxx.xx port 26: Connection refused.
Run Code Online (Sandbox Code Playgroud)
版本:
A 有 12.04 Ubuntu,B 是带有 Raspbian 的 Raspberry Pi。
编辑:我忘记输入的东西:我确实尝试切换 SSH 配置文件(我发现它是/etc/ssh/ssh_config)我取消注释(删除了#)该行Port并更改22为26. 它仍然给了我连接被拒绝的消息。(我重新启动无济于事。)
Shi*_*ngh 562
如果你在 Linux 系统上并且你想在端口 26 上连接到 SSH 服务器,你可以使用以下命令。
ssh user@192.168.1.1 -p 26
Run Code Online (Sandbox Code Playgroud)
笔记:
Ner*_*est 73
您似乎没有在第二台机器上的端口 26 上运行 SSH。您可以将该机器上的端口号更改为 26。
编辑/etc/ssh/sshd_config并不要忘记重新启动 SSH ( service sshd restart) 或将其保留在 22,但将路由器上的端口 26 转发到第二台机器上的端口 22。另外,不要忘记更改第二台机器上的任何防火墙设置以允许连接通过。
H.-*_*itt 10
我只使用 22 端口进行内网 ssh 访问。
为了通过互联网访问,我使用自定义(不寻常)端口。这样做的好处是减少了脚本小子在扫描端口 22 以查找“众所周知的用户名”时产生的负载。
的外部的sshd过程是由控制xinetd和在平行于所述运行内部 sshd过程。在以下示例中,我使用端口 12345:
您可以随意将其更改为系统上任何可用的空闲端口号。也许更高的值会使“快速端口扫描”更不可能扫描此端口。
该xinetd配置是:
service ssh-external
{
socket_type = stream
wait = no
protocol = tcp
type = UNLISTED
user = root
server = /usr/sbin/sshd
server_args = -i -f /etc/ssh/external-sshd.config
port = 12345
log_on_failure += USERID
}
Run Code Online (Sandbox Code Playgroud)
该文件/etc/ssh/external-ssdh.config可以是您常用sshd配置的副本。确保配置了以下语句:
Port 12345
AddressFamily inet
Run Code Online (Sandbox Code Playgroud)
我还建议强制执行公钥身份验证并禁用 Internet 访问的密码身份验证:
PasswordAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
Run Code Online (Sandbox Code Playgroud)
小智 9
侦听端口也可以硬链接到 IP 地址
/etc/ssh/sshd_config:
ListenAddress 10.10.10.10:22
ListenAddress 20.20.20.20:4444
Run Code Online (Sandbox Code Playgroud)
正如我在相关答案中所解释的,ssh 客户端允许将 URI 格式指定为ssh://user@host:1234. 例如:
ssh ssh://myuser@mydomain.com:2222
Run Code Online (Sandbox Code Playgroud)
其中 2222 是端口号。替换您打算使用的端口号。当然,请记住,为了连接到指定的端口 ssh 服务器(在您尝试连接的主机上)首先必须监听指定的端口
| 归档时间: |
|
| 查看次数: |
1115510 次 |
| 最近记录: |