El script Bash como uso del shell no funciona con SSH

El script Bash como uso del shell no funciona con SSH

Estoy intentando utilizar un script bash específico como shell de usuario. De modo que si el usuario inicia sesión, se ejecutará el script.

Creé el script y lo coloqué en el directorio de inicio del usuario específico. Modifiqué /etc/passwdpara usar el script como shell para este usuario.

Esto funciona muy bien si inicio sesión localmente. Pero si intento iniciar sesión a través de SSH, aparece el siguiente error:

/home/user/custom-shell: No such file or directory
Connection to xyz closed.

La ruta a este script es correcta ya que puedo iniciar sesión localmente y puedo ver que el script se ejecutará.

También intenté cambiar el permiso usando chmod 777 custom-shell, pero eso tampoco ayudó.

¿Tienes una idea de cuál es el problema?

Respuesta1

Agregue el script/programa que desea usar para un shell a/etc/shells

Respuesta2

¿Puedo ver la línea que ingresó en /etc/passwd así como el script y sus permisos? Lo probé localmente y funciona bien:

[root@ops-tricks ~]# grep jdoe  /etc/passwd
jdoe:x:1010:1010::/home/jdoe:/home/jdoe/custom-shell
[root@ops-tricks ~]# cat /home/jdoe/custom-shell
#!/bin/bash

echo "Custom Shell"
[root@ops-tricks ~]# su - jdoe
Custom Shell
[root@ops-tricks ~]# ssh jdoe@localhost
jdoe@localhost's password:
Last login: Mon Sep  3 23:32:25 2018
Custom Shell
Connection to localhost closed.

[root@ops-tricks ~]# ls -l /home/jdoe/custom-shell
-rwxr-xr-x. 1 root root 33 Sep  3 23:28 /home/jdoe/custom-shell

Además, ¿qué distribución y versión estás ejecutando?

información relacionada