GNU/Linux 增进 SSH 使用效率:ssh_config
2018-07-25 13:49 更新
SSH 可说是每台 GNU/Linux 必装的服务之一,我们可以借由它,在远端进行一切的操作。为避免被怪客 (cracker) 入侵,会于提供该服务的机器加上限制,以提高安全性,例如:更改埠口 (Port)、限制 IP 登入或只使用密钥登入 ... 等。
随著机器数量及限制增加的同时,使用上的繁琐及不便也会随之增加。这时,我们可事先设定各个主机,以便日后的使用。Windows 上的 PieTTY, Xshell 皆有此功能,而在 Linux 里冻仁则习惯直接编修 openssh-client 的设定档 $HOME/.ssh/config。
基本使用
设定各个主机 (Host) 的 SSH 设定。
$ vi ~/.ssh/config
# - master
Host master # 代号
Hostname 192.168.11.24 # IP or Domain name
Port 2222 # 指定埠口
User jonny # 使用者名称
identityfile ~/.ssh/id_rsa_24 # 指定密钥
# - slave
Host slave # 代号
Hostname 192.168.11.25 # IP or Domain name
Port 2223 # 指定埠口
User jonny # 使用者名称
identityfile ~/.ssh/id_rsa_25 # 指定密钥
使用 $HOME/.ssh/config 设定档连接各主机。
[ jonny@workstation ~ ]
$ ssh slave
[ jonny@slave ~ ]
$ sftp master
Connected to master.
sftp>
进阶使用
以下参数在较旧版的 openssh-server 可能不支持。
认证代理
当本机上的同一把密钥曾在多台 Server 上注册并启用此设定,则可于多台 Server 上转发,也就是可使用本机的密钥登入第二层、第三层的 Server。
ForwardAgent yes
压缩频宽
先借由 CPU 压缩后再进行传输,适用于效能较好的机器。
Compression yes
减少重复连线的时间
ControlMaster auto
ControlPath /tmp/ssh-%r@%h:%p
延长连线时间
ControlPersist 1h
取消连线加密
于区网、可信赖的网路环境及大量档案传输之情境使用此参数可有效减少 CPU 负载以提升传输速度。
Ciphers arcfour
更多详细说明请参考 Manpage。
man ssh_config
资料来源
- 教你高效使用SSH 的16 个技巧 _人人IT网
- SSH Can Do That? Productivity Tips for Working with Remote Servers | Smylers [blogs.perl.org]
- Using an SSH Config File
- How To Reuse SSH Connection To Speed Up Remote Login Process
- 冻仁的笔记: ssh 远端登入免密码 with RSA
- 冻仁的笔记: 阻挡 sshd 部分使用者连线 (DenyUsers, DenyGroups)
- 冻仁的笔记: scp - 借由 ssh 的远端档案传输指令
- 冻仁的笔记: sshd 停用 root 远端登入权限
以上内容是否对您有帮助:
更多建议: