Martes, Septiembre 26, 2017

Script en bash para crear usuarios SFTP enjaulados

Bash

Con este script podremos crear usuarios para el servicio SFTP enjaulados.

#!/bin/bash
usage()
{
cat << EOF
USO: $0 -G grupo -u usuario -f file system
Script para la creacion de usuarios enjaulados SFTP
OPCIONES:
-G Grupo
-u Usuario SFTP
-f file system
ejemplo de uso: /usr/bin/createuser.sh -G sftp -u usersftp -f /home/usersftp
EOF
}
#Declaramos todas las variables que se van a usar para guardar los parametros
inputgroup=
inputusuario=
inputfs=
#Usamos el getopts para guardar los parametros en variables
while getopts “hH:G:u:f:” OPTION
do
case $OPTION in
h)
usage
exit 1
;;
G)
inputgroup=$OPTARG
;;
u)
inputusuario=$OPTARG
;;
f)
inputfs=$OPTARG
;;
esac
done
#Comprobamos que se han introducido los parametros obligatorios
if [ -z $inputgroup ] || [ -z $inputusuario ] || [ -z $inputfs ]
then
usage
exit 1
fi
function SSHconfig (){
if [ -f “/etc/ssh/sshd_config-bck” ]
then
#Comentamos lineas
sed -i ‘s/Subsystem/#&/’ /etc/ssh/sshd_config
#Agregamos configuracion
cat << EOF >> /etc/ssh/sshd_config
Subsystem sftp internal-sftp
Match user $inputusuario
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
KbdInteractiveAuthentication yes
EOF
else
#Si no existe el fichero de backup muestra un error y sale del script
echo “No se encontro el fichero de configuracion /etc/ssh/sshd_config-bck”
exit 1
fi
}
# Creamos el grupo
groupadd $inputgroup
#Creamos el usuario
useradd -g $inputgroup -s /bin/false -d $inputfs $inputusuario
#Asignamos una contraseña al usuario
passwd $inputusuario
mkdir -p $inputfs/public
chmod 755 $inputfs
chown root:root $inputfs
chown $inputusuario:$inputgroup $inputfs/public
#Creamos backup del fichero de configuracion de SSH
cp /etc/ssh/sshd_config /etc/ssh/sshd_config-bck
#Realizamos la configuracion de SSH
SSHconfig
#Reiniciamos el servicio
service sshd restart

 

Fuente: red-orbita

¿Quién está en línea?

Hay 89 invitados y ningún miembro en línea

Contador de Visitas

8970407
Hoy Hoy 1288
Ayer Ayer 1358
Esta semana Esta semana 2646
Este mes Este mes 30273
Total de Visitas Total de Visitas 8970407

Día con más
visitantes

07-19-2017 : 1525

Gracias por su visita