当前位置: 首页 » 产品 » 机械设备 » 正文

SSH密钥登录让Linux VPS/服务器更安全

放大字体  缩小字体 发布日期: 2024-09-29 07:24   来源:http://www.baidu.com/  作者:无忧资讯  浏览次数:25
核心提示:  随着PHP越来越流行,LinuxVPS/服务器的使用也越来越多,Linux的安全问题也需要日渐加强,如果你安装过DenyHosts并设置过邮件

  随着PHP越来越流行,Linux VPS/服务器的使用也越来越多,Linux的安全问题也需要日渐加强,如果你安装过DenyHosts并设置过邮件提醒,你每天可能会受到数封DenyHosts Report将前来破解SSH密码的IP加入/etc/hosts.deny。

  Linux SSH登录有两种:

  1、使用密码验证登录

  通常VPS或服务器开通后都是直接提供IP和root密码,使用这种方式就是通过密码方式登录。如果密码不够强壮,而且没有安装DenyHosts之类的防止SSH密码破解的软件,那么系统安全将存在很大的隐患。

  2、使用密钥验证登录

  基于密钥的安全验证必须为用户自己创建一对密钥,并把共有的密钥放在需要访问的服务器上。当需要连接到SSH服务器上时,客户端软件就会向服务器发出请求,请求使用客户端的密钥进行安全验证。服务器收到请求之后,先在该用户的根目录下寻找共有密钥,然后把它和发送过来的公有密钥进行比较。如果两个密钥一致,服务器就用公有的密钥加密“质询”,并把它发送给客户端软件(putty,xshell等)。客户端收到质询之后,就可以用本地的私人密钥解密再把它发送给服务器,这种方式是相当安全的。

  一、生成密钥

  因为puttygen生成的密钥有问题可能会出现:“Server refused our key”,最好使用XShell生成密钥或者在远程Linux VPS/服务器生成密钥。

  1、在Linux远程服务器生成密钥:

  登录远程Linux VPS/服务器,执行:

  root@vpser:~# ssh-keygen -t rsa //先运行这个命令

  Generating public/private rsa key pair.

  Enter file in which to save the key (/root/.ssh/id_rsa): //直接回车

  Created directory ‘/root/.ssh’.

  Enter passphrase (empty for no passphrase): //输入密钥密码

  Enter same passphrase again: //重复密钥密码

  Your identification has been saved in /root/.ssh/id_rsa. //提示公钥和私钥已经存放在/root/.ssh/目录下

  Your public key has been saved in /root/.ssh/id_rsa.pub.

  The key fingerprint is:

  15:23:a1:41:90:10:05:29:4c:d6:c0:11:61:13:23:dd root@vpser.net

  The key’s randomart image is:

  +–[ RSA 2048]—-+

  |=&@Bo+o o.o |

  |=o=.E o . o |

  | . . . |

  | . |

  | S |

  | |

  | |

  | |

  | |

  +—————–+

  root@vpser:~#

  将/root/.ssh/下面的id_rsa和id_rsd.pub妥善保存。

  2、使用XShell生成密钥

  Xshell是一款Windows下面功能强大的SSH客户端,能够按分类保存N多会话、支持Tab、支持多密钥管理等等,管理比较多的VPS/服务器使用XShell算是比较方便的,推荐使用。

  下载XShell,安装,运行XShell,点击菜单:Tool ->User Key Generation Wizard,出现如下提示:

SSH密钥登录让Linux VPS/服务器更安全 三联

SSH密钥登录让Linux VPS/服务器更安全

SSH密钥登录让Linux VPS/服务器更安全

SSH密钥登录让Linux VPS/服务器更安全

  点击Save as file将密钥保存为id_rsa.pub。

  二、将密钥添加到远程Linux服务器

  1、用winscp,将id_rsa.pub文件上传到/root/.ssh/下面(如果没有则创建此目录),并重命名为:authorized_keys(如果是在Linux服务器上生成的密钥直接执行:mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys),再执行:chmod 600 /root/.ssh/authorized_keys 修改权限。

  2、修改/etc/ssh/sshd_config 文件,将RSAAuthentication 和 PubkeyAuthentication 后面的值都改成yes ,保存。

  3、重启sshd服务,Debian/Ubuntu执行/etc/init.d/ssh restart ;CentOS执行:/etc/init.d/sshd restart。

  三、客户端测试使用密钥登录

  1、使用putty登录

  putty使用的私钥文件和Linux服务器或XShell的私钥格式不同,如果使用putty的话,需要将Linux主机上生成的id_rsa文件下载的本地。运行putty压缩包里面的puttygen.exe,选择Conversions->import key选择私钥文件id_rsa,输入密钥文件的密码,会出现如下界面:

SSH密钥登录让Linux VPS/服务器更安全

  点击“Save Private Key”,将私钥保存为id_rsa.ppk

  运行putty,在Host Name填写:root@主机名或ip

SSH密钥登录让Linux VPS/服务器更安全

SSH密钥登录让Linux VPS/服务器更安全

SSH密钥登录让Linux VPS/服务器更安全

  如果设置了密钥密码,出现:Passphrase for key “imported-openssh-key”时输入密钥密码。

  如果设置没问题就会登录成功,出现用户提示符。

  2、XShell登录

 
 
[ 产品搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 违规举报 ]  [ 关闭窗口 ]

 

 
推荐图文
推荐产品
点击排行
    行业协会  备案信息  可信网站