普通使用者ssh免密登陸完美解決(Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password))
又很久沒寫部落格了,今天寫一篇很有用的。嘿嘿,剛解決了問題,搞得我三天沒睡好覺。
現在一身輕鬆,希望同樣問題的小夥伴能解決同樣的問題,睡個好覺,也是給自己留個筆記。
ssh免密登陸(我是使用hadoop叢集時需要配置),從一臺虛擬機器ssh到另一臺虛擬機器,包括普通使用者和root使用者皆行。
接下來看我的騷操作(當然我大部分講解的是主要的配置)
↓
首先你應該能ping通你的另一臺機器。我使用的是虛擬機器下的主機模式,不能上網,但是虛擬機器間相互能通。(方法不同但相信大家應該都可以了)
ssh能連線的基本原理我廢話說一句,你也應該知道,不然都不知道自己搞的什麼:伺服器生成一把金鑰(id_rsa),一把公鑰(id_rsa.pub)。將公鑰拷貝到客戶端的~/.ssh檔案中再cat
在實現虛擬機器之間ssh之前,我完成了本機對自己的ssh(ssh localhost、ssh username)這裡是免密登陸的哦!!
拷貝你的公鑰到另一臺電腦:
scp ~/.ssh/id_rsa.pub [email protected]名字:/home/hadoop/(當然更簡單的方式就是直接將id_rsa.pub裡面的東西複製到另一臺的authorized_keys)
此時可以ssh一下了:
我是用root登陸的,顯示不行,那是因為我關閉了root的登陸許可權,如果你要使用root登陸可以執行
vi /etc/ssh/sshd_config
修改為PubkeyAuthentication yes(如果前面有#,就去掉#)
service sshd restart重啟sshd服務後再次連線就行了
後面我們重點講一下普通使用者ssh到另一臺電腦上(因為我在這裡遇到了一個很大的坑!!!!!)
首先你可以試試
這裡username是你要連線的電腦的使用者名稱,hostname是它的地址。
如果可以的話,還是恭喜你。一次搞定。
如果失敗
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
應該是你的配置檔案出現了問題 /etc/ssh/sshd_config
這裡我們使用簡單的連線方式,很多同學可能也會使用另一種連線方式,那就是
ssh 名字
但是你會發現這樣會出現
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
那是因為你沒有指定連線的使用者名稱,它會預設使用當前的使用者名稱所以會錯誤。
如果你不嫌麻煩可以使用
當然也可以使用以下簡單的方式:對映關係
在.ssh檔案下建立一個文字config(如果沒有)
編輯文件:
Host hostname
user username
新增的是對你連線關係的對映。
從hadoop2使用ssh hadoop3時預設改為ssh [email protected],而不是原來的ssh [email protected]了
最後修改的最重要的一點記住許可權問題config文件的許可權同組使用者嚴格為不能寫許可權
修改:
chmod 644 config 或 chmod 600 config
再次使用 ssh 使用者名稱 就ok了!!!
這篇文章我主要想說的就是config檔案,不嫌麻煩你可以使用 ssh [email protected],嫌麻煩你可以新增config檔案的對映,直接ssh hadoop2。
至於前面的ssh連線我沒有講的太清楚,那些網上到處都是,就不說了 ~。~
相關推薦
普通使用者ssh免密登陸完美解決(Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password))
又很久沒寫部落格了,今天寫一篇很有用的。嘿嘿,剛解決了問題,搞得我三天沒睡好覺。 現在一身輕鬆,希望同樣問題的小夥伴能解決同樣的問題,睡個好覺,也是給自己留個筆記。 ssh免密登陸(我是使用hado
解決Centos6.4叢集配置ssh免密登陸仍然需要輸入密碼問題
遇到的問題展示: Ssh免密登陸配置成功之後仍然需要輸入密碼,找了很多方法,最後已解決,現把解決辦法的詳細過程記錄下來,希望對你有幫助。。。 解決辦法: 一、準備工作 1、安裝ssh服務 執行rpm -q
ssh免密登陸
sshssh免密登陸ssh無密碼登錄要使用公鑰與私鑰。linux下可以用用ssh-keygen生成公鑰/私鑰對,下面我以CentOS為例。系統:CentOS7主機:A(192.168.66.100);B(192.168.66.110)為方面,用戶都為root1、在A下生成公鑰/私鑰對命令: ssh-ke
Linux--ssh免密登陸
退出 ssh str restart 註釋 找到 authent 兩個 重啟 前期配置: 以root身份登錄。 退出點擊other,登陸root即可。 修改主機名並重啟。 vim /etc/sysconfig/network 改為node1 vi /etc/s
Centos7實現ssh免密登陸
manage oca sent centos7 main with false SQ present 1通過ssh-copy-id的方式 1 [root@localhost ~]# ssh-copy-id -i root@worker1 2 /usr/bin/ssh-
Linux多臺主機間配置SSH免密登陸
包含 生成 目錄 apt 裏的 html .cn 密碼 查看 1.安裝ssh. sudo apt-get install ssh. 安裝完成後會在~目錄(當前用戶主目錄,即這裏的/home/xuhui)下產生一個隱藏文件夾.ssh(ls -a 可以查看隱藏文件)。如果沒有
shell腳本配置ssh免密登陸
add home copy The authorize code 本地 ont 參數 通過shell腳本配置免密登陸,分為兩個腳本,一個是配置文件config.env,一個是正式腳本sshkey.sh。 # config.envexport HOST_USER=(root
Centos7 配置ssh免密登陸以及遇到的問題
同樣以Ubuntu為例,假設使用者名稱為u: 1)確認已經連線上網際網路,然後輸入命令: sudo apt-get install ssh 2)配置為可以免密碼登入本機。首先檢視在u使用者下是否存在.ssh資料夾(注意ssh前面有“.”,這是一個隱藏資料夾),輸入命令: ls –a
分散式系統詳解--框架(Hadoop-Ssh免密登陸配置)
分散式系統詳解--框架(Hadoop-Ssh免密登陸配置) 配置Ssh非常簡單,其實就是為了避免將來叢集機器變得很多導致操作本機、
大資料入門(5)配置ssh免密登陸
登陸的115 1、使用ssh登陸 ssh 192.168.1.116 輸入密碼 登陸成功 退出:exit 2、
配置ssh免密登陸
免密配置 執行命令 ssh-keygen ,一路回車,在當前使用者 ~.ssh下會有三個檔案(id_rsa,id_rsa.pub,known_hosts), 再新增一個authorized_keys 檔案,將你想免密的機器全部如此配置,將所有機器的id_rsa.pub 內容拷貝進author
Linux Hadoop叢集搭建第二步:--------SSH免密登陸
內容和Linux 搭建 Hadoop叢集--Jdk配置 相關聯 三臺虛擬機器的操作 Linux SSH免密登陸: 參考網址:http://www.cnblogs.com/999-/p/6884861.html 第一步:在master主機上 vim /etc/ssh/sshd_config
伺服器配置ssh免密登陸
之前為了測試方便,買了個國內的低配VPS用於部署java測試,配置為1核2G、2M頻寬上線、20GSSD,雖然是個乞丐版的配置,但是部署一下幾個常用服務端程式還是差不多夠了。然後當天,我一心歡喜的裝上JDK、mysql、zookeeper等程式,但是之後一個禮拜不到,我發現我
SSH免密登陸設定
ssh免密碼輸入 命令: ssh-keygen -t rsa 回車回車回車... 檢視鑰匙鏈 先 cd /root/.ssh
Linux普通使用者配置免密登陸
最近搭建hadoop叢集,專門建立了一個使用者hadoop,配置免密登陸時一直不成功,每次都要我輸入密碼,開始我以為是我的公鑰不正確,後來才想起來,以前配置的時候就遇到這個問題,然後現在記下來,防止以
Linux的ssh免密登陸
第一種情況兩臺主機連結: Linux主機1 ipxxxxxx1 win10主機2或者Linux主機2 ipxxxxxx2 在Linux主機1中操作 第一步:選擇目錄 cd .ssh 第二步:生成金鑰,冒號直接空格或者填
ssh免密登陸指令碼
執行指令碼前面需要先配置好/etc/hosts檔案的ip對映,這個指令碼是根據hosts檔案的ip進行免密登陸配置的 密碼可以自己修改PWD_1 執行需要聯網需要聯網 #!/bin/bash
配置linux主機到windows主機ssh免密登陸
接上篇,從linux主機scp檔案到windows主機,每次輸入密碼肯定不現實。 所以需要配置linux主機到windows主機ssh免密碼,cd /home/你的使用者/.ssh/,如果裡面有id_
Linux 普通使用者之間免密登陸
環境 centos6.5 NN01 centos6.5 NN02 目的: 同臺機器之間實現普通使用者之間的免密登陸: NN01 的user1 免密登陸 user2 不同機器之間實現普通使用者之間的免密登陸 :NN01 的user1 免密登陸
expect 批量自動部署ssh 免密登陸 之 二
ket secret continue host parameter gen serve pass tip #!/usr/bin/expect -f ########################################## hutu #Push the