我正在尝试使用 ssh 连接到远程机器上运行的 docker,其中 docker 将其自己的端口 22 公开为该远程机器上的端口 2222。
后
docker run -ti --hostname my_docker --name my_docker\
-p 2222:22 --rm debian bash -c "
apt update -y;apt install -y openssh-server; service ssh start;
useradd pi; mkdir -p /home/pi; chown pi /home/pi;
passwd pi <<< \$'password\npassword'; exec bash"
或者
docker run -ti --hostname my_docker --name my_docker\
-p 0.0.0.0:2222:22 --rm debian bash -c "
apt update -y;apt install -y openssh-server; service ssh start;
useradd pi; mkdir -p /home/pi; chown pi /home/pi;
passwd pi <<< \$'password\npassword'; exec bash"
我可以连接从远程机器本身到其自身使用ssh -p 2222 pi@<remote_machine_ip>
,
但当尝试使用相同的方式从同一域上的另一台计算机进行连接时ssh -p 2222 pi@<remote_machine_ip>
,我得到了
ssh:连接到主机 <<remote_machine_ip>> 端口 2222:连接超时
我只是假设问题是端口 2222 没有暴露给本地主机以外的主机。
- 如何调试?
- 如何
ssh -p 2222 pi@<remote_machine_ip>
从另一台机器上进行工作?