SSHD服务器配置以及使用

记录常见的 SSH 服务器配置和问题解决

配置相关

SSHD 配置文件

  • 位于 /etc/ssh/sshd_config 本文基于该文件修改

开启密码登录

1
PasswordAuthentication yes

开启证书登录

1
2
3
AuthorizedKeysFile .ssh/authorized_keys # 认证公钥文件
RSAAuthentication yes
PubkeyAuthentication yes

开启网关端口

1
GatewayPorts yes

使用相关

执行远程命令

  • 直接执行远程命令 打印目录

    1
    2
    ssh -t root@192.168.2.200 ls
    lnmp1.3-full lnmp-install.log temp.tar.gz
  • 执行多条命令 将本地目录打包解压到远程目录

    1
    2
    3
    4
    5
    6
    7
    8
    9
    HOME=/home/app/wxappserver
    tar -p --exclude='.nuxt' --exclude='.vscode' --exclude='.git' --exclude='build' --exclude='node_modules' -czf temp.tar.gz .
    scp temp.tar.gz root@192.168.2.200:${HOME}
    ssh root@192.168.2.200 << EOF
    cd ${HOME}
    tar -xzf temp.tar.gz
    rm -rf temp.tar.gz
    EOF
    rm -rf temp.tar.gz

使用SSH转发端口

  • 将本地的3200端口转发到服务器的127.0.0.1:8080端口

    1
    ssh -NTf -R 8080:127.0.0.1:3200 root@v.yumc.pw
  • 如果要服务器监听 0.0.0.0开启网关端口

  • AutoSSH
    • 由于 SSH 会自动断开 需要重连 很麻烦 所以使用 AutoSSH 命令和 SSH 一样 但是断开会自动连接
      1
      autossh -M 8081 -fCNR 8080:127.0.0.1:3200 root@server.yumc.pw