Vállalkozásom letiltotta az SSH nyilvános kulcs hitelesítést, ezért manuálisan kell megadnom minden alkalommal, amikor a jelszavam (nem feltételezem, hogy megváltoztatom a következőt: /etc/ssh/sshd_config).

Azonban gssapi-keyex és gssapi-with-mic hitelesítés engedélyezve van (lásd alább ssh hibakereső kimenet).

Hogyan használhatnám ebben az esetben az automatikus bejelentkezést?
Kihasználhatom a gssapi-keyex és / vagy gssapi-with-mic hitelesítés?

> ssh -v -o PreferredAuthentications=publickey hostxx.domainxx OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug1: Connecting to hostxx.domainxx [11.22.33.44] port 22. debug1: Connection established. debug1: identity file /home/me/.ssh/identity type -1 debug1: identity file /home/me/.ssh/id_rsa type -1 debug1: identity file /home/me/.ssh/id_dsa type 2 debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3 debug1: match: OpenSSH_5.3 pat OpenSSH* debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-OpenSSH_5.3 debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: server->client aes128-ctr hmac-md5 none debug1: kex: client->server aes128-ctr hmac-md5 none debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP debug1: SSH2_MSG_KEX_DH_GEX_INIT sent debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY debug1: Host "hostxx.domainxx" is known and matches the RSA host key. debug1: Found key in /home/me/.ssh/known_hosts:2 debug1: ssh_rsa_verify: signature correct debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: SSH2_MSG_SERVICE_REQUEST sent debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,password debug1: No more authentication methods to try. Permission denied (gssapi-keyex,gssapi-with-mic,password). 

Megjegyzések

  • A Python ‘ szövete nagyszerű munkát végez az ssh automatizálásával.
  • Szia @ DanGarthwaite Használja a Fabric elemet manuálisan más távoli szerverekre való bejelentkezéshez? Kérem, magyarázza el, hogyan használja. Kérjük, adjon választ. Egészségedre
  • Ha nem vagy ‘ t Kerberos birodalmában (vagy az Active Directory tartományban), akkor valószínűleg nem lesz hasznos a GSSAPI. Ennek ellenére a nyilvános kulcs hitelesítésének letiltása elég abszurdnak tűnik.
  • Az @olibre Fabric segédprogram a parancsok futtatásához egy vagy több szerveren SSH-n keresztül. Ezek a parancsok általában ” fabfile ” -be vannak rendezve, mint egy Makefile. Rendkívül jól végzi az SSH eltűnését (miután hitelesítette), és kezeli az SSH kliensek és szerverek sokféle módját, hogy megszakítsák az irányítást. Gyors oktatóanyag áll rendelkezésre: docs.fabfile.org/en/1.7/tutorial.html
  • Kérjük, @DanGarthwaite, adhatna egy példa egy fab fájlra, amely bejelentkezik egy másik gépre (SSH gssapi jelszó kérése nélkül), és megnyit egy héjat? Válaszon belül megadhatja. (Öt perc alatt nem találtam meg a bemutatón, hogyan kell ezt csinálni). Sziasztok;)

Válasz

Talán.

  • jegyet az ügyfelének az ügyfélrendszerében vagy a szokásos bejelentkezési folyamat részeként, vagy manuálisan (kinit, MIT Kerberos for Windows)?
  • Rendelkezik a szerver egy kerberos fővel, vagy megadhatja? Ennek host/[email protected] formátumúnak kell lennie.
  • Engedélyezve van-e GSSAPI hitelesítés az ügyfelén?
  • A kliens tudja, hogy a kiszolgáló melyik tartományba tartozik DNS TXT erőforrásrekord vagy helyi leképezés alapján?

Ha “igent” mondott a következőre: az összes fent említett , majd gratulálok, használhatja az GSSAPIAuthentication szót.

  • Lehet, hogy a beállítástól függően engedélyeznie kell a hitelesítő adatok delegálását is.

Tesztelési lépések:
(Feltételezve: domain = example.com; realm = EXAMPLE.COM)

  1. kinit [email protected]
    • Ideális esetben ezt a szokásos bejelentkezési folyamat kezeli úgy, hogy vagy pam_krb5 vagy pam_sss (auth_provider = krb5 -vel) a megfelelő pam stack.
  2. kvno host/[email protected]
    • Ez egy hibakeresési lépés. A ssh ezt automatikusan megteszi, ha érvényes gyorsítótárad van, és sshd vel beszélsz, amely támogatja a gssapi-with-mic vagy gssapi-keyex.
  3. dig _kerberos.example.com txt vissza kell térnie "EXAMPLE.COM"
    • Alternatív megoldásként a leképezés tárolható a /etc/krb5.conf [domain_realm] szakaszban .example.com = EXAMPLE.COM, de a dns módszer sokkal jobban skálázódik.
  4. ssh -o GSSAPIAuthentication=yes [email protected]
    • A kiszolgálón kívüli felhasználónévtől eltérő felhasználónévhez való bejelentkezéshez tudnia kell, hogy feltérképezze azokat a részleteket, amelyekre itt nem térek ki.

Megjegyzések

  • Sziasztok. Adtam Önnek +1 egy ideje, de valójában nem tudja, hogyan ellenőrizheti a négy pontját. (Nem vagyok rendszergazda, csak fejlesztő). Kérem, adjon parancssort az SSH-kapcsolat ellenőrzéséhez g gssapiauthentication? Talán a gssapiauthentication -t is használhatom a Linux gépemen. (ehhez használjam a kinit t?) Egészségedre;)

Válasz

A 4 lépéses módszer helyes (a DNS-ben vannak Kerberos SRV rekordok is, amelyek még elegánsabbak és minden Active Directoryban megtalálhatók). Ezt folyamatosan használom, és ezt a fenti pubkey módszerekkel támogattam, főleg biztonsági és ellenőrzési okokból.

Ez azt jelenti, hogy ez csak interaktív bejelentkezést biztosít, bár kvázi interaktív is lehet, ha már jegyet kapott a munkaállomáson.A Kerberos-jegy hasonlóan működik, mint az SSH-ügynök; amint megvan, az új kapcsolatok instánsak és jelszómentesek; bár határidővel.

Az interaktív kötegelt bejelentkezéshez be kell szereznie egy kulcstábla fájlt, egy fájlt, amely lényegében a Kerberos-fiók jelszavát tartalmazza, hasonlóan az SSH-kulcs privát feléhez. A biztonsági óvintézkedéseknek megfelelően; főleg, hogy a kulcstábla nincs titkosítva vagy jelszóval védve.

Nem szívesen adom meg a felhasználóimnak a személyes fiókok kulcstartóit, de agresszíven használom a minimális engedélyekkel rendelkező szolgáltatási fiókokat a különböző kötegelt feladatokhoz, különösen ott, ahol kritikus fontosságú, hogy a hitelesítő adatokat a távvezérlőhöz adják rendszer, valami pubkey egyszerűen nem érhető el.

A kulcsablakok a ktutil segítségével hozhatók létre a Unixon vagy a KTPASS.EXE Windows rendszeren (ez utóbbi az AD Kerberos szolgáltatásaiból). Ne feledje, hogy a ktutil két ízben létezik, Heimdal és MIT, és szintaxisuk eltér. A kézikönyv olvasása egy releváns rendszeren segít.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük