生成SSH密钥对(与gitlab、jenkins集成) |
您所在的位置:网站首页 › 提前预约英文翻译 › 生成SSH密钥对(与gitlab、jenkins集成) |
目录
一、检查是否已存在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 223、拷贝完成后即可在私钥所在的机器上直接免密登录绑定公钥的机器 ssh 用户名@目标主机IP |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |