Puncte:0

Rularea unui script shell cu ProxyCommand care calculează un IP și pornește o sesiune SSH

drapel ng

Aș dori ca configurația mea SSH să apeleze la un script în anumite situații pentru a rezolva o adresă IP diferită de cea furnizată de mine. În această situație, de fapt, nu vreau să fac proxy printr-o altă gazdă, pur și simplu schimb gazda la care este trimisă SSH (deși în unele situații am ar cum ar fi să proxy printr-o gazdă, prin urmare grupând acest lucru într-un singur script).

Acesta este un scenariu destul de lung și nu este cu adevărat conceput pentru a fi o singură linie în ProxyCommand directivă.

Acesta este un extras din script care arată problema:

#!/bin/bash

instance_id="$1"
utilizator="$2"
port="$3"

if [[ $instance_id == *"i"* ]]; atunci
  filter="--instance-ids ${instance_id}"
altfel
  filter="--filters Nume=adresa-ip,Valoare=${id_instanta}"
fi

public_ip=$(aws ec2 describe-instances $filter | jq -r '.Reservations[0].Instances[0].PublicIpAddress')

if [[ $public_ip == "null" ]]; atunci
  Adevărat
altfel
  ssh $user@$public_ip -p $port
fi

Și acesta este al meu ~/.ssh/config:

Gazdă i-* mi-* 172,2* 172,3*
   Utilizator cbell
   ProxyCommand ~/.ssh/aws_iea_proxy_command.sh %h %r %p

Dacă încerc să fac ssh la un ID de instanță, de ex ssh i-030ee3dd4f2712b3b, scriptul este declanșat, dar nu mi se oferă un shell interactiv.

[connor@Enigma:~/.ssh] 130 $ ssh i-030ee3dd4f2712b3b
Pseudo-terminalul nu va fi alocat deoarece stdin nu este un terminal.
-bash: linia 1: SSH-2.0-OpenSSH_8.2p1: comanda nu a fost găsită

Cum fac să funcționeze comanda SSH care rulează într-un script prin ProxyCommand?

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.