windows安裝openssh并通過生成SSH密鑰登錄Linux服務器
SSH的英文全稱是Secure SHell。通過使用SSH,你可以把所有傳輸的數據進行加密,這樣“中間人”這種攻擊方式就不可能實現了,而且也能夠防止DNS和IP欺騙。還有一個額外的好處就是傳輸的數據是經過壓縮的,所以可以加快傳輸的速度。SSH有很多功能,它既可以代替telnet,又可以為ftp、pop、甚至ppp提供一個安全的“通道”
最初SSH是由芬蘭的一家公司開發(fā)的。但是因為受版權和加密算法的限制,現在很多人都轉而使用OpenSSH
OpenSSH是SSH協(xié)議的開源版本(SSH:Secure SHell)。
今天為大家介紹下如何在Windows系統(tǒng)下安裝OpenSSH并通過ssh-keygen命令生成密鑰;
一、下載OpenSSH
二、安裝OpenSSH
1、語言選擇:中文、英文都可以
下一步
“接受協(xié)議”繼續(xù)
這里因為我們是使用SSH連接Linux所以只需要客戶端就可以了,取消“服務器端”的選擇
完成Windows下的openssh安裝
三、測試SSH是否安裝成功
進入windows的命令行工具,輸入ssh命令,出現下面信息即表示我們安裝成功
四、利用ssh-keygen命令生成密鑰對(公鑰及對應的私鑰)
ssh-keygen具體參數如下:
-a trials
在使用 -T 對 DH-GEX 候選素數進行安全篩選時需要執(zhí)行的基本測試數量。
-B 顯示指定的公鑰/私鑰文件的 bubblebabble 摘要。
-b bits
指定密鑰長度。對于RSA密鑰,最小要求768位,默認是2048位。DSA密鑰必須恰好是1024位(FIPS 186-2 標準的要求)。
-C comment
提供一個新注釋
-c 要求修改私鑰和公鑰文件中的注釋。本選項只支持 RSA1 密鑰。
程序將提示輸入私鑰文件名、密語(如果存在)、新注釋。
-D reader
下載存儲在智能卡 reader 里的 RSA 公鑰。
-e 讀取OpenSSH的私鑰或公鑰文件,并以 RFC 4716 SSH 公鑰文件格式在 stdout 上顯示出來。
該選項能夠為多種商業(yè)版本的 SSH 輸出密鑰。
-F hostname
在 known_hosts 文件中搜索指定的 hostname ,并列出所有的匹配項。
這個選項主要用于查找散列過的主機名/ip地址,還可以和 -H 選項聯用打印找到的公鑰的散列值。
-f filename
指定密鑰文件名。
-G output_file
為 DH-GEX 產生候選素數。這些素數必須在使用之前使用 -T 選項進行安全篩選。
-g 在使用 -r 打印指紋資源記錄的時候使用通用的 DNS 格式。
-H 對 known_hosts 文件進行散列計算。這將把文件中的所有主機名/ip地址替換為相應的散列值。
原來文件的內容將會添加一個".old"后綴后保存。這些散列值只能被 ssh 和 sshd 使用。
這個選項不會修改已經經過散列的主機名/ip地址,因此可以在部分公鑰已經散列過的文件上安全使用。
-i 讀取未加密的SSH-2兼容的私鑰/公鑰文件,然后在 stdout 顯示OpenSSH兼容的私鑰/公鑰。
該選項主要用于從多種商業(yè)版本的SSH中導入密鑰。
-l 顯示公鑰文件的指紋數據。它也支持 RSA1 的私鑰。
對于RSA和DSA密鑰,將會尋找對應的公鑰文件,然后顯示其指紋數據。
-M memory
指定在生成 DH-GEXS 候選素數的時候最大內存用量(MB)。
-N new_passphrase
提供一個新的密語。
-P passphrase
提供(舊)密語。
-p 要求改變某私鑰文件的密語而不重建私鑰。程序將提示輸入私鑰文件名、原來的密語、以及兩次輸入新密語。
-q 安靜模式。用于在 /etc/rc 中創(chuàng)建新密鑰的時候。
-R hostname
從 known_hosts 文件中刪除所有屬于 hostname 的密鑰。
這個選項主要用于刪除經過散列的主機(參見 -H 選項)的密鑰。
-r hostname
打印名為 hostname 的公鑰文件的 SSHFP 指紋資源記錄。
-S start
指定在生成 DH-GEX 候選模數時的起始點(16進制)。
-T output_file
測試 Diffie-Hellman group exchange 候選素數(由 -G 選項生成)的安全性。
-t type
指定要創(chuàng)建的密鑰類型??梢允褂茫?rsa1"(SSH-1) "rsa"(SSH-2) "dsa"(SSH-2)
-U reader
把現存的RSA私鑰上傳到智能卡 reader
-v 詳細模式。ssh-keygen 將會輸出處理過程的詳細調試信息。常用于調試模數的產生過程。
重復使用多個 -v 選項將會增加信息的詳細程度(最大3次)。
-W generator
指定在為 DH-GEX 測試候選模數時想要使用的 generator
-y 讀取OpenSSH專有格式的公鑰文件,并將OpenSSH公鑰顯示在 stdout 上。
我們常用的參數基本上是下面幾個:
-t:指定要創(chuàng)建的密鑰類型??梢允褂茫?rsa1"(SSH-1) "rsa"(SSH-2) "dsa"(SSH-2);默認是RSA
-b:指定密鑰長度。對于RSA密鑰,最小要求768位,默認是2048位。DSA密鑰必須恰好是1024位(FIPS 186-2 標準的要求)。
-f :指定密鑰文件名
-C:指定密鑰注釋
在命令行工具中輸入“ssh-keygen -t rsa -b 4096 -C "192.168.1.1"” 提示以下信息,這里我設置密鑰位數為4096默認為2048
Microsoft Windows [版本 6.1.7601] 版權所有 (c) 2009 Microsoft Corporation。保留所有權利。 C:\Users\Administrator>ssh-keygen -t rsa -b 4096 -C "192.168.1.1" Generating public/private rsa key pair. Enter file in which to save the key (/home/Administrator1/.ssh/id_rsa): key #這里輸入文件名windows下必須輸入,如果不輸入會出現錯誤 Enter passphrase (empty for no passphrase):#輸入密鑰密語可以理解成密鑰的密碼,可以不輸入 Enter same passphrase again:#再次輸入密鑰密碼 Your identification has been saved in key. Your public key has been saved in key.pub. The key fingerprint is: SHA256:Ke9MH5QsT19TJqQgimryAn27Vp+MuIFeIff/2VL6hQE 192.168.1.1 The key's randomart image is: +---[RSA 4096]----+ | . . . | | . . . . o | | . . E . . o| | . . o o + | |o = + . S = . o | |.+ = +.o = ..+ . | |. o +o.+o.ooo . | | o .oo.=+.o+ . | | ..o. +.+oo | +----[SHA256]-----+ C:\Users\Administrator>
完成后打開當前用戶目錄看看是否有剛剛生成的key文件,實際上應該是2個文件才對key是私鑰,key.pub是公鑰
我的當前用戶目錄是“C:\Users\Administrator”,可能會和大家不一樣
五、Linux服務器SSH設置
生成密鑰對后還需要把公鑰即我們剛才生成的key.pub文件上傳到linux服務器上
注意:上傳位置是我們登錄Linux所用用戶的家目錄下的.ssh目錄下
如果目錄不存在,需要創(chuàng)建~/.ssh目錄,并把目錄權限設置為700),
把公鑰改名為authorized_keys,并且把它的用戶權限設成600
如:/root/.ssh/
然后把我們上傳的key.pub文件改名為:authorized_keys
[root@server ~]# mv key.pub authorized_keys [root@server ~]# chmod 700 .ssh [root@server ~]# chmod 600 authorized_keys
好了,這樣就可以使用SSH密鑰連接Linux服務器了
如果你沒有連接成功請請檢查一下.ssh目錄與authorized_keys文件的權限是否正確
更多關于SSH連接Linux服務器的文章請查看下面的相關文章
相關文章
linux操作系統(tǒng)原理 linux系統(tǒng)基礎教程
很多對linux操作系統(tǒng)有興趣的朋友想有一個深入的學習,本篇文章給大家詳細講解了linux操作系統(tǒng)的原理,希望能夠對你有所幫助。2018-01-01Ubuntu18.04 linux系統(tǒng)安裝JDK與Mysql的方法
這篇文章主要介紹了Ubuntu18.04 linux系統(tǒng)安裝JDK與Mysql的方法,需要的朋友可以參考下2020-02-02詳解linux 下安裝軟件tar.gz, rpm,deb的方法
本篇文章主要介紹了linux 下安裝軟件tar.gz, rpm,deb的方法 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12CentOS7中MariaDB修改datadir后無法啟動的解決方法
這篇文章主要給大家介紹的是在CentOS 7系統(tǒng)中,MariaDB修改datadir后無法啟動的解決方法,文中給出了詳細解決方法,相信會對大家的理解很有幫助,有需要的朋友們下面來一起看看吧。2016-10-10