Putty实现自动登陆远程Linux主机的方法
由于工作需要,经常要从 Windows 主机访问远程的 Ubuntu 服务器,每次输入账号和老长的密码,感觉很麻烦,于是参考网上的教程简单的设置了一下就能自动登陆远程主机了,非常的方便。
虽然 Putty 也提供了 puttygen.exe 生成公/密钥,但是和 Linux 主机生成的 KEY 格式不同,需要手工修改格式,所以采用 Linux 主机自己生成 KEY 的方式。
首先登陆到 Linux 主机,具体过程如下:
verdana@hostname:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/verdana/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/verdana/.ssh/id_rsa.
Your public key has been saved in /home/verdana/.ssh/id_rsa.pub.
The key fingerprint is:
51:51:da:44:28:b5:83:de:d2:1e:60:4f:81:c9:f1:1a verdana@hostname.com
注意 passphrase 留空。
2. 将公钥内容追加到 authorized_keys
代码如下:
# 若 authorized_keys 已经存在,则跳过 touch 创建文件这一步
verdana@hostname:~/.ssh$ touch authorized_keys
verdana@hostname:~/.ssh$ cat id_rsa.pub >> authorized_keys
3. 下载密钥并转换为 Putty 可识别的格式
Putty 无法识别 Linux 主机生成的的密钥,所以需要用 puttygen.exe 转换一下。
a) 使用 FTP 软件或者其它方式将生成的密钥 id_rsa 拷贝到客户端主机,这里我的客户端是 Vista 系统
b) 打开puttygen.exe,点击菜单上的:转换->导入密钥->保存密钥(如:id_rsa.ppk),密钥即转换完成,这里不设置密码保护
4. 设置 Putty
打开 Putty
a) 会话,主机名称填入:user@remote-host,user 是你的 Linux 主机登陆名称,remote-host 是 IP 或者远程主机域名,比如: root@phpvim.net。
b) 连接->SSH->认证->浏览,选择刚才转换后的密钥(id_rsa.ppk),之后保存会话即可。
5. 使用 Cygwin?
如果使用的 Cygwin 的 ssh 登录远端服务器的话,只需要把第3步生成的密钥 id_rsa (无需任何转换)拷贝至 Cygwin 用户的 .ssh 目录即可。
相关推荐
-
linux中expect的介绍与使用示例
一.概述 我们通过Shell可以实现简单的控制流功能,如:循环.判断等.但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能.而Expect就使用来实现这种功能的工具. Expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预.Expect的作者Don Libes在1990年 开始编写Expect时对Expect做有如下定义:Expect是一个用来实现自动交互功能的软件套件 (Expect [is a]
-
Linux 每天自动备份mysql数据库的方法
/usr/bin为mysql安装目录 建备份文件夹: mkdir mysql_data_bak 建脚本文件: touch autobackupmysql.sh 打开文件 vi autobackupmysql.sh 在脚本中加入如下内容: filename=`date +%Y%m%d` /usr/bin/mysqldump -opt mysql -u root -proot|gzip >/mysql_data_bak/name$filename.gz 这里注意了 一般的: ************
-
linux下mysql自动备份脚本代码
脚本放在 /home/user/mysql_backup.sh crontab # crontab -l # m h dom mon dow command 28 16 * * * /home/user/mysql_backup.sh 脚本如下 复制代码 代码如下: #!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # # Last updated: 20 March 2006 #
-
Linux中使用expect脚本实现远程机器自动登录
首先创建一个expect脚本ssh_expect,文件内容如下: #!/usr/bin/expect -f set hostname [lindex $argv 0] set user [lindex $argv 1] set passwd [lindex $argv 2] set timeout 30 set force_conservative 1 if {$force_conservative} { set send_slow {128 .1} } spawn ssh $user@$hos
-
expect实现批量修改linux密码脚本分享
最近对linux批量执行的脚本很感兴趣,在网上到处找有关expect批量执行脚本,今天就给大家共享一个批量修改密码的脚本. 脚本内容: 复制代码 代码如下: #!/usr/bin/expect if { $argc<2 } { send_user "usage: $argv0 <host file> <cmd file> \n" exit } # 机器列表数据格式: IP 端口 旧密码 新密码 set hostfile [
-
Linux下使用Shell脚本实现ftp的自动上传下载的代码小结
1. ftp自动登录批量下载文件. 复制代码 代码如下: #####从ftp服务器上的/home/data 到 本地的/home/databackup#####!/bin/bashftp -n<<!open 192.168.1.171user guest 123456binarycd /home/datalcd /home/databackuppromptmget *closebye! 2. ftp自动登录上传文件. 复制代码 代码如下: ####本地的/home/databackup to
-
linux下监视进程 崩溃挂掉后自动重启的shell脚本
================================================= 本文为khler原作,转载必须确保本文完整并完整保留原作者信息及本文原始链接 Author: HeYuanHui E-mail: khler@163.com QQ: 23381103 MSN: pragmac@hotmail.com ================================================= 如何保证服务一直运行?如何保证即使服务挂掉了也能自动重启?在写服务
-
linux系统启动自动激活网卡的解决方法
linux每次启动的时候网卡都需要激活才能上网,实在是很麻烦. 上网找了找资料,最后是这样解决的: # vi /etc/sysconfig/network-scripts/ifcfg-eth0 :1 查看eth0:1的配置文件. 都说有ONBOOT=yes这句就能开机启动自动激活,但配置文件中明明就有还是没起作用,开机总是要手动去激活. 于是在/etc/rc.d/rc.local文件中加入 ifup eth0 或者 ifconfig eth0 up eth0就是要激活的网卡
-
如何实现Linux操作系统的自动登录
开机自动登录Linux,并自动运行XWindow应用程序,有其特殊的应用背景,如基于Linux平台的监控系统,Linux启动后不需要身份验证,而直接运行监控程序等等.本文以Redhat7.2为平台,结合Linux启动过程,介绍了如何避免身份验证自动登录,并直接进入X Window自动运行应用程序. 一.Linux启动的最后阶段的工作 Linux在启动过程的最后阶段(具体启动步骤略),init会根据/etc/inittab文件的最后一行x:5:respawn:/etc/X11/prefdm-nod
-
Putty实现自动登陆远程Linux主机的方法
由于工作需要,经常要从 Windows 主机访问远程的 Ubuntu 服务器,每次输入账号和老长的密码,感觉很麻烦,于是参考网上的教程简单的设置了一下就能自动登陆远程主机了,非常的方便. 虽然 Putty 也提供了 puttygen.exe 生成公/密钥,但是和 Linux 主机生成的 KEY 格式不同,需要手工修改格式,所以采用 Linux 主机自己生成 KEY 的方式. 首先登陆到 Linux 主机,具体过程如下: 1. 生成公钥和密钥 复制代码 代码如下: verdana@hostname
-
expect实现Linux自动登陆远程机器脚本实例
expect 是由Don Libes基于Tcl(Tool Command Language )语言开发的,主要应用于自动化交互式操作的场景,借助Expect处理交互的命令,可以将交互过程如:ssh登录,ftp登录等交互过程,写到Shell脚本里以实现一些自动化操作. 在 Linux 下进行远程登陆的时候,总是要进行 ssh 输入账号密码,相对比较繁琐. 而有时候为了保护线上重要的机器不能随便登录,通常使用从本地登陆到公司的中间机器(跳板机)然后才能登陆到线上的机器.如果 A -> B -> C
-
基于SecureCRT向远程Linux主机上传下载文件步骤图解
有时候直接在Linux服务器上通过 wget 或 curl 工具下截比较大的网络文件时会比较慢,这时我们通常会改用在Windows平台通过迅雷等更加现代化的下载功具下好目标文件(迅雷开会员才能更高速的恶心操作是题外话哈,话说我也送了不少钱给迅雷~~~),这时就面临要把Windows平台下的文件传送到远程Linux服务器上的问题了. 把Windows平台下的文件传送到远程Linux服务器上的方法有很多,这里简单记录下在当前流行的Linux远程管理工具SecureCRT下如何操作及注意事项! 先使用
-
基于使用paramiko执行远程linux主机命令(详解)
paramiko是python的SSH库,可用来连接远程linux主机,然后执行linux命令或者通过SFTP传输文件. 关于使用paramiko执行远程主机命令可以找到很多参考资料了,本文在此基础上做一些封装,便于扩展与编写脚本. 下面直接给出代码: # coding: utf-8 import paramiko import re from time import sleep # 定义一个类,表示一台远端linux主机 class Linux(object): # 通过IP, 用户名,密码,
-
CMD里或登陆远程linux服务器时命令行下复制和粘贴实现方法
如果要在CMD中复制的话,必须通过鼠标. 复制:要先标记(在CMD中击鼠标右键)要复制的内容(或者称是范围),然后鼠标点击右键或按回车(或Ctrl+C)即可复制完成. 粘贴:击右键粘贴即可把复制到粘贴板上的内容粘贴到CMD中. putty登陆远程大型机 复制:双击选中或鼠标拖动选中要复制的内容 粘贴:点右键直接粘贴 Xshell登陆远程大型机 复制:光标选中要复制的内容,按Ctrl+Insert 粘贴:Shift+Insert
-
Xshell实现Windows上传文件到Linux主机的方法
写在前面,博主本身并没有开始做接口自动化测试,目前刚刚学完postman的教程,了解工具,现在脑海中基本上的框架是已经有了,因为我们知道postman的collection是可以命令行执行(nodejs+newman)的,那么就为我们做Jenkins持续集成提供了良好的基础,之前博主让开发分配了一个linux虚拟机,可以用来跑接口测试脚本,想来会比我的另一台win7性能要好,因为是centos,搞linux的对gui并不感冒,那么涉及到一个问题,我windows下面的collection jso
-
Zabbix监控Linux主机设置方法
说明: Zabbix监控服务端已经配置完成,现在要使用Zabbix对Linux主机进行监控. 具体操作: 以下操作在被监控的Linux主机进行,这里以CentOS 6.x系统为例. 一.配置防火墙,开启10050.10051的TCP和UDP端口 vi /etc/sysconfig/iptables #编辑防火墙配置文件 -A INPUT -s 192.168.21.127 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCE
-
pycharm远程linux开发和调试代码的方法
pycharm是一个非常强大的python开发工具,现在很多代码最终在线上跑的环境都是linux,而开发环境可能还是windows下开发,这就需要经常在linux上进行调试,或者在linux对代码进行编写,而pycharm提供了非常便捷的方式.具体实现在windows上远程linux开发和调试的代码步骤如下: 配置远程linux主机信息 选择Tools--Deployment--Configuration 这里选择SFTP就可以 这里添加SFTP主机信息然后可以天机测试连接,输入用户名和密码
-
python 使用paramiko模块进行封装,远程操作linux主机的示例代码
import time import paramiko class HandleParamiko: ''' 定义一个linux处理类 ''' def __init__(self, hostname, password, port=22, username='root'): ''' 构造器 :param hostname: 主机ip,type:str :param password: 密码,type:str :param port: 端口,type:int 默认22 :param username
-
详解Linux使用shell+expect远程登录主机
详解Linux使用shell+expect远程登录主机 最近使用Ubuntu系统想远程登录自己的vps主机,但是感觉自带的远程登录软件不太好使.于是乎想着怎么使用shell脚本来登录,于是Google之后整理了一下,记录一下,方便以后用到. 1.准备工作:安装expect for Ubuntu sudo apt-get update sudo apt-get install expect for Centos yum install expect 2.新建脚本粘贴以下内容 #!/usr/bin/
随机推荐
- flex 遍历Object对象内容的实现代码
- 在asp.net中KindEditor编辑器的使用方法小结
- ASP.NET MVC 4使用PagedList.Mvc分页的实现代码
- OpenStack之虚机热迁移的代码详细解析
- 常用的php图片处理类(水印、等比缩放、固定高宽)分享
- 在Python中使用判断语句和循环的教程
- MySQL 常见数据拆分办法
- 使用use index优化sql查询的详细介绍
- bash判断文件或文件夹是否存在的shell代码
- 谈谈Go语言的反射三定律
- javascript在IE下trim函数无法使用的解决方法
- linux系统sudo命令详解
- 浅谈java实现mongoDB的多条件查询
- JavaScript DOM学习第六章 表单实例
- 详解如何使用Node.js编写命令工具——以vue-cli为例
- Linux终端提示符(prompt)不如期生效的原因分析与解决
- Android实现轮播图无限循环效果
- Android 适配器模式应用及设计原理
- c#中分割字符串的几种方法
- 毕业论文-计算机论文注意事项