伺服器之間免秘鑰登陸原理以及指令碼配置

2022-04-05 22:09:03 字數 1352 閱讀 9250

ssh 為 secure shell 的縮寫,由 ietf 的網路工作小組(network working group)所制定;ssh 為建立在應用層和傳輸層基礎上的安全協議。ssh 是目前較可靠,專為遠端登入會話和其他網路服務提供安全性的協議。利用ssh 協議可以有效防止遠端管理過程中的資訊洩露問題。ssh最初是unix系統上的乙個程式,後來又迅速擴充套件到其他操作平台。ssh在正確使用時可彌補網路中的漏洞。ssh客戶端適用於多種平台。

這裡我們主要利用ssh的公鑰和私鑰進行解密,然後實現免秘鑰登陸,首先,我們執行ssh-keygen命令會在~/.ssh目錄下生成id_rsa和id_rsa.pub兩個檔案,分別為公鑰和私鑰,免秘鑰登陸就是將本機的公鑰發到目的伺服器上,從而實現免秘鑰登陸,下面就是使用shell編寫的免秘鑰登陸指令碼

#!/bin/sh

local_ip=`ifconfig | grep "inet addr:192" | cut -d ":" -f 2 | awk ''`

read -p "please input pair ip address:" ip_addr

read -p "please input pair user:" user

cd ~/.ssh

ssh-keygen -t rsa

chmod 600 ~/.ssh/id_rsa

chmod 600 ~/.ssh/id_rsa.pub

chmod 644 ~/.ssh/known_hosts

chmod 755 ~/.ssh

chmod g-x ~/.ssh/id_rsa ~/.ssh/id_rsa.pub

chmod o-x ~/.ssh/id_rsa ~/.ssh/id_rsa.pub

echo "發布證書到對方伺服器"

cat ~/.ssh/id_rsa.pub | ssh $user@$ip_addr 'cat >> /root/.ssh/authorized_keys'

#scp ~/.ssh/id_rsa.pub $user@$ip_addr:/root/.ssh/authorized_key

echo "證書發布成功"

這種免秘鑰登陸比較簡單,後期還會研究其他相關技術方法

伺服器之間免密碼登陸

現有100和101兩題伺服器 先建立.ssh目錄 以.開頭的檔案,預設是隱藏檔案,ls a才能看見 在100伺服器上進入.ssh目錄,cd ssh ssh keygen t rsa scp id rsa.pub root 192.168.129.101 ssh 進入101伺服器,將公鑰匯入到 ssh...

Linux伺服器之間快速設定免密登陸

假設 server a 要免密登入到server b,僅需要把 server a 的公鑰id rsa.pub寫到 server b 的authorized keys檔案裡。要實現這種操作,只需要如下兩步 1 server a 生成公鑰 登入到 server a 執行命令 ssh keygen t r...

ssh 登陸伺服器原理

這裡分兩種情況,這兩種情況都涉及到公鑰加密的概念。由於公鑰加密概念作為基礎就不在本文進行討論了。使用ssh對遠端伺服器進行密碼登入發生了什麼 客戶端通過ssh連線伺服器 1.首先伺服器把自己的公鑰發給客戶端,客戶端將自己的登入密碼通過伺服器發給自己的公鑰進行加密。然後傳送給伺服器。2.伺服器通過自己...