I. Introducción firewall
En Linux cortafuegos estrategia se basa en la implementación de netfilter. netfilter del núcleo cortafuegos arquitectura, permitiendo a las políticas de seguridad en muchas funciones tales como el filtrado de paquetes, procesamiento de paquetes, enmascaramiento, proxy transparente, traducción de direcciones de red dinámica (Network Address Translation, NAT), y un control basado en un acceso de los usuarios y de los medios filtro de filtración (Media Access control, MAC) y una tasa basada en estado, paquete limitante.
Iptables es integrado con el sistema de filtrado de paquetes IP del núcleo de Linux. Si el sistema Linux está conectado a Internet o LAN, y el servidor de Internet o LAN servidor proxy de conexión, el sistema facilita un mejor control del filtro de paquetes IP en el sistema Linux y la configuración del cortafuegos.
netfilter / iptables IP de paquetes de sistema de filtración consta de dos componentes netfilter y iptables composición.
componentes de netfilter también se llaman el espacio del núcleo (kernelspace), es parte del núcleo, el número de tablas de filtrado de paquetes, estas tablas contienen el núcleo para controlar el filtrado de paquetes conjuntos de reglas de procesamiento.
componente iptables es una herramienta, también referido como el espacio de usuario (el espacio de usuario), que permite insertar, modificar, y las reglas de eliminar de la lista de filtro de paquetes se hace fácil.
En segundo lugar, las herramientas de gestión de cortafuegos y de conmutación
Hay dos herramienta de gestión de cortafuegos en Linux: firewalld e iptables
por defecto en rhel8 es firewalld, si es necesario descargar el uso de iptables
dnf search iptables
dnf install iptables-services.x86_64 -y
No es una herramienta de gestión de servidor de seguridad sólo en el sistema, primero puso firewalld totalmente cerrada antes de todos a usar iptables
systemctl stop firewalld.service #关闭火墙
systemctl disable firewalld.service #设置开机不启动
systemctl mask firewalld.service #冻结火墙
Tres, iptables utilizan
Ver: iptables -L
Actualizar: iptables -F
política de archivo de registro para el directorio / etc / sysconfig / iptables
de manera predeterminada iptables -L
Ver situación más adelante
, pero en vista del contenido predeterminado service iptables restart antes de que puedan ser vistos, porque la política se almacena en el documento de política
de actualización para cambiar el archivo de política se pueden guardar después de la reanudación de actualización, por lo que la política de iptables guarda permanentemente a utilizar el siguiente comando:
service iptables save
iptables-save > /etc/sysconfig/iptables
Cuatro, iptables tres en cadena de la Tabla V
El pentachain política por defecto
entrada | entrada |
---|---|
salida | exportación |
adelante | reenviado |
POSTROUTING | Después de convertir la dirección de fuente generadora de ruta SNAT |
prerouting | La conversión se producirá antes de la DNAT dirección de destino de enrutamiento |
La política por defecto tres tablas
filtrar | Después de que los datos del núcleo nativos (entrada, salida, hacia adelante) |
---|---|
nat | Sin datos kernel (POSTROUTING, prerouting, de salida, de entrada) |
desaparecido | Tablas adicionales, utilizados cuando el filtro no es suficiente y nat mesa, incluyendo los cinco cadena |
Usar la 5, la orden iptables
5,1 En la tabla de filtros
Estrategias Para ver la tabla
por defecto, el anfitrión de prueba se pueden comunicar entre el anfitrión y, por defecto, todos los hosts pueden acceder a este huésped
se negó el acceso a todos los ordenadores de
la política de eliminación
se cambiará a la acción DROP
sólo permiten esta 192.168.0.12 anfitrión acceso a los datos
de prueba
sólo permite el acceso al puerto de datos serie 22 de la serie 12, que no se puede comunicar (ping a ninguna parte), pero se puede utilizar la conexión ssh
prueba
a cambiar las reglas
para cambiar la política por defecto, la política por defecto sólo se puede modificar para aceptar o DROP
pruebas
añadir un nuevo la cadena de
nombre de la cadena cambio
elimina la cadena
un pequeño ejemplo: un host existente 192.168.0.11, sólo permite el acceso a otros hosts DNS y Apache servicios, otras visitas no son posibles, iptables configure para lograr
iptables -A INPUT -i lo -j ACCEPT #将本地回环接口的访问打开
iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 将apache服务的80端口打开
iptables -A INPUT -p tcp --dport 443 -j ACCEPT #将apache服务的443端口打开
iptables -A INPUT -p tcp --dport 53 -j ACCEPT #将dns服务的53端口打开
iptables -A INPUT -j REJECT #其他的所有情况都拒绝
Los requisitos de configuración disposición descrita anteriormente se puede lograr, pero debido a que el servidor de seguridad es una de arriba hacia abajo estrategia de leer, en particular cuando la estrategia es un paquete de datos a cada uno de la investigación se llevará a cabo a partir de la política, el resultado es una larga demora, por lo que necesita para paquete de datos de estado además de la estrategia de asignación de tiempo que reducen eficazmente el retardo de tiempo, lo que mejora la eficiencia de acceso
estado común de paquetes
RELACIONADO | se ha establecido la conexión |
---|---|
ESTABLECIDO | El establecimiento de la conexión |
NUEVO | El nuevo acceso de paquetes de datos |
Conexión se ha establecido, y la conexión de paquetes está establecida puede realizar acciones ACEPTAR
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state NEW -i lo -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -j REJECT
Además de 22 puertos no pueden acceder al host 192.168.0.12, otros anfitriones pueden ser
probados: 12 hosts
en el 10 anfitrión
resumen, los siguientes parámetros comunes iptables
-t | Especificar el nombre de la tabla (filtro (por defecto), NAT, mangle) |
---|---|
-norte | no se resuelve |
-L | vista |
-UN | Agregar directiva |
-pag | Acuerdo designado |
-dport | puerto de destino |
-s | fuente |
-j | Especificar acciones ACCEPT, DROP, REJECT, SNAT, DNAT |
-NORTE | nueva cadena |
-X | cadena Delete |
-MI | Cambiar el nombre de la cadena |
-RE | Regla de eliminación |
-YO | Las normas de introducción |
-R | Cambiar las reglas |
-PAG | Cambiar la regla por defecto (ACCEPT, DROP) |
5.2 tabla nat
Un primer anfitrión configurado para dual anfitrión tarjeta de
máquina de prueba 1 y la puerta de enlace IP
ip anfitrión de prueba de 2
prueba de la máquina 1 y 2 en dos segmentos diferentes, la comunicación por defecto no está
dispuesta en un huésped NIC dual directivo de seguridad: datos de la tarjeta ens160 fuera de la boca traducirá la dirección de origen 192.168.0.11
prueba
para ver qué hosts la prueba aunque su anfitrión 2, la pantalla es sede de doble tarjeta de red IP
quiere conectar el anfitrión de prueba 1 huésped 2 en la prueba también es necesario configurar la estrategia de host de doble NIC: procedentes de los datos de dirección de host tarjeta ens160 destino han cambiado (IP del anfitrión prueba 1) 172.25.254.12
Seis, firewalld habilitada y dominio firewalld
6.1 necesidades de herramienta iptables abierta firewalld a ser cerrados
systemctl stop iptables
systemctl disable iptables
systemctl mask iptables
systemctl unmask firewalld
systemctl start firewalld
Dominio y servicio firewalld incluyen por defecto de la siguiente
Tipo de dominio | Permite servicio de conexión |
---|---|
de confianza | Aceptar todas las conexiones de red |
hogar | red doméstica, ssh, acuses de recibo, de cliente IPP, samba-client, dhcp-client |
trabajo | Red de trabajo, ssh, cliente IPP, dhcp-client |
público | red pública, ssh, dhcp-client |
DMZ | la red de grado militar, ssh |
bloquear | rechazar todo |
soltar | Descartar todos los datos será descartado sin ningún tipo de respuesta |
interno | Intranet y la red doméstica permite que el mismo servicio |
externo | dirección de red IPv4 haciéndose pasar ssh hacia adelante |
directorio de configuración de cortafuegos / etc / firewalld
cortafuegos módulo de directorio / usr / lib / firewalld, lo que ha permitido la definición y descripción de los servicios de cortafuegos
6.2 comando gestión firewalld
Sobre el comando de administración de dominio
firewall-cmd --state #查看火墙状态
firewall-cmd --get-active-zones #查看生效的域
firewall-cmd --get-default-zone #查看默认域
firewall-cmd --liat-all #查看默认域中的详细火墙信息
firewall-cmd --list-all --zone=work #查看指定域(work)中的详细火墙信息
firewall-cmd --set-default-zone=drop #设定默认域
Cuando se establece en el dominio predeterminado a la baja, que no respondió al conectar una serie
de comandos de gestión de servicios
para ver todos los servicios que se pueden establecer
firewall-cmd --get-service
Permitido ver la información de dominio del cortafuegos por defecto
Elimina el servicio especificado
firewall-cmd --remove-service=http
firewall-cmd --reload #刷新
Especifica la fuente de datos para acceder al dominio especificado
firewall-cmd --permanent --add-source=192.168.0.11 --zone=block #指定从192.168.0.11中来的数据访问block域
Prueba de acogida ping11 irrazonable en el anfitrión
fuentes de datos de borrado para acceder al dominio especificado
firewall-cmd --permanent --remove-source=192.168.0.11 --zone=block
Cambiar la interfaz de red al dominio especificado
firewall-cmd --permanent --change-interface=ens160 --zone=block
Eliminar la interfaz de red especificada
firewall-cmd --permanent --remove-interface=ens160 --zone=block
Añade la interfaz de red especificada
firewall-cmd --permanent --add-interface=ens160 --zone=drop
La avanzada de reglas de 6,3 firewalld
El método es similar al uso de los iptables comando para especificar la cadena especificada en la tabla para añadir política de firewall
para ver todo el dominio directo
será el anfitrión de servidor de seguridad de doble-NIC en el servicio ssh a eliminar, añadir nueva regla directa
de host 192 no se puede conectar segmentos de red
6.3 firewalld de NAT
1, el desvío de la dirección de origen (SNAT)
firewall-cmd --permanent --add-masquerade #打开地址伪装功能
firewall-cmd --reload
En 172.25.254.30 ping192.25.254.12 anfitrión éxito de acogida
1, el desvío dirección de destino (DNAT)
firewall-cmd --permanent --add-forward-port=port=22:proto=tcp:toaddr=172.25.254.30
Prueba: Conectar dual-NIC anfitrión ip192.168.0.11 en el host 192.168.0.12 realidad conectarse a la más grande del host 172.25.254.30