`

Unix/Linux ssh配置无密码登录

阅读更多

假设客户机名sy1,IP为ip1.用户名user;服务器名sy2.IP为ip2.用户名user

在sy1上输入:

ssh-keygen -t rsa

 

然后弹出一些问题,一路回车。然后输入:

scp ~/.ssh/id_rsa.pub user@ip2:/home/user/.ssh/ip2

 

 

输入sy2上user的密码,拷贝完成。
在sy2上,输入:

cat ~/.ssh/ip2 >> ~/.ssh/authorized_keys 

 
(以上步骤也可用ssh-copy-id命令:ssh-copy-id user@ip2 ,不过少了一个授权文件的备份ip2)

在ubuntu10.04里,相关文件和目录的权限都不需要改。
但是会有另外一个问题就是sy2返回Agent admitted failure to sign using the key错误,
简单处理方法就是在sy1上执行两个命令:

ssh-agent  
ssh-add id_rsa 

 

然后就可以实现无密码登录了。

 下面为测试实验具体.

 

 

 

---------------------------------------------------------------------------------------------------------------------------

 

 

 

测试实验环境: Centos

 

测试一: 10.16.MM.AA是否能无密登录10.16.MM.BB:用户名为ew69

 

/etc/hosts文件配置

# Do not remove the following line, or various programs
# that require network functionality will fail.
#127.0.0.1      localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
10.16.MM.AA     SCLABHADOOP01
10.16.MM.BB     SCLABHADOOPVM01
10.16.MM.CC     SCLABHADOOPVM02

 
1. 10.16.MM.AA操作


-bash-3.2$ ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home/ew69/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ew69/.ssh/id_rsa.
Your public key has been saved in /home/ew69/.ssh/id_rsa.pub.
The key fingerprint is:
ff:c9:3d:41:d1:1e:a9:18:dc:be:e1:ae:61:56:c2:fe ew69@SCLABHADOOP01
-bash-3.2$ scp ~/.ssh/id_rsa.pub ew69@SCLABHADOOPVM01:/home/ew69/.ssh/10.16.MM.BB
ew69@sclabhadoopvm01's password:
id_rsa.pub                                               100%  400     0.4KB/s   00:00   

 


2. 登录10.16.MM.BB操作:


bash-3.2$ ssh ew69@SCLABHADOOPVM01
ew69@sclabhadoopvm01's password:
Last login: Fri May 18 13:10:04 2012 from 10.16.MM.AA
[ew69@SCLABHADOOPVM01 ~]$ cat ~/.ssh/10.16.MM.BB >> ~/.ssh/authorized_keys
[ew69@SCLABHADOOPVM01 ~]$

 

3. 在10.16.MM.AA验证是否能无密登录10.16.MM.BB:
-bash-3.2$ ssh SCLABHADOOPVM01
Last login: Fri May 18 17:15:07 2012 from 10.16.MM.AA
[ew69@SCLABHADOOPVM01 ~]$

 

 

测试二: 10.16.MM.AA是否能无密登录10.16.MM.CC:用户名为ew69

(同事保持测试一中能无密登录)

1. 10.16.MM.AA操作

 

-bash-3.2$ scp ~/.ssh/id_rsa.pub ew69@SCLABHADOOPVM02:/home/ew69/.ssh/10.16.MM.CC
ew69@sclabhadoopvm01's password:
id_rsa.pub                                               100%  400     0.4KB/s   00:00   

 


2. 登录10.16.MM.BB操作:


bash-3.2$ ssh ew69@SCLABHADOOPVM0B2
ew69@sclabhadoopvm02's password:
Last login: Fri May 18 13:10:04 2012 from 10.16.MM.AA
[ew69@SCLABHADOOPVM01 ~]$ cat ~/.ssh/10.16.MM.CC >> ~/.ssh/authorized_keys
[ew69@SCLABHADOOPVM01 ~]$

 

3. 在10.16.MM.AA验证是否能无密登录10.16.MM.CC:
-bash-3.2$ ssh SCLABHADOOPVM02
Last login: Fri May 18 17:15:07 2012 from 10.16.MM.AA
[ew69@SCLABHADOOPVM01 ~]$

 

4. 在10.16.MM.AA验证是否能无密登录10.16.MM.BB(测试一已经完成)
-bash-3.2$ ssh SCLABHADOOPVM01
Last login: Fri May 18 17:15:07 2012 from 10.16.MM.AA
[ew69@SCLABHADOOPVM02 ~]$

 

 

特别注意:

 

每个用户下的~/.ssh/authorized_keys 的权限必须只有用户自己有w权限, 其他用户不能有w权限,一般配置authorized_keys的权限为600, 否则ssh无密登录会不成功.

这个也是为了安全的考虑!

 

分享到:
评论

相关推荐

    Spotlight on Unix/Linux

    - `ssh`:远程登录其他Unix/Linux主机。 - **Shell脚本编写:** - 使用bash或其他shell编写自动化脚本。 - 脚本变量、条件语句、循环控制等基础语法。 #### 四、Unix/Linux文件系统管理 - **文件系统结构:** -...

    ssh如何配置无密码远程登录1

    此外,C#编程语言通常用于开发Windows应用程序,而SSH配置主要涉及Linux或Unix系统。不过,C#可以通过库如SharpSSH或SSH.NET来实现SSH连接和相关操作。如果你需要在C#项目中实现类似功能,这些库可以帮助你进行SSH...

    UnixLinux代理程序

    远程控制:Unix/Linux代理程序通常采用SSH(Secure Shell)协议,提供加密的网络通信,确保数据传输的安全性。通过SSH,用户可以进行命令行交互,执行各种系统命令,例如更新系统、安装软件、查看进程状态等。此外,...

    ssh配置文件ssh配置文件

    客户端的配置文件通常位于`~/.ssh/config`(在Unix/Linux系统中,用户的家目录下),而服务器端的配置文件是`/etc/ssh/sshd_config`。 客户端配置文件`~/.ssh/config`: 这个文件允许用户为不同的主机定义别名,...

    linux unix 远程连接工具 Putty

    - **公钥认证**:通过SSH公钥私钥对,用户可以实现无密码登录,提高安全性。 - **窗口调整**:用户可以根据需要调整Putty窗口的字体大小、颜色方案和布局。 - **多标签支持**:通过Session Manager,可以同时打开...

    SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。

    SecureCRT是一款专为Windows用户设计的强大工具,它提供了安全的远程访问功能,使得用户能够通过SSH1和SSH2协议连接到UNIX、Linux以及VMS等操作系统。SSH(Secure Shell)是一种网络协议,用于在不安全的网络环境中...

    WINSCP-SFTP SSH免密码登录

    **描述解析:** "WINSCP 可创建密钥交互SSH免密码登录" 表示WINSCP支持配置SSH密钥对,通过公钥认证的方式,使得用户在每次连接SFTP服务器时,不再需要手动输入私钥对应的密码,提高工作效率并增强安全性。...

    MacLinux无密码ssh客户端,一键登录远程服务器。一个SSH远程客户端,可一键登录远程服务器.zip

    标题中的“MacLinux无密码ssh客户端,一键登录远程服务器”指的是使用SSH(Secure Shell)协议在Mac或Linux操作系统上实现无需密码的自动登录到远程服务器的功能。SSH是一种网络协议,用于安全地远程登录、执行命令...

    linux常用软件ssh

    Linux SSH(Secure Shell)是一种网络协议,用于在不安全的网络上安全地远程登录到Linux或Unix系统。SSH提供加密的网络服务,包括命令行接口(CLI)的远程登录、文件传输以及网络服务的控制。它取代了早期的不安全的...

    ssh的配置文件

    在Linux和Unix-like系统中,SSH配置文件是管理SSH服务器和服务的关键元素,它允许管理员自定义各种设置以增强安全性或优化性能。这篇文章将深入探讨SSH配置文件,以及与之相关的知识。 SSH配置文件通常位于`/etc/...

    SSH:UNIX SECURE SHELL工具

    SSH,全称Secure Shell,是一种网络协议,用于在不安全的网络上安全地远程登录到UNIX/Linux系统。它提供加密的网络通信,确保了数据的私密性和完整性,是管理员和用户进行远程管理、文件传输等操作的重要工具。在...

    Unix ssh快速后门

    因此,系统管理员应定期检查系统配置,确保没有异常的SSH配置或未授权的PAM模块。同时,应该加强系统审计,监控任何异常的登录行为。对于个人或企业来说,了解这些攻击手段可以帮助提高网络安全意识,及时发现并阻止...

    linux命令大全(修正版)

    配置SSH公钥认证可实现无密码登录,提高管理效率。 三、CSS(Cascading Style Sheets) CSS是网页设计的重要组成部分,用于定义HTML或XML(包括如SVG、MathML等各种XML方言)文档的呈现。CSS描述了如何在媒体(如...

    SSH无密码登录

    除此之外,还有其他工具或方法可以实现SSH无密码登录,例如使用OpenSSH在Linux和Unix系统中,通过同样的密钥对机制,但操作过程和界面略有不同。 需要注意的是,为了保障无密码登录的安全性,私钥文件应当妥善保管...

    ssh原理和配置文件详解

    SSH的主要配置文件在Unix/Linux系统中通常是`/etc/ssh/sshd_config`(服务器端)和`~/.ssh/config`(客户端)。这些文件中包含了SSH服务的各种设置,如端口号、加密算法、身份验证方法等。 - `sshd_config`文件:...

    SSH2配置实例

    将生成的公钥(id_rsa.pub)复制到远程服务器的`~/.ssh/authorized_keys`文件中,即可实现无密码登录。 现在,我们可以使用SSH客户端进行连接。在Linux或macOS终端中,使用`ssh`命令: ```bash ssh 用户名@远程...

    mac OS SSH linux

    #### 三、SSH配置优化 ##### 1. 配置SSH服务 - 在Linux服务器上编辑`/etc/ssh/sshd_config`文件,确保以下设置正确: - `RSAAuthentication yes`:启用RSA密钥认证。 - `PasswordAuthentication no`:禁用密码...

    PDF电子书《SSH:UNIX SECURE SHELL工具》

    配置文件一般位于`/etc/ssh/sshd_config`,其中可以设置端口号、密码策略、允许登录的用户等参数。启动和停止SSH服务通常使用`systemctl start sshd`和`systemctl stop sshd`命令。 **SSH的使用** - **远程登录**...

    cygwin安装sshd服务并配置无密码登录

    配置无密码登录涉及生成SSH密钥对并将其添加到authorized_keys文件中,这通常是通过SSH的公钥认证实现的。以下是步骤: 1. 生成SSH密钥对:在Cygwin终端中,使用`ssh-keygen`命令生成RSA或ED25519类型的密钥对。 ...

Global site tag (gtag.js) - Google Analytics