`

Centos设置禁止密码登录而只使用密钥登录SSH方法

 
阅读更多

现在有很多坏人,控制了不少肉鸡(肉鸡就是被黑客植入病毒的电脑/服务器,可以接受黑客的指令做任何事情),然后到处扫服务器密码,不断传播到新的服务器上,所以linux用户一般有这样的烦恼,那就是每天都有很多IP来猜密码(暴力破解),比如我在用的Centos系统,密码默认设置太长都没用,虽然可以改成可以支持更长密码的方式,但是始终没有密钥证书来的安全。而且设置只使用密钥登录,可以完全杜绝暴力破解(因为SSH服务器不再接受密码方式登录)。

说这么多只不过是强调一下密钥登录SSH的好处,网上也有不少教程,但是方法复杂,记录一下自己的过程,很简单很靠谱!

我用的是Bitvise SSH Client做客户端登录,因为不喜欢用vi,所以修改配置文件是在本地进行的,改好了上传给服务器。你也可以直接用vi修改,过程如下。

##先用密码登录服务器,新建/root/.ssh文件夹
[root@x2009_net .ssh]# mkdir /root/.ssh
##在服务器通过ssh-keygen -t rsa生成私钥和公钥,会有3个提示让你输入信息,不输入,直接按3次回车生成
[root@x2009_net .ssh]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): ##直接回车
Enter passphrase (empty for no passphrase): ##先不输入密码
Enter same passphrase again: ##不输入密码
## 查看生成的文件
[root@x2009_net .ssh]# cd /root/.ssh
[root@x2009_net .ssh]# ls
id_rsa id_rsa.pub
## 把公钥的文件名修改成authorized_keys
[root@x2009_net .ssh]# mv id_rsa.pub authorized_keys
## 然后给密钥设置好权限,别让低权限账号偷了去(如果低权限的账号或程序被入侵,被偷走就麻烦了)
[root@x2009_net .ssh]# chmod 600 authorized_keys
[root@x2009_net .ssh]# chmod 600 id_rsa
## 然后修改SSH登录设置文件,禁止密码方式登录SSH,只允许使用密钥登录(确保以下4项都正确,文件其他部分不要修改,如果不会用vi,也可以下载到本机修改好再上传回去)
[root@x2009_net .ssh]# vi /etc/ssh/sshd_config
Protocol 2
PasswordAuthentication no
PubkeyAuthentication yes ##使用key登录
AuthorizedKeysFile .ssh/authorized_keys ##key的名字
## 接下来最重要的一步,下载id_rsa文件到自己电脑,SSH客户端登录的时候需要它才可以登录
## 嘿嘿,这一步我是用Bitvise SSH Client的New SFTP Window功能直接浏览文件下载的,看了下命令行传文件的方法,一时搞不定,建议大家也学我这样用吧,很方便
## 最后一步就是重启SSH服务了,记住在执行这一步之前,一定要下载到密钥文件,否则这个SSH断开后,你就再也连不上去了(不断开之前可以一直操作,包括重启SSH服务之后也不会断开)
[root@x2009_net .ssh]# /sbin/service sshd restart

做完以上操作之后,就要设置SSH客户端了,因为登录都靠它啊!我的是Bitvise SSH Client,登录方式直接选择NONE即可,用户名还是root,点击user keypair manager,点击import导入刚才下载到本机来的id_rsa文件,导入后看下这个密钥的solt(如果只有一个,默认就是1),登录的时候要选择的。然后回到登录界面在Initial method选择publickey - slot 1,点login登录就OK了!

用putty的朋友应该也是差不多操作过程的,导入密钥,登录的选择这种方式就好了,以后用putty再补充……

分享到:
评论

相关推荐

    虚拟机VMware下centos配置SSH免密码登陆

    例如,从`centos01`尝试连接`centos02`,使用`ssh hadoop01@192.168.152.138`,如果一切正常,应该可以直接登录而无需输入密码。 在VMware环境下,这样的配置特别有用,特别是在集群或分布式系统中,如Hadoop,需要...

    centos7 ssh免密登录自动化配置脚本(ps:已测试过)

    1. **生成密钥对**:使用`ssh-keygen`命令生成一个新的密钥对,通常选择RSA算法,设置空密码以避免交互式输入。 2. **复制公钥**:使用`ssh-copy-id`命令将本地用户的公钥复制到目标服务器的`authorized_keys`文件...

    centos实现非root账户无密钥访问

    ### CentOS实现非root账户无密钥访问 在Linux系统中,使用SSH进行远程登录是非常常见的操作之一。...通过以上步骤,我们可以轻松地为CentOS系统中的非root用户配置SSH无密钥登录,从而提高工作效率并加强系统安全性。

    centos7SSH免密登录.docx

    本文档详细介绍了如何配置CentOS 7系统的SSH免密登录,使得多台机器之间能够安全且无需密码地互相访问。 首先,了解SSH的基本概念是必要的。SSH(Secure Shell)是一种网络协议,用于在不安全的网络环境中提供安全...

    Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx

    - 可以通过限制SSH登录方式(如只允许公钥认证,禁用密码登录)和设置防火墙规则来提高服务器的安全性。 通过以上步骤,Windows 7用户可以安全地使用SSH客户端工具连接到CentOS 5.4服务器,实现远程管理和服务交互...

    centos下ssh配置文档

    在`/etc/hosts.deny`文件中添加`sshd: ALL`阻止所有外部IP的SSH连接请求,而在`/etc/hosts.allow`文件中添加特定的内网IP地址,如`sshd: 192.168.0.`,只允许特定网络的设备进行SSH连接。 配置完成后,记得使用`/...

    centos配置ssh免密码登录后仍要输入密码的解决方法

    以下是一个详细的解决方法,专门针对CentOS系统中SSH免密码登录后仍需输入密码的问题。 首先,我们来看如何在本地生成SSH密钥对。SSH密钥对包括一个私钥(id_rsa)和一个公钥(id_rsa.pub)。在CentOS中,你可以...

    ssh登录使用radius服务器认证配置方法

    ### SSH登录使用RADIUS服务器认证配置方法 在企业级网络环境中,为了提高安全性与管理效率,通常会采用集中式身份验证系统,如RADIUS(Remote Authentication Dial In User Service)。RADIUS不仅支持传统的拨号...

    centos之SSH安装

    - 禁止root用户远程登录:在配置文件中设置`PermitRootLogin no`可以避免root用户直接登录,增加安全性。 - 开启公钥认证:通过设置`PubkeyAuthentication yes`开启公钥认证,提高远程登录的安全性。 修改完配置...

    CentOS系统安装及SSH配置.rar

    7. **安全优化**:为了提高安全性,可以考虑更改SSH默认端口、禁用密码登录、限制只接受特定IP地址的连接等措施。 这两份文档——"CentOS安装文档.doc"和"CentOs配置SSH.doc"将提供更详尽的步骤和注意事项,帮助你...

    CentOS或Linux系统安装SSH并配置SSH登录密钥.docx

    CentOS或Linux系统SSH安装配置、SSH密钥配置远程登录

    Linux配置ssh免密码登录

    本文将详细介绍如何在CentOS环境下配置SSH的无密码登录,并解决在配置过程中可能遇到的一些常见问题。 #### 二、基础知识 ##### 2.1 SSH简介 SSH是一种网络协议,用于计算机之间的加密登录。它可以在不安全的网络...

    Win7下用SSH客户端工具连接CentOS5.4的SSH证书配置方法.pdf

    完成上述步骤后,Windows 7的SSH客户端(如PuTTY、MobaXterm等)就可以使用私钥进行无密码登录到CentOS虚拟机了。这种方法提高了连接的安全性,因为即使有人截取了网络流量,也无法解密加密的数据,除非他们拥有私钥...

    两个SSH2间免密码登录

    本文主要讨论SSH2环境下实现两台机器之间免密码登录的方法。此方法适用于需要频繁进行远程操作而不想每次都输入密码的情况。 #### 配置流程概述 实现SSH2环境下的免密码登录主要分为两个部分:一是登录机(客户端)...

    Centos SSH免密登录

    ### Centos SSH免密登录知识点解析 #### 一、实验背景与目的 在现代网络系统管理竞赛或实际运维工作中,实现高效、安全的远程管理是关键能力之一。本实验通过模拟一个具体的网络环境,旨在训练参赛者掌握如何配置...

    centos中GIT服务器搭建及使用密钥连接.pdf

    在IT行业中,版本控制系统是开发团队协作的重要工具,而Git作为目前最流行的分布式版本控制系统,其在Linux系统上的部署和使用至关重要。本文将详细介绍如何在CentOS操作系统中搭建Git服务器以及如何通过SSH密钥实现...

    pycharm ssh连接centos环境.docx

    PyCharm SSH 连接 CentOS 环境 PyCharm 是一款功能强大的集成开发环境(IDE),它提供了许多实用...通过生成 SSH 密钥、配置 SSH 服务和在 PyCharm 中配置 SSH 连接,就可以轻松地连接到 CentOS 环境,提高开发效率。

    CentOS6.4 SSH Telnet服务器配置

    ### CentOS 6.4 SSH与Telnet服务器配置详解 #### 一、SSH服务器概述与功能 **SSH**(Secure Shell)是...通过本文所述的方法和步骤,用户可以轻松地在CentOS 6.4环境中搭建并使用SSH服务器,以满足实际工作中的需求。

    批量实现ssh无密码登录

    本文将详细介绍如何在CentOS环境下批量设置多台服务器之间的SSH无密码登录。 #### 基础概念解释 - **SSH (Secure Shell)**: 一种网络协议,用于计算机之间的加密登录。它为远程登录提供了安全的连接。 - **公私钥对...

Global site tag (gtag.js) - Google Analytics