SSH 實現免密登入
本文介紹如何通過 SSH 實現免密登入。
工作環境:
- 本機 macOS 10.12.6
- 虛擬機器工具 Paralles
- Liunx :centos 7 mini (注意:6 和 7 的配置有區別)
SSH 協議是什麼
SSH 是一種網路協議,用於計算機之間的加密登入。SSH是英文Secure Shell的簡寫形式。
通過使用SSH,你可以把所有傳輸的資料進行加密更加安全可靠。使用SSH,還有一個額外的好處就是傳輸的資料是經過壓縮的,所以可以加快傳輸的速度。SSH 有很多功能,它既可以代替 Telnet,又可以為FTP、Pop、甚至為 PPP 提供一個安全的"通道"。
SSH 協議更多內容看最後附的連結,有興趣的朋友可以瞭解一下。
配置主機間的免密登入
配置免密登入
什麼是免密登入呢?
通常我們登入 SSH 是通過賬號和免密來登入的,輸入ssh username@ip-server
然後輸入密碼。
如果每次都輸入密碼會很麻煩,而且要對多臺主機進行自動化管理,每次都要輸入密碼不現實。我們可以配置公鑰和金鑰進行免密登入。免密登入做的事情其實就是通過 SSH 的公鑰和金鑰來校驗身份資訊。
首先你要知道每臺主機有一份公鑰和一份私鑰。我們要做的事情可以用一張圖來表示:
圖片的操作依次為
1.生成密匙對
ssh-keygen
之後可以在/root/.ssh
中看到生成的密匙對
[root@main /]# cd /root/.ssh/
[root@main .ssh]# ls
id_rsa id_rsa.pub
2.拷貝一份 A 的公鑰給 B
ssh-copy-id 192.168.0.10
輸入密碼
此時在 B 的authorized_keys
中就會有一份 A 的id_rsa.pub
公鑰資訊。
注:第二步操作的做的事情其實就是一個拷貝金鑰的工作,也可以手動拷貝,但是用上面的命令更方便。
3.最後我們就可以免密登入,也就是不輸入密碼 A 就可以登入 B
ssh root@192.168.0.10
192.168.0.10 為 B 的 ip 地址
如果要退出登入,輸入exit
即可。
給主機起一個別名
192.168.0.10 是 ip 地址,也就是說登入的時候我們還要輸入一次 ip。我們可以給每個主機配置一個別名,用ssh ip-server
的方式登入。
就像人有身份證也有名字一樣,我們可以通過 ip 來辨識主機。給他一個別名就是給一個hostname
。
可以用hostname
來檢視你的主機名,要改主機名改他的配置檔案
vi /etc/hostname
在其中替換為你要改的名字,比如 main
重啟生效
reboot
這樣主機名已經改掉了,還差一步。我們要讓主機名和我們的 ip 關聯在一起,修改/etc/hosts
檔案
vi /etc/hosts
新增上 ip 和 hostname 的鍵值對
例如:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.11 main
192.168.0.10 slave
兩邊都配置完成可以用ssh slave
直接連線slave
。如果你想自己免密連線自己那就按照上面的步驟給自己配置一份密匙就行了,動手試試吧。
SSH 協議是什麼以及更多參考
相關文章
- ssh免密登入
- SSH配置—Linux下實現免密碼登入Linux密碼
- ssh-copy-id三步實現SSH免密登入
- ssh免密登入原理
- ssh進階,免密登入
- SSH免密登入詳解
- Hadoop起步之圖解SSH、免密登入原理和實現Hadoop圖解
- ssh免密登入簡單操作
- linux 設定ssh 免密登入Linux
- CentOS監控ssh免密登入CentOS
- hadoop-SSH免密登入配置Hadoop
- SSH免密登陸
- ssh免密碼登入失敗解決密碼
- Linux 配置 SSH 秘鑰免密碼登入Linux密碼
- Linux - 配置SSH免密登入 - “ssh-keygen”的基本用法Linux
- Windows配置ssh免密登入linux+VSCode Remote-SSH免密編寫linux程式碼WindowsLinuxVSCodeREM
- SSH免密登入與SCP遠端複製
- MacOS Sonoma14.2.1系統SSH免密登入Mac
- 配置SSH免密碼登陸密碼
- 在CentOS/RHEL上設定SSH免密碼登入CentOS密碼
- Linux配置SSH免密碼登入(非root賬號)Linux密碼
- 兩臺伺服器實現免密登入伺服器
- SSH 免密登陸 簡單版
- flask框架如何實現修改密碼和免密登入功能Flask框架密碼
- 深入探討:Node.js、Vue、SSH服務與SSH免密登入Node.jsVue
- Mac SSH 免密登入 連線遠端伺服器Mac伺服器
- 阿里雲伺服器購買及SSH免密登入阿里伺服器
- centos7 設定ssh免密碼登入配置方法CentOS密碼
- VS Code / Pycharm配置SSH遠端開發(免密登入)PyCharm
- SSH免密登入+JDK安裝配置+Hadoop安裝配置JDKHadoop
- Linux配置SSH免密登陸(公私鑰登陸)Linux
- Linux 免密登入Linux
- git免密登入Git
- ssh免密登入和代理連線線上伺服器伺服器
- 介紹Linux小技巧,如何實現免密碼登入Linux密碼
- Linux伺服器批量ssh免密登陸Linux伺服器
- GitHub不再支援密碼驗證解決方案:SSH免密與Token登入配置Github密碼
- 1-Linux叢集搭建,分發指令碼,ssh免密登入Linux指令碼
- ssh免密登入在Linux伺服器之間的設定Linux伺服器