Cómo bloquear el acceso SSH y FTP a IP y rango de red específico en Linux

Cómo bloquear el acceso SSH y FTP a IP y rango de red específico en Linux
Bloquear el acceso SSH y FTP usando iptables/firewalld

Por lo general, todos usamos Ssh y Ftp Servicios a menudo para acceder a los servidores remotos y los servidores privados virtuales. Como administrador de Linux, debe saber cómo bloquear el acceso SSH y FTP a IP o rango de red específico en Linux para ajustar el bit de seguridad más.

  1. 25 Consejos de seguridad de endurecimiento para servidores Linux
  2. 5 consejos útiles para asegurar y proteger el servidor SSH

Este tutorial le mostrará cómo bloquear el acceso SSH y FTP a una dirección IP particular y/o una gama de red en el servidor CentOS 6 y 7. Esta guía fue probada en Centos 6.X y 7.X versiones, pero probablemente funcionará en otras distribuciones de Linux como Debian, Ubuntu y Suse/OpenSuse, etc.

Lo haremos en dos métodos. El primer método está usando Iptables/cortafuegos y el segundo método está usando TCP envoltorios con la ayuda de Hospedadores.permitir y Hospedadores.denegar archivo.

Consulte las siguientes guías para saber más sobre iptables y firewalld.

  1. Guía básica sobre consejos / comandos iptables (firewall de Linux)
  2. Cómo configurar un firewall iptable para habilitar el acceso remoto a los servicios en Linux
  3. Cómo configurar 'Firewalld' en Rhel/Centos 7 y Fedora 21
  4. Reglas útiles de 'firewalld' para configurar y administrar firewall en Linux

Ahora conscientes de lo que es Iptables y Cortafuegos Y es lo básico.

Método 1: Bloquear el acceso SSH y FTP usando iptables/firewalld

Ahora veamos cómo bloquear el acceso SSH y FTP a una IP específica (por ejemplo 192.168.1.100) y/o rango de red (por ejemplo 192.168.1.24/04) usando Iptables en Rhel/Centos/Scientific Linux 6.X versiones y Cortafuegos en Centos 7.X.

Bloquear o deshabilitar el acceso SSH

--------------------- En Firewall iptable --------------------- # iptables -i entrada -s 192.168.1.100 -p TCP --Dport ssh -j rechazar # iptables -i entrada -s 192.168.1.0/24 -P TCP --DPort SSH -J Rechazado 
--------------------- En Cortafuegos --------------------- # firewall-cmd --direct --add-rule IPv4 FILTER ENTER 1 -M TCP-Source 192.168.1.100 -P TCP --DPort 22 -J Rechazar # FireWall -CMD - -Direct -Add -Rule IPv4 FILTER ENTRADA 1 -M TCP -Source 192.168.1.100/24 ​​-P TCP --DPORT 22 -J Rechazo 

Para tomar nuevas reglas en efecto, debe usar el siguiente comando.

# Servicio iptables Guardar [en IpTables Firewall] # Firewall-CMD--Reload [en Firewalld] 

Ahora intenta Ssh el servidor desde el host bloqueado. Por favor, tenga en cuenta que aquí 192.168.1.150 es el host bloqueado.

# ssh 192.168.1.150 

Deberías ver el siguiente mensaje.

SSH: Conéctese al host 192.168.1.150 Puerto 22: Conexión rechazada 

Desbloquear o habilitar el acceso SSH

Para desbloquear o habilitar el acceso SSH, vaya al servidor remoto y ejecute el siguiente comando:

--------------------- En Firewall iptable --------------------- # iptables -i entrada -s 192.168.1.100 -p TCP --Dport SSH -J Aceptar # iptables -I Entrada -s 192.168.1.100/24 ​​-P TCP --DPORT SSH -J Aceptar 
--------------------- En Cortafuegos --------------------- # firewall-cmd --direct --add-rule IPv4 FILTER ENTER 1 -M TCP-Source 192.168.1.100 -P TCP --DPort 22 -J Aceptar # FireWall -CMD - -Direct -Add -Rule IPv4 FILTER ENTRADA 1 -M TCP - -Source 192.168.1.100/24 ​​-P TCP --DPORT 22 -J Aceptar 

Guarde los cambios utilizando a continuación para acceder a su servidor a través de SSH.

# Servicio iptables Guardar [en IpTables Firewall] # Firewall-CMD--Reload [en Firewalld] 

Bloquear o deshabilitar el acceso FTP

Por lo general, los puertos predeterminados para Ftp son 20 y 21. Entonces, para bloquear todo el tráfico FTP usando iptables, ejecute el siguiente comando:

--------------------- En Firewall iptable --------------------- # iptables -i entrada -s 192.168.1.100 -p TCP - -DPORT 20,21 -J Rechazar # iptables -I Entrada -s 192.168.1.100/24 ​​-P TCP --DPORT 20,21 -J Rechazar 
--------------------- En Cortafuegos --------------------- # firewall-cmd --direct --add-rule IPv4 FILTER ENTER 1 -M TCP-Source 192.168.1.100 -P TCP --DPORT 20,21 -J Rechazar # Firewall -CMD - -Direct -Addd -Rule IPv4 FILTER ENTRADA 1 -M TCP -Source 192.168.1.100/24 ​​-P TCP --DPORT 20,21 -J Rechazar 

