linux免密后还是要输密码,ssh配置免密后依然需要输入密码的问题解决及排查过程...
如何对某个用户配置免密:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
根据上述操作生成相关密钥后,执行ssh localhost,依然需要输入密码,排查问题:
先检查ssh配置文件,包括客户端配置文件ssh_config和服务端配置文件sshd_config
客户端配置文件路径:/etc/ssh/ssh_config
文件内容:
Host *
GSSAPIAuthentication yes
# If this option is set to yes then remote X11 clients will have full access
# to the original X11 display. As virtually no X11 client supports the untrusted
# mode correctly we set this to yes.
ForwardX11Trusted yes
# Send locale-related environment variables
SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
SendEnv LC_IDENTIFICATION LC_ALL LANGUAGE
SendEnv XMODIFIERS
# 如果是使用dsa生成密钥的话,那么必须要配置上这个参数
PubkeyAcceptedKeyTypes +ssh-dss
服务端配置文件路径:/etc/ssh/sshd_config
文件内容:
HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
SyslogFacility AUTHPRIV
# Authentication:
# 配置允许root用户登录,yes
# 如果不允许root登录,需要把它改为no
PermitRootLogin yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
GSSAPICleanupCredentials no
X11Forwarding yes
UsePrivilegeSeparation sandbox
UseDNS no
# Accept locale-related environment variables
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
# override default of no subsystems
Subsystem sftp /usr/libexec/openssh/sftp-server
# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand cvs server
KerberosAuthentication no
PubkeyAuthentication yes
UsePAM yes
AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys
AuthorizedKeysCommandUser nobody
GSSAPIAuthentication yes
ChallengeResponseAuthentication yes
# 如果使用dsa生成密钥的话,则必须
PubkeyAcceptedKeyTypes +ssh-dss
KexAlgorithms diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521
服务端和客户端按这个配置文件来配是没有问题的,亲测。
PubkeyAcceptedKeyTypes +ssh-dss 是我后加上的参数,但是它并不是之前免密无效的原因,因为我之前生成的密钥使用的是rsa而不是dsa。
所以配置文件这块是没有问题的。
再排查权限问题
首先排查密钥文件authorized_keys的权限,它的权限严格要求是600,因为在步骤1中做了这个操作,所以它的权限是正确的;
接着排查/home/xxx/.ssh目录的权限,它的权限须是700,检查后发现权限是正常的700;
再接着用户主目录的权限,ll /home 查看主目录/home/xxx的权限,发现它的权限是777,然后我把他改小点,改为755,然后再通过ssh localhost测试,这时免密就成功了。
所以之前免密失效的根本原因还是权限的问题,ssh不允许用户的主目录和.ssh目录以及authorized_keys文件的权限开放得太大。
linux免密后还是要输密码,ssh配置免密后依然需要输入密码的问题解决及排查过程...相关推荐
- ssh 免密码登录(设置后仍需输密码的原因及解决方法)
ssh 免密码登录(设置后仍需输密码的原因及解决方法) 参考文章: (1)ssh 免密码登录(设置后仍需输密码的原因及解决方法) (2)https://www.cnblogs.com/guanyf/p ...
- ssh 免密_大数据时代:SSH如何免密码登录?
Hadoop集群是由许多的节点服务器组成的,当我们启动hadoop集群时,hadoop的Namenode需要连接并且管理这些节点服务器(主要是DataNode). 此时系统会要求用户输入密码,提示内容 ...
- gitlab 页面添加不带密码的sshkey后,git clone git@xxx.com:xx.git 仍提示需要输入密码的问题解决
gitlab 页面添加 sshkey后,git clone git@xxx.com:xx.git 任然提示需要输入密码的问题解决.解决debug1: send_pubkey_test: no mutu ...
- 电脑唤醒后不显示输密码框
目录 前言 一.问题描述 二.解决方法 1.现有的方法 2.我的方法 总结 前言 电脑打开后不出现密码输入对话框,一直卡着进不了系统. 一.问题描述 中午出去吃饭没有关电脑,走之前屏幕是在工作状态,回 ...
- SSH配置免密登录方法
转载自https://blog.csdn.net/jeikerxiao/article/details/84105529 1.客户端生成公私钥 本地客户端生成公私钥:(一路回车默认即可) ssh-ke ...
- ssh配置免密登录、scp文件传输免密
使用ssh相关命令,如scp等的时候,输入密码是很麻烦的事,而且有时候需要做自动化操作,这个时候还要人手动输入密码就没法玩了,我们可以通过配置rsa私钥和公钥的方式来免密ssh登录. 也可以直接使用s ...
- 【SSH】SSH 免密码登录配置|Secure Shell 免密认证登录|linux 生成密钥
目录 LINUX SSH免密登录 即看即用 详细说明 免密登录原理 Secure Shell 免密认证登录 linux 生成密钥 windows 生成密钥 目录 LINUX SSH免密登录 即看即用 ...
- ssh设置免密登录后登录仍需密码可能的原因,以及 ssh 出问题或的调试方法
免密登录失败 ssh设置免密登录后登录仍需密码可能的原因,home 路径下的对应用户权限不对,或者 .ssh 文件夹权限不对,/home/$user 和 /home/$user/.ssh 路径必须是 ...
- linux 配置免密码登录,Linux - 配置SSH免密登录 - “ssh-keygen”的基本用法
1 什么是SSH 引用百度百科的说明: SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:它是建立在应用层基础上的安全协议. S ...
最新文章
- iOS高级面试之NSNotificationCenter是同步操作还是异步操作
- 你知道现在的.net是什么样的吗,一张图告诉你
- IOC的理解,整合AOP,解耦对Service层和Dal层的依赖
- 全站仪数据导入电脑_三鼎762R系列全站仪的SD卡传输教程
- [蓝桥杯][2017年第八届真题]对局匹配
- java实现资源监视器_实现Java监视的12个步骤程序存在缺陷
- html如何让图片跟字体重叠,CSS设置图片与文字的间距
- Jmeter插件-dubbo
- mvc 调用其他控制器方法session丢失_Java从入门到放弃;MVC 模式
- redis 命令行 操作
- php 监听redis,swoole如何监听redis数据
- matlab实现马尔可夫链,马尔可夫链matlab源码
- vue使用Echarts绘制自己股票K线图,包含数据接口
- 操作系统——并发之锁
- 【Linux】常见错误 “cp: omitting directory”解决办法
- java微信二维码登录
- 红光光浴到底有没有用#大健康#红光光浴#红光#种光光学
- office365服务器没有响应,Win10安装Office365时电脑无响应的原因和解决方案
- sml基本语法(二)
- spark的数三角形算法_spark graphx 图计算