直接上方法:禁用系统的selinux功能,命令#setenforce0,但重启系统,selinux仍然启用。根治方法:更改SElinux的配置文件/etc/selinux/config,修改SELINUX=disabled。(配置文件中有说明),重启机器。然后在试试?PuTTY登录界面出现了那渴望已久的"Enterpassphrase for key...:",输入密钥的指纹,成功进入。
 
下面听我慢慢道来。
学习Linux也有段时间了,但一直在弄些服务器的搭建和配置。想来,由于没经验,应聘一些Linux系统运维的工作,总是被拒绝(倒是那次杭州淘宝网的IDC值班运维的offer让我高兴了一阵子,终究因为当时还大三,没有办法全职,最终只能作罢,现在想来实在可惜)。所以我打算,对应工作实战,一步一步来实践。弄到ssh这里时,实在是将了我一军。putty这个sshclient forwindows还是挺好的,至少很多人用并且评价不错。简单,但同时功能单一。有利就有弊,所以putty配套的还有puttygen,全称puttykey generator,也就是putty密钥产生器。同时还有配套的PSFTP、PSCP等。
怎么在Windows下远程登录Linux(我的是CentOS)?
1、配置Linux里的sshd,/etc/ssh/sshd.conf,修改配置文件,密钥位数、ssh版本、passwd认证等。
2、生成rsa密钥,#ssh-keygen -b 1024-t rsa
3、使用PSFTP下载私钥id_rsa至本地。
4、将下载的私钥导入puttygen然后保存私钥为putty使用的ppk文件。
5、设置putty,制定Auth中的private keyfile,然后登录即可。
一开始我完全是按照步骤来的,思路也很清晰,先生产然后下载然后导入更改格式,最后认证即可。但一看是的三四天,我将这一过程试了不下10遍,终究不行。还试了网上网友说的各种更改设置,都无济于事。并且还用了本地生成,然后上传公钥的方法(这种方法最安全,推荐,因为公钥被盗也无所谓)。最终都是登录无门。
然后又再网上翻天覆地的找各种解决方法,都无济于事。这时的我对很多网友实在很无语,自己没有亲自实践就在网上随便乱贴东西或是copy别人的东西。这时我只能靠自己了。
其实,我从一开始就考虑是不是iptables的缘故,但是自己记得当时在设置iptables时已经开放了22端口啊。苍天,我只好先:serviceiptables stop。但是仍然是无用啊。
最后想到是不是上级目录和文件权限的问题,然后又chmod修改权限,仍然无解。
最后,想到一下SElinux,看书时(那个南非蚂蚁大哥写的)有提到Selinux这个新的安全工具。想来应该是它在作怪,寻找/etc下发现selinux目录,打开发现config和sestorecron.conf,恍然大悟,修改之保存。然后又在网上搜索看了看selinux的详细,果然是它在作怪。最后按本文开头介绍的方法成功完成SSH2的RSA认证。
其实,中间的过程做的还有很多,比如查看/var/log下的登录日志,其实还是在这里找到了第一丝线索,但由于英文水平和系统知识都不够火候,以至于费了老大功夫。其实在开始PUTTY失败是我还试了很多其他的SSH客户端,但同样不行,最终锁定是服务器设置的问题。
以上只是介绍了整个过程,中间有什么不明白的百度一下就好。如果看的人多,后期再把完整的过程写了。

