Gitlab配置ssh連線
ssh公鑰登入
一般在管理遠端主機時,都用ssh登入,ssh [email protected]
,但是這樣每次會使用密碼。 使用ssh-keygen
生成的金鑰對,然後將公鑰新增的目標主機的~/.ssh/authorized_keys
檔案中,當前主機就成為可信任的主機,下次使用ssh登入時,就不用輸入密碼了。
Gitlab,Github都支援這種方式的連線,具體操作步驟如下:
第一步:生成金鑰對
使用ssh-keygen
生成金鑰對:
ssh-keygen -t rsa -C "你的郵箱"
這樣就在主目錄下的.ssh
目錄中生成了兩個檔案id_rsa
和id_rsa.pub
。id_rsa
中儲存的是私鑰,id_rsa.pub
第二步:新增公鑰
拷貝公鑰到剪下板:
pbcopy < id_rsa.pub
在 個人資料->SSH Keys->Add new 頁面中貼上公鑰,就新增完成了。
第三步:測試
ssh加-T
選項測試目標服務是否可用:
ssh -T [email protected]"你的gitlab伺服器地址"
第一次連線時,會詢問是否信任主機,確認後輸入yes。如果看到Welcome to GitLab, Rusher!
就算配置成功了,接下來就可以通過ssh來提交程式碼了。
Windows
- 生成金鑰對
ssh-keygen -t rsa -C "你的郵箱"
- 生成之後用
notepad c:/User/Administrator/.ssh/id_rsa.pub
開啟檔案,然後將公鑰新增的Gitlab中.- 測試
ssh -T [email protected]"你的gitlab伺服器地址"
Gitlab服務端配置
(只使用客戶端可忽略這節內容)
在客戶端提交時發現以下錯誤:
/usr/local/lib/ruby/1.9.1/net/http.rb:762:in`initialize': getaddrinfo: Name or service not known (SocketError)
from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `open'
from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `block in connect'
from/usr/local/lib/ruby/1.9.1/timeout.rb:54:in`timeout'
from /usr/local/lib/ruby/1.9.1/timeout.rb:99:in `timeout'
from /usr/local/lib/ruby/1.9.1/net/http.rb:762:in `connect'
from/usr/local/lib/ruby/1.9.1/net/http.rb:755:in`do_start'
from /usr/local/lib/ruby/1.9.1/net/http.rb:744:in `start'
from /home/git/gitlab-shell/lib/gitlab_net.rb:64:in `get'
from/home/git/gitlab-shell/lib/gitlab_net.rb:30:in`check'
from ./check:11:in `<main>'
在Github的issue裡找到說先執行一下/home/git/gitlab-shell/bin/check
。先做檢測,發現和上面一樣的錯誤。看錯誤是找不到域名,所以在/etc/hosts
中需要配置一個地址的對映。
127.0.0.1 YOUR_DOMIN # YOUR_DOMIN是在/home/git/gitlab-shell/config.yml中配置的gitlab_url
擴充套件:ssh多使用者切換
在配置Gitlab的時候一開始是用管理員賬戶做測試的,後來建了我自己的賬號做開發。這樣我的本地就有兩個Gitlab賬號,如果直接用ssh來提交程式碼有問題,因為ssh預設使用一開始生成id_rsa那個金鑰對,但不同的賬號又不能對應到同一個公鑰上。如果多個賬戶一起用,還需要做些配置。
假如有兩個賬號:root和rusher。
第一步:為兩個賬戶分別生成金鑰對
提示在哪裡儲存金鑰檔案的時候,對不同的賬號填不同的路徑,root放在/Users/you/.ssh/id_rsa_gitlab_root
下,rusher的放在/Users/you/.ssh/id_rsa_gitlab_rusher
ssh-keygen -t rsa -C [email protected].com
Generatingpublic/private rsa key pair.
Enter file in which to save the key (/Users/you/.ssh/id_rsa):/Users/you/.ssh/id_rsa_gitlab_rusher
Enter passphrase (empty forno passphrase):
Enter same passphrase again:
Your identification has been saved in/Users/you/.ssh/id_rsa_gitlab_rusher.
Yourpublic key has been saved in/Users/you/.ssh/id_rsa_gitlab_rusher.pub.
ssh-keygen -t rsa -C [email protected].com
Generatingpublic/private rsa key pair.
Enter file in which to save the key (/Users/you/.ssh/id_rsa):/Users/you/.ssh/id_rsa_gitlab_root
Enter passphrase (empty forno passphrase):
Enter same passphrase again:
Your identification has been saved in/Users/you/.ssh/id_rsa_gitlab_root.
Yourpublic key has been saved in/Users/you/.ssh/id_rsa_gitlab_root.pub.
還是需要將兩個賬號的公鑰分別新增的各自賬號的SSH Keys中(rusher: id_rsa_gitlab_rusher.pub和root: id_rsa_gitlab_root.pub) 。
ssh-add /Users/you/.ssh/id_rsa_gitlab_rusher
ssh-add /Users/you/.ssh/id_rsa_gitlab_root
第二步:新增ssh配置檔案
在.ssh目錄中新增config
檔案,此檔案的為不同的賬戶新增別名(root: root_gitlab 和 rusher: rusher_gitlab),連線還是同一個伺服器,但是使用不同的金鑰檔案,所以才能將兩個賬號分開。
# for root
Host root_gitlab
HostName git.you.com
User git
IdentityFile/Users/you/.ssh/id_rsa_gitlab
# for rusher
Host rusher_gitlab
HostName git.you.com
User git
IdentityFile/Users/you/.ssh/id_rsa_gitlab_rusher
配置完成後,使用ssh-add
命令
接下來這樣使用別名測試,可以檢視是否對應到了正確的賬號上:
ssh -T [email protected]_gitlab
ssh -T [email protected]_gitlab
第三步:在git專案中使用別名
正常的專案,我們clone下來之後,origin對應的URL假設為: [email protected]:Rusher/helloworld
,現在需要做個改動,將git.
要換成rusher_gitlab
,
git remote set-url origin [email protected]_gitlab:Rusher/helloworld
如果是root使用者的專案:
git remote set-url origin [email protected]_gitlab:root/helloworld
以上配置ssh的方法同樣適用於Github,Bitbucket等網站。
參考文件
UPDATE 2013-08-16: 為不同賬號生成金鑰對後,需要使用ssh-add將金鑰新增進來,否則ssh不能使用正確的金鑰
相關推薦
Gitlab配置ssh連線
ssh公鑰登入 一般在管理遠端主機時,都用ssh登入,ssh [email protected],但是這樣每次會使用密碼。 使用ssh-keygen生成的金鑰對,然後將公鑰新增的目標主機的~/.ssh/authorized_keys檔案中,當前主機就成為可信任的主
Gitlab配置ssh連線,上傳專案到Gitlab
配置Git 我們先在電腦硬盤裡找一塊地方存放本地倉庫,比如我們把本地倉庫建立在E:\SouthernPowerGridProject\web_project\amod資料夾下 進入amod資料夾 滑鼠右鍵操作如下步驟: 1)在本地倉庫裡右鍵選擇Git Init He
gitlab 配置ssh key後連線一直提示輸入密碼的解決辦法
用yum安裝完gitLab 按照網上的教程進行設定ssh key,在進行專案的clone git clone [email protected]/xxx.git 提示需要輸入密碼,網上找了各種各樣的方法都沒有解決。 這個密碼並不是gitlab賬戶的密碼,而是
GitLab配置ssh key
郵箱地址 style lis 我們 ssh key 技術 為什麽 inf str 一、背景 當前很多公司都選擇git作為代碼版本控制工具,然後自己公司搭建私有的gitlab來管理代碼,我們在clone代碼的時候可以選擇http協議,當然我們亦可以選擇ssh協議來拉取代
GitLab配置ssh key和gitlab雙開
這篇部落格是參考 GitLab配置ssh key 中途遇到了幾個問題,所以記錄下 問題1:HTTPS拉下來的專案,使用SSH提交,仍然需要輸入使用者名稱和密碼 在“二、解決方案”中,我配置ssh後,在git bash裡,push的
gitlab配置 ssh Key
找到 輸入框 str ron rsa 管理 賬號 輸入 gitlab配置 1、打開控制臺:ssh-keygen -t rsa -C "GIT上的賬號郵箱" 2、回車 3、輸入密碼(git上的賬號密碼) 4、確認密碼 5、輸入命令 cd .ssh 6、輸入命令 cat id_
GitLab配置SSH Keys
命令列 開啟git bash, 輸入以下命令, 生成ssh公鑰和私鑰對, -C引數是郵箱地址 ssh-keygen -t rsa -C 'your-email' 開啟~/.ssh/id_rsa.pub檔案(~表示使用者目錄), 複製其中的內容. 開
Linux入門實踐筆記(五)——Win下Git配置SSH連線GitHub實現無密提交
#執行ssh-keygen指令生成SSH, #其中-t選項用於指定金鑰生成的演算法,此處使用RSA; #-C選項是公鑰檔案中的備註,此處使用使用者郵箱作為備註。 [email protected] MINGW64 ~/.ssh $ ssh-keygen -t rsa -C "[email
git知識總結5——window下配置SSH連線GitHub
git能夠連線github,github做為免費的遠端倉庫 自己到github註冊帳號。 第一步 建立SSH KEY 如果使用的linux,檢查使用者宿主目錄是否有.ssh檔案。如果是windows使用命令 cd ~/.ssh 檢視是否有.ssh目錄。如果沒有則使用命令
最簡單git伺服器配置-SSH連線方式
Git伺服器連線可用的協議通常有SSH、GIT、HTTP(S)和FTP等,其中最方便實現的是SSH方式。 SSH方式的GIT伺服器實現也有兩種方式:如果你在一個小型團隊並且不需要做許可權控制,那麼使用SSH就可以搭建了,否則你還需要gitolite 本文將介紹如何使用SSH
gitlab-eclipse-ssh連線
本文轉載自http://www.codeweblog.com/gitlab-eclipse-ssh%E8%BF%9E%E6%8E%A5/ 感謝作者 以下作為記錄 主要有這麼幾步:生成key,新增key到服務,建立連線 1.生成key 我們用的是eclipse自帶
windows下gitlab配置 生成ssh key
git pub 開頭 str 命令 ID view 打開 nbsp Git-1.9.5-preview20141217 1. 安裝git,從程序目錄打開 "Git Bash" 2. 鍵入命令:ssh-keygen -t rsa -C "[email protected]"
jenkins配置SSH遠端伺服器連線
之前用jenkins做了一個自動釋出測試,配置任務的Post Steps時,選擇的是執行shell命令。如下圖: 這是在本192.168.26.233伺服器上測試的,此伺服器上執行jenkins,tomcat。現在換另一種方式,把jenkins打好的包遠端傳送到另一臺伺服器上執行。
SSH連線GitHub並配置ssh key
SSH連線GitHub並配置ssh key 配置git的ssh提交,主要需要以下三步: 1.設定Git的user name和email 2.生成ssh 3.配置git 的ssh key 一、設定Git的user name和email //使用者名稱寫自己想寫的,比如:m
Google Cloud SSH 連線配置
設定當前使用者及root使用者的密碼 sudo passwd xx-user # 輸入新密碼 sudo passwd root # 輸入新密碼(建議保持一樣) 在本地生成私鑰和公鑰 cd ~/.ssh ssh-keygen -f myKey 。。。 # 此時會生成 公鑰 myKey.
git連線gitlab:SSH加密部分
在瞭解之前,先註冊github賬號,由於你的本地Git倉庫和github倉庫之間的傳輸是通過SSH加密的,所以需要一點設定: 第一步:建立SSH Key。在使用者主目錄下,看看有沒有.ssh目錄,如果有,再看看這個目錄下有沒有id_rsa和id_rsa.pub這兩個檔案
mac上配置github和gitlab的ssh
配置多個ssh 步驟如下: 檢視電腦上有沒有ssh,執行cd ~/.ssh。 如果出現了下面的情況: -bash: cd: /Users/reng/.ssh: No such file or directory 說明你的電腦沒有相關的
Linux配置ssh服務和XShell連線Linux
SSH服務檢視和安裝,配置: https://www.cnblogs.com/qiuqiuqiu/p/6445426.html https://www.cnblogs.com/yunweis/p/7727077.html https://blog.csdn.net/java_dotar_01/artic
SSH連線GitHub、GitHub配置ssh key
配置git的ssh 提交需要以下步驟 1.設定Git的user name和email 2.生成ssh 3.配置git 的ssh key 1.設定Git的user name和email $ git config --global
Jmeter配置通過SSH連線的mysql資料庫
jmeter連線配置mysql資料庫時,如果資料庫伺服器沒有通過ssh連線,則只需要新增配置相應的jdbc引數就可以了。如果資料庫伺服器是通過SSH連線的,則需要通過中間遠端連線工具來登入,此處使用的遠端連線工具為Putty,具體的配置請參考如下: 1、首先,下載並開啟Putty,在Putty Config