如何在 ssh 配置文件中定义服务

macOS,修改:~/.ssh/config

windows,修改:c:/users/用户名/.ssh/config

# 定义一个远程 server 的 ssh 连接,名称:hello
Host hello
    # 指定 server 的域名或者 ip
    HostName xxx.xxx.xxx.xxx

    # 指定连接的用户名称
    User root

    # 指定连接的端口(默认22)
    Port 22

    # 指定用于连接的私钥
    IdentityFile ~/.ssh/id_rsa

    # 仅使用上面的key(不尝试其他key)
    IdentitiesOnly yes

    # 通过跳板机连接(类似使用 代理 的效果)
    # ProxyJump hello2 (假设这里定义了跳板机 hello2)

    # 走 nc(netcat)命令,让 ssh 通过 127.0.0.1:7890 这个 SOCKS5 本地代理,去连 %h(即 remote.host)的 %p(默认 22 端口)。
    # ProxyCommand nc -x 127.0.0.1:7890 %h %p

    # 通过 socat 实现 HTTP CONNECT 代理(类似上一条,二选一)
    # ProxyCommand socat - PROXY:zhuzheng.work:%h:%p,proxyport=7002

    # 通过 ncat 实现 HTTP CONNECT 代理(类似上两条,三选一)
    # ProxyCommand ncat --proxy-type socks5 --proxy 127.0.0.1:7890 %h %p

    # 端口转发(例如:将 server上的 3306 映射到本机的 13306 )
    LocalForward 13306 127.0.0.1:3306

接着,就可以在命令行中使用 ssh hello 登录服务器了(不用每次再输入 ssh -i /path/to/key ubuntu@xxx.xxx.xxx 了)。

posted @ 2026-02-13 16:34  江南烟雨梦  阅读(78)  评论(0)    收藏  举报