ssh公鑰連線linux伺服器

2021-09-12 04:29:39 字數 1670 閱讀 4709

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 restart
3.   在.ssh目錄建立config檔案(設定伺服器端口,在連git伺服器時)

host 192.168.1.101

user git

preferredauthentications publickey

identityfile c:/users/administrator/.ssh/admin

hostname 192.168.1.101

port 22

指定連線192.168.1.101的伺服器時使用admin私鑰進行驗證 。

4.  上傳公鑰到伺服器

在git  bash裡面執行以下命令 :

scp ~/.ssh/admin.pub [email protected]: ~/
5.  將公鑰寫入伺服器驗證檔案

以root登陸伺服器 ,再切換到git使用者 。

在git使用者目錄建立 .ssh/authorized_keys 檔案 。目錄和檔案都要新建 。

然後執行新增公鑰命令

cat id_rsa.pub >> ~/.ssh/authorized_keys
6.設定檔案和目錄許可權

ssh對公鑰、私鑰的許可權和所有權的要求是非常嚴格的,總結如下:

1、設定.ssh目錄許可權

$ chmod 700 -r .ssh
2、設定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來連線。通過以下命...