Si hallas algún error con tu código o trabajo, recuerda probar siempre en un ambiente de testing antes aplicar el código al proyecto final.
Solución:
Use la forma prevista y escriba las opciones y alias en ~/.ssh/config
:
Host 1
Port 12345
User my_user
HostName 123.123.123.1
Host 2
Port 12345
User my_user
HostName 123.123.123.2
y así…
Y luego conéctese simplemente usando
ssh 1
ssh 2
...
Esto requiere una función, simple y robusta, mientras que una alias
en este caso sería frágil.
Algo como esto debería hacer:
function ssht ()
[[ $1 =~ ^(1
La condición [[ $1 =~ ^(1|2|3)$ ]]
se asegura de haber ingresado uno de 1, 2, 3 como primer argumento (se ignora cualquier argumento final).
Ahora, puede dar el último octeto deseado como primer argumento:
ssht 1
ssht 2
ssht 3
Pon esto en tu ~/.bashrc
por tenerlo disponible en cualquier sesión interactiva.
Puedes usar patrones en ~/.ssh/config
. Desde man ssh_config
:
PATTERNS
A pattern consists of zero or more non-whitespace characters, ‘*’ (a
wildcard that matches zero or more characters), or ‘?’ (a wildcard that
matches exactly one character). For example, to specify a set of
declarations for any host in the “.co.uk” set of domains, the following
pattern could be used:
Host *.co.uk
The following pattern would match any host in the 192.168.0.[0-9] network
range:
Host 192.168.0.?
Combinado con:
HostName
Specifies the real host name to log into. This can be used to
specify nicknames or abbreviations for hosts. If the hostname
contains the character sequence ‘%h’, then this will be replaced
with the host name specified on the command line (this is useful
for manipulating unqualified names). The character sequence ‘%%’
will be replaced by a single ‘%’ character, which may be used
when specifying IPv6 link-local addresses.
Entonces, en tu ~/.ssh/config
poner:
Host ?
Hostname 123.123.123.%h
Port 12345
User my_user
Luego:
$ ssh -v 1
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /home/muru/.ssh/config
debug1: /home/muru/.ssh/config line 41: Applying options for ?
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to 123.123.123.1 [123.123.123.1] port 12345.
debug1: connect to address 123.123.123.1 port 12345: Connection refused
ssh: connect to host 123.123.123.1 port 12345: Connection refused
valoraciones y reseñas
Si sostienes alguna perplejidad y forma de ascender nuestro tutorial eres capaz de realizar una apostilla y con deseo lo observaremos.