學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

怎么建立SSH進(jìn)行遠(yuǎn)程控制

時(shí)間: 春健736 分享

  網(wǎng)絡(luò)被攻擊,很多情況是由于服務(wù)器提供了Telnet服務(wù)引起的。目前,一種有效代替Telnet服務(wù)的有用工具就是SSH服務(wù)。SSH客戶端與服務(wù)器端通訊時(shí),用戶名及口令均進(jìn)行了加密,有效防止了對(duì)口令的竊聽。學(xué)習(xí)阿拉小編向大家介紹運(yùn)行在常用操作系統(tǒng)上的SSH服務(wù)器軟件包的使用。

  怎么建立SSH進(jìn)行遠(yuǎn)程控制

  一、ssh連接的幾種驗(yàn)證方式:

  ssh連接是CS模型(客戶端-服務(wù)器),服務(wù)器會(huì)對(duì)客戶端進(jìn)行驗(yàn)證。驗(yàn)證的方法不少,可以在sshd_config配置文件中設(shè)置(Ubuntu是/etc/ssh/sshd_config,mac下是/etc/sshd_config)

  這里僅介紹幾種最簡(jiǎn)單常見的。

  1,最簡(jiǎn)單的輸入賬戶密碼

  直接輸入所要登陸的用戶的密碼。這個(gè)是默認(rèn)的方式。不需要修改配置文件。

  客戶端成功建立到服務(wù)器的連接后,自己的 .ssh/目錄下會(huì)記錄 服務(wù)器的ssh_host_rsa_key.pub(對(duì)應(yīng)的機(jī)器的一個(gè)rsa加密的公鑰)到lknown_hosts文件里。如果服務(wù)器之后改變了這個(gè)值,客戶端需要采取辦法修改對(duì)應(yīng)的值,或者刪除,否則無法登入。 ssh_host_rsa_key.pub 跟ssh的配置文件在同一個(gè)目錄下。

  2,rsa加密驗(yàn)證

  建立的連接的兩端分別是 客戶端(client)和 服務(wù)器(server)。

  客戶端先使用 ssh-keygen 命令,生成私鑰和公鑰。(這里就牽扯到了一個(gè)經(jīng)典的RSA加密算法,不多談),其中私鑰客戶端自己保存,公鑰發(fā)給服務(wù)器。如此一來,客戶端要登錄到服務(wù)器上實(shí)現(xiàn)遠(yuǎn)程控制的身份驗(yàn)證,則在本身的賬戶密碼之外,多了一層保護(hù)。每次登陸,客戶端的信息會(huì)先經(jīng)過私鑰加密,再傳遞給服務(wù)器,服務(wù)器匹配上公鑰進(jìn)行處理后,才能通過。

  注意,配置文件可能也需要對(duì)應(yīng)的修改,比如,筆者的版本是openssh5.9p1,需要取消掉 配置文件對(duì) AuthorizedKeysFil %h/.ssh/authorized_keys 這一句的注釋。只要?jiǎng)h掉那個(gè)'#',就能執(zhí)行rsa驗(yàn)證。如此情況下,就不需要輸入密碼驗(yàn)證了。

  3,passphrase口令驗(yàn)證,增加對(duì)rsa private的保護(hù)。

  這個(gè)我自己還沒怎么看明白= =。參見github中的解釋

  二、實(shí)施細(xì)節(jié)

  我把我的Mac OS X作為客戶端,小黑的Ubuntu作為服務(wù)器端。使用第二種即rsa方法遠(yuǎn)程連接。

  首先,安裝好ssh

  mac下自帶的有,ubuntu下直接sudo apt-get install ssh就好了。(其實(shí)是開源的openssh,unix,linux平臺(tái)下都可。ssh本身被商業(yè)化了,據(jù)說功能更多。)

  其次,在客戶端生成私鑰公鑰,并傳遞給服務(wù)器

  在mac上用ssh-keygen生成密鑰對(duì)。shell指令如下,然后跟著他的提示來好了。passphrase什么都不輸入就好了,果斷回避掉先。

  結(jié)果是在用戶根目錄里的.ssh目錄下生成的 id_rsa(私鑰)和id_rsa.pub(公鑰)。

  然后,傳送id_rsa.pub到Ubuntu上,命名為authorized_keys。這個(gè)過程中默認(rèn)使用了賬號(hào)密碼的驗(yàn)證方式。

  不要忘了修改服務(wù)器的配置文件,以支持rsa驗(yàn)證方式。

  找到

  這句話,去掉前面的'#'號(hào)。(如果沒有找到這句話,則自己加上

  即可,位置無關(guān))

  最后,登陸

  mac下輸入 ssh xxxx@hostAddress

  由于之前已經(jīng)完成了一次文件傳輸,已經(jīng)在客戶端的.ssh/know_hosts中記錄下了服務(wù)器的key,又采用了rsa的驗(yàn)證方式,無需輸入密碼,即可建立鏈接。

  意外

  如果出現(xiàn)在登錄時(shí),出現(xiàn)如下問題:

  Agent admitted failure to sign using the key

  使用 ssh-add 指令將私鑰 加進(jìn)來 (根據(jù)個(gè)人的密匙命名不同更改 id_rsa)

  # ssh-add ~/.ssh/id_rsa

  試用

  用scp命令試用了下。發(fā)現(xiàn)傳輸速度最高也就1.1M。

  網(wǎng)上有說法是開啟-C選項(xiàng)后速度會(huì)翻一倍左右,但我的測(cè)試結(jié)果仍然是最多1.1M。也使用了rsync命令,同樣是1.1M。

  或許是路由器的限速吧= =。以后再查了。

看過“ 怎么建立SSH進(jìn)行遠(yuǎn)程控制 ”的人還看了:

1.解決路由器安全只需簡(jiǎn)單六步

2.網(wǎng)件無線路由器wac730基本設(shè)置

3.路由器安全管理有哪些方法

645558