1. 生成ssh金鑰
ssh-keygen -t rsa -c "[email protected]"
會生成rsa和rsa.pub,預設儲存在 ~/.ssh/ 目錄 ,rsa是私鑰,rsa.pub是公鑰。
2. 伺服器端設定
編輯 etc/ssh/sshd_config
去掉以下幾行的注釋, 開啟公鑰認證登陸 。
rsaauthentication yes如果需要禁止使用密碼登入,可以設定pubkeyauthentication yes
authorizedkeysfile .ssh/authorized_keys
authorizedkeyscommand none
authorizedkeyscommandrunas nobody
passwordauthentication no重啟ssh
service sshd restart3. 在.ssh目錄建立config檔案(設定伺服器端口,在連git伺服器時)
host 192.168.1.101指定連線192.168.1.101的伺服器時使用admin私鑰進行驗證 。user git
preferredauthentications publickey
identityfile c:/users/administrator/.ssh/admin
hostname 192.168.1.101
port 22
4. 上傳公鑰到伺服器
在git bash裡面執行以下命令 :
scp ~/.ssh/admin.pub [email protected]: ~/5. 將公鑰寫入伺服器驗證檔案
以root登陸伺服器 ,再切換到git使用者 。
在git使用者目錄建立 .ssh/authorized_keys 檔案 。目錄和檔案都要新建 。
然後執行新增公鑰命令
cat id_rsa.pub >> ~/.ssh/authorized_keys6.設定檔案和目錄許可權
ssh對公鑰、私鑰的許可權和所有權的要求是非常嚴格的,總結如下:
1、設定.ssh目錄許可權
$ chmod 700 -r .ssh2、設定authorized_keys許可權
$ chmod 600 authorized_keys要保證.ssh和authorized_keys都只有使用者自己有寫許可權。否則驗證無效。
7. ssh公鑰驗證登陸
輸入ssh連伺服器命令
ssh [email protected]如果顯示以下資訊 ,表明金鑰登陸成功 。
$ ssh [email protected]
last login: sun jul 6 22:04:32 2014 from 192.168.1.100
[git@localhost ~]$
SSH公鑰登入伺服器
基本概念 對稱加密 加密與解密使用相同的金鑰。非對稱加密 加密與解密分別使用金鑰對的公鑰與私鑰。ssh基本原理 非對稱加密 對稱加密 使用 非對稱加密的公鑰 加密 對稱加密的金鑰 得到金鑰密文,傳送金鑰密文給通訊裝置,使用 非對稱加密的私鑰 解密 對稱加密的密文金鑰 得到明文金鑰。使用 對稱加密的明...
SSH如何通過公鑰連線雲伺服器
通常我們連線遠端伺服器 linux windows下通過putty或xshell等工具遠端連線。linux下可以直接通過ssh命令連線。其實這兩者都是一致的,都是通過ssh協議進行傳輸。如果我們的windows沒有安裝putty等工具,但是有git bash的話也可以直接通過ssh來連線。通過以下命...
SSH如何通過公鑰連線雲伺服器
通常我們連線遠端伺服器 linux windows下通過putty或xshell等工具遠端連線。linux下可以直接通過ssh命令連線。其實這兩者都是一致的,都是通過ssh協議進行傳輸。如果我們的windows沒有安裝putty等工具,但是有git bash的話也可以直接通過ssh來連線。通過以下命...