Linux 命令 ssh 一些错误的解决办法

1.主动访问的机器需要创建私钥和公钥 (client)

#cd ~
#mkdir .ssh
#chmod 700 .ssh
#cd .ssh
#ssh-keygen -t rsa //一路回车,各种提示按默认不要改
#ls -la

可以看到两个密钥文件:id_rsa(私钥) id_rsa.pub(公钥), 保证文件夹的权限正确否则服务无效

2.被访问的机器配置(server)

#cd ~
#mkdir .ssh
#chmod 700 .ssh
#cd .ssh
#touch authorized_keys
#chmod 600 authorized_keys

将 id_rsa.pub(公钥) 里的内容复制到 authorized_keys 文件中,保证文件夹的权限正确否则服务无效

3. 可能出现的问题和注意事项

3.1 需要关闭 SELinux 服务


# sestatus  
SELinux status:                 enabled  
SELinuxfs mount:                /sys/fs/selinux  
SELinux root directory:         /etc/selinux  
Loaded policy name:             targeted  
Current mode:                   enforcing  
Mode from config file:          enforcing  
Policy MLS status:              enabled  
Policy deny_unknown status:     allowed  
Max kernel policy version:      28  

如果要临时关闭,可以执行,无效重启服务器
# setenforce 0 
Current mode:    permissive  
发生变化的地方红色字体标注

如果要永久关闭,需要重新启动服务器
# vi /etc/selinux/config
SELINUX=disabled

3.2 修改vi /etc/ssh/sshd_config 文件 

#vi /etc/ssh/sshd_config
StrictModes no

修改为no,默认为yes.如果不修改用key登陆是出现server refused our key
(如果StrictModes为yes必需保证存放公钥的文件夹的拥有与登陆用户名是相同的.“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。
这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。) 


MaxAuthTries 1
错误提示: Too many authentication failures
默认 1,用户输入密码错误的次数,如果输入密码错误系统将自动锁定N分钟才能解锁重新登录
原文地址:https://www.cnblogs.com/guonan/p/5443329.html