Putty实现自动登陆远程Linux主机的方法

所属分类: 脚本专栏 / linux shell 阅读数: 1435
收藏 0 赞 0 分享

由于工作需要,经常要从 Windows 主机访问远程的 Ubuntu 服务器,每次输入账号和老长的密码,感觉很麻烦,于是参考网上的教程简单的设置了一下就能自动登陆远程主机了,非常的方便。

虽然 Putty 也提供了 puttygen.exe 生成公/密钥,但是和 Linux 主机生成的 KEY 格式不同,需要手工修改格式,所以采用 Linux 主机自己生成 KEY 的方式。

首先登陆到 Linux 主机,具体过程如下:

1. 生成公钥和密钥

复制代码 代码如下:

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 目录即可。

更多精彩内容其他人还在看

php编译安装常见错误大全和解决方法

这篇文章主要介绍了php编译安装常见错误大全和解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Linux base shell重定向详解

这篇文章主要介绍了Linux base shell重定向的相关资料,并用一个简明例子总结了常见用法(在第三节),需要的朋友可以参考下
收藏 0 赞 0 分享

Linux Shell 常见的命令行格式简明总结

这篇文章主要介绍了Linux Shell 常见的命令行格式简明总结,非常实用,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell 命令替换的两种方式

这篇文章主要介绍了Shell 命令替换的两种方式,需要的朋友可以参考下
收藏 0 赞 0 分享

Python创建、删除桌面、启动组快捷方式的例子分享

这篇文章主要介绍了Python创建、删除桌面、启动组快捷方式的例子分享,需要的朋友可以参考下
收藏 0 赞 0 分享

shell基础学习中的字符串操作、for循环语句示例

这篇文章主要介绍了shell基础学习中的字符串操作、for循环语句示例
收藏 0 赞 0 分享

shell脚本中28个特殊字符的作用简明总结

这篇文章主要介绍了shell脚本中28个特殊字符的作用简明总结,需要的朋友可以参考下
收藏 0 赞 0 分享

linux shell流程控制语句实例讲解(if、for、while、case语句实例)

linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法
收藏 0 赞 0 分享

分享一个实用的iptables脚本(各种过滤写法参考)

这篇文章主要介绍了分享一个实用的iptables脚本(各种过滤写法参考),需要的朋友可以参考下
收藏 0 赞 0 分享

shell脚本实现ssh自动登录功能分享

mac下没有找到好用的类似secureCRT,就自己写了个自动登录的脚本,分享一下,如果是新浪的,就基本不用修改代码就直接能用
收藏 0 赞 0 分享
查看更多