密钥登陆Linux服务器

Linux VPS/服务器的使用越来越多,Linux的安全问题也需要日渐加强。我们远程线上的服务器,通常是通过密码方式(ip+帐号+密码,可能还多一个ssh端口)登录,如果密码不够强壮,那么系统将是灰常不安全的。

下面介绍一种密钥验证登录的方式:

使用密钥验证登录

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

一.生成密钥

1.登录远程Linux  VPS/服务器,执行:ssh-keygen -t rsa

Generating public/private rsa key pair.

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

Enter passphrase (empty for no passphrase):                                    //输入密钥密码(如果不设置,请直接回车。强烈建议输入1个密码- -)

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

2、将~/.ssh/id_rsa.pub复制到~/.ssh/authorized_keys,并修改权限。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

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

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

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

1、XShell登录

①把服务器的~/.ssh/id_rsa文件下载到本地。

2、SecureCRT登录

①把服务器的~/.ssh/id_rsa文件下载到本地。

3、Linux客户端登录测试

①、把服务器的~/.ssh/id_rsa文件弄到linux客户端上,并重命名为rsa_for_55. (~/rsa_for_55)。

②、在Linux客户端执行:chmod 600 ~/rsa_for_55

再执行:ssh [email protected] -i  ~/rsa_for_55

第一次链接可能会提示确认,输入yes即可,再按提示输入密钥密码,没有问题就会出现用户提示符。

三、停用密码验证登录方式(前面都ok了,就把密码验证给取消吧)

1、修改/etc/ssh/sshd_config 文件

将PasswordAuthentication yes 修改成 PasswordAuthentication no

2、重启sshd服务

Debian/Ubuntu执行/etc/init.d/ssh restart ;CentOS执行:/etc/init.d/sshd restart。

--------------------

这样,需要同时依靠密钥和密码,才能登录服务器,安全又上升一个等级,有木有。。。

时间: 2024-10-12 14:41:18

密钥登陆Linux服务器的相关文章

CRT通过密钥登陆Linux服务器

第一步是创建公钥 1.首先用CRT创建密钥,下图是图示: 密钥长度默认就可以,越大越安全 上图中选择OpenSSH密钥格式,这样在后面就不用再转格式,在早起可能不能直接生成OpenSSH密钥格式,需要转换.我的版本可以直接生成.下面是转换的命令 ssh-keygen–i –f Identity.pub 最后点击完成,会弹出如下图示,一个我选择的是否,也可以选择是. 可以在之前的文件目录中找到刚才的私钥和公钥文件 因我并没有更改这个地址,所以默认是C:\Users\Administrator\Do

ahjesus SSHkey登陆linux服务器,无需密码,ubuntu

cd ~/.ssh/如果目录不存在就新建一个 mkdir ~/.ssh制作公匙 ssh-keygen -t rsa默认会生成id_rsa.pub的公匙将公匙推送到指定的服务器 scp id_rsa.pub [email protected]:~/.ssh/id_rsa.pub登录到服务器 ssh [email protected]执行如下命令cd ~/.sshcat id_rsa.pub >> authorized_keys销毁目录下公匙 rm id_rsa.pub退出服务器 exit 下次登

如何在secureCTR上使用公钥登陆Linux服务器?

我以前一直使用口令通过ssh协议登陆Linux服务器,最近公司要求使用公钥登陆.说是安全,好吧.那我们整一下.那到底使用公钥登陆服务器有什么好处呢?其实我理解是这样的: 当我们创建了公钥和私钥(这是一对,登陆时要使用私钥解密公钥)后,把公钥给任何服务器,登陆Linux服务器时,只要我们的私钥不变,登陆任何服务器都是不需要密码的.而是使用公钥私钥进行身份验证.安全的多!这里也隐含了一个小细节,就是不要把你的私钥给丢了.否则,你想想,几百台服务器上好不容易把你的公钥配置好,而你的私钥丢失,怎么办?私

在linux终端远程登陆linux服务器

在linux终端远程登陆linux服务器 原来在Linux终端远程登陆linux服务器是那么的容易,如果的服务器用户名是abc(也可以是root),只需要在终端输入: 然后电脑会提示输入密码就登录服务器了. 如果想在系统之间传送文件使用scp指令完成. 例如:从服务器下载文件到本机中. scp [email protected](服务器):/home/abc/xxxx(文件)  /xxxx(本机目录) 之后提示输入abc用户的密码: 反之,从本机上传文件到服务器: scp /xxxx(本机目录)

SecureCRT上使用公钥登陆Linux服务器

SecureCRT部分配置 1.首先生成公钥. 打开SecureCRT(我的版本为7.0,估计其他版本基本相同)程序,点击菜单栏的“工具”->“创建公钥”.按照步骤执行.其中一步比较重要就是选择公钥的格式.建议选择“OpenSSH”,否则在服务器端使用时需要转换为OpenSSH各式.何必多次一举呢.所以这里必须选择“OpenSSH”.如果选错了.重新生成一次就可以了. 然后选择公钥私钥存放的地方.默认Identity是私钥,Identity.pub是公钥. 2.把Identity.pub文件上传

使用ssh公钥密钥自动登陆linux服务器

作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的增多,每次登陆,系统都会提示输入用户名和密码,频繁的输入用户名和密码是一件让人很烦的事情.也许有人说可以用一些客户端工具,比如:SecureCRT 等,的确使用这些软件会方便很多,但是这些软件不是价格昂贵的商业软件就是依附于特定平台才能安装使用,所以我今天介绍的是使用 ssh 自带的功能实现使用客户端工具所能带来的便利,那就是使用 ssh 的公钥密钥实现自动登陆. 测试环境:操作系统:Re

远程密钥登陆linux系统(putty、xshell)

Putty; 1,  安装putty,puttygen. 2,  打开puttygen,单击Generate 生成密钥,save privatekey 保存密钥. 3,  复制公钥到Linux 1,  mkdir /root/.ssh  //创建/root/.ssh 目录,这个目录默认是不存在的. 2,  chmod 700 /root/.ssh  //更改这个目录的权限 3,  vi /root/.ssh/authorized_keys //把公钥内容粘贴到文件vi /root/.ssh/au

批处理程序:自动上传FTP,再登陆linux服务器执行更新

----转载请注明出处:博客园-邦邦酱好 最近在学批处理程序,一直没找到能够结合工作来使用它的地方,前几天测试服务端的时候突然想到可以这样做: 写一个批处理程序,自动通过FTP上传软件包到指定的地方,然后自动登录Linux服务器,解压缩软件包,进行服务端的更新. 先看一下总的调度脚本Auto_Update.bat: 先让用户输入服务器的地址,再选择要执行的操作. @echo off&setlocal enabledelayedexpansion :::::::::::::::::::::::::

putty 密钥登陆linux

在工作中如果root用户密码泄露,那后果是相当的严重,在远程登陆linux时尽量不要用root密码,使用 putty xshell.....可以做到这一点, 准备:putty软件 (为什么不用xshell..等因为它们好像要钱.....)下载地址:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html VMware+centos6.6  可以百度 开始实验:第一步 进入linux  vi /etc/sysconfig/net