生成SSH密钥对(与gitlab、jenkins集成)

您所在的位置:网站首页 提前预约英文翻译 生成SSH密钥对(与gitlab、jenkins集成)

生成SSH密钥对(与gitlab、jenkins集成)

2023-08-28 03:19| 来源: 网络整理| 查看: 265

目录 一、检查是否已存在SSH密钥对二、生成SSH密钥对三、添加SSH密钥到gitlab用户四、在jenkins创建Gitlab SSH Credentials五、通过SSH密钥对实现免密登录Linux服务器

参考: https://docs.gitlab.com/ee/ssh/README.html

一、检查是否已存在SSH密钥对

1、在Windows, Linux, macOS系统下,进入用户home目录(windows为C:\Users\当前用户名) 2、进入.ssh/子目录(windows为C:\Users\当前用户名\.ssh), 3、若不存在则需按照下文步骤生成SSH密钥对, 若存在以下文件,则表明已经生成过:

AlgorithmPublic keyPrivate keyED25519 (preferred)id_ed25519.pubid_ed25519RSA (at least 2048-bit key size)id_rsa.pubid_rsaDSA (deprecated)id_dsa.pubid_dsaECDSAid_ecdsa.pubid_ecdsa

在这里插入图片描述

二、生成SSH密钥对

1、打开windows CMD 2、执行ssh-keygen命令

# 其中comment会出现在.pub文件中,可以写邮箱账号 ssh-keygen -t rsa -b 2048 -C ""

在这里插入图片描述

注:可按提示输入密码(亦可直接回车跳过)

生成完成后,既可在如下图提示的目录下查看到密钥对文件

在这里插入图片描述

三、添加SSH密钥到gitlab用户

1、登录gitlab,点击右上角头像avatar -> 下拉菜单Settings -> 左侧菜单SSH Keys 在这里插入图片描述 2、将之前生成的公钥id_rsa.pub内容粘贴到Key文本框,同时自定义title在这里插入图片描述 注: 添加完成后,即可在私钥所在的机器上拥有该ssh公钥绑定账户的操作权限(注意对应ssh gitlab库链接) 在这里插入图片描述

四、在jenkins创建Gitlab SSH Credentials

创建类型为SSH Username with private key的凭证, 并将第三步生成的私钥id_rsa的内容添加到Private Keys中, Username并无实际作用(建议跟实际用户同名), 最下面的密码Passphrase即为生成SSH密钥对时输入的密码 在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

之后在新建jenkins构建任务时,即可通过ssh方式访问git仓库,且对应的凭证即选择之前创建的gitlab-root-ssh 在这里插入图片描述

注: jenkins中亦可以直接创建类型为Username with password的credential, 可使用该凭证直接以http://xxx形式的访问gitlab库 在这里插入图片描述 在这里插入图片描述

五、通过SSH密钥对实现免密登录Linux服务器

1、在源主机通过ssh-keygen命令生成密钥对 2、将公钥拷贝到目标主机的用户home/.ssh目录下的authorized_keys文件中 在这里插入图片描述 又或者通过如下命令进行公钥拷贝:

# 其中可通过-p指定ssh端口(默认22) ssh-copy-id 用户名@目标主机IP -p 22

3、拷贝完成后即可在私钥所在的机器上直接免密登录绑定公钥的机器

ssh 用户名@目标主机IP


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3