CentOS解决SSH登录速度慢
备份配置文件
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak修改配置文件
1
2
3
4vi /etc/ssh/sshd_config
# 修改以下2个参数
输入/,查找GSSAPIAuthentication 赋值为no
输入/,查找UseDNS,赋值为 no(该项默认不启用的,要把前面的#删除掉)重启ssh服务
1
2
3
4# CentOS7 重启服务命令
systemctl restart sshd
# CentOS6 重启服务命令
service sshd restart
SSH 密钥创建及密钥登录
创建密钥对
1
2cd /用户目录/.ssh
ssh-keygen -t rsa执行密钥生成命令,基本上是一路回车既可以了,但是需要注意的是:执行命令的过程中是会提示输入密钥的密码的,不需要密码直接回车就行。密钥生成后会在当前目录下多出两个文件,id_rsa和id_rsa.pub,其中id_rsa是私钥,id_rsa.pub这个是公钥。
公钥添加到需要登录的远程服务器的authorized_keys文件
- 方法一:
1
ssh-copy-id -i /root/.ssh/id_rsa.pub root@远程服务器IP地址或域名
- 方法二:
复制id_rsa.pub文件的内容
1
vi /root/.ssh/id_rsa.pub
进入远程服务器需要SSH登录的用户的目录下,查看目录下是否有authorized_keys文件没有的话创建下,授予600权限,将复制的id_rsa.pub文件内容进行粘贴到authorized_keys文件中
1
2
3
4cd /root/.ssh
ls
vi authorized_keys
chmod 600 /root/.ssh/authorized_keys # 此文件的权限必须是600重启ssh服务
1
2
3
4# CentOS7 重启服务命令
systemctl restart sshd
# CentOS6 重启服务命令
service sshd restart
~/.ssh目录找不到解决方法
执行ssh localhost即可解决
原因:
.ssh 是记录密码信息的文件夹,如果没有登录过root的话,就没有 .ssh 文件夹,因此登录 localhost ,并输入密码就会生成了。