在Windows下不使用密码远程登陆Linux

        在登陆Linux进行管理的时候我们通常会使用用户名和密码进行登陆,这样一来是比较麻烦,二来是不安全,为了解决这个问题,我们可以使用公私钥(public keys和private keys)进行认证。简单来说公钥存放在服务器上,私钥存放在客户端,接下来看一下配置过程,首先以root身份登录服务器。

        为了能够顺利使用key进行认证,首先确定ssh服务的Pubkey认证功能是否打开,执行命令:vi /etc/ssh/sshd_config,找到PubkeyAuthentication yes,看前面的#是否去掉,如果没有去掉的话把#去掉,然后执行:service sshd restart重启ssh服务使之生效。

       接下来在服务器上执行命令/usr/bin/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:
        仍然按回车。然后执行ls -l /root/.ssh/,会看到有几个文件:id_rsa,id_rsa.pub,known_hosts。其中id_rsa是我们在客户端使用的私钥文件,id_rsa.pub是在服务端的公钥文件。对id_rsa.pub进行重命名,

执行命令:mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys

然后将私钥文件id_rsa拷贝到我们要连接服务器的电脑上(可以使用ssh或者ftp等工具将文件下载下来)。如果我们是用putty进行登陆Linux,还需要将key进行转换一下(putty的key格式和ssh-keygen生成的不同)。打开工具PUTTYGEN.EXE,选择file-->Load private key

        然后选择All Files(*.*),找到下载下来的id_rsa文件,选择

        会提示点击确定回到PUTTYGEN的主界面,然后点击save private key按钮,会有一个提示,直接点是(Y),选择保存路径并输入要保存的文件名,例如pri_key。到这里key的转换工作已经完成。下面可以使用key进行登陆了。打开putty在Host Name (or IP address)这一项输入要登录的用户和远程服务器IP,这里使用root用户登陆,ip地址是115.47.169.130则输入root@115.47.169.130,然后在左侧选择Connection-->SSH-->Auth 在右侧选择Browse找到我们刚刚保存的pri_key,要保存本次session的话可以切换到Session在Save Sessions 输入想要保存的名字然后点击Save即可。点击Open我们会发现没有让我们输入用户名和密码就登陆成功了。如果想一直使用key进行认证可以把密码认证关闭,编辑/etc/ssh/sshd_config将PasswordAuthentication 设置为no然后重启ssh即可,这样就无法通过用户名密码登陆了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值