jenkins配置ssh免密码登陆

说明

jenkins构建时需要连接远程服务器并且执行脚本,这时就需要配置ssh免密钥登录。jenkins构建时都是以jenkins用户进行操作,所以要以jeknins用户来配置免密钥登录。本教程以用户名qiaofeng为例说明。 A:192.168.10.78, B:192.168.10.76,需求:A登录B时免密钥。

命令

ssh-keygen -t rsa 产生公钥与私钥对

ssh-copy-id 将本机的公钥复制到远程机器的authorized_keys文件中

步骤

1. 切换到qiaofeng用户

su - qiaofeng

2. 用ssh-keygen -t rsa产生密钥对

[[email protected] ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/qiaofeng/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/qiaofeng/.ssh/id_rsa.
Your public key has been saved in /home/qiaofeng/.ssh/id_rsa.pub.
The key fingerprint is:
56:3e:89:fc:6f:8c:4d:06:ee:5f:b9:6b:a3:6a:d9:e2 [email protected]
The key‘s randomart image is:
+--[ RSA 2048]----+
| |
| |
| . |
| . +.. |
| S.+. |
| . ...o . |
| ..O o |
| *.=.o. |
| oE=+ooo |
+-----------------+

3. 用ssh-copy-id将公钥从A复制到B

[[email protected] ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub "-p 22223 [email protected]"
[email protected]‘s password:
Now try logging into the machine, with "ssh ‘-p 22223 [email protected]‘", and check in:
.ssh/authorized_keys
to make sure we haven‘t added extra keys that you weren‘t expecting.

注意

ssh-copy-id 将key写到远程机器的 ~/ .ssh/authorized_key.文件中。

如果你远程服务器SSH端口没有修改过,可以不用加-p 22223,要特别注意双引号。

当然你复制文件到远程服务器也可以用SCP命令。

4. 验证登录

[[email protected] ~]$ ssh -p 22223 [email protected]

Last login: Mon Apr 17 15:10:04 2017 from 192.168.10.78

[[email protected] ~]#

扩展

1. 现在实现了需求,如果你想B访问A时也免密钥,只要在B上按上面的步骤来。

2. 如果添加指纹的时候提示添加失败,是因为你以前添加过了这个ip的指纹。

解决办法:将.ssh目录的known_hosts文件删除掉。也可以打开这个文件把对应ip的那条记录删除。

3. 注意文件权限的问题

A

[[email protected] ~]$ ll .ssh/

-rw-------. 1 qiaofeng qiaofeng 1671 4月 19 05:10 id_rsa

-rw-r--r--. 1 qiaofeng qiaofeng 398 4月 19 05:10 id_rsa.pub

-rw-r--r--. 1 qiaofeng qiaofeng 417 4月 19 05:08 known_hosts

B

-rw------- 1 root root 1217 Apr 21 10:46 /root/.ssh/authorized_keys

时间: 2024-11-06 10:18:16

jenkins配置ssh免密码登陆的相关文章

ubuntu配置SSH免密码登陆

ubuntu配置SSH免密码登陆 1.安装SSH:  2.是否生成 .ssh 目录: 3.如果没有生成,自己手动创建一个  .ssh 目录: 生成的 .ssh 目录: 4.生成公钥与私钥: 效果如下: 5.将公钥加入到用于认证的公钥文件中: 6.免密码登陆: 效果: Ubuntu 免密码登陆,SSH配置完.

【linux】配置SSH免密码登陆

1.输入ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 其中''里的是登陆的密码,因为要设置免密码,所以''里是什么都没有的,空格也不行 2.输入 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 3.输入 ssh -version 如果不需要密码则成功了

centos7 配置ssh 免密码登陆

我只有一台机器,是因为要配置hadoop分布式环境用,需要配置ssh 两个用户: zhangxs, root 首先在切换到zhangxs用户下 执行[ ssh-keygen -t rsa] [[email protected] Desktop]$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/zhangxs/.ssh/id_rsa): Cre

配置SSH免密码登陆

首先在A机器上ls -a查看下 ~  下有没有一个.ssh的隐藏文件,若是没有则表示你还没在此机器上使用过ssh,ssh  localhost或则ssh 127.0.0.1 即可. 1.生成私钥公钥:ssh-keygen -t rsa -P '',一直默认回车即可. 2.cp ~/.ssh/id_rsa.pub  ~/.ssh/authorized_keys 3.chmod 600 ~/.ssh/authorized_keys 4.scp ~/.ssh/authorized_keys [emai

SSH 免密码登陆失败的一种原因,StrictModes

偶然因素帮别人配置ssh免密码登陆失败, ~/.ssh目录权限700,其下所有文件权限600,却依然失败.ssh -v 后发现密钥验证未通过,使用密码验证. 后来还是搜索得来,有人把ssh的StrictModes关闭就可以了,赶紧试了一下,果然可以. 于是搜了一下StrictModes限制的什么, 找到这么一段话 StrictModes no #修改为no,默认为yes.如果不修改用key登陆是出现server refused our key(如果StrictModes为yes必需保证存放公钥的

中小企业最基本的实用的ssh-key秘钥方案之ssh免密码登陆实战  

一.实验环境 本次实验需至少两台机器,本文采用三台机器做讲解.        服务器       ip     是否为分发机     nfs-server 10.0.0.11          是   web-client01 10.0.0.12          否   web-client02 10.0.0.13          否 二.实施步骤 1.添加系统账号(即普通用户)分别使用了三台机器,一台为分发机,另两台为被分发机.在企业环境中,很多用户直接用root来操作,这样好很不规范,权

设置SSH 免密码登陆

设置dns: vi /etc/hosts 最后一行追加; ip 主机名 设置SSH 免密码登陆: telnet 远程连接,SSH(secure shell)加密的通信协议,加密方式:rsa或者dsa root 目录下   ls -a  有.ssh 文件(存放密钥) ssh-keygen -t rsa  (三次回车) cd .ssh/    cp  id_rsa.pub  authorized_keys(生成授权文件) .ssh 文件夹rw-r--r--(g和0没有写的权限,u有写的权限) had

hadoop学习笔记(五)——全分布模式下SSH免密码登陆的实现

1)  设置3台机器的网络配置,并统一用户名,root除外 master:192.168.2.10 slave1:192.168.2.11 slave2:192.168.2.12 2)  SSH免密码登陆思想 因为三个节点要相互访问,所以,三个节点都是客户端,也都是服务器端,我们分别在三个节点上创建一对密钥文件,密钥文件包括公钥文件(~/.ssh/id_rsa.pub)和私钥文件 (~/.ssh/id_rsa). 客户端在使用ssh登录到其他节点上的时候,ssh会发送私钥去和其他节点上的公钥去匹

配置Linux 免密码登陆

配置Linux 免密码登陆 1 生成秘钥对,一路回车就好 2 修改公钥名称为authorized_keys 3 修改权限为600 4 修改sshd配置文件 5 重启sshd服务 配置Linux 免密码登陆 友情提示:如果需要实现xshell 等终端工具实现免密码登陆的,在生成密钥对的时候,务必先把id_rsa就拷贝出来,不然到时候你配置好了的时候,通过xftp等工具拷贝文件出来,发现本地没有密钥文件,到时候就是死循环了.切记切记!! 1 生成秘钥对,一路回车就好 [[email protecte