1.服务器安装 openssh openssh-client openssh-server
yum install openssh openssh-client openssh-server
2.服务端关闭防火墙,启动服务器
systemctl stop firewall
systemctl stop iptables
3.服务端启动
systemctl start sshd
4.client服务器生成ssh 密钥
ssh-keygen #不要输入任何东西
5. 将公钥放服务端.ssh/authorized_keys
可以copy,可以scp 等只需要将客户端~/.ssh/id_rsa.pub 内容放入 服务端.ssh/authorized_keys文件中即可
常见问题
1.client 端ssh目录和文件权限。
如果权限不对,则ssh的免密码登陆不生效。
-
用户目录权限为 755 或者 700,就是不能是77x。
-
.ssh目录权限一般为755或者700。
-
rsa_id.pub 及authorized_keys权限一般为644
-
rsa_id权限必须为600
如果不小心执行了chmod 777 root 会导致免密登录失效
2.默认端口试22 也可自定义修改端口
在/etc/ssh/sshd_config 中修改port
3.服务器黑名单问题
对应的文件是 /etc/hosts.allow和/etc/hosts.deny,用来限定ip登录
4.允许密码登录设置
sudo vim /etc/ssh/sshd_config
passwordAuthentication yes
AllowUsers root deveagle
ThroublShooting
1、调试方法
1. 开启日志
开启日志依赖于rsyslog模块,如果没有麻烦安装一下
yum install rsyslog -y
1.1、配置日志
vim /etc/rsyslog.conf 查看是否有一下配置,如果没有请添加
authpriv.* /var/log/secure #登录输出日志
1.2、启动
systemctl start rsyslog
2、sshd调整日志等级并重启sshd服务
vim /etc/ssh/sshd_config
LogLevel DEBUG
3、进入调试
- 服务端监听日志
tail -f /var/log/secure - client端登录
2、一直无法免密登录问题
2.1、描述
通过调试日志发现如下报错
Authentication refused: bad ownership or modes for directory /root
image.png
2.2、解决
排查发现权限没有问题,直接通过暴力解决 vim /etc/ssh/sshd_config
StrictModes no #关闭严格模式,不校验文件所属权限,这个存在风险请谨慎操作
网友评论