- 在服務(wù)器中創(chuàng)建一個(gè)新用戶
adduser git
- 創(chuàng)建一個(gè)git倉(cāng)庫(kù)
//切換到希望存儲(chǔ)的路徑
cd /home/git
//創(chuàng)建一個(gè)git倉(cāng)庫(kù)
git init --bare firstproject.git
//將firstproject.git的所有權(quán)從root修改到新創(chuàng)建的git
chown -R git:git firstproject.git
3.服務(wù)器中打開(kāi)RSA認(rèn)證
在文件/etc/ssh/sshd_config中添加下列三行內(nèi)容:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
創(chuàng)建用于存放客戶端公鑰的文件
cd /home/git //切換到剛剛創(chuàng)建的git用戶目錄下
mkdir .ssh
cd .ssh
vim authorized_keys //創(chuàng)建用于存放客戶端公鑰的文件
- 在客戶端創(chuàng)建SSH key
//該命令會(huì)在用戶主目錄的.ssh文件夾下生成兩個(gè)文件:用于保存私鑰的id_rsa和用于保存公鑰的id_rsa.pub
ssh-keygen -t rsa -C "**********@qq.com"
把生成的公鑰導(dǎo)入服務(wù)器
將生成的id_rsa.pub中的內(nèi)容拷貝到服務(wù)器文件/home/git/.ssh/authorized_keys在客戶端添加遠(yuǎn)程倉(cāng)庫(kù)
git remote add origin git@115.159.211.47:/home/git/firstproject.git
git push -u origin master
- 禁止用戶通過(guò)shell進(jìn)行登錄
由于進(jìn)行了步驟4和步驟5的設(shè)置,此時(shí)客戶端可以通過(guò)ssh git@115.159.211.47 直接登錄到服務(wù)器,如需禁止,修改文件/etc/passwd:
將git:x:1000:1000::/home/git:/bin/bash
修改為:git:x:1000:1000::/home/git:/usr/bin/git-shell