使用Putty远程连接管理Linux实践

1、获取putty

获取 putty有很多方法,以下是我为大家提供的下载地址:

个人网盘地址,提取码:tz83
官方下载地址

解释:

  1. 官方下载的是 zip 压缩包,解压即可

  1. 打开文件之后就是这样的,因为是免安装的,所以需手动把“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 服务器呢?

  1. 下载生成密钥工具

在前面提供的 putty 下载地址里,你一定看到了很多可以下载的东西,不过我们已经下载 zip 压缩包了,里面完整的 putty 程序包含很多个小工具的,其中 puyttygen.exe 就是咱们这次所要用到的密钥生成工具。

  1. 生成密钥对

关于密钥的工作原理,如果你感兴趣可以到网上查一查,在这不想介绍太多无关知识点,不过,了解一下也没有什么不好。双击puttygen.exe, 右下角 Number of bits in a generated key1024 改成 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 目录,因为这个目录默认是不存在的,然后是更改权限。 关于 mkdirchmod 两个命令,会在后续学习里详细介绍,暂时你只要知道是用来创建目录和更改权限的就行了。然后是把公钥内容粘贴进 /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, 下次重启 Linuxselinux 还会开启。永久关闭 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 后会直接登陆系统。

其它综合-使用Putty远程连接管理Linux实践的更多相关文章

  1. 其他综合-使用Xshell远程连接管理Linux实践

    使用Xshell远程连接管理Linux实践 1. Xshell整体优化 1)点击 工具 ,然后选择 选项 2)在 常规 选项中,下面的存放路径根据个人爱好修改(可选默认) 3)在 更新 选项中,将 √ ...

  2. 远程连接Kali Linux使用PuTTY实现SSH远程连接

    远程连接Kali Linux使用PuTTY实现SSH远程连接 本书主要以在Android设备上安装的Kali Linux操作系统为主,介绍基于Bash Shell渗透测试.由于在默认情况下,在Andr ...

  3. 如何使用putty远程连接linux

    如何使用putty远程连接linux | 浏览:5001 | 更新:2013-08-24 10:36 1 2 3 4 5 分步阅读 putty是一款超轻量级的运行在windows操作系统上的用于远程连 ...

  4. JMC监控(Windows上远程连接监控Linux服务器的JVM)

    Windows上远程连接监控Linux服务器的JVM:1.Linux服务器上配置:在Tomcat的tomcat-wms/bin/catalina.sh中添加CATALINA_OPTS="-X ...

  5. 【Linux远程管理】Telnet远程连接管理

    Telnet,命令行界面下的远程管理工具,因为其历史非常悠久,几乎所有的操作系统都有该工具, 但是,Telnet在传输数据是是通过明文传输的,没有加密,所以现在几乎不会使用Telnet进行管理了. ( ...

  6. linux ssh远程连接控制 linux(centOS) 口令、密钥连接

    sshd服务提供两种安全验证的方法: 基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机. 基于密钥的安全验证:需要在本地生成"密钥对"后将公钥传送至服务端,进行公共密钥的比 ...

  7. 如何使用 PuTTY 远程连接矩池云主机

    PuTTY 是一款开源的连接软件,用来远程连接服务器,支持 SSH.Telnet.Serial 等协议. 矩池云的主机支持 SSH 登录,以下为使用 PuTTY 连接矩池云 GPU 的使用教程. 如您 ...

  8. putty远程连接ubuntu

      步骤一.在ubuntu系统中安装ssh,可使用如下的命令进行安装: sudo apt-get install openssh-server步骤二.为了保险起见,安装完成后重启一下ssh服务,命令如 ...

  9. windows 2008下远程连接 redhat linux 9桌面

    如何使用windows远程控制Linux桌面? 1.查看本机是否有安装vnc(redhat linux 9默认有安装vnc) rpm -q vnc vnc-server 如果显示结果为: packag ...

随机推荐

  1. PHP中的__get和__set理解

    先来了解一下PHP类中的__get和__set函数 当我们试图获取一个不可达属性时(比如private),类会自动调用__get函数.当试图设置一个不可达属性时(比如private),类会自动调用__ ...

  2. nodejs 搭建简易服务器

    www文件夹下 template文件夹下 server.js代码: const express=require('express'); const static=require('express-st ...

  3. linux学习笔记-linux主机上传下载文件至linux虚拟机的方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 1.上传文件 scp -r file 用户名@ip地址:目标目录 2.下载文件 scp -r 用户名@ip地址:文件 目标目录

  4. js生成随机颜色

    var shine=0.8; var arrays = ['[255,182,193,0.8]','[144,238,144,0.8]','[255,235,205,0.8]','[240,128,1 ...

  5. thymeleaf的配置

    1.在springboto项目中使用thymeleaf标签,必须先添加依赖,如下. <dependency> <groupId>org.springframework.boot ...

  6. 原生Js交互之DSBridge

    文章链接:https://mp.weixin.qq.com/s/Iqd0dKM-ZW4UwkIgSTnvYg 在上一篇文章「android 记一次富文本加载之路」中 介绍了关于android加载富文本 ...

  7. IPD体系向敏捷开发模式转型实施成功的四个关键因素

    文/杨学明  集成产品开发(IPD).集成能力成熟度模型(CMMI).敏捷开发(Agile Development)是当前国内外企业产品研发管理的最常用的3种模式.随着创新环境的快速发展,许多企业都会 ...

  8. 安装vmware-tools遇the path "" is not valid path to the gcc binary和the path "" is not a valid path to the 3.10.0-327.e17.x86_64 kernel headers问题解决

    #./vmware-install.pl踩点: 1.the path "" is not valid path to the gcc binary 2.the path " ...

  9. SQL SERVER 执行动态SQL EXEC

    :普通SQL语句可以用Exec执行 eg: Select * from tableName Exec('select * from tableName') Exec sp_executesql N's ...

  10. Class.isAssignableFrom与instanceof的区别

    isAssignableFrom 假设有两个类Class1和Class2.Class1.isAssignableFrom(Class2)表示: 类Class1和Class2是否相同. Class1是否 ...