背景

每次登录需要输入复杂的密码,而且不停的有人在尝试登录root账户。感觉心慌慌,所以不得不设置更加安全的登录方式。

配置SSH无密码登录需要4步

  1. 准备工作
  2. 生成公钥和私钥
  3. 导入公钥到认证文件,更改权限
  4. 测试

1. 准备工作

确认本机sshd的配置文件(需要root权限)

vi /etc/ssh/sshd_config 

1)修改以下内容

RSAAuthentication yes #设置开启使用RSA算法的基于rhosts的安全验证;如RSAAuthentication没有则自行添加。
PubkeyAuthentication yes #设置开启公钥验证;
AuthorizedKeysFile .ssh/authorized_keys #后面的目录,是你上传的公钥所保存的文件;
StrictModes no #意思是设置关闭ssh在接收登录请求之前先检查用户家目录和rhosts文件的权限和所有权。
PasswordAuthentication no #禁止使用密码验证登录

UseDNS=no #加速SSH登录

2)先别急着重启sshd服务

先导自己需要的密钥在重启服务,不然你懂的远程不要想登陆了。

2. 生成公钥和私钥

生成公钥有三种方法:

1)使用命令

cd /root/.ssh
ssh-keygen -t rsa

这个我没测试过

2)使用SecureCrt生成密钥并上传

工具Tools-创建公钥Create Public Key

KeyType:RSA

设置公钥的密码,密码用于以后登录时使用。也可以不输入密码

设置公钥长度:这里用默认的2048就行了

设置公钥的文件名,这里设置的id_rsa

生成后会得到以下两个文件,其中.pub后缀时公钥,无后缀的文件时私钥(xftp用)

3. 导入公钥到服务器,更改权限

1)我们复制一个公钥文件[id_rsa.pub]命名为[authorized_keys].

2)将[authorized_keys]用xftp等上传到 /root/.ssh/ 下覆盖原文件即可。

3)在服务器上更改文件权限

chmod  /root/.ssh
chmod /root/.ssh/authorized_keys

4)重启ssh服务

#CentOS 7之前的版本请执行:
service sshd restart
#CentOS 7请执行:
systemctl restart sshd.service

4. 测试使用SecureCrt登录

Secure进入管理密钥菜单,添加之前创建的私钥文件,输入密码。

尝试登录,登陆成功。

如果不能登录成功,那一定是SELinux惹的祸。

ps为了这个我弄了好长时间,入门难!

我们可以尝试关闭SELinux

暂时关闭(重启后恢复):

setenforce   

永久关闭(需要重启):

vi /etc/selinux/config
SELINUX=disabled
 

最新文章

  1. Dev 关于用openFileDialog控件上传图片的问题
  2. [HDF]hdf-4.2.6类库的使用
  3. nova分析(3)—— nova-api
  4. 一个简单的ORM制作(SQL帮助类)
  5. maven依赖规则
  6. Jquery Mobile下设置radio控件选中
  7. A - 高精度(大数)N次方(第二季水)
  8. rm: 无法删除 "xxxxx.o" : 输入/输出错误.
  9. 51nod_1100:斜率最大
  10. 2017年 Java 程序员,风光背后的危机
  11. udp协议的数据接收与发送的代码
  12. .Net Core中利用TPL(任务并行库)构建Pipeline处理Dataflow
  13. day23.面向对象之继承
  14. skyline开发——读取Shapefile要素属性
  15. 【Linux】解决"no member named 'max_align_t'
  16. 利用python数据分析与挖掘相关资料总结
  17. vsftpd控制用户禁止访问上级目录 只能访问自己目录
  18. Linux内核分析(第六周)
  19. Android 实时视频编码—H.264硬编码
  20. C# 结构体 struct

热门文章

  1. svn冲突意思
  2. error C2381: “exit”: 重定义;__declspec(noreturn) 不同
  3. 解决hash冲突的三个方法
  4. 【学习总结】GirlsInAI ML-diary day-17-初始dataframe
  5. Shell命令-文件及目录操作之cp、find
  6. codeforces451C
  7. python面向对象之类的组合
  8. BZOJ2527[Poi2011]Meteors——整体二分+树状数组
  9. JVM运行时内存组成分为一些线程私
  10. 用python 发 帝国cms 文章