^v^

知行合一 止于至善

SSH使用总结

07 Sep 2017 » 工具


ssh config

Home目录下的.ssh目录包含下面4个文件:

.ssh
├── config
├── id_rsa
├── id_rsa.pub
└── known_hosts

正常情况都会有known_hosts文件,用于保存允许免密登录到本机的用户的公钥。因此,如果要让主机对你免密登录,只要把自己的公钥添加到该主机的这个文件。

执行ssh-keygen命令将自动生成id_rsaid_rsa.pub两个文件,前一个文件为私钥,后一个为公钥。

最后的config文件,通常自己手动创建,用来保存登录到其它主机的账号信息,包括主机名、主机地址、端口号、认证文件等。例子如下:

Host 10-180-0-31   # 主机名,可以任意取
    User wuxiangwei     # 用户名
    HostName 115.236.124.31   # 目标主机
    Port 1046   # 端口号
    IdentityFile ~/.ssh/id_rsa  # 认证文件

有了上述配置后,可以方便地使用ssh 10-180-0-31命令登录目标主机。
否则,要执行冗长的ssh -p 1046 wuxiangwei@115.236.124.31 -i ~/.ssh/id_rsa命令,当然这个命令中的用户名和私钥路径在一定情况下也可以省略。config文件带来的好处是:

  1. 输入命令变短了;
  2. 可以使用更容易记的自定义的名字来替代IP地址;
  3. 可以统一管理所有账号。

和Shuttle的配合使用:

  1. 减少.ssh/config中单项的大小,通过修改/etc/ssh/ssh_config的默认配置来实现;
  2. 实现shuttle中的菜单。在config每项中添加# shuttle.name来实现,一个/代表一级菜单;

开启key转发功能:

  1. 修改config文件如下:
Host *
    StrictHostKeyChecking no
    Port 1046
    ForwardAgent yes
  1. 在mac、跳板机中执行 ssh-add 命令;

Git bash

配色 使用config

Xshell

秘钥转发功能

隧道:

Putty

Related Posts