Cómo bloquear el acceso SSH y FTP a IP y rango de red específico en Linux
- 4433
- 759
- Alejandro Duran
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.
- 25 Consejos de seguridad de endurecimiento para servidores Linux
- 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.
- Guía básica sobre consejos / comandos iptables (firewall de Linux)
- Cómo configurar un firewall iptable para habilitar el acceso remoto a los servicios en Linux
- Cómo configurar 'Firewalld' en Rhel/Centos 7 y Fedora 21
- 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:
- /etc/huéspedes.permitir
- /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.
- « Qué carrera elegir programador vs administrador
- Cómo sincronizar archivos/directorios utilizando RSYNC con un puerto SSH no estándar »