SSH entre N número de servidores

SSH entre N número de servidores

Tengo n cantidad de servidores como , c0001.test.cloud.comy quiero hacer el ssh entre estos servidores como: desde el Servidor: c0001 hacer el ssh a c0002 y luego salir del servidor. Vuelva a c0001, haga el ssh a c0003 y luego salga del servidor.c0002.test.cloud.comc0003.test.cloud.com

De esta manera, ejecutará el script sin ingresar ninguna entrada durante el tiempo de ejecución y podremos tener n servidores. He escrito un guión:

str1=c0001.test.cloud.com,c0002.test.cloud.com,c0003.test.cloud.com
string="$( cut -d ',' -f 2- <<< "$str1" )"
echo "$string"
for j in $(echo $string | sed "s/,/ /g") do ssh appAccount@j done

Pero este script no funciona bien. También lo comprobé pasando parámetros como: -o StrictHostKeyChecking=noy <<'ENDSSH'pero no funciona. Entonces, ¿cómo podemos lograr ssh entre múltiples servidores usando scripts?

Respuesta1

  1. Estás diciendo , usando como variable de shell. Pero eso significa que debe hacer referencia a esa variable como , por ejemplo ,.for j in …(values)… do ssh appAccount@j donej$jssh "appAccount@$j"
  2. Necesitas un punto y coma (;) o una nueva línea entre ssh "appAccount@$j"y done.

Hay otros problemas (por ejemplo, todas las referencias a las variables del shell deben citarse), pero lo anterior debería ayudarle a comenzar.

información relacionada