¿Cómo configurar un servidor SFTP restringido en Ubuntu?

75

Me gustaría saber cómo configurar cuentas de usuario root, sudo, sftp-only que no requerirán autenticación de clave pública al iniciar sesión. También me gustaría saber cómo configurar el hogar de los usuarios de sftp-only. directorios donde no pueden acceder a otros directorios de nivel superior.

    
pregunta Yuya Kobayashi 14.02.2014 - 02:29

4 respuestas

81
___ qstnhdr ___ ¿Cómo configurar un servidor SFTP restringido en Ubuntu? ___ answer420681 ___

Denyhosts es otra herramienta además de las mencionadas por "jtd" que es posible que desee consultar. Puede bloquear automáticamente intentos de conexión repetidos a su servidor SSH. Está disponible para instalar en los repositorios de Ubuntu.

    
___ answer937758 ___

Limitar el acceso al usuario

Aquí, solo permitiremos al usuario realizar la transferencia de archivos y desactivaremos el acceso a la terminal.

Para eso agregue los siguientes códigos en la parte inferior del archivo de configuración.

sudo apt-get install openssh-server

Ahora el archivo se abrirá y pegará el código.

nm-connection-editor

Reemplaza OpenSSH server con tu nombre de usuario. A continuación, guarde y cierre el archivo.

Eso es todo.

Referencia: Cómo usar SFTP en Ubuntu 16.04

    
___ answer607898 ___

Paso 1: Instalar el paquete OpenSSH si no está instalado

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.factory-defaults
sudo chmod a-w /etc/ssh/sshd_config.factory-defaults

Paso 2: crea un grupo separado para los usuarios de SFTP.

sudo -H gedit /etc/ssh/sshd_config

Paso 3: edite el archivo ssh y realice los cambios que se detallan a continuación. Encuentre y comente debajo de la línea.

sudo service ssh restart

y agregue estas líneas al final del archivo.

PasswordAuthentication yes

Paso 4: reinicia el servicio sshd.

sudo service ssh restart

Paso 5: agregue usuarios con el grupo ftpaccess y cree una contraseña.

sftp <username>@123.123.1.23

Paso 6: modificar el permiso del directorio de inicio.

sftp -P <port_number_in_Host's_sshd_config_file> <username>@123.123.1.23

Paso 7: crea un directorio dentro del hogar para cargarlo y modifica el permiso con el grupo.

ssh <username>@123.123.1.23

Eso es todo.

Consulte: Configuración de SFTP en ubuntu

    
___ qstntxt ___

Me gustaría saber cómo configurar cuentas de usuario root, sudo, sftp-only que no requerirán autenticación de clave pública al iniciar sesión. También me gustaría saber cómo configurar el hogar de los usuarios de sftp-only. directorios donde no pueden acceder a otros directorios de nivel superior.

    
___
respondido por el jtd 14.02.2014 - 04:36
45

Paso 1: Instalar el paquete OpenSSH si no está instalado

sudo apt-get install openssh-server

Paso 2: crea un grupo separado para los usuarios de SFTP.

sudo addgroup ftpaccess

Paso 3: edite el archivo /etc/ssh/sshd_config y realice los cambios que se detallan a continuación. Encuentre y comente debajo de la línea.

#Subsystem sftp /usr/lib/openssh/sftp-server

y agregue estas líneas al final del archivo.

Subsystem sftp internal-sftp
Match group ftpaccess
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

Paso 4: reinicia el servicio sshd.

sudo service ssh restart

Paso 5: agregue usuarios con el grupo ftpaccess y cree una contraseña.

sudo adduser paul --ingroup ftpaccess --shell /usr/sbin/nologin

Paso 6: modificar el permiso del directorio de inicio.

sudo chown root:root /home/paul

Paso 7: crea un directorio dentro del hogar para cargarlo y modifica el permiso con el grupo.

sudo mkdir /home/paul/www
sudo chown paul:ftpaccess /home/paul/www

Eso es todo.

Consulte: Configuración de SFTP en ubuntu

    
respondido por el ytgmuabm 11.04.2015 - 08:57
0

Limitar el acceso al usuario

Aquí, solo permitiremos al usuario realizar la transferencia de archivos y desactivaremos el acceso a la terminal.

Para eso agregue los siguientes códigos en la parte inferior del archivo de configuración.

$ sudo nano /etc/ssh/sshd_config

Ahora el archivo se abrirá y pegará el código.

/etc/ssh/sshd_config

. . .

Match User filemg

ForceCommand internal-sftp

PasswordAuthentication yes

ChrootDirectory /var/sftp

PermitTunnel no

AllowAgentForwarding no

AllowTcpForwarding no

X11Forwarding no

Reemplaza filemg con tu nombre de usuario. A continuación, guarde y cierre el archivo.

Eso es todo.

Referencia: Cómo usar SFTP en Ubuntu 16.04

    
respondido por el Aimal 19.07.2017 - 18:13
0

Denyhosts es otra herramienta además de las mencionadas por "jtd" que es posible que desee consultar. Puede bloquear automáticamente intentos de conexión repetidos a su servidor SSH. Está disponible para instalar en los repositorios de Ubuntu.

    
respondido por el firefly2442 14.02.2014 - 04:44

Lea otras preguntas en las etiquetas