Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megtudhatja, hogyan csatlakozhat biztonságosan az Apache Hadoophoz az Azure HDInsightban a Secure Shell (SSH) használatával. A virtuális hálózaton keresztüli csatlakozással kapcsolatos információkért tekintse meg az Azure HDInsight virtuális hálózati architektúrát. Lásd még: Az Azure HDInsight-fürtök virtuális hálózati üzembe helyezésének megtervezése.
Az alábbi táblázat tartalmazza a HDInsighthoz SSH-ügyféllel való csatlakozáshoz szükséges címet és portinformációkat:
Cím | Kikötő | Csatlakozik... |
---|---|---|
<clustername>-ssh.azurehdinsight.net |
22 | Elsődleges fejcsomópont |
<clustername>-ssh.azurehdinsight.net |
23 | Másodlagos átjárócsomópont |
<edgenodename>.<clustername>-ssh.azurehdinsight.net |
22 | peremcsomópont (bármely más fürttípus, ha létezik peremcsomópont) |
Cserélje le a <clustername>
elemet a fürt nevére. Cserélje le <edgenodename>
az élcsomópont nevére.
Ha a fürt élcsomópontot tartalmaz, javasoljuk, hogy mindig SSH használatával csatlakozzon az élcsomóponthoz. A fő csomópontok olyan szolgáltatásokat üzemeltetnek, amelyek kritikus fontosságúak a Hadoop állapota szempontjából. A peremcsomópont csak azt futtatja, amit te helyeztél rá. További információ az élcsomópontok használatáról: Élcsomópontok használata a HDInsightban.
Jótanács
Amikor először csatlakozik a HDInsighthoz, lehetséges, hogy az SSH-ügyfél figyelmeztetést jelenít meg, hogy a gazdagép hitelessége nem igazolható. Amikor a rendszer kéri, válassza az "igen" lehetőséget, hogy hozzáadja a gazdagépet az SSH-ügyfél megbízható kiszolgálólistájához.
Ha korábban ugyanahhoz a kiszolgálóhoz csatlakozott, figyelmeztetést kaphat arról, hogy a tárolt gazdagépkulcs nem egyezik meg a kiszolgáló gazdagépkulcsával. Az SSH-ügyfél dokumentációjában megtudhatja, hogyan távolíthatja el a kiszolgálónév meglévő bejegyzését.
SSH-ügyfelek
Linux, Unix és macOS rendszerek biztosítják a ssh
és scp
parancsokat. Az ssh
ügyfelet gyakran használják távoli parancssori munkamenetek linuxos vagy Unix-alapú rendszerekkel való létrehozására. Az scp
ügyfél használatával biztonságosan másolhat fájlokat az ügyfél és a távoli rendszer között.
A Microsoft Windows alapértelmezés szerint nem telepít SSH-ügyfeleket. A ssh
és scp
ügyfelek Windowshoz az alábbi csomagokon keresztül érhetők el.
OpenSSH-ügyfél. Ez az ügyfél egy választható funkció, amelyet a Windows 10 Fall Creators Update tartalmaz.
Bash az Ubuntu-on Windows 10 rendszeren.
Azure Cloud Shell. A Cloud Shell Bash-környezetet biztosít a böngészőben.
Git.
Számos grafikus SSH-ügyfél is létezik, például a PuTTY és a MobaXterm. Bár ezek az ügyfelek a HDInsighthoz való csatlakozáshoz használhatók, a kapcsolódás folyamata eltér a ssh
segédprogramtól. További információkért tekintse meg a használt grafikus ügyfél dokumentációját.
Hitelesítés: SSH-kulcsok
Az SSH-kulcsok nyilvános kulcsú titkosítást használnak az SSH-munkamenetek hitelesítéséhez. Az SSH-kulcsok biztonságosabbak, mint a jelszavak, és egyszerűen biztosítják a Hadoop-fürthöz való hozzáférést.
Ha az SSH-fiókot kulcs védi, az ügyfélnek meg kell adnia a megfelelő titkos kulcsot a csatlakozáskor:
A legtöbb ügyfél konfigurálható úgy, hogy alapértelmezett kulcsot használjon. A(z)
ssh
ügyfél például egy titkos kulcsot keres a(z)~/.ssh/id_rsa
Linux- és Unix-környezetekben.Megadhatja a titkos kulcs elérési útját. Az
ssh
ügyfélnél a-i
paraméterrel adhatja meg a titkos kulcs elérési útját. Például:ssh -i ~/.ssh/id_rsa sshuser@myedge.mycluster-ssh.azurehdinsight.net
.Ha több titkos kulcsot használ a különböző kiszolgálókhoz, fontolja meg egy olyan segédprogram használatát, mint az ssh-agent (https://en.wikipedia.org/wiki/Ssh-agent). A
ssh-agent
segédprogram segítségével automatikusan kiválaszthatja az SSH-munkamenetek létrehozásakor használni kívánt kulcsot.
Fontos
Ha jelszóval védi a titkos kulcsot, a kulcs használatakor be kell írnia a jelszót. Az olyan segédprogramok, mint például ssh-agent
a jelszó gyorsítótárazása az Ön kényelme érdekében.
SSH-kulcspár létrehozása
ssh-keygen
A parancs használatával nyilvános és titkos kulcsfájlokat hozhat létre. A következő parancs létrehoz egy 2048 bites RSA-kulcspárt, amely a HDInsighttal használható:
ssh-keygen -t rsa -b 2048
A rendszer a kulcslétrehozási folyamat során információkat kér. Például a kulcsok tárolásának helye vagy a jelszó használata. A folyamat befejezése után két fájl jön létre; egy nyilvános kulcs és egy titkos kulcs.
A nyilvános kulcs egy HDInsight-fürt létrehozásához használható. A nyilvános kulcs kiterjesztése a
.pub
következő: .A titkos kulcs használatával hitelesítheti az ügyfelet a HDInsight-fürtben.
Fontos
A kulcsokat jelszóval is biztonságossá teheti. A jelszó tulajdonképpen egy jelszó a titkos kulcson. Még akkor is, ha valaki beszerezi a titkos kulcsot, rendelkeznie kell a kulcs használatához szükséges jelszóval.
HDInsight létrehozása a nyilvános kulccsal
Létrehozási módszer | A nyilvános kulcs használata |
---|---|
Azure Portal | Törölje a jelölést a Fürtbejelentkezési jelszó használata az SSH-hoz opcióról, majd válassza a Nyilvános kulcs lehetőséget SSH-hitelesítési típusként. Végül jelölje ki a nyilvános kulcsfájlt, vagy illessze be a fájl szöveges tartalmát az SSH nyilvános kulcs mezőjébe.![]() |
Azure PowerShell | Használja a -SshPublicKey New-AzHdinsightCluster parancsmag paraméterét, és sztringként adja át a nyilvános kulcs tartalmát. |
Azure parancssori felület (CLI) | Használja a --sshPublicKey az hdinsight create parancs paraméterét, és adja át a nyilvános kulcs tartalmát sztringként. |
Resource Manager-sablon | Az SSH-kulcsok sablonnal való használatára vonatkozó példa: A HDInsight üzembe helyezése Linuxon SSH-kulccsal. A publicKeys azuredeploy.json fájlban található elem a kulcsok Azure-ba való továbbítására szolgál a fürt létrehozásakor. |
Hitelesítés: Jelszó
Az SSH-fiókok jelszóval védhetők. Amikor SSH használatával csatlakozik a HDInsighthoz, a rendszer kéri a jelszó megadását.
Figyelmeztetés
A Microsoft nem javasolja a jelszó-hitelesítés használatát az SSH-hoz. A jelszavak kitalálhatók, és sebezhetők a találgatásos támadásokkal szemben. Ehelyett azt javasoljuk, hogy SSH-kulcsokat használjon a hitelesítéshez.
Fontos
A HDInsight-fürt létrehozása után 70 nappal az SSH-fiók jelszava lejár. Ha a jelszó lejár, módosíthatja a HDInsight kezelése dokumentumban található információk alapján.
HDInsight létrehozása jelszóval
Létrehozási módszer | Jelszó megadása |
---|---|
Azure Portal | Alapértelmezés szerint az SSH-felhasználói fiók jelszava megegyezik a fürt bejelentkezési fiókjával. Ha másik jelszót szeretne használni, törölje a jelet az SSH fürt bejelentkezési jelszavának használata jelölőnégyzetből, majd írja be a jelszót az SSH jelszó mezőjébe.![]() |
Azure PowerShell | Használja a --SshCredential New-AzHdinsightCluster parancsmag paraméterét, és adjon át egy PSCredential objektumot, amely tartalmazza az SSH-felhasználói fiók nevét és jelszavát. |
Azure parancssori felület (CLI) | Használja a --ssh-password parancs paraméterét az hdinsight create , és adja meg a jelszó értékét. |
Resource Manager-sablon | Példa a jelszó sablonnal való használatára: A HDInsight üzembe helyezése Linuxon SSH-jelszóval. A linuxOperatingSystemProfile azuredeploy.json fájlban található elem az SSH-fiók nevének és jelszavának az Azure-nak való átadására szolgál a fürt létrehozásakor. |
Az SSH-jelszó módosítása
Az SSH felhasználói fiók jelszavának módosításáról a HDInsight-dokumentum Jelszó módosítása szakaszában olvashat.
Hitelesítési tartományba csatlakozott HDInsight
Ha tartományhoz csatlakoztatott HDInsight-fürtöt használ, a parancsot az kinit
SSH helyi felhasználójával való csatlakozás után kell használnia. Ez a parancssor tartományi felhasználót és jelszót kér, és hitelesíti a munkamenetet a fürthöz társított Microsoft Entra-tartománnyal.
A Kerberos-hitelesítést az egyes tartományhoz csatlakoztatott csomópontokon (például a fő csomóponton, az élcsomóponton) is engedélyezheti, hogy a tartományi fiók használatával ssh-t használjon. Az sshd konfigurációs fájl szerkesztéséhez tegye a következőt:
sudo vi /etc/ssh/sshd_config
komment törlése és módosítás KerberosAuthentication
-ről yes
-re
sudo service sshd restart
A parancs használatával klist
ellenőrizze, hogy a Kerberos-hitelesítés sikeres volt-e.
További információ: Tartományhoz csatlakoztatott HDInsight konfigurálása.
Csatlakozás csomópontokhoz
A fő csomópontok és a peremcsomópont (ha van ilyen) az interneten keresztül érhető el a 22-23-ai porton.
Ha a fő csomópontokhoz csatlakozik, a 22-s portot használva csatlakozzon az elsődleges fejcsomóponthoz, a 23-at pedig a másodlagos fejcsomóponthoz. A használni kívánt teljesen minősített tartománynév
clustername-ssh.azurehdinsight.net
, ahol aclustername
a fürt neve.# Connect to primary head node # port not specified since 22 is the default ssh sshuser@clustername-ssh.azurehdinsight.net # Connect to secondary head node ssh -p 23 sshuser@clustername-ssh.azurehdinsight.net
Amikor a peremcsomóponthoz csatlakozik, használja a 22-s portot. A teljes mértékben minősített tartománynév a
edgenodename.clustername-ssh.azurehdinsight.net
, ahol aedgenodename
az a név, amelyet az élcsomópont létrehozásakor adtál meg.clustername
a fürt neve.# Connect to edge node ssh sshuser@edgnodename.clustername-ssh.azurehdinsight.net
Fontos
Az előző példák feltételezik, hogy jelszó-hitelesítést használ, vagy hogy a tanúsítványhitelesítés automatikusan megtörténik. Ha SSH-kulcspárt használ a hitelesítéshez, és a tanúsítványt nem használja automatikusan, a -i
paraméter használatával adja meg a titkos kulcsot. Például: ssh -i ~/.ssh/mykey sshuser@clustername-ssh.azurehdinsight.net
.
A csatlakozás után a parancssor megváltozik, hogy jelezze az SSH-felhasználónevet és a csomópontot, amelyhez csatlakozik. Ha például az elsődleges főcsomóponthoz sshuser
csatlakozik, a parancssor a következő sshuser@<active-headnode-name>:~$
.
Csatlakozás feldolgozói és Apache Zookeeper-csomópontokhoz
A feldolgozó csomópontok és a Zookeeper-csomópontok nem érhetők el közvetlenül az internetről. Ezek a fürtfejcsomópontokról vagy az élcsomópontokról érhetők el. A többi csomóponthoz való csatlakozás általános lépései a következők:
SSH használatával csatlakozzon egy fej- vagy élcsomóponthoz:
ssh sshuser@myedge.mycluster-ssh.azurehdinsight.net
Az SSH-kapcsolatból a fej- vagy élcsomóponthoz való csatlakozáshoz használja a
ssh
parancsot a fürt egyik feldolgozó csomópontjához:ssh sshuser@wn0-myhdi
A csomópontnevek listájának lekéréséhez tekintse meg a HDInsight kezelését az Apache Ambari REST API-dokumentum használatával .
Ha az SSH-fiók jelszóval van védve, csatlakozáskor adja meg a jelszót.
Ha az SSH-fiók SSH-kulcsokkal van védve, győződjön meg arról, hogy az SSH-továbbítás engedélyezve van az ügyfélen.
Megjegyzés
A fürt összes csomópontjának közvetlen elérésének másik módja, ha a HDInsight-ot egy Azure-beli virtuális hálózatba telepítjük. Ezután csatlakoztathatja a távoli gépét ugyanahhoz a virtuális hálózathoz, és közvetlenül elérheti a fürt összes csomópontját.
További információ: A HDInsightvirtuális hálózatának tervezése.
SSH-ügynöktovábbítás konfigurálása
Fontos
Az alábbi lépések linuxos vagy UNIX-alapú rendszert feltételeznek, és a Bash használata Windows 10 rendszeren. Ha ezek a lépések nem működnek a rendszer számára, előfordulhat, hogy az SSH-ügyfél dokumentációjában kell keresnie.
A
~/.ssh/config
szövegszerkesztővel nyissa meg. Ha ez a fájl nem létezik, parancssori beírássaltouch ~/.ssh/config
hozhatja létre.Adja hozzá a következő szöveget az
config
fájlhoz.Host <edgenodename>.<clustername>-ssh.azurehdinsight.net ForwardAgent yes
Cserélje le a gazdagép adatait az SSH-hoz csatlakozó csomópont címére. Az előző példa a peremcsomópontot használja. Ez a bejegyzés konfigurálja az SSH-ügynök továbbítását a megadott csomóponthoz.
Tesztelje az SSH-ügynök továbbítását a terminál következő parancsával:
echo "$SSH_AUTH_SOCK"
Ez a parancs az alábbi szöveghez hasonló információt ad vissza:
/tmp/ssh-rfSUL1ldCldQ/agent.1792
Ha nem ad vissza semmit, akkor
ssh-agent
nem fut.Miután ellenőrizte, hogy az ssh-ügynök fut-e , az alábbiak segítségével adja hozzá az SSH titkos kulcsát az ügynökhöz:
ssh-add ~/.ssh/id_rsa
Ha a titkos kulcs egy másik fájlban van tárolva, cserélje le
~/.ssh/id_rsa
a fájl elérési útját.Csatlakozzon a fürt élcsomópontjaihoz vagy a fő csomópontokhoz az SSH használatával. Ezután az SSH-paranccsal csatlakozhat egy feldolgozói vagy zookeeper-csomóponthoz. A kapcsolat a továbbított kulccsal jön létre.