linux配置ssh公鑰認證簡介
Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公佈時間)。Linux存在着許多不同的Linux版本,但它們都使用了Linux內核。下面是關於linux配置ssh公鑰認證簡介,希望大家認真閱讀!
一、生成和導入KEY
A主機上生成key
$ ssh-keygen -t rsa
$ ls
id_rsa id_
將key導入到遠程的B主機上,並修改權限
A主機上操作
$ cat /root/_ | ssh root@遠程服務器ip 'cat - >> ~/_keys'
B主機上操作
$ chmod 600 ~/_keys
不過還有更簡單的方法,不需要在B主機上再修改權限 ,而直接將公鑰內容導入到遠程主機上,使用ssh-copy-id命令,如下:
$ ssh-copy-id -i /root/_rsa root@xxx,xxx,xxx,xxx
二、配置sshd_config
配置完key後,需要在sshd_config文件中開啓key認證
$ vim /etc/ssh/sshd_config
PubkeyAuthentication yes //將該項改爲yes
修改完成後,通過/etc/init.d/sshd restart 重啓ssh服務重新加載配置。如果想要禁用密碼認證,更改如下項:
$ vim /etc/ssh/sshd_config
UsePAM yes
爲
UserPAM no
更多配置參數及其意義,可以通過man sshd_config 查看。
三、ssh_config及多私鑰配置
sshd_config是一個全局服務端的配置文件(即本機開啓sshd服務的相關配置),而ssh_config則是一個全局客戶端的配置文件。例如,ssh_config中其中兩行就定義了每個用戶下默認私鑰key的路徑:
# IdentityFile ~/_rsa
# IdentityFile ~/_dsa
如果出現多臺server 多個私鑰文件,在client主機上怎麼配置呢?全部追加到 ~/_rsa(或id_dsa)中?經測試,這是行不通的,只有第一個私鑰可以用,後面的都不行。
在多臺server時,可以有兩種解決方案。
1、在不同的主機上,使用相同的公鑰,則這些機器的私鑰也相同。客戶端上只需要配置這一個私鑰就可以登錄所有的主機。
2、不同的`主機上使用不同的公鑰時, 這時會有多個不同的私鑰。這就需要爲不同的主機指定不同的私鑰文件,這個配置可以在ssh_config中配置(具體可以參看該文件的配置樣例)。當然更多情況下,我們只會在要使用的用戶做個情化的配置,配置文件爲~/(該文件不存在時,請創建之),格式如下:
Host xxxx
IdentityFile 私鑰文件名
Port 端口號
User 你登陸xxxx服務器用的賬號
注:這裏的配置文件同樣可以參看ssh_config裏的配置,也可以通過man ssh_config獲取更多有用信息。
Host *
User www
Port 22
CheckHostIP no
Compression yes
ForwardAgent yes
Host 10.1.100.*
User dev
Port 22
IdentityFile ~/
如上面的配置,默認我們連接所有的主機(除後面給出的10.1.100.*之外的所有主機)時,默認使用戶名爲www ,即 ssh = ssh -p 22 。當我們連接10.1.100.* 下的所有主機時,默認會使用dev用戶,默認的私鑰會用 ~/ 文件。同理,可以增加更多配置。
相關文章
-
基於ubuntu下nginx+php+mysql安裝配置
篇一什麼是醫生年度考覈個人總結,如何寫醫生年度考覈個人總結,其實工作總結是對一段時間來所做的工作進行分析研究,肯定成績,找出問題,把這些用文字表述出來,就叫做工作總結。醫生年度考覈個人總結也是跟其他個人總結差不多 -
Linux系統中的SSH如何添加雙重認證
近來很多知名企業都出現了密碼泄露,業內對多重認證的呼聲也越來越高。在這種多重認證的系統中,用戶需要通過兩種不同的認證程序:提供他們知道的`信息(如 用戶名/密碼),再借助其他工具提供用戶所不知道的信息(如 用手機生 -
linux配置dns服務器配置命令
Linux系統的DNS服務器怎麼配置,配置命令有哪些?下面跟yjbys小編一起來了解一下吧! 一、實驗目的熟悉Linux系統中DNS服務器的配置方法。理解配置過程的基本步驟的.作用。 二、實驗任務(1)建立正向搜索區域,爲網絡 -
linux shell編程的簡介
從程序員的角度來看, Shell本身是一種用C語言編寫的程序,從用戶的角度來看,Shell是用戶與Linux操作系統溝通的橋樑。用戶既可以輸入命令執行,又可以利用 Shell腳本編程,完成更加複雜的操作。在Linux GUI日益完善的今天,在系 -
Linux認證系統管理:認識與學習bash
一、認識bash這個shell1.管理整個計算機硬件的其實就是操作系統的內核,這個內核是需要被保護的,所以我們一般用戶就只能通過shell來跟內核通信,以讓內核達到我們所想打到的工作。2.只要能夠操作應用程序的接口度能夠 -
linux服務器修改ssh默認端口方法
第一種:01假如要改SSH的默認端口(22),那麼你只要修改:/etc/ssh/sshd_config中Port 22,這裏把22改成自己要設的端口就行了,不過千萬別設和現已有的端口相同哦,以防造成未知後果。02假如要限制SSH登陸的`IP,那麼可以如下做:先:修改 -
十個Linux bash shell小技巧
如果你曾經在Linux shell命令行提示符下輸入過命令,你可能已經使用了bash。畢竟,它是多數現代的GNU/Linux版本的缺省命令行shell。bash shell是進入Linux操作系統的首個界面。它接受,解釋並執行你的命令,並且向你提供shel -
entOS 6.7 Linux系統的IP配置方法
本文詳細介紹了CentOS 6.7 Linux系統的IP配置方法一:1、以root用戶登錄系統2、登錄系統後,右終端鍵打開3、在終端窗口輸入‘ifconfig’,查看系統網卡激活情況,小編這邊已經激活的網卡使用eth0.如未出現可輸入‘ifconfig - -
Linux系統如何修改IP、DNS和路由配置
Linux系統重裝後,由於各種原因導致IP、DNS和路由配置都要重新設置,下面是YJBYS小編整理的`Linux系統修改IP、DNS和路由配置的方法,希望對你有幫助! 一、修改IP地址[aeolus@db1 network-scripts]$ vi ifcfg-eth0DEVICE -
2016年Linux認證考試要點:shell程序控制結構語句
shell程序控制結構語句腳本的控制結構語句有三種基本的類型:兩路分支、多路分支以及一個或多個命令的循環執行。Linux的bash中的兩路分支語句是if語句,多路分支語句是if-elif和case語句;代碼的循環執行語句是for、while