新聞中心
在Linux系統(tǒng)中,SSH(Secure Shell)協(xié)議是一種常用的遠(yuǎn)程登錄協(xié)議,用于在兩個計算機(jī)之間建立安全的加密連接。SSH密鑰是SSH協(xié)議的一部分,它可以用來進(jìn)行身份驗證,以確保只有授權(quán)用戶才能訪問遠(yuǎn)程系統(tǒng)。本文將介紹如何在Linux系統(tǒng)中生成SSH密鑰,以及如何使用生成的密鑰進(jìn)行遠(yuǎn)程登錄。

成都創(chuàng)新互聯(lián)是專業(yè)的蘭陵網(wǎng)站建設(shè)公司,蘭陵接單;提供成都網(wǎng)站設(shè)計、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行蘭陵網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
Step 1: 安裝OpenSSH
在使用SSH協(xié)議之前,需要先安裝OpenSSH,它是一個提供SSH服務(wù)的開源工具。通常情況下,Linux系統(tǒng)已經(jīng)預(yù)裝了OpenSSH。如果沒有,請使用以下命令進(jìn)行安裝:
sudo apt-get install openssh-server
Step 2: 檢查SSH服務(wù)是否啟動
使用以下命令檢查SSH服務(wù)是否已經(jīng)啟動:
systemctl status ssh
如果SSH服務(wù)已經(jīng)啟動,將看到如下信息:
● ssh.service – OpenSSH server daemon
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2023-10-15 15:32:18 UTC; 16s ago
Mn PID: 3137 (sshd)
Tasks: 1 (limit: 2319)
CGroup: /system.slice/ssh.service
└─3137 /usr/in/sshd -D
Step 3: 生成SSH密鑰
使用以下命令在本地計算機(jī)上生成SSH密鑰:
ssh-keygen -t ed25519 -C “[email protected]”
這里使用的是Ed25519密鑰,但也可以使用其他類型的密鑰,如RSA或ECDSA。其中,-C參數(shù)指定一個注釋,方便進(jìn)行管理和識別。
運(yùn)行上述命令后,會提示輸入要將密鑰存儲在哪里,以及是否要設(shè)置一個密碼。如果您不希望設(shè)置密碼,則可以直接按Enter鍵跳過該步驟。生成的密鑰對將存儲在~/.ssh目錄下,其中:
– id_ed25519為私有密鑰
– id_ed25519.pub為公共密鑰
Step 4: 復(fù)制公共密鑰到遠(yuǎn)程服務(wù)器
將生成的公共密鑰復(fù)制到需要訪問的遠(yuǎn)程服務(wù)器上??梢允褂靡韵旅顚⒐裁荑€復(fù)制到遠(yuǎn)程服務(wù)器中:
ssh-copy-id user@remote_host
其中,user為遠(yuǎn)程服務(wù)器上的用戶名,remote_host為遠(yuǎn)程主機(jī)的IP地址或域名。運(yùn)行上述命令后,會提示輸入遠(yuǎn)程服務(wù)器的密碼,以便將公共密鑰復(fù)制到~/.ssh/authorized_keys文件中。
Step 5: 使用SSH密鑰登錄遠(yuǎn)程服務(wù)器
現(xiàn)在,您可以使用SSH密鑰登錄遠(yuǎn)程服務(wù)器了。使用以下命令進(jìn)行登錄:
ssh user@remote_host
該命令會自動使用生成的私鑰進(jìn)行身份驗證,從而避免了每次都要輸入密碼的問題。
在Linux系統(tǒng)中生成SSH密鑰非常簡單,只需幾個簡單的步驟即可完成。SSH密鑰是保護(hù)遠(yuǎn)程訪問的一種非常安全的方式,它可以防止未經(jīng)授權(quán)的用戶訪問系統(tǒng)。希望您能夠通過這篇文章,成功學(xué)會如何生成SSH密鑰,并在實(shí)際應(yīng)用中加以運(yùn)用。
相關(guān)問題拓展閱讀:
- linux下安裝ssh
- ssh登錄Linux主機(jī)怎么默認(rèn)下載密鑰
- 如何通過winscp獲得ssh服務(wù)端的hostkey
linux下安裝ssh
(SSH是一個用來替代TELNET、FTP以及R命令的工具包,主要是想解決口令在網(wǎng)上明文傳輸?shù)膯栴}。為了系統(tǒng)安全和用戶自身的權(quán)益,推廣SSH是必要的。SSH有兩個版本,我們現(xiàn)在介紹的是版本2。)
安裝SSH
具體步驟如下:
獲得SSH軟件包。 (
成為超級用戶(root).
# gzip –cd ssh-2.3.0.tar.gz |tar xvf –
# cd ssh-2.3.0
# ./configure
注意,如果你希望用tcp_wrappers來控制SSH,那么在configure時需要加上選項“–with-libwrap=/path/to/libwrap/”, 用來告訴SSH關(guān)于libwrap.a 和tcpd.h的位置。
# make
# make install
和SSH有關(guān)的程序都放置在/usr/local/bin下,包括ssh,sftp,sshd2, ssh-keygen等。
二、配置
SSH的配置文件在/etc/ssh2下,其中包括sshd2的主機(jī)公鑰和私鑰:hostkey和hostkey.pub。這兩個文件通常是在安裝SSH時自動生成的。你可以通過下面的命令重新來生成它們:
# rm /etc/ssh2/hostkey*
# ssh-keygen2 –P /etc/ssh2/hostkey
而ssh2_config 文件一般情形下無需修改。
三、啟動sshd2
每個要使用SSH的系統(tǒng)都必須在后臺運(yùn)行sshd2。用手工啟動:
# /usr/local/bin/sshd2&
可以在“/etc/rc2.d/S99local”中加入該命令,這樣系統(tǒng)每次啟動時會自動啟動sshd2。
四、用tcp_wrappers控制SSH
安裝SSH的站點(diǎn)可以用tcp_wrappers來限制哪些IP地址可以通過ssh來訪問自己。比如,在/etc/hosts.allow中加入
sshd,sshd2: 10.0.0.1
那么只有10.0.0.1可以通過ssh來訪問該主機(jī)。
以上都是系統(tǒng)管理員完成的工作。下面我們說說普通用戶如何使用SSH。
五、基本應(yīng)用
每個用戶在使用SSH之前,都要完成以下步驟:
在本地主機(jī)(比如,local.pku.edu.cn)上生成自己的ssh公鑰和私鑰。大態(tài)命令如下:
local# ssh-keygen
Generating 1024-bit dsa key pair
1 oOo.oOo.o
Key generated.
1024-bit dsa, teng@ns, Fri Oct:27:05
Passphrase :************ /*在此輸入你的口令,以后訪問這臺主機(jī)時要用。
Again :************ /*
Private key saved to /home1/teng/.ssh2/id_dsa_1024_a
Public key saved to /home1/teng/.ssh2/id_dsa_1024_a.pub
生成的私鑰和公鑰(id_dsa_1024_a和id_dsa_1024_a.pub)存放在你家目錄的~/.ssh2目錄下。和用戶相關(guān)的SSH配置文件都在~/.ssh2下。私鑰由用戶保滾氏源存在本地主機(jī)上,而公鑰需傳送到遠(yuǎn)地主機(jī)的你自己的帳號的~/.ssh2下,如果你要用ssh2訪問本地主機(jī)的話。
在~/.ssh2下創(chuàng)建“identification”文件用來說明進(jìn)行身份認(rèn)證的私鑰。命令如下:
local:~/.ssh2# echo “IdKey id_dsa_1024_a” > identification
3.同樣地,在遠(yuǎn)地主機(jī)(比如,remote.pku.edu.cn)上完成上面步驟。
4.將本地(local.pku.edu.cn)下你自己(這里是“teng”)的公鑰(id_dsa_1024_a.pub)拷貝到遠(yuǎn)地主機(jī)(remote.pku.edu.cn)上你自己家目錄下的.ssh2目錄下,可命名為“l(fā)ocal.pub”,一般用ftp上傳即可。
在遠(yuǎn)地主機(jī)上,你自己家目錄的.ssh2目錄下,創(chuàng)建“authorization”文件,其中指定用來進(jìn)行身份認(rèn)證的公鑰文件。命令如核畢下:
remote:~/.ssh2# echo “Key local.pub” > authorization
現(xiàn)在你可以從本地用ssh2登錄到遠(yuǎn)地系統(tǒng)了。命令如下:
local# ssh remote.pku.edu.cn
Passphrase for key “/home1/teng/.ssh2/id_dsa_1024_a” with comment “1024-bit dsa,
teng@ns, Fri Oct:27:05″:***********
這時會要你輸入你的ssh口令(Passphrase)。驗證通過后,即登錄到remote主機(jī)上。
3563
ssh登錄Linux主機(jī)怎么默認(rèn)下載密鑰
想要默認(rèn)下載秘鑰,這樣ssh登陸就不用再使用賬號密碼登陸了,這段游里可以使用基于主機(jī)的非對稱密鑰方式從叢兄主機(jī)B直接登錄到主機(jī)A,具體操作步驟如下:
1,先要修改需要登陸的linux主機(jī)A:
vi /etc/ssh/sshd_config,將
RhostsRSAAuthentication
HostbasedAuthentication
PubkeyAuthentication
都設(shè)置為 yes
保存退出,重啟ssh服務(wù) /etc/init.d/sshd restart;
2,在另外一個做登陸操作的主機(jī)A上進(jìn)行一下操作:
cd ~/.ssh/ (如果沒有.ssh文件夾,可以自己mkdir .ssh)
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
93:08:88:88:dc:8f:46:d8:a3:09:fc:35:25:50:d0:fe
3,秘鑰生成以后,將秘鑰文件從A主機(jī)拷貝到B主機(jī):
#scp -P~/.ssh/id_rsa.pub root@A主機(jī)IP:/root/.ssh/authorized_keys
root@B主機(jī)ip’s password:
輸入正確密碼,回車
id_rsa.pub00%.4KB/s 00:00
這樣~/.ssh/id_rsa.pub 秘鑰已經(jīng)安全傳輸?shù)紹主機(jī)上的/root/.ssh/目錄下并命名為authorized_keys(必須重命名為此文件名);
#ssh -proot@A主機(jī)IP
Enter passphrase for key ‘/root/.ssh/id_rsa’:
密語正確出現(xiàn)類似如下的登錄信息:
Last login: Sat Jul 26 11:16:from B主機(jī)ip
#
登錄A主機(jī)成握鄭銷功。
之一步:生成密匙對腔帶,我用的是rsa的密鑰。使用命令 “ssh-keygen -t rsa”
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user1/.ssh/id_rsa):
Created directory ‘/home/user1/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user1/.ssh/id_rsa.
Your public key has been saved in /home/user1/.ssh/id_rsa.pub.
The key fingerprint is:
e0:f0:3b:d3:0a:3d:da:42:01:6a:61:2f:6c:a0:c6:e7
$
生成的沒圓喊過程中提示輸入密鑰對保存位置,直接回車,接受默認(rèn)值就行了。接著會提示輸入一個不同于你的password的密碼枯野,直接回車,讓它空著。當(dāng)然,也可以輸入一個。這樣,密鑰對就生成完了。
其中公共密鑰保存在 ~/.ssh/id_rsa.pub
私有密鑰保存在 ~/.ssh/id_rsa
然后改一下 .ssh 目錄的權(quán)限,使用命令 “chmod 755 ~/.ssh”
之后把這個密鑰對中的公共密鑰復(fù)制到你要訪問的機(jī)器上去,并保存為 ~/.ssh/authorized_keys.
$ scp ~/.ssh/id_rsa.pub rh1:/home/user1/.ssh/authorized_keys
user1@rh1’s password:
id_rsa.pub 100% 228 3.2MB/s 00:00
$
如何通過winscp獲得ssh服務(wù)端的hostkey
WinSCP(SSH的FTP客戶端)如何生成密鑰登陸linux?之前有很朋友發(fā)現(xiàn)登陸linux時要輸入密碼驗證才能上,后來有了KEY,便可以用KEY直接登陸,那么很多SSH工具都有生成KEY登陸的,在此,我介紹兩個最常用的SSH登陸LINUX的工具給大家,并分襪遲擾享給大家如何生成密鑰登陸LINUX;
之一,WINSCP這個工具無疑是廣泛使用的一個工具,下載與安裝這里不做介紹,眾所周知;那么說一下,安裝好WINSCP并沒有SSH登陸LINUX的工具,我們得下載一個Putty登告旦陸工具,并有一個Puttygen這個工具,這是生成密鑰的工具
然后我們打開WINSCP工具
下一步:
這個id_rsa.rsa怎旦拿么生成的呢?LOOK
輸入命令后,直接回車-回車-回車便可以了,然后,在~.ssh/就會生成id_rsa,id_rsa.pub這個兩個文件;COPY出來這兩個文件,在WIN下面生成PPK文件,便可以用來認(rèn)證登陸;
接著上面如何生成KEY登陸linux
以上保存后,我們便可以來使用生成的PPK文件來驗證登陸LINUX了;LOOK
這樣便可以登陸了
關(guān)于linux ssh key 生成的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
網(wǎng)頁名稱:如何生成LinuxSSH密鑰(linuxsshkey生成)
瀏覽路徑:http://fisionsoft.com.cn/article/coohsjp.html


咨詢
建站咨詢
