hadoop再次集群搭建(2)-配置免秘鑰ssh登錄
SSH對于大多程序員都不陌生,目前主流的云服務提供上也是通過SSH來提供鏈接的安全保障,比如AWS通過使用下載的私鑰(private key)實現與EC2實例安全連接、GitHub通過上傳的公鑰(public key)實現基于git協議(底層使用SSH)遠程庫管理。
SSH(Secure Shell)是一個提供數據通信安全、遠程登錄、遠程指令執行等功能的安全網絡協議,由芬蘭赫爾辛基大學研究員Tatu Yl?nen,于1995年提出,其目的是用于替代非安全的Telnet、rsh、rexec等遠程Shell協議。之后SSH發展了兩個大版本SSH-1和SSH-2。
從客戶端來看,SSH提供兩種級別的安全驗證。
第一種級別(基于口令的安全驗證)只要你知道自己帳號和口令,就可以登錄到遠程主機。所有傳輸的數據都會被加密,但是不能保證你正在連接的服務器就是你想連接的服務器。可能會有別的服務器在冒充真正的服務器,也就是受到“中間人”這種方式的攻擊。
第二種級別(基于密匙的安全驗證)需要依靠密匙,也就是你必須為自己創建一對密匙,并把公用密匙放在需要訪問的服務器上。如果你要連接到SSH服務器上,客戶端軟件就會向服務器發出請求,請求用你的密匙進行安全驗證。服務器收到請求之后,先在你在該服務器的家目錄下尋找你的公用密匙,然后把它和你發送過來的公用密匙進行比較。如果兩個密匙一致,服務器就用公用密匙加密“質詢”(challenge)并把它發送給客戶端軟件。客戶端軟件收到“質詢”之后就可以用你的私人密匙解密再把它發送給服務器。
用這種方式,你必須知道自己密匙的口令。但是,與第一種級別相比,第二種級別不需要在網絡上傳送口令。
有關詳細的介紹,可以參考wiki:https://en.wikipedia.org/wiki/Secure_Shell
我們這里需要對第二種進行配置。
1. 免秘鑰
創建hadoop用戶和用戶組,
創建hadoop用戶和用戶組,
節點名稱 | IP1 | IP2 | 備注 |
node1.com | 192.168.122.128 | 動態聯網 | root/123456 hadoop/hadoop |
node2.com | 192.168.122.129 | 動態聯網 | root/123456 hadoop/hadoop |
node3.com | 192.168.122.130 | 動態聯網 | root/123456 hadoop/hadoop |
使用hadoop用戶,命令如下
ssh-keygen -t rsa 生成rsa加密的密鑰
cp id_rsa.pub authorized_keys copy文件
cat id_rsa.pub>>authorized_keys 將其他的秘鑰追加到這一個文件中,然后分發給所有機器
ssh-keygen -t rsa 生成rsa加密的密鑰
cp id_rsa.pub authorized_keys copy文件
cat id_rsa.pub>>authorized_keys 將其他的秘鑰追加到這一個文件中,然后分發給所有機器
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAxOUxs3C8xul4iqadE5nfEG8+9lURvGk8o7Z1Ef1cZ3PJBXPPi7/zNUxiL2iD93SMHMwmN6ZaUy9myLCPmyA1oCpOyjzyBQQv0ONk2QkWNytvYaF4KQx3OjF3L1o/YwAbppMzuofX+iBT36IYeRuF/86w6VwRtfCQ/8s6+h84RCAwhdLtopksrtY3v/03UMFaZ1F/GTmQeralSQWuhSbLXgYEhqoPr+AhI/B04PvJA3Q1HTxKMKqll3GmzmvGxhWWpYmKDAJvgnJ5C3jpUMl7NSVMbz0mwzdqk8ao+lt1KYoyl9mwbbs0Al57MyfgftZdttnK1wsVAYnKlFyYJZinGw== hadoop@node1.com
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAzABdw8P91Ohgobpacj/OpTtt4WHdJrzVQPalUMAZUHoLZSfqtfqSVljpMhD8NmxYh2rHGLivA/pyLIrqEbTshkIyu1vlEDARry5cH02zv5xRQy1/npcLkdKOQbMvecbIO+wginFnedPBTs3Xw0J2XZZJf6G9ySLe2WQt4JW31QordOjfO2ZhQFYHB7icu22ReLB2unBfK9oyc2F+pbTENpe5/Ka5s0qMcX1d0XyVWqUo5F6cnrX/JoQ8xveO+DXJxGMvOZHQJPkfID8KT4mbZ7/kfo5ap9UH5AO4H6Sx9o8pMvZOid0m0kfdmiJ1PgS5kQiJxD1ITSQ7WNCglNTbWQ== hadoop@node2.com
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6jde660wUazvvRmld6eTD0gFpxIUMvn6eBv8KftjSPfN5KYRq3CugcAUyghq5GRkIyikbLugTzm2WiR3fAZEqZtDtGZk/s+CsryOfwrgrpyWsjU1ZScuKJtKXuo3ZlNB4FrpvxM1xJMd5A2lN3EDDi0JbkyDTajrEQb4+hNwQR+wv11EnjmPAPEJ5FCgM7JfyNC1hqzuht1MwCPyLNekwIuB+hgQaOh81WSY/U52DfKsvDQc0LeEaXxuEfSCFQYjY9VGDO92sHe0dUkGdmjxFiEd5JRObxnQQTMn9rHEcT9iTjruzAi811d3ropvkaGad4JjuJ49LCmmm/WcsmZlEw== hadoop@node3.com
這樣所有的機器都有一份授權的key,每一個機器訪問的時候保證這臺機器上的 authorized_keys 里面有訪問者的pub key,通過驗證。
接下來配置所有的hosts文件
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.122.128 node1.com
192.168.122.169 node2.com
192.168.122.130 node3.com
情況1: authorized_keys 權限過高:
chmod 600 authorized_keys
情況2: sshd_config
配置成功之后:

Charles 于2015-12-17 Phnom Penh
版權說明:
本文由Charles Dong原創,本人支持開源以及免費有益的傳播,反對商業化謀利。
CSDN博客:http://blog.csdn.net/mrcharles
個人站:http://blog.xingbod.cn
EMAIL:charles@xingbod.cn
來自: http://blog.csdn.net//mrcharles/article/details/50340001
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!