Para tomar nuevas reglas en efecto, debe usar el siguiente comando.

# Servicio iptables Guardar [en IpTables Firewall] # Firewall-CMD--Reload [en Firewalld] 

Ahora, intente acceder al servidor desde el host bloqueado (192.168.1.100), con comando:

# ftp 192.168.1.150 

Recibirá un mensaje de error algo como a continuación.

FTP: Connect: Connection se rechazó 

Desbloquear o habilitar el acceso FTP

Para desbloquear y habilitar el acceso FTP, ejecute:

--------------------- En Firewall iptable --------------------- # iptables -i entrada -s 192.168.1.100 -P TCP --DPORT 20,21 -J Aceptar # iptables -I Entrada -s 192.168.1.100/24 ​​-P TCP --DPORT 20,21 -J Aceptar 
--------------------- En Cortafuegos --------------------- # firewall-cmd --direct --add-rule IPv4 FILTER ENTER 1 -M TCP-Source 192.168.1.100 -p TCP --DPort 20,21 -J Aceptación # Firewall -CMD - -Direct -Add -Rule IPv4 FILTER ENTRADA 1 -M TCP -Source 192.168.1.100/24 ​​-P TCP --DPORT 20,21 -J Aceptar 

Guarde los cambios con el comando:

# Servicio iptables Guardar [en IpTables Firewall] # Firewall-CMD--Reload [en Firewalld] 

Ahora, intente acceder al servidor a través de FTP:

# ftp 192.168.1.150 

Ingrese su nombre de usuario y contraseña FTP.

Conectado a 192.168.1.150. 220 Bienvenido al servicio TECMINT FTP. Nombre (192.168.1.150: SK): TECMINT 331 Especifique la contraseña. Contraseña: 230 Iniciar sesión exitoso. El tipo de sistema remoto es unix. Usando el modo binario para transferir archivos. FTP> 

Método 2: Bloquear acceso SSH y FTP usando envoltorios TCP

Si no quieres meterte con Iptables o Cortafuegos, entonces Envoltorios TCP es la mejor manera de bloquear el acceso SSH y FTP a una IP específica y/o una gama de redes.

OpenSSH y FTP se compilan con el soporte de envoltorios TCP, lo que significa que puede especificar qué hosts puede conectarse sin tocar su firewall en los siguientes dos archivos importantes y son:

  1. /etc/huéspedes.permitir
  2. /etc/huéspedes.denegar

Como su nombre lo indica, el primer archivo contiene entradas de hosts permitidos, y el segundo contiene direcciones de hosts bloqueados.

Por ejemplo, bloqueemos el acceso SSH y FTP al host que tiene una dirección IP 192.168.1.100 y rango de red 192.168.1.0. Este método es el mismo para CentOS 6.x y 7.Serie X. Y, por supuesto, funcionará en otras distribuciones como Debian, Ubuntu, Suse, OpenSuse, etc.

Abre el /etc/huéspedes.denegar Archivo y agregue las siguientes direcciones IP o rango de red que desea bloquear como se muestra a continuación.

##### Para bloquear el acceso SSH ##### SSHD: 192.168.1.100 SSHD: 192.168.1.0/255.255.255.0 ##### para bloquear el acceso FTP ##### vsftpd: 192.168.1.100 VSFTPD: 192.168.1.0/255.255.255.0 

Guardar y salir del archivo.

Ahora, reinicie el servicio SSHD y VSFTPD para llevar a cabo nuevos cambios en efecto.

--------------- Para el servicio SSH --------------- # Servicio SSHD reiniciar [en sysvinit] # systemCtl reiniciar sshd [en systemd] 
--------------- Para el servicio FTP --------------- # Servicio VSFTPD reiniciar [en sysvinit] # systemCtl reiniciar vsftpd [en Systemd] 

Ahora, intente ssh el servidor o desde un host bloqueado.

# ssh 192.168.1.150 

Verá la siguiente salida:

ssh_exchange_identificación: leer: conexión de conexión por par 

Ahora, intente ftp el servidor o desde un host bloqueado.

# ftp 192.168.1.150 

Verá la siguiente salida:

Conectado a 192.168.1.150. 421 Servicio no disponible. 

Para desbloquear o habilitar los servicios SSH y FTP nuevamente, editar Hospedadores.denegar Archifique y comente todas las líneas y finalmente reinicie los servicios VSFTPD y SSHD.

Conclusión

Eso es todo por ahora. Para resumir, hoy aprendimos a bloquear una dirección IP específica y un rango de red utilizando iptables, firewalld y envoltorios TCP. Estos métodos son bastante fáciles y sencillos.

Incluso, un administrador de Linux novato puede hacer esto en un par de minutos. Si conoce otras formas de bloquear el acceso SSH y FTP, no dude en compartirlos en la sección de comentarios. Y no olvide compartir nuestros artículos en todas sus redes sociales.