Puncte:1

Nu mai pot SSH într-o mașină la care am o conexiune prin cablu. Cum pot să intru înapoi?

drapel ru

Dezvolt software pe o placă personalizată care rulează Linux. Accesez această placă prin ssh pe o conexiune prin cablu. Am un adaptor usb-ethernet pe aparat, apoi cablul ethernet se conectează la această placă personalizată. Aveam chei ssh configurate, așa că nu ar fi nevoie să introduc o parolă de fiecare dată. Totul a funcționat bine până când am partajat internetul cu acea placă și am executat un git pull pentru a actualiza software-ul de pe acesta. (Asta a funcționat bine de altfel). După ce am schimbat adresa IP la manual și am repus vechiul ip, am primit un avertisment despre schimbarea gazdei. Acesta este de pe internet, deci ip-urile nu se potrivesc, dar arăta cam așa:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@
@ AVERTISMENT: IDENTIFICAREA GAZDEI LA DISTANȚĂ S-A SCHIMBAT! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@
ESTE POSIBIL CA CINEVA SĂ FACĂ CEVA RĂUS!
Cineva s-ar putea să te asculte cu urechea chiar acum (atac de om-in-the-middle)!
De asemenea, este posibil ca o cheie gazdă tocmai să fi fost schimbată.
Amprenta pentru cheia RSA trimisă de gazda la distanță este
51:82:00:1c:7e:6f:ac:ac:de:f1:53:08:1c:7d:55:68.
Vă rugăm să contactați administratorul de sistem.
Adăugați cheia gazdă corectă în /Users/isaacalves/.ssh/known_hosts pentru a scăpa de acest mesaj.
Cheie RSA ofensă în /Users/isaacalves/.ssh/known_hosts:12
Cheia gazdă RSA pentru 104.131.16.158 s-a schimbat și ați solicitat o verificare strictă.
Verificarea cheii gazdei nu a reușit.

Mi se tot cere parola când încerc să fac ssh, chiar dacă nu ar trebui. Partea cea mai ciudată este că atunci când introduc parola, nu o acceptă. De unde știu că este parola corectă? Pentru că folosesc ecranul pentru a intra în serie pe placă și m-am autentificat cu acea parolă prin ecran. Pot accesa placa apoi (gazdă) prin ecran, doar că ecranul este foarte lent și trebuie să fac ssh pentru vscode și alte lucruri.

Am dezinstalat chiar și clientul ssh pe mașina mea și l-am reinstalat. Nimic.Am eliminat folderul known_hosts de pe mașina mea și nu a ajutat. Gazda poate trimite ssh la propria sa adresă IP (nu loopback), așa că cred că acceptă cereri ssh. (Cu excepția cazului în care există un scurtcircuit acolo și nu folosește de fapt ssh atunci când își folosește propriul IP. Dar cred că este).

Pot accesa atât fișierele gazdă, cât și fișierele client dacă este necesar. Am fost blocat pe asta timp de 3 zile pentru jobul meu, așa că orice ajutor ar fi foarte apreciat. Voi posta cât de multe lucruri utile mă pot gândi.

Încercarea SSH:

