前言
公司前端大佬因为某些原因离职了,走的比较匆忙,自己之前一直很少接触这方面的东西,一直都是一知半解。这两天我一边学,一边动手搭建,同时记录整个搭建过程。
这是一系列文章,从搭建 Gitlab 到 安装、注册Gitlab-runner 再到二者结合去部署一个简单的项目,通过这几篇文章,你将学会如何在 Gitlab 上自动化打包部署自己的项目。
系列文章一共有四篇,包括:
由于自己一直做的是前端,对于Linux我不算熟练,如有错误的地方,请大家指出。
原文地址:Linux免密登录
这篇是系列的第三篇,这一篇比较简单,我们会弄一下Linux免密登录,这个我们在接下来的工作中会用到。
准备工作:
一台Linux服务器
一台电脑(我的是windows 10系统)
Step1 windows上生成 ssh key
生成ssh key
ssh-keygen -t rsa -C "youremail@example.com" # 这里替换为你的邮箱
进入ssh目录
cd ~/.ssh
查看所有文件
ls -a
# 可以看到 id_rsa id_rsa.pub
查看公钥内容(注意是.pub结尾的公钥文件)
cat id_rsa.pub
复制公钥内容
ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX youremail@example.com
Step2 Linux中写入上一步复制的公钥
登录 Linux 服务器,执行命令
ssh-keygen -t rsa
然后一路回车
然后进入 .ssh
cd ~/.ssh
编辑 authorized_keys 文件
vi authorized_keys
进入编辑后,按 I
进入修改,将我们电脑上的公钥复制进去。
修改完成后 依次按 Esc
、:
、w
、q
,回车保存修改。
然后查看一下
cat authorized_keys
ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX youremail@example.com
看到已成功修改
登录一下
ssh root@xx.xxx.xxx.xxx # 填你的服务器IP
如果你的服务器是阿里云且重装过系统,可能会遇到以下报错
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:xi/sxkP1juN+73HCAhkSXRMCuN48zfMjDTUylonzAPo.
Please contact your system administrator.
Add correct host key in /c/Users/Wen Minghui/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /c/Users/Wen Minghui/.ssh/known_hosts:8
ECDSA host key for xx.xxx.xxx.xxx has changed and you have requested strict checking.
Host key verification failed.
解决:使用命令清除所连接的服务器IP
ssh-keygen -R XX.XX.XX.XX
再次尝试连接
ssh root@xx.xxx.xxx.xxx
可以看到登录成功
Last login: Wed Apr 17 18:03:44 2019 from 14.154.30.158
Welcome to Alibaba Cloud Elastic Compute Service !