putty加了密钥ssh不能登陆,PuTTY:server refused our key问题的解决(转)的更多相关文章

  1. Putty server refused our key的解决方法

    在使用putty工具使用密钥远程登陆CentOS系统时,出现Putty server refused our key提示,解决办法: 1.查看是否关掉SELINUX. 相关命令:getenforce, ...

  2. (转)Putty server refused our key的三种原因和解决方法

    原文 上一篇博文介绍了使用Putty免密码登录,我后面试了另一台虚拟机,结果putty显示错误server refused our key(在linux下则表现为仍需要输入密码),搜索了下,很多人都遇 ...

  3. 阿里云 putty链接服务器出现 server refused our key

    阿里云 putty链接服务器出现 server refused our key 创建了密钥对绑定实例,puttygen生成ppk,putty配置参数,连接,一步一步来的,结果出现 server ref ...

  4. Putty使用公钥认证时,报错:Disconnected: No supported authentication methods available(server sent:public key) 问题的解决

    Putty使用公钥认证时,按照常规方法设置,一直报错:Disconnected: No supported authentication methods available (server sent: ...

  5. 很好用的取代 PuTTY 的SSH远程登陆软件 Termius

    一直以来, 我都是用 PuTTY 一个窗口一个窗口来监视我所有的远程服务器. putty-connections-on-a-screen 总感觉非常的不方便, 特别是当远程链接断开需要再重新打开PUT ...

  6. Ubuntu上安装和使用SSH,Xming+PuTTY在Windows下远程Linux主机使用图形界面的程序

    自:http://blog.csdn.net/neofung/article/details/6574002 Ubuntu上安装和使用SSH  网上有很多介绍在Ubuntu下开启SSH服务的文章,但大 ...

  7. windows下配置ssh(FreeSSHD + putty)

    windows下配置ssh(FreeSSHD + putty): 1.关于配置过程找到一篇很好的博客,推荐大家先好好看一下,这篇博文解决了大方向问题. 地址:http://blog.csdn.net/ ...

  8. Putty——支持Telnet,ssh连接的连接软件

    简介 PuTTY 的官方网站:http://www.chiark.greenend.org.uk/~sgtatham/putty/,截止到 2007年6月,发布的最高稳定版本是 0.6.PuTTY 是 ...

  9. Linux Centos配置ssh客户端工具putty

      配置ssh客户端工具putty 1.直接点击putty.exe文件 2.配置putty 3.配置putty编码 4.配置putty字体大小 5.配置putty样式 6.保存配置信息 7.配置MTp ...

随机推荐

  1. ASP.NET WebApi 图片上传

    以下是代码的实现过程: Html页面表单布局: <form id="UpPicture" enctype="multipart/form-data" ac ...

  2. jq 上传下载进度条

    里面只演示了下载的,挂载的是我的七牛服务器上的内容,上传事件和下载是一模一样的,为了大家不乱上传东西到我的服务器,而且我的服务器容量也不大,这里只展示了下载.代码: <!DOCTYPE html ...

  3. 1.Hadoop简单理解与总结。

    1.什么是Hadoop? Hadoop是一种分布式数据和计算的框架.它很擅长存储大量的半结构化的数据集.数据可以随机存放,所以一个磁盘的失败并不会带来数据丢失.Hadoop也非常擅长分布式计算——快速 ...

  4. Maven下载私服上的jar包(全局)

    <mirror> <id>maven-public</id> <mirrorOf>maven-public</mirrorOf> <n ...

  5. kong API gateway

    参考:https://www.cnblogs.com/chenjinxi/p/8724564.html 一.简介 Kong,是由Mashape公司开源的,基于Nginx的API gateway. 二. ...

  6. ajax二次封装之异步加载

    ajax二次封装之异步加载 ajax异步加载会导致在数据未加载回来就读取数据,然后出现数据为空的报错.在ajax封装时,将ajax直接改为同步,虽然可以解决报错,但是会导致页面渲染被阻塞,接口反应时间 ...

  7. leetcode985

    import sys class Solution: def sumEvenAfterQueries(self, A: 'List[int]', queries: 'List[List[int]]') ...

  8. delphi 连接DBF

    delphi 连接DBF 使用 DBF 文件时,文件夹表示数据库,单个 DBF 文件表示表 1.BDE,已淘汰 table1.Databasename:=dbdir;//设置库路径table1.Tab ...

  9. 人脸识别68个点<转>

    [Opencv] 于仕琪 人脸68个特征点分布情况 // 鼻尖 30 // 鼻根 27 // 下巴 8 // 左眼外角 36 // 左眼内角 39 // 右眼外角 45 // 右眼内角 42 // 嘴 ...

  10. $event Object angularjs

    You can pass the $event object as an argument when calling the function. The $event object contains ...