Linux設置ssh免密碼登錄

一、SSH來源

對于需要遠程管理其它機器,一般使用遠程桌面或者telnet。linux一般只能是telnet。但是telnet的缺點是通信不加密,存在不安全因素,只適合內網訪問。

為解決這個問題,推出了通信加密通信協議,即SSH(Secure Shell)。使用非對稱加密方式,傳輸內容使用rsa或者dsa加密,可以避免網絡竊聽。

hadoop的進程之間同信使用ssh方式,需要每次都要輸入密碼。為了實現自動化操作,需要配置ssh免密碼登陸方式。

二、ssh原理


步驟詳解:

圖中黑色步驟線見“三、配置”

綠色步驟線:

weekend110訪問spark01

1、weekend110帶上自己的用戶名和域名向spark01請求登錄。

2、spark01收到后,查看免密登錄授權列表,查看里面是否有weekend110對應的公鑰。

3、spark01找到公鑰后,隨機生成一個字符串用weekend110對應的公鑰進行加密,發給weekend110.

4、weekend110收到spark01的密文,用自己的私鑰進行解密,獲得一個明文。

5、weekend110將解密結果發送給spark01.

6、spark01驗證weekend110發來的明文與之前生成的隨機字符串核對。

7、一致則spark01通過weekend110的登錄請求。


三、配置

三個節點m1主、s1、s2

主節點m1配置:

首先到用戶主目錄(cd ?~),ls ?-a查看文件,其中一個為“.ssh”,該文件價是存放密鑰的。待會我們生成的密鑰都會放到這個文件夾中。

----------------------------------
現在執行命令生成密鑰: ssh-keygen -t rsa (使用rsa加密方式生成密鑰)回車后,會提示三次輸入信息,我們直接回車即可。即回車四下。

----------------------------------
進入文件夾cd ?.ssh (進入文件夾后可以執行ls ?-a 查看文件)?

創建文件?authorized_keys。命令touch?authorized_keys

修改authorized_keys文件權限為 600,命令:chmod 600 authorized_keys


將生成的公鑰id_rsa.pub 內容追加到authorized_keys(執行命令:cat id_rsa.pub >> authorized_keys)

從節點配置:

s1,s2以同樣的方式生成秘鑰(ssh-keygen -t rsa ),然后s1和s2將生成的id_rsa.pub公鑰追加到m1authorized_keys中)

----------------------------------

在s1中執行命令:scp id_rsa.pub m1:/root/.ssh/id_rsa.pub.s1,將s1的公鑰copy到m1上。

在s2中執行命令:scp id_rsa.pub m1:/root/.ssh/id_rsa.pub.s2,將s2的公鑰copy到m1上。

---------------------------------
進入m1執行命令:cat id_rsa.pub.s1 >> authorized_keys ,cat id_rsa.pub.s1 >> authorized_keys。將s1,s2的公鑰加入m1的authorized_keys文件中。

----------------------------------

最后將生成的包含三個節點的公鑰的authorized_keys 復制到s1和s2的.ssh目錄下

( scp authorized_keys s1:/root/.ssh/, scp authorized_keys s2:/root/.ssh/)

這樣三個節點的authorized_keys 都有了自身節點的公鑰和其他節點的公鑰,如此節點間和節點自身都可以互相ssh免密碼登錄,啟動hadoop時可以不用輸入密碼了。


*****************************************************

以上的配置方法是 兩臺機器可以互相ssh免密登錄。

但有時候只想S1免密登錄S2,反之則不可以。怎么辦?

用ssh-copy-id ?域名 ?這個命令。

操作:

在S1生成ssh秘鑰后。

在S1上輸入命令:

ssh-copy-id ?S1 ? //先把自己的公鑰拷貝到自己機子上

ssh-copy-id ?S2 ? //把自己的公鑰拷貝到S2的機子上。S2不需要用ssh-keygen


四、驗證ssh免密碼登錄

輸入命令ssh ?localhost(主機名) 根據提示輸入“yes”?
輸入命令exit注銷(Logout)
再次輸入命令ssh localhost即可直接登錄


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539744.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539744.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539744.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解析json數據_Retrofit同時解析JSON和XML數據格式

前言Android開發中,我們會經常遇到前端需要解析兩種數據格式(json和xml),比如自己服務器返回的是json格式的數據,我們做微信登錄的時候,微信返回的格式又是xml格式的。我們可以通過自己編寫Retrofit的ConverterFactory來做到可以同時解析兩種…

ORACLE 小時值必須介于1和12之間 解決方法

ORACLE數據庫查詢語句: "select * from dual where time>to_date(2012-10-29 19:45:34,yyyy-mm-dd HH:mi:ss)"當執行時,會拋出錯誤:ORA-01849: 小時值必須介于 1 和 12 之間 01849. 00000 - "hour must be between 1 and 1…

jenkins+svn+maven+ssh 部署配置詳細記錄

2019獨角獸企業重金招聘Python工程師標準>>> 先簡單記錄一下,后面再慢慢完善。 1、環境 jdk 1.7.0_45 maven 3.1.1 jenkins 2.3.21 jdk和maven的安裝就不必多說了,主要是jenkins的安裝需要說下,jenkins有war包和yum還有rpm等安裝方…

k8s安裝sqlite3_kubernetes環境部署單節點redis數據庫的方法

kubernetes部署redis數據庫(單節點)redis簡介Redis 是我們常用的非關系型數據庫,在項目開發、測試、部署到生成環境時,經常需要部署一套 Redis 來對數據進行緩存。這里介紹下如何在 Kubernetes 環境中部署用于開發、測試的環境的 Redis 數據庫&#xff0…

oracle 都是parallel惹的禍【1-2分鐘出結果變1-2秒】

