`
haohappy2
  • 浏览: 326314 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ssh 自动登陆

阅读更多

 

一)winxp ssh linux

Connection- Data 里面有个 Auto-login username ,填入登录用户即可。这样每次登陆时就不用输入用户名,但要输入用户密码,如果想连用户密码也不用输入,实现完全自动化登陆的话,则往下看。

先来说下“使用 ssh 公钥实现 ssh 免密码登录”的原理:

密匙认证需要依靠密匙,首先创建一对密匙(包括公匙和密匙,并且用公匙加密的数据只能用密匙解密),并把公匙放到需要远程服务器上。这样当登录远程服务器时,客户端软件 就会向服务器发出请求,请求用你的密匙进行认证。服务器收到请求之后,先在你在该服务器的宿主目录下寻找你的公匙,然后检查该公匙是否是合法,如果合法就用公匙加密一随机数(即所谓的 challenge )并发送给客户端软件。客户端软件收到 “challenge” 之后就用私匙解密再把它发送给服务器。因为用公匙加密的数据只能用密匙解密,服务器经过比较就可以知道该客户连接的合法性。

操作过程如下:

1 .打开 PuTTYgen ,点击 Generate 按钮后,移动鼠标,即可生成一个公钥和私钥对。

按“ Save private key ”保存私钥前,可输入密钥注释和密钥口令,若让口令空,则不用 PAGEANT EXE 代理即可实现自动登陆;若设置了密码,则登陆时要输入密钥密码而非用户密码,如此时要实现自动登陆,则需要使用 PAGEANT EXE 代理,代理的使用在下面会说到。保存密钥后(密钥文件的后缀名为 .ppk )若需要修改,按 Load 按钮可以把先前保存的私钥重新打开,然后做些修改,比如修改注释和私钥口令。

2 .在 linux 里,为方便起见,输入如下命令,来编辑 authorized_keys 文件
mkdir -p $HOME/.ssh && touch $HOME/.ssh/authorized_keys \
&& chmod go-w $HOME $HOME/.ssh $HOME/.ssh/authorized_keys && vim $HOME/.ssh/authorized_keys

因为创建的文件,目录和用户主目录

($HOME, $HOME/.ssh, $HOME/.ssh/authorized_keys) 的权限必须是除本帐户外其他所有帐户都只能是只读的,否则的话,即使公钥、私钥都匹配无误,也是无法登入系统的。这是 SSH 服务器的一个安全要求,如果别的帐户可以修改你的 authorized_keys 的话,恶意的增加一个公钥,那对方不用你的帐户口令也能以你的帐户登入系统了。对于一些特殊要求,你可以在 SSH 服务器的配置文件 sshd_config 中用指令

StrictModes no

3 .把文本框里的公钥粘贴到 vim 中去,需要说明几点:这个文本框里的内容是一行的,粘贴到 vim 中前,先按字母 o 这个键,否则的话,粘贴进去后,开头的 ssh-rsa 会变成 sh-rsa ,为什么呢?我也不清楚。然后按 ZZ 保存退出。

4 .如果已经有了私钥,第 4 步里的那个公钥忘记保存了,就用 PuTTYgen 把这个私钥 Load 上去,然后重新复制一下公钥吧。

5 .在 PuTTY 的配置 Connection->SSH->Auth 这里面,指定上私钥,建议选上

Allow agent forwarding 这一项,然后记得保存 Session ,以后就不需要重复这一步了。
6
.最后指定自动登录的用户名, Connection -> Data -> Auto-login username

登录 , (若设置了密钥口令)此时输入的口令可不是主机上这个账户的口令了,而是先前创建的这个密钥的口令。以后不管这个账户的口令是什么,只要这个账户的 $HOME/.ssh/authorized_keys 文件中,有我们的公钥,我们就随时用匹配的私钥都可以登录了。配合后面提到的 Pagent ,我们连输入密钥口令这一步也可以忽略过去。

 (二)linux ssh linux (无需输入密码,自动登陆)

linux ssh linux
1.用"ssh-keygen -t rsa"产生Keys。

[kpl@bogon root]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/kpl/.ssh/id_rsa):
Created directory '/home/kpl/.ssh'.
Enter passphrase (empty for no passphrase):  <==这里按Enter
Enter same passphrase again:                 <==再按一次Enter
Your identification has been saved in /home/kpl/.ssh/id_rsa. <==这是私钥
Your public key has been saved in /home/kpl/.ssh/id_rsa.pub. <==这是公钥
The key fingerprint is:
03:df:47:b9:11:47:73:4c:31:49:1d:10:f0:64:f9:86kpl@bogon

2.将私钥id_rsa权限改为-rw-------,否则成功。
3.将私钥放在Client端的$HOME/.ssh/id_rsa里。
4.将公钥加载到Server端的需登陆的用户的authorized_keys,操作如下:
1)先在Client端以sftp将公钥id_rsa.pub复制到Server端需登陆的用户目录
#cd ~/.ssh
#sftp IP
sftp> put id_rsa.pub
sftp> exit
2)到Server上,将公钥转存到authorized_keys文件中
#cd ~/.ssh
#cat ../id_rsa.pub >> authorized_keys

分享到:
评论

相关推荐

    xshell ssh自动登录并执行命令脚本.rar

    本压缩包“xshell ssh自动登录并执行命令脚本.rar”提供了一种自动化的方式,通过Xshell自动连接到SSH服务器并执行预设的命令脚本,极大地节省了手动操作的时间。 首先,我们需要了解SSH(Secure Shell),这是一种...

    ssh 自动登录电脑运行命令脚本

    设置用户名密码后,ssh登录到另一台linux电脑,自动运行命令

    shell命令ssh自动登录linux服务器

    对于开发人员来说大多数时候都需要登录linux服务器,每次需要输入密码很是麻烦,shell脚本可以将每次输入验证步骤简化,只需要切换到脚本所在目录,输入“ ./ ssh_login.sh”即可实现自动登录

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

    ### Shell脚本实现SSH自动登录功能详解 #### 一、背景与需求 在日常工作中,运维人员或开发人员经常需要远程连接到不同的服务器进行管理和操作。对于Mac用户来说,可能会发现缺少像SecureCRT这样的图形界面工具来...

    Linux服务器SSH自动登录

    **Linux服务器SSH自动登录详解** 在Linux环境中,SSH(Secure Shell)是一种安全的网络协议,用于在远程系统之间建立加密的通信。SSH自动登录允许用户无须输入密码就能登录到另一台服务器,这对于系统管理员执行...

    PuTTY V0.62 官方正式版 SSH自动登录调试工具 小巧实用的调试助手 Linux系统开发调试助手

    PuTTY V0.62是深受用户喜爱的一款开源软件,主要功能是作为SSH(Secure ...其SSH自动登录功能和对多种协议的支持,使得它在IT领域中具有很高的实用性。无论是日常运维还是项目开发,PuTTY都能提供稳定且高效的服务。

    windows登录ssh服务器自动执行命令脚本.vbs

    widnows自动登录ssh服务器自动执行命令的脚本

    ssh自动连接服务器并邮件提醒

    自动SSH连接脚本可以极大地提高系统管理员的工作效率,特别是在需要定期检查或管理远程服务器时。邮件提醒则是一种常见的方式,用于及时通知用户关键事件的发生。下面,我们将详细探讨这些知识点。 首先,`check_...

    ssh自动登录的4种实现方法

    以下是四种实现SSH自动登录的方法: 1. **基于RSA密钥对的自动登录** - 首先在本地主机A上使用`ssh-keygen -t rsa`生成RSA密钥对,通常默认保存在`~/.ssh`目录下,公钥是`id_rsa.pub`,私钥是`id_rsa`。 - 接着在...

    用expect实现ssh自动登录服务器并进行批量管理的实现方法

    本文将深入讲解如何使用expect实现实现SSH自动登录服务器并进行批量管理。 首先,我们需要理解SSH(Secure Shell)协议,它是一种网络协议,用于在不安全的网络上安全地执行远程命令。SSH通常需要用户提供用户名和...

    centos7 ssh免密登录自动化配置脚本(ps:已测试过)

    本文将详细介绍如何使用shell和expect脚本在CentOS7系统上实现SSH免密登录的自动化配置。 首先,我们需要理解SSH免密登录的基本原理。SSH免密登录依赖于公钥认证机制。每个SSH用户都有一个密钥对,包括公钥和私钥。...

    auto-ssh:SSH自动登录

    1、ssh自动登录到服务器 2、保存历史登录信息,以便于快速登录 zssh 10.65.215.31 func57 func57 "开发环境" 如果只输入 zssh 会显示历史连接记录,选择后自动连接

    ssh密码登录自动化配置脚本

    ssh密码登录自动化配置脚本

    SSH密钥认证登录.doc

    在进行SSH自动登录配置时,务必检查所有涉及的目录和文件的权限,确保它们符合安全标准。使用`chmod`命令可以调整文件的权限,如`chmod 644 filename`将文件权限设置为可读可执行(rwxr--r--)。 总之,SSH密钥认证...

    auto_login_ssh.tar.gz

    SSH自动登录主要涉及到以下几个知识点: 1. **SSH原理**:SSH协议通过加密技术提供网络服务,如远程登录、文件传输等,确保数据传输的安全性。它默认使用TCP端口22,并通过公钥/私钥对进行身份验证,可以替代不安全...

    windows下通过ssh自动备份的脚本

    通过以上步骤,我们可以构建一个强大的Windows SSH自动备份系统,确保数据的安全和可靠性。记住,定期备份是防止数据丢失的重要措施,因此设置好这样的自动化流程对于任何组织和个人来说都至关重要。

    ssh注册登录项目

    SSH广泛应用于系统管理员远程管理服务器、开发者同步代码仓库以及各种自动化任务。 在SSH注册登录过程中,涉及以下几个关键知识点: 1. **公钥加密**:SSH基于公钥/私钥对的非对称加密技术。用户在目标主机上创建...

Global site tag (gtag.js) - Google Analytics