SSH管理多密钥
生成密鑰對
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"# 默認(rèn)情況下在~/.ssh目錄下生成id_rsa和id_rsa.pub兩個(gè)文件 # id_rsa是密鑰,id_rsa.pub是公鑰# 生成a密鑰對和b密鑰對,-f參數(shù)設(shè)置密鑰文件的文件名 ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f ~/.ssh/a_id_rsa ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f ~/.ssh/b_id_rsa連接a機(jī)器用密鑰a,連接b機(jī)器用密鑰b
# 在~/.ssh目錄下編輯config文件 Host aHostName 192.158.5.201User rootPort 1234IdentityFile ~/.ssh/a_id_rsa Host bHostName 192.158.5.202User rootPort 1234IdentityFile ~/.ssh/b_id_rsa# 下面兩條命令就可以連上a,b兩臺(tái)機(jī)器 ssh a ssh b訪問github用密鑰a,訪問gitee用密鑰b
# 在~/.ssh/config配置文件中添加如下配置 Host github.comIdentityFile ~/.ssh/a_id_rsa Host gitee.comIdentityFile ~/.ssh/b_id_rsa# 驗(yàn)證, 如果失敗可用-vT參數(shù)查看失敗原因 git -T git@github.com git -T git@gitee.com訪問多個(gè)github賬號
- 設(shè)置不同Host對應(yīng)同一個(gè)HostName但密鑰不同
- 取消全局用戶名/郵箱設(shè)置,為每個(gè)倉庫獨(dú)立設(shè)置用戶名/郵箱
設(shè)置郵箱和用戶名
# 設(shè)置全局的 git config --global user.email "your_email@example.com" git config --global user.name "your_name"# 取消全局的 git config --global --unset user.email git config --global --unset user.name# 為每個(gè)庫設(shè)置單獨(dú)的 git config user.email "your_email@example.com" git config user.name "your_name"scp的簡化
# 未配置ssh-config之前 scp -P 1234 root@xxx.xxx.xxx.xxx:/abc/def .# 配置ssh-config之后 scp a:/abc/def .ssh-agent
ssh-agent bash命令解釋: ssh-agent是專為既令人愉快又安全的處理RSA和DSA密鑰而設(shè)計(jì)的特殊程序,不同于ssh,ssh-agent是個(gè)長時(shí)間持續(xù)運(yùn)行的守護(hù)進(jìn)程(daemon),設(shè)計(jì)它的唯一目的就是對解密的專用密鑰進(jìn)行高速緩存。ssh包含的內(nèi)建支持允許它同ssh-agent通信,允許ssh不必每次新連接時(shí)都提示您要密碼才能獲取解密的專用密鑰。對于ssh-agent,您只要使用ssh-add把專用密鑰添加到ssh-agent的高速緩存中。這是個(gè)一次性過程;用過ssh-add之后,ssh將從ssh-agent獲取您的專用密鑰,而不會(huì)提示要密碼短語來煩您了。 如果出現(xiàn)如下提示信息說明沒有SSH Key在代理中
補(bǔ):遇到的一個(gè)錯(cuò)誤,提示信息如下
/root/.ssh/config: line 5: Bad configuration option: identifyfile /root/.ssh/config: terminating, 1 bad configuration options# 原因是拼寫錯(cuò)誤 # IdentifyFile --> IdentityFile參考
- Simplify Your Life With an SSH Config File
- Linux下如何管理多個(gè)ssh密鑰
轉(zhuǎn)載于:https://www.cnblogs.com/okokabcd/p/9065534.html
總結(jié)
- 上一篇: Codeforces 补题记录
- 下一篇: 软件架构设计——解释器模式