Puncte:0

gcloud compute ssh â pentru a evita necesitatea 2FA de fiecare dată?

drapel ng

eu folosesc gcloud compute ssh la SSH în instanța mea, de exemplu:

$ gcloud compute ssh shell-server --project=XXXXXXXXXXXXXXXX
Nicio zonă specificată. Folosind zona [us-central1-f], de exemplu: [shell-server].
Adresa IP externă nu a fost găsită; utilizând implicit tunelul IAP.
Vă rugăm să alegeți dintre metodele de autentificare disponibile:
1: Cod de securitate din aplicația Google Authenticator
2: Cod de verificare pentru mesaje vocale sau text

Introduceți numărul pentru metoda de autentificare de utilizat: 1
Introduceți parola dvs. unică: XXXXXX
nume utilizator@shell-server ~ $

Din păcate, trebuie să fac 2FA de fiecare dată. Îmi place 2FA, dar poate există o modalitate de a configura lucrurile astfel încât să trebuiască să-l furnizez doar la fiecare câteva ore?

Actualizați: am fugit gcloud compute ssh --dry-run, care vă spune exact ce comandă rulează:

/usr/bin/ssh \
    -t \
    -i /Users/kannan/.ssh/google_compute_engine \
    -o CheckHostIP=nu \
    -o HostKeyAlias=compute.123123123123123123 \
    -o IdentitiesOnly=da \
    -o StrictHostKeyChecking=nu \
    -o UserKnownHostsFile=/Users/kannan/.ssh/google_compute_known_hosts \
    -o ProxyCommand='/usr/local/bin/python3 -S /Users/kannan/Software/google-cloud-sdk/lib/gcloud.py compute start-iap-tunnel shell-server %p --listen-on- stdin --project=XXXXXXXXXX --zone=us-central1-f --verbosity=warning' \
    -o ProxyUseFdpass=nu \
    [email protected]

Actualizare 2: Aș putea păstra gcloud compute start-iap-tunnel rulează în fundal și îmi configurez SSH-ul să folosească acel tunel, dar sper să existe ceva mai automat, similar cu comoditatea SSH-ului ControlMaster=auto.

John Hanley avatar
drapel cn
Ce serviciu oferă verificarea MFA/2FA/2-Step?
drapel ng
@JohnHanley: Bună întrebare. Cred că este caracteristica „IAP Tunnel” a GCP care solicită 2FA. Mi-am actualizat întrebarea cu mai multe detalii.
drapel ng
@JohnHanley: De fapt, m-am înșelat. De fapt, instanța țintă în sine („shell-server”) este cea care solicită 2FA.
Puncte:1
drapel ng

Mi-am dat seama. Puneți asta în ~/.ssh/config:

Gazdă shell-server
    Utilizatorul kannan_example_org
    IdentityFile ~/.ssh/google_compute_engine
    UserKnownHostsFile ~/.ssh/google_compute_known_hosts
    CheckHostIP nr
    StrictHostKeyChecking nr
    ProxyCommand gcloud compute start-iap-tunnel %n %p --project="..." --zone="..." --listen-on-stdin --verbosity=warning
    ProxyUseFdpass nr
    ControlMaster automat
    ControlPersist 30m
  • ControlMaster automat: La fiecare ssh/scp invocare, verificați mai întâi dacă există o conexiune existentă la shell-server. Dacă da, doar partajați acea conexiune, astfel încât să nu existe re-autorizare și, prin urmare, nicio re-2FA.
  • ControlPersist 30m spune SSH că chiar și până la urmă ssh/scp invocarile sunt facute, tineti deschisa conexiunea partajabila timp de 30m.

Acum pot folosi simplu ssh și scp comenzi cu numele de gazdă shell-server.

Notă: de fapt, am ajuns să setez ProxyCommand la un script wrapper personalizat care determină automat --proiect=... și --zona=... de la numele gazdei.

Puncte:0
drapel de

2FA este o parte a serviciului OS Login. Ați putea verifica prin comanda de mai jos dacă aveți marcajul configurat pentru un proiect?

gcloud compute proiect-info descrie | grep os

Dacă este activat, îl puteți dezactiva pentru întregul proiect sau în timpul creării unui VM.

Mai multe informatii aici:

https://cloud.google.com/compute/docs/instances/managing-instance-access#enable_oslogin

Sper că va ajuta.

drapel ng
Îmi pare rău - pentru a fi clar, nu vreau să dezactivez 2FA. Pur și simplu nu vreau să fiu nevoit să-l introduc la fiecare nouă invocare `ssh` (sau `scp`). De exemplu, poate ar putea cere doar 2FA la fiecare 24 de ore.
drapel de
După părerea mea, nu este fezabil să faci în serviciul OS Login. Nu există niciun comutator în linia de comandă pentru a seta un timeout.

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.