原文:http://blog.csdn.net/shushugood/article/details/9000628 -------------------------------------------------------- 該項目是中國聯通xxxx話務系統,我的架構設計需求設計,運維保障數據庫開發,全套服務。 在今天開發完畢…

二叉搜索樹(BST樹)的簡單實現

#include <stdlib.h>template<typename T>class CBinSTree;template <typename T>class CTreeNode{//樹節點類public:CTreeNode(const T& item,CTreeNode<T>* lptr NULL,CTreeNode<T>* rptr NULL):data(item),left(lptr),right(rptr){}CTr…

Oracle 創建 DBLink 的方法

原文出處&#xff1a;http://blog.csdn.net/davidhsing/article/details/6408770 ------------------- 1、如果需要創建全局 DBLink&#xff0c;則需要先確定用戶有創建 dblink 的權限&#xff1a; [c-sharp] view plaincopy print?select * from user_sys_privs where privi…

eclipse init 配置

--設置最大的堆和最小堆大小.兩者一樣表示固定大小.這樣可以防止老年代內存擴展造成額外的gc.當然也會多占一些內存.系統內存不足的慎用 -Xms512m -Xmx512m --加大年輕代內存.減少minor gc -Xmn164m --這個是永久代大小.默認是64M,增加到96M.固定大小,減少擴展造成的gc -XX:Per…

Oracle對表空間操作的sql

管理員給用戶增加不限制表空間權限 grant unlimited tablespace to 用戶; 查看表空間使用情況 SELECT a.tablespace_name "表空間名", total "表空間大小", free "表空間剩余大小", (total - free) "表空間使用大小", total / (…

IPKISS Tutorials------線路仿真

IPKISS------線路仿真 推薦閱讀引言正文示例1------PDK中集成好的器件示例2------使用 i3.Circuit 框架示例3------i3.PCell 框架推薦閱讀 Matplotlib ------ 縱坐標科學計數法含義 引言 我們知道,想要在 IPKISS 中進行仿真,首先需要對線路進行定義,但是我們知道,在 IPK…

Oracle Database 11g Express Edition使用限制,與其他版本的區別

Oracle Database 11g Express Edition是 Oracle 數據庫的免費版本&#xff0c;支持標準版的大部分功能&#xff0c;11g Express Edition 提供 Windows 和 Linux 版本。 做為免費的 Oracle 數據庫版本&#xff0c;Express Edition的限制是&#xff1a; 1&#xff09;最大數據庫大…

c++ 復制構造函數_C++學習刷題8--復制構造函數和賦值運算符重載函數

一、前言本部分為C語言刷題系列中的第8節&#xff0c;主要講解這幾個知識點&#xff1a;復制構造函數和賦值運算符重載函數。歡迎大家提出意見、指出錯誤或提供更好的題目&#xff01;二、知識點講解知識點1&#xff1a;復制構造函數1、當依據一個已存對象創建一個新對象時&…

ORACLE使用WITH AS和HINT MATERIALIZE優化SQL解決FILTER效率低下

原文&#xff1a;http://blog.csdn.net/liangweiwei130/article/details/37882503 ------------------------------------------------- 在做項目的過程中&#xff0c;一個頁面使用類似如下的SQL查詢數據&#xff0c;為了保密和使用方便&#xff0c;我把項目中有關的表名和字段…

面試題333

2019獨角獸企業重金招聘Python工程師標準>>> 面試題333 博客分類&#xff1a; java 1、spring的緩存,mybatis緩存2、介紹下dubbo。A服務調用B服務&#xff0c;B服務又調用C服務,這種情況怎么辦3、JVM監控工具有哪些&#xff0c;區別又是什么&#xff08;如能追上各個…

mysql vfp_用 VFP 連接 MYSQL 數據庫

今天試了一下用 Visual FoxPro 連接 MySQL 數據庫。首先在自己機子上架設 MySQL 數據庫&#xff0c;就不多說了&#xff0c;我是直接用 XAMPP 架設的服務器。然后在 VFP 里輸入命令&#xff1a;sqlhandle SQLSTRINGCONNECT("driver{MySQL ODBC 5.1 Driver};server127.0.0…

oracle中with的用法及用處

原文出處&#xff1a;http://blog.csdn.net/chenjinlin1/article/details/6572401 ---------------------------------------------------------------- WITH 用于一個語句中某些中間結果放在臨時表空間的SQL語句 如 WITH channel_summary AS ( SELECT channels.channel_de…

xpath選擇當前結點的子節點

2019獨角獸企業重金招聘Python工程師標準>>> xpath選擇當前結點的子節點 博客分類&#xff1a; 搜索引擎&#xff0c;爬蟲 在通過selenium使用xpath選擇節點的時候&#xff0c;可能會遇到這么一種情況&#xff1a;在指定的當前節點下搜索滿足要求的節點。 node dri…

mysql中主從復制配置文件_MySQL主從復制 配置文件實例

1、主服務器配置文件# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html[mysqld]# Remove leading # and set to the amount of RAM for the most important data# cache in MySQL. Start at 70%…

SQL中,where 與 having 的性能比較

原文&#xff1a;http://blog.csdn.net/showshore/article/details/7263115 --------------------------------------------------------- 在做項目的過程中&#xff0c;使用sql語句時&#xff0c;很多時候會用到where或having。 看到國外一個論壇上有人提到兩者性能比較的這個…

Spark 獨立部署模式

2019獨角獸企業重金招聘Python工程師標準>>> Spark 獨立部署模式 博客分類&#xff1a; spark 除了在 Mesos 或 YARN 集群上運行之外, Spark 還提供一個簡單的獨立部署的模塊。你通過手動開始master和workers 來啟動一個獨立的集群。你也可以利用我們提供的腳本 .…