使用Putty远程连接管理Linux实践
1、获取putty
获取
putty
有很多方法,以下是我为大家提供的下载地址:
解释:
- 官方下载的是
zip
压缩包,解压即可
- 打开文件之后就是这样的,因为是免安装的,所以需手动把“PUTTY.EXE”发送到桌面快捷方式
2、用putty登陆你的Linux
之前设置
IP
,就是给这一部分做铺垫,没有IP
是没有办法远程连接Linux
的。如果不熟悉,可以自己查找资料,看我以往的博客,或者在下方评论留言。
在双击先前下载的
putty.exe
文件,这个小工具特别小巧仅仅有几百K,但是你可不要小看它,功能可是不少呢,而且这个工具的帮助文档够你看好几天的了,关键是全都是英文。如果你的英文能力差一些也没有关系,相信随着你用Linux
越来越多,你的英文能力也会越来越强。
a、填写远程
Linux
基本信息
Host Name (or IP address)
这一栏填写你在上一小节刚刚配置的IP
,小编的Linux
IP为 “192.168.244.168
”。Port
这一栏保持默认不变。Connection type
也保持默认。Saved Sessions
这里自定义一个名字,主要用来区分主机,因为将来你的主机会很多,写个简单的名字即方便记忆又能快速查找。小编写“CentOS 7
学习 ”
b、定义字符集
计算机里最烦人的就是字符集了,尤其是
Linux
,搞不好就会乱码。前面咱们已经安装CentOS
时已经选择了英文,但在putty
这里设置也要支持中文。点一下左侧的Window
–>Translation
, 看右侧的Character set translation on received data
, 选择UTF-8
.
之后再点一下左侧的
Session
, 然后点右侧的save
.
c、远程连接你的
Linux
保存 session
后,点最下方的 Open
. 初次登陆时,都会弹出一个友情提示,它的意思是要打开的 Linux
还未在本机登记,问我们是否要信任它。如果是可信任的,则点 是
登记该主机,否则点 否
或者 取消
,我们当然要点 是
. 之后弹出登陆提示:
login as: rootroot@192.168.244.168's password:Last failed login: Tue Nov 13 00:32:42 CST 2018 on tty1There was 1 failed login attempt since the last successful login.Last login: Mon Nov 12 17:13:03 2018 from 192.168.244.1
[root@localhost ~]#
输入用户名以及密码后,就登陆 ·Linux· 系统了。登陆后会提示最后一次登陆系统的时间以及从哪里登陆。
3、使用密钥认证机制远程登录Linux
SSH
服务支持一种安全认证机制,即密钥认证。所谓的密钥认证,实际上是使用一对加密字符串,一个称为公钥(publickey)
, 任何人都可以看到其内容,用于加密;另一个称为密钥(privatekey)
,只有拥有者才能看到,用于解密。通过公钥加密过的密文使用密钥可以轻松解密,但根据公钥来猜测密钥却十分困难。 ssh的密钥认证就是使用了这一特性。服务器和客户端都各自拥有自己的公钥和密钥。如何使用密钥认证登录linux
服务器呢?
- 下载生成密钥工具
在前面提供的
putty
下载地址里,你一定看到了很多可以下载的东西,不过我们已经下载zip
压缩包了,里面完整的putty
程序包含很多个小工具的,其中puyttygen.exe
就是咱们这次所要用到的密钥生成工具。
- 生成密钥对
关于密钥的工作原理,如果你感兴趣可以到网上查一查,在这不想介绍太多无关知识点,不过,了解一下也没有什么不好。双击
puttygen.exe
, 右下角Number of bits in a generated key
把1024
改成2048
, 然后点Generate
, 这样就开始生成密钥了,请来回动一下鼠标,这样才可以快速生成密钥对,大约十几秒后就完成了。Key comment:
这里可以保持不变也可以自定义,其实就是对该密钥的简单介绍;Kye passphrase:
这里用来给你的密钥设置密码,这样安全一些,当然也可以留空,建议你设置一个密码;Confirm passphrase:
这里再输入一遍刚刚你设置的密码。
3、保存私钥
点
Save private key
, 选择一个存放路径,定义一个名字,点保存
。请保存到一个比较安全的地方,谨防丢掉或被别人看到。
4、复制公钥到
Linux
回到刚才生成密钥的窗口,在
Key
的下方有一段长长的字符串,这一串就是公钥的内容了,把整个公钥字符串复制下来。然后粘贴到你的Linux
的/root/.ssh/authorized_keys
文件里。下面请跟着一起来做操作:
[root@localhost ~]# mkdir /root/.ssh
[root@localhost ~]# chmod 700 /root/.ssh
首先创建
/root/.ssh
目录,因为这个目录默认是不存在的,然后是更改权限。 关于mkdir
和chmod
两个命令,会在后续学习里详细介绍,暂时你只要知道是用来创建目录和更改权限的就行了。然后是把公钥内容粘贴进/root/.ssh/authorized_keys
文件。
[root@localhost ~]# vi /root/.ssh/authorized_keys
回车后,按一下
i
进入编辑模式,然后直接点击鼠标右键就粘贴了,这是putty
工具非常方便的一个功能。粘贴后,按一下Esc
键,然后输入:wq
回车保存退出该文件。
5、关闭
Selinux
如果不关闭
selinux
, 使用密钥登陆会提示 “Server refused our key
”, 关闭方法:
[root@localhost ~]# setenforce 0
这个只是暂时命令行关闭
selinux
, 下次重启Linux
后selinux
还会开启。永久关闭selinux
的方法是:
[root@localhost ~]# vi /etc/selinux/config
回车后,把光标移动到
SELINUX=enforcing
按一下i
键,进入编辑模式,修改为
SELINUX=disabled
按
Esc
, 输入:wq
回车,然后重启系统(也可不重启)
6、设置
putty
通过密钥登陆
打开
putty.exe
点一下你保存好的session
,然后点右侧的Load
, 在左侧靠下面点一下SSH
前面的+
然后选择Auth
, 看右侧Private key file for authentication:
下面的长条框里目前为空,点一下Browse
, 找到我们刚刚保存好的私钥,点打开
。此时这个长条框里就有了私钥的地址,当然你也可以自行编辑这个路径。然后再回到左侧,点一下最上面的Session
, 在右侧再点一下Save
.
7、使用密钥验证登陆
Linux
保存好后
session
, 点一下右下方的Open
. 出现登陆界面,你会发现和原来的登陆提示内容有所不同了。
login as: root
Authenticating with public key "rsa-key-20181114"
Passphrase for key "rsa-key-20181114":
Last failed login: Wed Nov 14 21:10:05 CST 2018 on tty1
There was 1 failed login attempt since the last successful login.
Last login: Wed Nov 14 13:30:15 2018 from 192.168.244.1
[root@localhost ~]#
现在不再输入
root
密码,而是需要输入密钥的密码,如果你先前在生产密钥的时候没有设置密码,你输入root
后会直接登陆系统。