`
bobboy007
  • 浏览: 31520 次
  • 性别: Icon_minigender_1
  • 来自: 淄博
社区版块
存档分类
最新评论

ssh 自动登陆原理及实现(linux下)

阅读更多

简介
a.ssh 是种通用的网络传输加密机制
b.ssh采用的是不对称加密方式传输,分一个公匙和一个私匙
   公匙用来加密  私匙用来解密
   .ssh/目录下可能存在的文件
   authorized_keys   -其他机器生成的公匙放在本机的,名字必须是这个
   id_dsa  -密匙
   id_dsa.pub -公匙
   known_hosts  -曾经用ssh连过的机器

 
c.ssh分两个版本1.x和2.x ,目前linux上一般用的都是openssh 兼容1.x和2.x
原理
需求:我想在101上不输入密码就能进入102服务器例如ssh bobboy007@192.168.1.102  就直接登录到102了
假设:有两台机器linux机器
192.168.1.101(客户端)
192.168.1.102(服务器)
 root@192.168.1.101#ssh bobboy007@192.168.1.102
 当我输入这个命令后会发生什么呢?
 1.linux会在/home/root/.ssh/下查找公匙id_dsa.pub,若找到就会发送到102服务器去。找不到则提示输入bobboy007在102上的密码
 2.192.168.1.102接到此文件后会和/home/bobboy007/.ssh/authorized_keys 核对是否一样,一样执行 3
 3.192.168.1.102 加密一个东西传给192.168.1.101,
 4.101收到后会用密匙 解密(可能会问为什么不用公匙倒过来解密呢?不行,倒不回去的,因ssh加密时用的不对称加密,关于这块内容自己查资料去)
 5.若解密后正确则连接成功
具体操作
1.root@192.168.1.101~#ssh-keygen -t dsa   之后一直回车
2. root@192.168.1.101~#ls -la ~/.ssh/
3. root@192.168.1.101~#cat .ssh/id_dsa.pub | ssh bobboy007@192.168.1.102 "cat - >>~/.ssh/authorized_keys"
之后输入bobboy007在102的密码
4. root@192.168.1.101~#ssh ssh bobboy007@192.168.1.102 回车就直接登录到102 了,


用途: 可配合rsync做文件分发和负载均衡

可能碰到的问题:

设置完了,还需要输入密码,请查看下要登录的机器中.ssh目录及下边文件的权限。

.ssh目录drwx------    700必须,否则还提示需要输入密码

.ssh/目录下文件权限-rw------   600 ,否则同上

/home/username/  自己的家目录,权限700 ,否则也会提示输入密码(被卡这里好久才发现)    

  1. chmod 700 /home/username/.ssh  
  2. chmod 600 /home/username/.ssh/*  


这样一切就可以直接免密码登录了。

0
0
分享到:
评论

相关推荐

    linux系统的ssh免密码登录机制原理及实现范例

    ### Linux系统的SSH免密码登录机制原理及实现范例 #### 一、SSH免密码登录机制原理 SSH(Secure Shell)是一种网络协议,用于计算机之间的加密登录。它可以在不安全的网络上提供一种安全的远程登录方法。对于经常...

    C#版SSH、SCP,可作为客户端连结LINUX源码

    标题中的"C#版SSH、SCP,可作为客户端连结LINUX源码"表明这是一个使用C#编程语言实现的SSH(Secure Shell)和SCP(Secure Copy)客户端库,用于连接Linux服务器。SSH是一种网络协议,用于安全地远程登录到服务器,...

    基于SSH实现登录的Demo

    对于初学者,理解SSH的工作原理和配置过程至关重要,因为这不仅涉及到日常的远程操作,也是自动化运维、持续集成/持续部署(CI/CD)等场景的基础。熟练掌握SSH能够提高工作效率,保障网络安全。在实践中,还可以探索...

    webssh远程登录

    本篇文章将深入探讨WebSSH的工作原理、开发技术以及如何实现远程登录。 一、WebSSH的工作原理 WebSSH的核心是通过Web浏览器来实现SSH(Secure Shell)协议。SSH是一种加密的网络协议,用于在网络中安全地传输数据...

    SSH密钥方式登录Linux

    ### SSH密钥方式登录Linux详解 #### 一、引言 在网络安全日益受到重视的今天,传统的基于密码的登录方式面临着被破解的风险。为提升服务器安全性,采用SSH密钥方式进行登录成为一种趋势。本文将详细介绍如何通过...

    Linuxssh登录远程服务器 expect

    标题中的"Linux ssh登录远程服务器 expect"指的就是使用 Expect 脚本来自动化Linux系统中通过SSH协议登录远程服务器的过程。这种方式对于需要频繁进行自动化运维任务的管理员来说非常有用,可以显著提高效率,减少...

    SSH密钥登录

    #### 二、SSH密钥登录原理 SSH密钥登录基于公钥加密技术实现。具体来说,用户首先在本地计算机上生成一对密钥:公钥和私钥。其中,公钥可以公开,用于加密数据;私钥则必须保密,用于解密数据。在进行SSH连接时,...

    ssh连linux客户端

    在Linux环境下,常用的SSH客户端工具有`ssh`命令行工具和图形化界面的工具,如`PuTTY`(Windows平台)和`MobaXterm`(多平台)。`ssh`命令行工具是Linux和Unix系统的内置工具,用户只需输入`ssh 用户名@主机地址`...

    Linux下SSH Session复制功能实现方法.docx

    Linux下的SSH(Secure Shell)是一种安全的网络协议,用于在远程服务器上进行命令行交互、文件传输等操作。SSH Session复制功能,实际上是指通过SSH连接的控制复用(Connection Sharing),使得多次SSH登录到同一台...

    详解SSH如何配置key免密码登录

    - 登录到远程主机,在用户主目录下创建或进入`.ssh`目录; - 创建或编辑`authorized_keys`文件,并将公钥粘贴进去; - 保存并退出。 4. **检查远程主机上的公钥** 登录远程主机后,检查`.ssh/authorized_keys`...

    linux操作系统原理及应用详解

    总结来说,Linux操作系统原理及应用涵盖了系统设计、管理、网络、安全等多个方面,掌握这些知识不仅有助于理解操作系统的基本运作机制,也能提升在各种场景下的实际操作能力。通过阅读《Linux操作系统原理及应用详解...

    Linux系统ssh无密码登录设置手册.docx

    Linux系统SSH无密码登录设置手册 1. 引言 ...总结,通过理解SSH的工作原理并按照上述步骤配置,可以实现Linux系统之间的安全无密码登录。在享受便利的同时,不要忘记加强安全措施,防止未经授权的访问。

    SSH-windows to linux

    以下是一些关于SSH及如何在Windows和Linux之间使用它的关键知识点: 1. **SSH原理**:SSH通过公钥加密技术建立安全通道,用户的身份验证通常基于密码或公钥/私钥对。公钥存储在服务器上,私钥保留在本地客户端,...

    7.linux远程连接工具类 SSH

    Linux远程连接工具类SSH是一种广泛使用的通信协议,它允许用户在本地计算机上安全地操作远程Linux系统。SSH,全称为Secure Shell,旨在提供加密的网络服务,特别适用于管理服务器、执行命令、传输文件等场景。在开发...

    ssh(Linux)连接工具

    SSH(Secure Shell)是一种网络协议,用于在不安全的网络上提供安全的远程登录和其他服务。它是Linux系统管理员和IT专业人员的必备工具,因为它的加密特性可以保护数据的传输,确保用户身份的安全验证和通信的隐私。...

    Linux系统ssh无密码登录设置手册.pdf

    Linux系统SSH(Secure Shell)无密码登录是一种便捷且安全的远程访问方式,它允许用户在无需每次输入密码的情况下,通过网络连接到Linux服务器。这种方式基于公钥加密技术,可以提高工作效率,减少人为错误,尤其在...

    arm开发板-linux-ssh移植工具文件

    在Linux系统中,SSH(Secure Shell)是一种网络协议,用于安全地远程登录到另一台计算机。在ARM开发板上移植SSH服务,对于进行远程管理、调试或者自动化任务执行至关重要。这个"arm开发板-linux-ssh移植工具文件...

Global site tag (gtag.js) - Google Analytics