Quiero que mi sshd local para servir a diferentes shell, basado en la host
.
Ejemplo:
ssh user@hostname1
-> get'sbash
ssh user@hostname2
-> get'sfish
¿Es posible y, en caso afirmativo, cómo?
Quiero que mi sshd local para servir a diferentes shell, basado en la host
.
Ejemplo:
ssh user@hostname1
-> get's bash
ssh user@hostname2
-> get's fish
¿Es posible y, en caso afirmativo, cómo?
No soy capaz de encontrar una manera de lograr lo que pides directamente con sshd
y las opciones disponibles en man sshd_config
o man sshd
.
El primer método que se me ocurre es bastante sencillo. Puedes hacerlo directamente con ssh
.
$ ssh -t user@someserver bash
-o-
$ ssh -t user@someserver dash
bash
$ ssh -t manny.bub.lan -l manny bash
$ ps | grep $$
31691 pts/0 00:00:00 bash
guión
$ ssh -t manny.bub.lan -l manny dash
$ ps | grep $$
31730 pts/0 00:00:00 dash
csh
$ ssh -t manny.bub.lan -l manny csh
manny:~% ps | grep $$
1687 pts/0 00:00:00 csh
pescado
$ ssh -t manny.bub.lan -l manny fish
Welcome to fish, the friendly interactive shell
manny@manny ~> ps | grep $$_
fish: $$ is not the pid. In fish, please use %self.
ps | grep $$
^
manny@manny ~> ps | grep %self
4218 pts/0 00:00:00 fish
Podrías aprovechar el método anterior en #1, y construir alias como estos:
$ alias sshmanny1="ssh -t manny@manny-rei210-2.bub.lan bash"
$ alias sshmanny1="ssh -t manny@manny-rei210-2.bub.lan fish"
Entonces úsalos así:
$ sshmanny1
manny@manny:~$ exit
exit
Shared connection to manny.bub.lan closed.
$ sshmanny2
Welcome to fish, the friendly interactive shell
manny@manny ~> exit
Shared connection to manny.bub.lan closed.
El tercer método que fui capaz de encontrar sería construir configuraciones que pueden hacer esto en el lado del cliente de su conexión SSH, en lugar de en el servidor a través de SSHD.
$ cat ~/.ssh/config
Host manny1
HostName manny.bub.lan
RemoteCommand bash
RequestTTY force
User manny
Host manny2
HostName manny.bub.lan
RemoteCommand fish
RequestTTY force
User manny
Ahora cuando quieras conectarte lo harías así:
$ ssh manny1
manny@manny:~$ exit
exit
Shared connection to manny.bub.lan closed.
$ ssh manny2
Welcome to fish, the friendly interactive shell
manny@manny ~> exit
Shared connection to manny.bub.lan closed.
AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.
0 votos
Sus ejemplos no se ajustan a la pregunta. E a.ples tienen dos servidores la pregunta sólo tiene uno