`
swvip
  • 浏览: 154429 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux 下不用输入密码通过ssh登入对方主机

阅读更多

LINUX程序员在日常工作中都会遇到远程登陆这样的问题,每次输入密码是不是很烦人.
我就在这整理一下,ssh证书到底是怎么搞的!
在linux下使用ssh认证,不输入密码访问另一台机器
在工作中由于常用到ssh登录其它机器,所在每台机器上做了ssh认证,这样就不用每次都输入繁琐的密码。
有两台机器:server_1 和 server_2
账号都为:work
转到work账号下:su - work
运行:ssh-keygen -d (一路回车下去 )
命令输出为:
Enter file in which to save the key (/home/work/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/work/.ssh/id_dsa.
Your public key has been saved in /home/work/.ssh/id_dsa.pub.
The key fingerprint is:
32:21:e1:3b:7d:6e:de:4b:39:da:af:38:fe:90:40:61
work@server_1.server.com
在/home/work目录下就产生了.ssh的隐含目录,进入些目录下产生两个文件:
id_dsa ------------ 私钥文件
id_dsa.pub ------------ 公钥文件
将id_dsa.pub复制一份文件名为:authorized_keys2
并将 authorized_keys2 的属性改为 600 即文件所属用户有读和写的权限,组用户和其它用户禁止读写,用命令:
代码:
cp id_dsa.pub authorized_keys2
chmod 600 authorized_keys2
同样在server_2上做以上操作,下一步就实现真正的ssh认证了:
将server_1上/home/work/.ssh目录下的id_dsa.pub公钥文件拷到server_2的/home/work/.ssh目录下(注意:不要覆盖掉server_2的id_dsa.pub,拷时要改名)如:
代码:
[work@server_1 .ssh]$ scp id_dsa.pub
[email=work@server_2:.ssh/server_1.pub]work@server_2:.ssh/server_1.pub[/email]
在server_2的/home/work/.ssh目录下就有了如下文件:
authorized_keys2
id_dsa
id_dsa.pub
server_1.pub
用命令:
代码:
cat server_1.pub >> authorized_keys2
(注意一定要用追加操作 ">>" 不能用 ">")
这样server_1到server_2的ssh认证就做好了。在server_1上用命令:
代码:
ssh
[email=work@server_2]work@server_2[/email]
就直接登录到server_2上,而不用输入密码了。
server_2到server_1的认证同上操作即可。

 

======================================================

 

另外一种方法

SSH 不输入密码连接远程 Linux 主机

#ssh-keygen

生成密钥,在生成过程中会要求输入pass phrase,这个是用来保护私钥的使用的,即每次你使用私钥的时候需要先输入这个密码,因此这里不要输入任何字符,直接回车。

#ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.1

192.168.0.1 为远程主机

#ssh root@192.168.0.1

分享到:
评论

相关推荐

    java linux ssh登陆

    这里,我们将会详细探讨Java如何通过SSH连接到Linux系统以及相关的关键概念和技术。 首先,SSH是一种网络协议,用于在不安全的网络上提供安全的远程登录和其他服务。它通过加密来保护数据传输,防止中间人攻击。在...

    Linux免密登入 使用公钥+私钥:MobaXterm设置无密码登录

    ### Linux免密登录详解:利用MobaXterm实现公钥+私钥认证 #### 一、密钥对的概念 ...通过上述步骤,您可以轻松地使用MobaXterm实现Linux环境下的免密登录。这种方法不仅提高了工作效率,还增强了系统的安全性。

    SSH客户端操作Linux

    因为远程主机的密钥已经加入到ssh客户端的已知主机列表中,当你第二次登陆远程主机时,只需要你输入远程主机的登录密码即可。 1 2 3 localhost$ ssh -l jsmith remotehost.example.com jsmith@remotehost.example....

    linux远程登入器

    Linux远程登录器是一种工具,允许用户通过网络连接到另一台运行Linux操作系统的计算机,以便进行管理和维护工作。这种工具在IT管理员、开发人员和系统工程师中非常常见,因为它们提供了便利性和灵活性,使得无需物理...

    linux自动登入脚本

    此外,如果你的脚本需要在无人值守的情况下运行,例如作为定时任务(cron job),可能还需要配置SSH无密码登录。这可以通过编辑`~/.ssh/config`文件来实现,为每个服务器创建一个配置段,启用`...

    Linux系统安装telnet服务的方法

    telnet默认情况下不允许root用户登入Linux主机。若要允许root用户登入,可以通过编辑/etc/pam.d/login文件或将/etc/securetty文件重命名为/etc/securetty.bak来实现。 七、安全的SSH telnet服务存在安全漏洞,因此...

    Linux下用SSH退出符切换SSH会话的实现方法

    这个技巧非常实用....端, 很是麻烦....1.登入远程主机: localhost$ ssh 172.16.1.165 oracle@172.16.1.165’s password: Last login: Fri Mar 26 14:48:08 2010 from euos 2.已连接远程主机: remotehost

    远程登入软件PuTTY.zip

    PuTTY是一款广受欢迎的开源远程登录工具,主要应用于Windows操作系统,它支持Secure Shell (SSH), Telnet, Serial和Rlogin等多种网络协议,使得用户能够安全地通过网络与远程服务器进行通信。PuTTY的设计目标是提供...

    linux学习笔记分享 (Linux入门绝佳)

    * /etc/hosts.equiv:设置远端机不用密码。 * /etc/inetd.conf:设定系统网络守护进程 inetd 的配置。 6. /home:使用者家目录。 7. /lib:系统会使用到的函数库。 8. /lib/modules:kernel 的相关模块。 9. /var/...

    Putty客户端登入

    PuTTY是一款广泛使用的开源软件,主要作为终端模拟器来实现远程登录功能,支持多种网络协议,包括Telnet、Rlogin、SSH(Secure Shell)1和2版本。在本文中,我们将深入探讨PuTTY客户端的使用及其相关知识点。 一、...

    Genero Studio设置

    #### 三、使用PuTTY(或Xshell)+ Xming登入远端LINUX主机桌面 针对基于Linux系统的主机,可以采用Xwindow进行远程桌面登录。具体步骤包括: 1. **安装Xming**:首先获取并安装Xming,这是一个X Window系统服务器...

    putty-32bit-0.72-installer.rar

    PuTTY是一款广泛应用的开源软件,主要用于在Windows操作系统上通过SSH(Secure Shell)协议进行远程登录到Linux服务器或者其他支持SSH的设备。PuTTY提供了一个安全的终端模拟器,使用户可以与远程主机进行交互,执行...

    linux系统日志分析.pdf

    通过登录文件(日志文件)可以根据屏幕上面的错误讯息与再配合登录文件的错误信息,几乎就可以解决大部分的 Linux 问题。 日志文件的重要性: * 日志文件是系统管理员监控系统的记录,系统的一举一动基本都会记录...

    一篇非常好的linux学习笔记分享(Linux入门绝佳).pdf

    13. /etc/hosts.equiv:设置远端机不用密码的文件。 14. /etc/inetd.conf:设定系统网络守护进程inetd的配置文件。 15. /etc/gateways:设定路由器的文件。 16. /etc/protocols:设定系统支持的协议的文件。 17....

    Linux运维必会命令笔记

    - `who`:查看当前登入主机的用户终端信息。 - 示例:`who` 显示当前登录用户的信息。 - **历史命令**: - `history`:用于显示历史执行过的命令。 - 示例:`history` 显示历史命令。 - 使用 `!编码数字` 的...

    远程登录putty 64位

    它允许用户通过安全的加密连接访问远程服务器,尤其在Linux、Unix以及Windows等操作系统中被广大系统管理员和开发者所青睐。PUTTY 64位版本特别适用于64位Windows操作系统,它提供了更高效能和更好的兼容性。 PUTTY...

    SecureCRT登陆

    1. **多会话管理**:它允许用户同时打开并管理多个终端会话,每个会话可以设置不同的连接参数,如主机名、端口号、用户名和密码。 2. **颜色配置**:用户可以根据个人喜好自定义终端的颜色方案,提高代码阅读的舒适...

    linux目录架构

    /etc/hosts 设定用户自已的IP与名字的对应表 /etc/hosts.allow 设置允许使用inetd的机器使用 /etc/hosts.deny 设置不允许使用inetd的机器使用 /etc/hosts.equiv 设置远端机不用密码 /etc/...

    SecureCRT6.02

    通过加密通信数据,SSH可以保护用户的密码和其他敏感信息,防止被窃听或篡改。SecureCRT支持SSH1和SSH2两种版本,提供了更高的安全性。 Telnet,即Telecommunication Network,是一种古老的远程登录协议,但在某些...

Global site tag (gtag.js) - Google Analytics