update |
||
---|---|---|
Dockerfile | ||
LICENSE | ||
README.md | ||
docker-compose.yaml |
README.md
docker-ssh-forwarding
在Docker中使用SSH将远程服务器内部端口转发到本地内部网络
适合将生产环境中为了安全而不开放外部访问的端口,通过SSH安全转发功能,映射到内部网络指定主机和端口上。
凭证
使用密钥登录,请提前将运行的用户的凭证放到远程服务器上(ssh-copy-id) 可以先启动容器后在容器内部使用
ssh-copy-id -p 222 user@host
# 若构建镜像时没有生成密钥凭证可先生成(容器内部执行)
ssh-keygen -t rsa -b 4096 -N "" -f /root/.ssh/id_rsa
构建
docker build . -t sshforwarding
docker-compose.yml
version: "3"
services:
sshforwarding:
image: sshforwarding
container_name: sshforwarding
ports:
- 3307:3307
volumes:
- .ssh:/root/.ssh
environment:
REMOTE_USER: 远程服务器用户名
REMOTE_HOST: 远程服务器主机名
REMOTE_PORT: 远程服务器SSH端口
REMOTE_LISTEN_PORT: 需要转发的服务器端口
LOCAL_LISTEN_PORT: 本地监听端口
LOCAL_LISTEN_HOST: 本地监听地址
stdin_open: true
tty: true