ellis77@CB461-EE10955:~/.ssh$ ssh [email protected] -vvv
OpenSSH_8.2p1 Ubuntu-4ubuntu0.2, OpenSSL 1.1.1f 31 martie 2020
debug1: Citirea datelor de configurare /home/ellis77/.ssh/config
debug1: Citirea datelor de configurare /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config linia 19: include /etc/ssh/ssh_config.d/*.conf nu se potrivește niciun fișier
debug1: /etc/ssh/ssh_config linia 21: Se aplică opțiuni pentru *
debug2: resolve_canonicalize: numele de gazdă 169.254.132.152 este adresa
debug2: ssh_connect_direct
debug1: se conectează la 169.254.132.152 [169.254.132.152] portul 22.
debug1: Conexiune stabilită.
debug1: fișier de identitate /home/ellis77/.ssh/id_rsa tip 0
debug1: fișier de identitate /home/ellis77/.ssh/id_rsa-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_dsa tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_dsa-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ecdsa tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ecdsa-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ecdsa_sk tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ecdsa_sk-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ed25519 tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ed25519-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ed25519_sk tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_ed25519_sk-cert tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_xmss tip -1
debug1: fișier de identitate /home/ellis77/.ssh/id_xmss-cert tip -1
debug1: șir de versiune locală SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.2
debug1: versiunea de protocol la distanță 2.0, versiunea de software la distanță OpenSSH_8.2p1 Ubuntu-4ubuntu0.2
debug1: potrivire: OpenSSH_8.2p1 Ubuntu-4ubuntu0.2 pat OpenSSH* compat 0x04000000
debug2: fd 3 setarea O_NONBLOCK
debug1: se autentifică la 169.254.132.152:22 ca „rădăcină”
debug3: hostkeys_foreach: citirea fișierului „/home/ellis77/.ssh/known_hosts”
debug3: record_hostkey: tipul de cheie găsit ECDSA în fișierul /home/ellis77/.ssh/known_hosts:1
debug3: load_hostkeys: au fost încărcate 1 chei de la 169.254.132.152
debug3: order_hostkeyalgs: prefer hostkeyalgs: [email protected],[email protected],ecdsa-sha2-nistp521-cert-v01,@ecdpenssh.com -sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
debug3: trimite pachet: tip 20
depanare1: SSH2_MSG_KEXINIT trimis
debug3: primire pachet: tip 20
depanare1: SSH2_MSG_KEXINIT primit
debug2: propunere KEXINIT client local
debug2: algoritmi KEX: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-hellman6,-diffshaie25 -sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,ext-info-c
debug2: algoritmi cheie gazdă: [email protected],[email protected],[email protected],ecdsa sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,[email protected],[email protected],sk-sk-ssh-ed [email protected],[email protected],[email protected],[email protected],sk- [email protected],ssh-ed25519,[email protected],rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: cifruri ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: cifre stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MAC-uri ctos: [email protected],[email protected],[email protected],[email protected],hmac [email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MAC-uri stoc: [email protected],[email protected],[email protected],[email protected],hmac [email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compresie ctos: none,[email protected],zlib
debug2: compresie stoc: none,[email protected],zlib
debug2: limbi ctos: 
debug2: limbi stoc: 
debug2: first_kex_follows 0 
debug2: rezervat 0 
debug2: propunere peer server KEXINIT
debug2: algoritmi KEX: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-hellman6,-diffshaie25 -sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256
debug2: algoritmi cheie gazdă: rsa-sha2-512, rsa-sha2-256, ssh-rsa, ecdsa-sha2-nistp256, ssh-ed25519
debug2: cifruri ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: cifre stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MAC-uri ctos: [email protected],[email protected],[email protected],[email protected],hmac [email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MAC-uri stoc: [email protected],[email protected],[email protected],[email protected],hmac [email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compresie ctos: none,[email protected]
debug2: compresie stoc: none,[email protected]
debug2: limbi ctos: 
debug2: limbi stoc: 
debug2: first_kex_follows 0 
debug2: rezervat 0 
debug1: kex: algoritm: curve25519-sha256
debug1: kex: algoritm cheie gazdă: ecdsa-sha2-nistp256
debug1: kex: server->cifrare client: [email protected] MAC: <implicit> compresie: niciuna
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compresie: niciunul
debug3: trimite pachet: tip 30
debug1: aștept SSH2_MSG_KEX_ECDH_REPLY
debug3: primire pachet: tip 31
debug1: Cheia gazdă a serverului: ecdsa-sha2-nistp256 SHA256:DJTgdLuz5rpLWLc/y2M7YJMqKu8g77Orjn3CyoRreoU
debug3: hostkeys_foreach: citirea fișierului „/home/ellis77/.ssh/known_hosts”
debug3: record_hostkey: tipul de cheie găsit ECDSA în fișierul /home/ellis77/.ssh/known_hosts:1
debug3: load_hostkeys: au fost încărcate 1 chei de la 169.254.132.152
debug1: Gazda „169.254.132.152” este cunoscută și se potrivește cu cheia gazdă ECDSA.
debug1: Cheia găsită în /home/ellis77/.ssh/known_hosts:1
debug3: trimite pachet: tip 21
debug2: set_newkeys: modul 1
debug1: reintroduceți tastele după 134217728 blocuri
debug1: SSH2_MSG_NEWKEYS trimis
debug1: aștept SSH2_MSG_NEWKEYS
debug3: primire pachet: tip 21
depanare1: SSH2_MSG_NEWKEYS primit
debug2: set_newkeys: modul 0
debug1: reintroduceți după 134217728 blocuri
debug1: va încerca cheia: /home/ellis77/.ssh/id_rsa RSA SHA256:rk0afdhz18RlnxGQ0ejIyPKXNUnLvHDEv3BTu9u1kLY agent
debug1: va încerca cheia: /home/ellis77/.ssh/id_dsa 
debug1: va încerca cheia: /home/ellis77/.ssh/id_ecdsa 
debug1: va încerca cheia: /home/ellis77/.ssh/id_ecdsa_sk 
debug1: va încerca cheia: /home/ellis77/.ssh/id_ed25519 
debug1: va încerca cheia: /home/ellis77/.ssh/id_ed25519_sk 
debug1: va încerca cheia: /home/ellis77/.ssh/id_xmss 
debug2: pubkey_prepare: terminat
debug3: trimite pachet: tip 5
debug3: primire pachet: tip 7
depanare1: SSH2_MSG_EXT_INFO primit
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,[email protected],ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha256-nist ,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,[email protected]>
debug3: primire pachet: tip 6
debug2: service_accept: ssh-userauth
depanare1: SSH2_MSG_SERVICE_ACCEPT primit
debug3: trimite pachet: tip 50
debug3: primire pachet: tip 51
debug1: Autentificări care pot continua: cheie publică, parolă
debug3: începe de la capăt, a trecut o listă diferită cheie publică, parolă
debug3: preferat gssapi-cu-mic, cheie publică, tastatură-interactivă, parolă
debug3: authmethod_lookup publickey
debug3: rămas preferat: tastatură interactivă, parolă
debug3: authmethod_is_enabled publickey
debug1: Următoarea metodă de autentificare: cheie publică
debug1: Oferă cheie publică: /home/ellis77/.ssh/id_rsa RSA SHA256:rk0afdhz18RlnxGQ0ejIyPKXNUnLvHDEv3BTu9u1kLY agent
debug3: trimite pachet: tip 50
debug2: am trimis un pachet publickey, așteptați răspuns
debug3: primire pachet: tip 51
debug1: Autentificări care pot continua: cheie publică, parolă
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_dsa
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_dsa: Nu există un astfel de fișier sau director
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_ecdsa
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_ecdsa: Nu există un astfel de fișier sau director
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_ecdsa_sk
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_ecdsa_sk: Nu există un astfel de fișier sau director
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_ed25519
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_ed25519: Nu există un astfel de fișier sau director
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_ed25519_sk
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_ed25519_sk: Nu există un astfel de fișier sau director
debug1: Se încearcă cheia privată: /home/ellis77/.ssh/id_xmss
debug3: nu există o astfel de identitate: /home/ellis77/.ssh/id_xmss: Nu există un astfel de fișier sau director
debug2: nu am trimis un pachet, metoda dezactivare
debug3: parola authmethod_lookup
debug3: rămas preferat: ,parolă
debug3: parola authmethod_is_enabled
debug1: Următoarea metodă de autentificare: parola
Parola lui [email protected]: 

După ce ai tastat parola corectă (pe care nu ar trebui să o solicite):

Parola lui [email protected]: 
debug3: trimite pachet: tip 50
debug2: am trimis un pachet de parole, așteptați răspuns
debug3: primire pachet: tip 51
debug1: Autentificări care pot continua: cheie publică, parolă
Permisiune refuzată, vă rugăm să încercați din nou.
Parola lui [email protected]: 

Aici este o parte din fișierul sshd_config de la gazdă. Rețineți că autentificarea cu parolă este în prezent activată, dar am dezactivat-o și am repornit serviciul ssh și mi-a cerut în continuare.

# Acesta este fișierul de configurare la nivel de sistem al serverului sshd. Vedea
# sshd_config(5) pentru mai multe informații.

# Acest sshd a fost compilat cu PATH=/usr/local/sbin:/usr/local/bin:/usr/bin


# Logare
SyslogFacility AUTH
LogLevel VERBOSE

# Autentificare:

#LoginGraceTime 2m
PermitRootLogin da
#StrictModes da

#AuthorizedPrincipalsFile nici unul

#AuthorizedKeysCommand niciunul
#AuthorizedKeysCommandUser nimeni

# Pentru ca acest lucru să funcționeze, veți avea nevoie și de chei de gazdă în /etc/ssh/ssh_known_hosts
#HostbasedAuthentication nr
# Schimbați la yes dacă nu aveți încredere în ~/.ssh/known_hosts pentru
# Autentificare bazată pe gazdă
#IgnoreUserKnownHosts nr
# Nu citiți fișierele ~/.rhosts și ~/.shosts ale utilizatorului
#IgnoreRhosts da

# Pentru a dezactiva parolele cu text clar tunelizate, schimbați la nu aici!
Autentificare prin parolă da
#PermitEmptyPasswords nr

Și, în sfârșit, permisiunea ambelor directoare ssh: Client:

drwxrwxr-x 2 ellis77 ellis77 4096 Jun 17 10:08 .
drwxr-xr-x 27 ellis77 ellis77 4096 17 iunie 09:58 ..
-rw-r--r-- 1 ellis77 ellis77 0 iunie 17 10:07 config
-rw------- 1 ellis77 ellis77 2610 17 iunie 09:59 id_rsa
-rw------- 1 ellis77 ellis77 575 17 iunie 09:59 id_rsa.pub
-rw-r--r-- 1 ellis77 ellis77 222 17 iunie 10:08 known_hosts

Gazdă:

drwxr-xr-x 2 rădăcină rădăcină 4096 14 septembrie 2020.
drwxr-xr-x 38 root root 4096 Jun 15 13:01 ..
-rw-r--r-- 1 rădăcină rădăcină 525809 31 august 2020 module
-rw-r--r-- 1 rădăcină rădăcină 1484 15 septembrie 2020 ssh_config
-rw------- 1 rădăcină rădăcină 1381 14 septembrie 2020 ssh_host_dsa_key
-rw-r--r-- 1 root root 600 14 septembrie 2020 ssh_host_dsa_key.pub
-rw------- 1 rădăcină rădăcină 505 14 septembrie 2020 ssh_host_ecdsa_key
-rw-r--r-- 1 rădăcină rădăcină 172 14 septembrie 2020 ssh_host_ecdsa_key.pub
-rw------- 1 rădăcină rădăcină 399 14 septembrie 2020 ssh_host_ed25519_key
-rw-r--r-- 1 rădăcină rădăcină 92 14 septembrie 2020 ssh_host_ed25519_key.pub
-rw------- 1 rădăcină rădăcină 2590 14 septembrie 2020 ssh_host_rsa_key
-rw-r--r-- 1 rădăcină rădăcină 564 14 septembrie 2020 ssh_host_rsa_key.pub
-rw-r--r-- 1 rădăcină rădăcină 3126

Mulțumesc anticipat. Voi oferi cu plăcere orice altceva este necesar.

În cele din urmă, pentru a confirma IP-ul gazdei:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
        inet 169.254.132.152 netmask 255.255.0.0 difuzare 169.254.255.255
        inet6 fe80::20a:35ff:fe00:122 prefixlen 64 scopeid 0x20<link>
        ether 00:0a:35:00:01:22 txqueuelen 1000 (Ethernet)
        Pachete RX 1 octeți 46 (46,0 B)
        Erori RX 0 a scăzut 0 depășiri 0 cadru 0
        Pachete TX 381 octeți 16730 (16,3 KiB)
        Erori TX 0 a scăzut 0 depășiri 0 purtător 0 coliziuni 0
        întreruperea dispozitivului 27 bază 0xb000  

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
        inet 127.0.0.1 netmask 255.0.0.0
        inet6 ::1 prefixlen 128 scopeid 0x10<gazdă>
        loop txqueuelen 1 (Loopback local)
        Pachete RX 212 octeți 18477 (18,0 KiB)

Edit: Tocmai m-am conectat în SSH cu laptopul meu (fără chei configurate pe laptop) și a acceptat parola. Deci problema pare să fie cu mașina mea de lucru.

drapel hr
Sunt confuz - se pare că există 2 întrebări aici, prima despre verificarea cheii gazdei și a doua despre autentificarea cheii publice. Despre care parte intrebi?
Caden Ellis avatar
drapel ru
Ei bine, amândouă cred. Parola nu va funcționa, dar oricum nu ar trebui să ceară parola cu cheile. În acest moment, dacă mă pot conecta cu parola, nu mă interesează că cheile publice nu funcționează.
drapel hr
OK, așa că mesajul de verificare a cheii gazdei ar trebui să dispară dacă îl acceptați. Pentru partea de verificare RSA, verificați dacă există o copie a cheii publice a lui `ellis77` (cheia publică corespunzătoare lui `/home/ellis77/.ssh/id_rsa`) în fișierul `authorized_keys` al **root** pe placă (de obicei situată la `/root/.ssh/authorized_keys`). Este sesiunea dvs. serială la bord conectată ca „rădăcină” sau ca alt utilizator?
Caden Ellis avatar
drapel ru
@steeldriver sesiunea mea în serie este cu root. Cheile din locurile specificate se potrivesc. Am editat și postarea pentru a spune că aș putea ssh cu laptopul meu și a acceptat parola foarte bine. Doar nu cealaltă mașină.
drapel hr
Ați verificat auth.log/jurnalul de pe forum pentru mesaje relevante? De exemplu `journalctl -xe -u ssh.service` sau `grep sshd /var/log/auth.log`?
Puncte:1
drapel ru

Deci a fost foarte prostesc, dar subtil. După ce am partajat internetul cu placa și am rulat dhcpcd, am setat adresa IP a conexiunii USB Ethernet înapoi în modul manual și am setat adresa la 169.254.132.152... care a fost la fel ca placa Am încercat să fac SSH. Greșeală de începător. Trebuie să fie o adresă diferită într-un mod care să fie aceeași după mascarea cu masca de rețea... de exemplu 169.254.132.150. Atunci suntem pe aceeași mască, dar nu avem aceeași adresă. Acest lucru explică de ce aș putea să pun ping și de ce nu mi-ar accepta „parola” pentru că am fost ssh-ing în conexiunea mea... nu placa mea.

Sfat: Când schimbați adresa IP a conexiunii, asigurați-vă că deconectați USB-ul și conectați-l din nou, astfel încât să se actualizeze.

sudodus avatar
drapel jp
Vă mulțumim pentru împărtășirea soluției dvs.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.