Linux - Script que permite acceso SSH usuarios ubuntu

 
Vista:
sin imagen de perfil

Script que permite acceso SSH usuarios ubuntu

Publicado por Jair Bonilla (3 intervenciones) el 04/07/2018 17:24:05
Tengo Ubuntu conectado mediante NFS tanto servidor como cliente, donde los usuarios se conectan en cualquier computador y tienen acceso a todos sus archivos, todos los usarios están compartiendo UANDES, que es la carpeta raiz, lo que quiero que haga el script es que todos los usuarios existentes y/o logueados a los computadores puedan tener acceso mediante SSH; el codigo es el siguiente, pero me arroja error de sintaxis: me puden ayudar por favor
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/bash
#
#Script que permite el acceso SSH de los usuarios existentes o que se han logeado en el equipo.
#
#Debe verificar /home /home/UANDES -> donde se guardan las carpetas de usuario
#Si desean agregar un usuario mas deben modificar usuariosNuevos y agregarlo al final.
# 
 
listaUsuariosUANDES=""
 
if [ -e /home/UANDES ]; then
        listaUsuariosUANDES=`ls -S /home/UANDES --ignore=postgres`
fi
 
listaUsuariosHOME=`ls -S /home --ignore=UANDES | tr '\n' ' '`
 
echo $listaUsuariosHOME $listaUsuariosUANDES
 
 
 
 
## if [ -z cadena vacia
## if [ -n cadena no es vacia
 
if [ -e /etc/ssh/sshd_config ]; then
        cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bk
        usuariosActuales=`grep AllowUsers   /etc/ssh/sshd_config`
        usuariosNuevos="AllowUsers $listaUsuariosHOME $listaUsuariosUANDES"
 
        if [ -z $usuariosActuales ]; then
           echo "$usuariosNuevos" >> /etc/ssh/sshd_config
        else
           sed -i "s/$usuariosActuales/$usuariosNuevos/g" /etc/ssh/sshd_config
        fi
fi
 
if [ -e /etc/init.d/sshd ]; then
        /etc/init.d/sshd restart
fi
 
servicioSSH=`whereis -b systemctl | awk '{ print $2 }'`
 
if [ $servicioSSH <> NULL ]; then
        systemctl restart sshd.service
fi
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 150
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Script que permite acceso SSH usuarios ubuntu

Publicado por xve (825 intervenciones) el 05/07/2018 07:52:23
Hola Jair, a simple vista parece que esta todo bien... en que linea te da error de sintaxis?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Script que permite acceso SSH usuarios ubuntu

Publicado por ej.bonilla (3 intervenciones) el 05/07/2018 16:45:21
Hola xve muchas gracias por responder.
Al parecer hay algo mal en la sintaxis, el error es en la última línea del archivo, es decir despues del último "fi".
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 150
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Script que permite acceso SSH usuarios ubuntu

Publicado por xve (825 intervenciones) el 05/07/2018 19:18:26
Prueba a cambiar esta linea:
1
systemctl restart sshd.service
por esta:
1
result=`systemctl restart sshd.service`

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Script que permite acceso SSH usuarios ubuntu

Publicado por Jair Bonilla (3 intervenciones) el 05/07/2018 22:37:07
Hola, muchas gracias por la respuesta, ya he conseguido que funcionara; las dos sintaxis que colocas funcionan, solo edite otro archivo con el mismo script cambiandole el nombre y funcionó.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Script que permite acceso SSH usuarios ubuntu

Publicado por Tom (433 intervenciones) el 05/07/2018 10:29:55
¿¿ if [ $servicioSSH <> NULL ]; then ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar