ssh无密码登陆权威指南

【0】写在前面

由于ssh 实现的是免密码登陆,大致步骤是:

  • 0.1) client通过ssh登陆到server;
  • 0.2) server检查家目录下的.ssh文件, 并发送公钥文件 authorized_keys 到client ;
  • 0.3) client端 接收到 server 端的公钥文件,并用自己的私钥文件对 其进行解析,并计算出 新的 公钥文件C;
  • 0.4) server段 接收到 client的 公钥文件C,并将其与 自身的公钥文件,进行匹配,(它有它自己的匹配算法, 这个你不管),如果匹配成功,则client 成功登陆到server;
  • (Attention):

    看到这里,不得不说建立ssh 免密码登陆的中间过程确实很复杂,所以ssh对配置文件的访问权限,要求相当苛刻。如友人您,不根据本文的访问权限进行相应设置,使得最终无法建立免密码登陆,后果自负(这里只是为了强调 ssh 对 配置文件的访问权限 要求非常得严格!(过来人的感受,仅仅是你配置文件的访问权限不完全正确,ssh 一直无法实现 正常的免密码登陆, 很烧精力)

【1】安装ssh

server installation :sudo yum -y install openssh.i686
client installation: sudo yum -y install openssh-clients

【2】我的任务:[email protected](Client)免密码登录到 [email protected](Server)

  • 2.1) 生成需要建立ssh的私钥和公钥(client操作)

  • Attention)
  • A1) ~/.ssh/ 目录必须要是 700 的权限才行!
  • A2)一个要特别注意的就是那个 id_rsa 的档案权限啦!他必须要是 -rw——- !否则在未来密钥比对的过程当中,可能会被判定为危险而无法成功的以公私钥成对档案的机制来达成联机喔。

    (不过默认情况下,建立的文件都是符合以上要求的)

  • 2.2)在server的家目录上建立.ssh文件夹,访问权限设为700(server操作)

  • 2.3)将client的公钥档案数据上传到服务器上(client操作)

  • 2.4)将server的.ssh文件夹下面的 公钥文件名改为 authorized_keys,且访问权限改为 600 or 644(server操作)

  • 2.5) client 免密码登陆到 server

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-05 03:53:25

ssh无密码登陆权威指南的相关文章

配置 ssh无密码登陆

首先确保 linux系统中已经安装了ssh,否则先安装 ssh,ubuntu 系统可以执行 sudo apt-get install ssh 接下来开始配置 ssh无密码登陆 确保在 /home/user用户目录下存在.ssh目录,可以使用一下命令进行查看 ls -a /home/user 如果不存在可以自己手动创建一个 mkdir /home/user/.ssh 接下来没输入命令: ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 解释一下: ssh-keyge

ssh无密码登陆服务器

网上该类教程很多,但还是记录下,方便以后查询的时候使用. 两台服务器,内网ip分别是: 172.16.3.91 (本地机) 172.16.3.92 (远程机) 现在想在本地机上通过ssh 172.16.3.92登陆到远程机而不需要密码. 1.在本地机上用ssh-keygen 创建公钥私钥. [[email protected] ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to

ssh无密码登陆 Authentication refused: bad ownership or modes for directory /root

利用脚本自动建立ssh无密码登陆,系统版本为centos6.5 tailf /var/log/secure Mar 18 15:35:05 a2 sshd[6521]: Authentication refused: bad ownership or modes for directory /root Mar 18 15:35:05 a2 sshd[6521]: Authentication refused: bad ownership or modes for directory /root

Linux 批量建立信任关系,实现ssh无密码登陆的脚本

作用: 把当前机器的ssh公钥复制到其他机器,以实现从当前机器可以ssh无密码登陆到其他机器 使用方法: 1)把要添加的ip地址写入到一个文件中,比如host 2)把脚本保存为sh文件,如 install_ssh.sh 设置可执行权限 3)改写脚本中的密码设置,目前只支持固定几个密码. 4)  执行命令 sh install_ssh.sh <host 代码: #!/bin/sh auto_ssh_copy_id() { local HOST=$1 local PASSWD=$2 expect -

[SSH服务]——一个SSH无密码登陆实验

实验拓扑图 实验描述 机房内有两台服务器: (1)B服务器10.0.10.158,充当Web服务器,有普通用户user_00 (2)C服务器10.0.10.191,充当Mysql服务器,有普通用户user_00 有服务器A 10.0.10.198,供管理员平常使用来管理机房内的机器.为方便起见,所以要求做到: (1)A服务器能SSH远程登录(以user_00的身份)到B和C,且实现无密码登陆: (2)远程登录后,user_00可以直接sudo到root而不需要密码. 在服务器B:10.0.10.

配置ssh无密码登陆

好几次都双机互配后才wanshi ,总记不住方向,记到这儿 A要链接B,A把自己的公钥给B 1 [email protected]:~$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/zxw/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase aga

SSH无密码登陆问题解决

转载 http://my.oschina.net/hunzi/blog/10687 安装好Cygwin后,SSH需要设置为无密码登陆, 首先查看是ssh还是ssh2:ls -l `which ssh`lrwxrwxrwx 1 root root 4 2008-07-10 10:15 /usr/local/bin/ssh -> ssh2 如果“ls -l `which ssh`”得到的结果是:/usr/bin/ssh或/usr/local/bin/ssh,则可先认为为ssh2,不行再以ssh试一试

Linux设置ssh无密码登陆

最近在折腾Hadoop,要用到主机间无密码登陆,设置的时候遇到了一些问题,这里记录一下. 假设A需要无密码登陆B. 那么首先需要在A上使用ssh-keygen生成id_rsa.pub的公钥,生成时,一路回车即可,文件生成在~/.ssh目录中. 将上一步的id_rsa.pub文件内容追加复制到B机器的~/.ssh/authorized_keys文件中,并将B的authorized_keys权限设置为600. 理论上来说此时就可以在A上使用ssh B来无密码登陆B了. 遇到的问题:还是提示输入密码.

大数据环境搭建-之-ssh无密码登陆

yum search ssh :查询可安装的ssh 包 yum install -y openssh:安装ssh包 yum list installed openssh :查询是否已安装了openssh 配置无密码登陆 1.由root用户切换到hadoop 用户下 2.在根路径下(/home/hadoop)创建.ssh 文件 mkdir .ssh 3.生成密钥 ssh-keygen -t rsa -P "" 4.进入 .ssh目录下 cd .ssh 5.ls 查看 看里面有 了公钥和私