Contactos

Centros 7 Firewall Open Port. Creando reglas para programas y utilidades.

Firewall instalado en el sistema operativo se utiliza para evitar el tráfico no autorizado entre las redes de computadoras. Manual o crea automáticamente reglas especiales para el firewall, que son responsables del control de acceso. En OS, desarrollado en el kernel de Linux, CENTOS 7 hay un firewall incorporado, y está controlado por Firewall. El firewalld predeterminado está involucrado, y nos gustaría hablar de ello hoy.

Como se mencionó anteriormente, el firewall estándar en CENTOS 7 se le asigna una utilidad de firewalld. Es por eso que la configuración del firewall se considerará en el ejemplo de esta herramienta. Puede configurar las reglas de filtrado con los mismos iptables, pero se realiza ligeramente diferente. Recomendamos familiarizarse con la configuración de la utilidad mencionada haciendo clic en el siguiente enlace, y comenzaremos el desmontaje de Firewalld.

Los conceptos básicos del firewall.

Hay varios conjuntos de zona de zona para administrar el tráfico sobre la base de la confianza en las redes. Todos ellos reciben sus propias políticas, cuya totalidad y forma la configuración del firewall. Cada zona se le asigna una o más interfaces de red, que también le permite ajustar el filtrado. Las reglas aplicadas directamente dependen de la interfaz utilizada. Por ejemplo, cuando está conectado a Wi-Fi disponible públicamente pantalla de red Aumentará el nivel de control, y en la red doméstica abrirá acceso adicional para los participantes de la cadena. En el Farvol visitado hay tales zonas:

  • de confianza es el nivel máximo de confianza en todos los dispositivos de red;
  • inicio - Grupo red local. Hay una confianza en los alrededores, pero las conexiones entrantes están disponibles solo para ciertas máquinas;
  • trabajo - zona de trabajo. Hay una confianza en la mayoría de los dispositivos, y se activan servicios adicionales;
  • dMZ - Zona para computadoras aisladas. Dichos dispositivos se desconectan del resto de la red y solo se pasa un cierto tráfico entrante;
  • zona interna - red interna. La confianza se aplica a todas las máquinas, se abren servicios adicionales;
  • externo: reverso a la zona anterior. En las redes externas, el enmascaramiento de NAT está activo, cerrando la red interna, pero sin bloquear la posibilidad de acceder;
  • público: una zona de redes públicas con desconfianza para todos los dispositivos y la recepción individual del tráfico entrante;
  • bloque: todas las solicitudes entrantes se restablecen con el envío de errores iCMP-Host-Prohibido o iCMP6-ADM-Prohibido;
  • la caída es el nivel mínimo de confianza. Las conexiones entrantes se descargan sin ninguna notificación.

Las políticas en sí mismas son temporales y permanentes. Cuando o editan los parámetros, la acción del firewall cambia inmediatamente sin un reinicio. Si se aplicaron reglas temporales, después de reiniciar el firewalld, se restablecerán. La regla permanente se llama algo: se guardará de manera continua al aplicar el argumento permanente.

Habilitar Firewalld Firewall

Primero, debe ejecutar Firewalld o asegúrese de que esté en una condición activa. Solo funcionar el demonio (un programa que opera en el fondo) aplicará las reglas para el firewall. La activación se realiza literalmente unos pocos clics:

  1. Correr el clásico "Terminal" Cualquier método conveniente, por ejemplo, a través del menú. "Aplicaciones".
  2. Ingrese el comando sudo systemctl start firewalld.service y haga clic en la tecla. INGRESAR.
  3. El control de la utilidad se realiza en nombre del superusuario, por lo que debe confirmar la autenticidad especificando la contraseña.
  4. Para asegurarse de que el servicio esté funcionando, especifique el firewall-Cmd - State.
  5. En la ventana gráfica que se abre, vuelva a confirmar la autenticidad.
  6. Aparecerá una nueva línea. Valor "Corriendo" Sugiere que funciona el firewall.

Si una vez se deshabilitará temporalmente o permanentemente, desactive el firewall, le recomendamos que utilice las instrucciones presentadas en el otro artículo por el siguiente enlace.

Ver reglas predeterminadas y zonas asequibles

Incluso el firewall regular tiene sus propias reglas definitivas y zonas accesibles. Antes de comenzar la edición de políticos, le recomendamos que se familiarice con la configuración actual. Esto se hace usando comandos simples:

  1. La zona predeterminada determinará el comando Firewall-Cmd --Get-Faith-Zone.
  2. Después de su activación, verás. nueva cadenadonde aparece el parámetro requerido. Por ejemplo, la zona se considera en la captura de pantalla a continuación. "Público".
  3. Sin embargo, varias zonas pueden estar activas de inmediato, además, están vinculadas a una interfaz separada. Averigüe esta información a través de firewall-cmd --get-active-zonas.
  4. El comando Firewall-CMD-LISTA-Todos mostrará las reglas establecidas para la zona predeterminada. Preste atención a la captura de pantalla a continuación. Ves la zona activa "Público" Regla premiada "DEFECTO" - Funcionamiento predeterminado, Interfaz "ENP0S3" y agregó dos servicios.
  5. Si tiene la necesidad de aprender todas las zonas de firewall disponibles, ingrese las zonas de firewall-cmd --get.
  6. Los parámetros de la zona específica se definen a través de Firewall-Cmd --Zone \u003d Name - Lista-Toda, donde nombre. - Zona de nombre.

Después de determinar parámetros necesarios Puede proceder a cambiar y agregar. Analicemos varias de las configuraciones más populares en detalle.

Configuración de zonas de interfaz

Como sabe de la información anterior, su zona predeterminada se define para cada interfaz. Estará en ella hasta que la configuración cambie al usuario o programáticamente. Es posible transferir manualmente la interfaz a la zona por sesión, y se lleva a cabo activando el sudo firewall-cmd --zone \u003d comando home --change-interfaz \u003d eth0. Resultado "ÉXITO" Indica que la transferencia fue exitosa. Recuerde que dicha configuración se restablezca inmediatamente después de reiniciar el firewall.

Con un cambio de este tipo en los parámetros, debe tenerse en cuenta que la operación de los servicios se puede restablecer. Algunos de ellos no admiten el funcionamiento en ciertas zonas, digamos, ssh, aunque accesible en "CASA"Pero en el usuario o servicio especial se negará a trabajar. Asegúrese de que la interfaz se vincule con éxito a la nueva sucursal, ingresando a las zonas activas de Firewall-Cmd --Get.

Si desea restablecer la configuración previamente hecha, simplemente ejecute el reinicio del firewall: sudo systemctl reinicie Firewalld.Service.

A veces, no siempre es conveniente cambiar la zona de la interfaz en una sola sesión. En este caso, deberá editar el archivo de configuración para que todas las configuraciones sean amenazadas de forma permanente. Para hacer esto, le aconsejamos que use un editor de texto. nanoque se instala desde el repositorio oficial de sudo yum install nano. Siguiente sigue siendo tales acciones:

  1. Abra el archivo de configuración a través del editor ingresando sudo nano / etc / sysconfig / red-scripts / ifcfg-eth0, donde eth0. - Nombre de la interfaz requerida.
  2. Confirmar la autenticidad cuenta Para cumplir con más acción.
  3. Extender el parámetro Zona Y cambie su valor al deseado, por ejemplo, público o en casa.
  4. Mantener las llaves Ctrl + O.Para guardar los cambios.
  5. No cambie el nombre del archivo, pero simplemente haga clic en INGRESAR.
  6. Salir del editor de texto a través de CTRL + X..

Ahora, la zona de interfaz será la que le especificó, hasta la siguiente edición del archivo de configuración. Para los parámetros actualizados, ejecute sudo systemctl reiniciar la red.Service y sudo SystemCTL Reinicie Firewalld.Service.

Configuración de la zona predeterminada

ANTERIOR, ya hemos demostrado un equipo que le permite aprender la zona predeterminada. También se puede cambiar configurando el parámetro a su elección. Para hacer esto, en la consola, es suficiente para registrar el nombre de sudo firewall-cmd --set-default-zone \u003d donde nombre. - El nombre de la zona requerida.

El éxito del equipo desalojará la inscripción. "ÉXITO" En una línea separada. Después de eso, todas las interfaces actuales nacerán en la zona especificada, si el otro no se especifica en los archivos de configuración.

Creando reglas para programas y utilidades.

Al comienzo del artículo, hablamos sobre la acción de cada zona. Definición de servicios, utilidades y programas en tales ramas permitirá aplicar parámetros individuales para cada uno de ellos para cada solicitud de usuario. Para empezar, le recomendamos que se familiarice con la lista completa de servicios disponibles en este momento: Firewall-CMD -Get-Services.

El resultado se mostrará directamente en la consola. Cada servidor está dividido por un espacio, y puede encontrar fácilmente la herramienta que le interesa. Si falta el servicio requerido, debe instalarse adicionalmente. En las reglas de instalación, lea en la documentación oficial de software.

El comando anterior demuestra solo los nombres de los servicios. La información detallada para cada una de ellas se obtiene a través del archivo individual en la ruta / USR / LIB / Firewalld / Services. Dichos documentos tienen un formato XML, la ruta, por ejemplo, a SSH se ve así: /usr/lib/firewalld/services/ssh.xml, y el documento tiene los siguientes contenidos:

Ssh
Secure Shell (SSH) es un protocolo para iniciar sesión y ejecutar comandos en máquinas remotas. Proporciona comunicaciones cifradas seguras. Si planea acceder a su máquina RemoteNet a través de SSH a través de una interfaz firewall, habilite esta opción. Necesita instalado el paquete OpenSSH-Server para que esta opción sea útil.

El soporte de servicio se activa en una zona específica manualmente. EN "Terminal" Debe establecer el sudo firewall-cmd --zone \u003d Public --DD-SERVICIO \u003d comando http, donde --Zone \u003d público - Zona para la activación, y --Add-service \u003d http - Nombre del Servicio. Tenga en cuenta que dicho cambio solo será válido dentro de una sesión.

La adición permanente se lleva a cabo a través de sudo firewall-cmd --zone \u003d Public --Permanent --DD-SERVICE \u003d HTTP, y el resultado "ÉXITO" Especifica a la finalización exitosa de la operación.

Vista lista llena Las reglas permanentes para una zona específica pueden, mostrar una lista en una línea separada de la consola: sudo firewall-cmd --zone \u003d Public -permanent - List-SERVICES.

Problema de decisión con la falta de acceso al servicio.

Las reglas estándar de firewall están indicadas por los servicios más populares y seguros según lo permitido, pero algunas aplicaciones estándar o de terceros bloquean. En este caso, el usuario debe cambiar manualmente la configuración para resolver el problema con el acceso. Puedes hacer esto en dos métodos diferentes.

PORTES PORTES

Como usted sabe, todos los servicios de red utilizan un puerto específico. Es fácilmente detectado por un firewall, y se pueden realizar bloques. Para evitar tales acciones del firewall, debe abrir el puerto deseado del sudo firewall-cmd --zone \u003d Public - Portd-Port \u003d 0000 / TCP, donde --Zone \u003d público - Zona para el puerto, --Add-Port \u003d 0000 / TCP - El número de puerto y el protocolo. La opción Firewall-Cmd-List-Ports mostrará una lista de puertos abiertos.

Si necesita abrir puertos incluidos en el rango, use el sudo firewall-cmd --zone \u003d Public-Port-Port-Port \u003d 0000-9999 / UDP Row, donde --Add-Port \u003d 0000-9999 / UDP - Gama de puertos y su protocolo.

Los comandos anteriores solo le permiten probar el uso de parámetros similares. Si ha pasado con éxito, debe agregar los mismos puertos a la configuración constante, y esto se realiza ingresando sudo firewall-cmd --zone \u003d Public -permanent --Add-Port \u003d 0000 / TCP o Sudo Firewall-CMD - Zona \u003d Public --Permanent --Add-Port \u003d 0000-9999 / UDP. La lista de puertos permanentes abiertos se ve de la siguiente manera: Sudo Firewall-CMD --Zone \u003d Public -Permanent - List-Puertos.

Definición de servicio

Como puede ver, agregar puertos no causa ninguna dificultad, pero el procedimiento es complicado cuando las aplicaciones utilizan una gran cantidad. Para rastrear todos los puertos usados \u200b\u200bse vuelve difícil, en vista de la cual la determinación del servicio será la opción más correcta:


Solo tiene que elegir la solución más adecuada al problema del servicio con acceso al servicio y ejecute las instrucciones proporcionadas. Como puede ver, todas las acciones se realizan con bastante facilidad, y no debe haber dificultades.

Creando zonas personalizadas

Ya sabes que, al principio, se ha creado una gran cantidad de zonas diversas con reglas definidas en Firewalld. Sin embargo, las situaciones ocurren cuando el administrador del sistema necesita crear una zona de usuario, como, por ejemplo, "PublicWeb" Para el servidor web instalado o "Privatedns" - Para el servidor DNS. En estos dos ejemplos, analizaremos la adición de las ramas:


De este artículo aprendiste a crear. zonas personalizadas Y agregarles servicios a ellos. Ya les hemos contado como predeterminado y asignando interfaces anteriores, solo puede especificar los nombres correctos. No se olvide de reiniciar el firewall después de realizar un cambio permanente.

Como puede ver, Firewalld Firewall es una herramienta bastante volumétrica que le permite hacer la configuración más flexible del firewall. Sólo sigue siendo asegurarse de que la utilidad se inicie con el sistema y las reglas especificadas inicien inmediatamente su trabajo. Hágalo con el comando sudo systemcl habilitar Firewalld.

En la protección del servidor de las amenazas externas, en primer lugar, el firewall, que filtra el tráfico entrante y saliente. Configuración de IPTables: un caso privado de firewall en los centros que quiero hacer en este artículo, así como informar sobre su instalación y desconexión. Mi liderazgo no será exhaustivo, solo consideraré aquellos aspectos que considero lo más importante y yo uso en su trabajo.

Este artículo es parte del ciclo unificado del artículo sobre el servidor.

Introducción

IPTables es actualmente un estándar de facto en las distribuciones contemporáneas de Linux. Ni siquiera puedo recordar qué más se usa como firewall. Por lo tanto, cualquier administrador de Linux debe encontrarse en su trabajo con la configuración de este firewall.

Hay varias correas para este firewall que se utilizan para más configuraciones "convenientes". En Ubuntu es uFW.en centros - firewalld., con otros no es familiar. Personalmente, no veo ninguna comodidad en el uso de estas herramientas. Solía \u200b\u200bsintonizar el firewall de Linux de la manera anterior, como se enteré al comienzo del trabajo. Me parece que esta es la forma más fácil y conveniente que compartiré con usted. Su esencia se reduce al hecho de que el guión está creado con las reglas del firewall. Este script se puede editar fácilmente bajo sus necesidades y transferir desde el servidor al servidor.

Desactivar Firewalld.

Pregunta de desconexión de Firewalld Ya me he preocupado en el tema del software. Lo primero desactivará el firewalld, que está presente en el Centros 7 de forma predeterminada inmediatamente después de la instalación:

# Systemctl stop firewalld

Ahora lo eliminaremos de la puesta en marcha, para que no se encienda nuevamente después del reinicio:

# Systemctl deshabilitar firewalld

Después de eso, en el servidor, la configuración de la pantalla de red se abre completamente. Puedo ver las reglas de IPTables por el comando:

Instalación de IPTables

De hecho, el firewall en el servidor ya está de pie y funciona, simplemente no tiene ninguna regla, todo está abierto. Tendremos que establecer utilidades de control adicionales, sin las cuales es imposible configurar IPTables. Por ejemplo, es imposible reiniciar el firewall:

# SystemCL Reinicie IPTables.Service Error al emitir el método Call: Unit IPTables.Service Error al cargar: No hay dicho archivo o directorio.

O agregar a Autorun no funcionará:

# SystemCTL Habilitar IPTables.Service Error al emitir el método Call: No hay dicho archivo o directorio

Para no tener tales errores, instale el paquete requerido con utilidades:

# Yum -y instalar iptables-servicios

Ahora puede agregar IPTables a AutoLoad y ejecute:

# Systemctl habilitar iptables.service # systemctl start iptables.service

Estableciendo firewall

Para gestionar las reglas del firewall, utilizo el script. CREARLO:

# MCedit /etc/iptables.sh.

A continuación, lo llenaremos con las reglas necesarias. Desmarcaré todas las partes significativas del guión, y lo daré por completo en forma de un archivo de texto al final del artículo.. Las reglas se realizan en forma de imágenes para prohibir la copia e insertar. Esto puede llevar a errores en el trabajo de las reglas, con las que yo mismo encuentro durante la preparación del artículo.

Consideraremos la situación en la que el servidor es la puerta de enlace de Internet para la red local.

En primer lugar, establece todas las variables que usarán en el script. No es necesario hacerlo, pero se recomienda porque es conveniente llevar la configuración del servidor al servidor. Será suficiente para simplemente reasignar las variables.

Antes de aplicar nuevas reglas, limpiamos todas las cadenas:

Bloquecuamos todo el tráfico que no corresponde a ninguna de las reglas:

Deje que todo el tráfico de LockalHost y LAN:

Déjame hacer ping:

Si no lo necesita, no agregue Permitir reglas para ICMP.

Acceso abierto a Internet al propio Servidor:

Si desea abrir todas las conexiones de servidor entrantes, agregue otra regla:

Ahora agregue protección contra los ataques de red más comunes. Primero, lanzaremos todos los paquetes que no tienen estado:

Bloquear paquetes cero:

Cerca de los ataques de syn-inundad:

Si no coloca restricciones al acceso desde la red local, usted permite que todo el acceso a Internet:

A continuación, prohíbe el acceso desde Ineta a la red local:

Para que nuestra red local utilice Internet, encienda NAT:

Para no perder acceso al servidor, después de aplicar las reglas, permita las conexiones SSH:

Y al final, escriba las reglas para aplicar después de reiniciar:

Constituimos la configuración más simple que bloquea todas las conexiones entrantes, excepto SSH y permitimos el acceso desde la red local a Internet. En el camino, estaban protegidos de algunos ataques de red.

Guardamos el script, haz ejecutable y lanzamos:

# Chmod 0740 /etc/iptables.sh # /etc/iptables.sh

Revisaremos las reglas y verificaremos si todas las reglas en el lugar:

# iptables -l -v -n

Llamo su atención: Aplique las reglas solo si tiene acceso a la consola del servidor. Si se equivoca en la configuración, puede perder el acceso. Asegúrese de que en una situación anormal pueda deshabilitar el firewall y ajustar la configuración.

Puertos de apertura

Ahora ampliaremos nuestra configuración y abriremos puertos en IPTables para algunos servicios. Supongamos que tenemos un servidor web y necesita abrir acceso desde Internet. Añadimos reglas para el tráfico web:

Se añadió permiso a los compuestos entrantes de los 80 y 443 puertos que usan el servidor web en su trabajo.

Si has instalado servidor de correoDebe resolver las conexiones entrantes para todos los puertos usados:

Para el correcto funcionamiento del servidor DNS, necesita abrir el puerto UDP 53

Puerto portuario

Considere la situación cuando necesita ejecutar puertos de la interfaz externa a una computadora en la red local. Supongamos que necesita obtener acceso RDP a una computadora 10.1.3.50 de Internet. Haciendo el puerto TCP 3389:

Si no desea brillar frente al puerto conocido, puede hacer redirigir desde un puerto no estándar al puerto RDP de la computadora final:

Si realiza el puerto fuera del interior de la red local, debe cumplir con la regla que bloquea el acceso desde la red externa al interno. En mi ejemplo, esta regla: $ iPT -A Forward -S $ WAN -O $ LAN1 -J Rechazar

O antes de esta regla, cree una regla de resolución para acceder desde el exterior al servicio interno, por ejemplo, como este:

$ IPT -A Forward -S $ WAN -D 10.1.3.50 -p TCP -M TCP --DPORT 3389 -J Aceptar

Encendiendo los registros

Durante la configuración, es útil permitir que los registros supervisen los paquetes bloqueados y averigüe por qué no hay acceso a los servicios necesarios que parecemos que ya han descubierto. Enví todos los paquetes bloqueados en cadenas separadas (bloque_in, bloque_out, bloque_fw), correspondientes a la dirección del tráfico y etiquetado en los registros de cada dirección. Es más conveniente hacer análisis de vuelo. Agregamos las siguientes reglas al más fácil de guardar el script antes de guardar la configuración:

Todos los paquetes bloqueados Puede rastrear en el archivo / var / log / mensaje.

Después de terminar la configuración, comente estas cadenas apagando el registro. Asegúrese de hacerlo, ya que los registros están creciendo muy rápidamente. No veo un significado práctico para mantener dicha información personalmente.

Cómo deshabilitar iptables

Si de repente, decide que el firewall ya no lo necesita, entonces puede apagarlo de la siguiente manera:

# Systemctl stop iptables.vice

Este equipo detiene el firewall. Y el siguiente se elimina de la puesta en marcha:

# Systemctl deshabilitar iptables.service

Desconexión de la pantalla de red, permitimos todas las conexiones.

Conclusión

Según lo prometido, publico el guión preparado con el conjunto principal de reglas que revisamos

Quiero prestar atención a una vez más que al configurar iptables necesitas ser extremadamente atento. No inicie este caso si no tiene acceso a la consola del servidor. Incluso al escribir este artículo, perdí el acceso al servidor debido a un error ridículo en las reglas. Este error ocurrió debido a la copia y la pérdida de doble tablero, fue reemplazado por soltero.

curso en línea "Administrador Linux" en OTUS. El curso no es para principiantes, para la admisión, necesita conocimientos básicos en redes y instalación Linux en un virtual La capacitación dura 5 meses, después de lo cual los graduados exitosos del curso podrán pasar entrevistas de socios. ¿Qué te dará este curso?

  • Conocimiento de la arquitectura de Linux.
  • Masterización de métodos modernos y análisis de datos y herramientas de procesamiento de datos.
  • La capacidad de seleccionar la configuración de las tareas necesarias, administrar procesos y garantizar la seguridad del sistema.
  • Posesión de los principales instrumentos de trabajo del administrador del sistema.
  • Comprender las características del despliegue, la configuración y el mantenimiento de redes construidas sobre la base de Linux.
  • La capacidad de resolver rápidamente problemas emergentes y garantizar una operación estable e ininterrumpida del sistema.
Compruebe usted mismo en la prueba de introducción y vea más del programa de software.

Zonas

Demon Firewalld gestiona grupos de reglas utilizando las llamadas zonas.

Las zonas son, de hecho, los conjuntos de reglas que controlan el tráfico sobre la base del nivel de confianza en esta o esa red. Las zonas se asignan a las interfaces de red y controlan el comportamiento del firewall.

Las computadoras que a menudo están conectadas a diferentes redes (por ejemplo, computadoras portátiles) pueden usar zonas para cambiar los conjuntos de reglas dependiendo del medio. Por ejemplo, cuando está conectado al público. redes wifi El firewall puede aplicar reglas más estrictas, y en la red doméstica para debilitar las restricciones.

Existen las siguientes zonas en Firewalld:

  • dROP: el nivel más bajo de la confianza de la red. Todo el tráfico entrante se descarga sin respuesta, solo se admiten compuestos salientes.
  • bloque: esta zona es similar a la anterior, pero las solicitudes entrantes se restablecen con ICMP-Prohibido-Prohibido o ICMP6-ADM-Prohibido.
  • público: esta zona representa una red pública que no se puede confiar, sin embargo, admite los compuestos entrantes individualmente.
  • externo: zona de red externa. Soporta enmascaramiento de NAT, de modo que la red interna permanezca cerrada, pero con la capacidad de acceder.
  • interno: el reverso de la zona externa, redes internas. Se puede confiar en las computadoras en esta zona. Servicios adicionales están disponibles.
  • dMZ: Se utiliza para computadoras ubicadas en DMZ (computadoras aisladas que no tendrán acceso al resto de la red); Soporta solo algunas conexiones entrantes.
  • trabajo: área de red de trabajo. La mayoría de las máquinas de la red se pueden confiar. Servicios adicionales están disponibles.
  • inicio: Área de red doméstica. Se puede confiar en los alrededores, pero solo las conexiones entrantes definidas por el usuario son compatibles.
  • confiado: se puede confiar en todas las máquinas de la red.

Reglas de ahorro

Las reglas de Firewalld son permanentes y temporales. Si el conjunto aparece o cambia alguna regla, el comportamiento actual del firewall varía de inmediato. Sin embargo, después de reiniciar, todos los cambios se perderán si no se guardan.

La mayoría de los comandos de Firewall-CMD pueden usar la bandera permanente, que guardará la regla, después de lo cual se utilizará de forma continua.

Habilitar Firewalld Firewall

Primero necesitas encender el demonio. El archivo de la unidad SYSTEMD se llama firewalld.service. Para iniciar el demonio, entra.

sudo systemctl start firewalld.service

Asegúrese de que el servicio se esté ejecutando:

firewall-CMD - Estado
Corriendo

Ahora, el firewall se está ejecutando y funciona de acuerdo con la configuración predeterminada.

En este momento, el servicio está habilitado, pero no se iniciará automáticamente junto con el servidor. Para no bloquear accidentalmente a su propio servidor, primero cree un conjunto de reglas y luego configure el Autorun.

Reglas de firewall predeterminadas

Ver las reglas predeterminadas

Para averiguar qué zona se usa de forma predeterminada, ingrese:

firewall-CMD - Predeterminado-Zona predeterminada
Público

En este momento, Firewalld no recibió ninguna instrucción con respecto a otras zonas, además, ninguna interfaz no está vinculada a otras zonas, por lo que ahora la zona pública es el área predeterminada, así como la única zona activa.

Para obtener una lista de zonas activas, ingrese:


Público
Interfaces: eth0 eth1

Dos interfaces de red están vinculadas a la zona pública: eth0 y eth1. Las interfaces adjuntas a la zona están funcionando de acuerdo con las reglas de esta zona.

Para averiguar qué reglas usan la zona predeterminada, ingrese:

firewall-Cmd - Lista-Toda
Público (por defecto, activo)
Interfaces: eth0 eth1
FUENTES:
Servicios: DHCPV6-cliente ssh
Puertos:
MASQUERADA: No.
Puertos hacia adelante:
Bloques de ICMP:
Reglas ricas:

Entonces, ahora sabes que:

  • el público es la zona predeterminada y la única zona activa.
  • Las interfaces ETH0 y ETH1 están atadas a ella.
  • Admite el tráfico DHCP (asignación de direcciones IP) y SSH (administración remota).

Otras zonas de firewall

Ahora debes familiarizarte con otras zonas.

Para obtener una lista de todas las áreas disponibles, ingrese:

firewall-Cmd - Pet-Zonas

Para obtener los parámetros de una zona específica, agregue la bandera -Zone \u003d comando.

firewall-Cmd --Zone \u003d Home - Lista-Toda
CASA.
Interfaces:
FUENTES:
Servicios: DHCPV6-Cliente IPP-Client MDNS SAMBA-CLIENT SSH
Puertos:
MASQUERADA: No.
Puertos hacia adelante:
Bloques de ICMP:
Reglas ricas:

Para mostrar la definición de todas las áreas disponibles, agregue la opción -list-all-zonas. Para una visualización más conveniente, la salida se puede transferir al buscapersonas:

firewall-CMD - Lista-Todas las zonas | menos

Configuración de zonas de interfaz

Inicialmente, todas las interfaces de red están vinculadas a la zona predeterminada.

Cambio de la zona de interfaz por sesión

Para traducir una interfaz a otra sesión a otra sesión, use la interfaz de -Zone \u003d y -change-interfaz \u003d opciones \u003d.

Por ejemplo, para traducir eth0 a la zona de inicio, debe ingresar:

sudo firewall-cmd --zone \u003d home --change-interfaz \u003d eth0
Éxito.

Nota: Al traducir la interfaz a otra zona, debe tenerse en cuenta que puede afectar el funcionamiento de algunos servicios. Por ejemplo, la zona de inicio es compatible con SSH, por lo que las conexiones este servicio no se restablecerán. Pero algunas zonas suelen todas las conexiones, incluyendo SSH, y luego puede bloquear accidentalmente el acceso a su propio servidor.

Para asegurarse de que la interfaz esté atada a la nueva zona, ingrese:

firewall-CMD - Zonas activas
CASA.
Interfaces: eth0.
Público
Interfaces: eth1

Después de reiniciar el firewall, la interfaz será nuevamente vinculada a la zona predeterminada.

sudo systemctl reinicia firewalld.service
Firewall-CMD - Zonas activas
Público
Interfaces: eth0 eth1

Cambio del área de la interfaz de forma continua

Si no se especifica ninguna otra zona en la configuración de la interfaz, después de reiniciar el firewall, la interfaz será vinculada nuevamente a la zona predeterminada. En los centros, dichas configuraciones se almacenan en el directorio / etc / sysconfig / red-scripts, en los archivos de interfaz IFCFG.

Para determinar la zona de interfaz, abra el archivo de configuración de esta interfaz, por ejemplo:

Agregue una zona variable al final del archivo y especifique la otra zona como un valor, por ejemplo, en casa:

. . .
DNS1 \u003d 2001: 4860: 4860 :: 8844
DNS2 \u003d 2001: 4860: 4860 :: 8888
DNS3 \u003d 8.8.8.8.
Zona \u003d hogar.

Guarde y cierre el archivo.

Para actualizar la configuración, reinicie el servicio de red y el firewall:

sudo systemctl reiniciar la red.service
Sudo systemctl reinicia firewalld.service

Después de reiniciar, la interfaz ETH0 estará atada a la zona de la casa.

firewall-CMD - Zonas activas
CASA.
Interfaces: eth0.
Público
Interfaces: eth1

Configuración de la zona predeterminada

También puede elegir otra zona predeterminada.

Para hacer esto, use la Zona predeterminada del ASETE \u003d. Después de eso, todas las interfaces estarán atadas a otra zona:

sudo firewall-cmd --set-default-zone \u003d home
CASA.
Interfaces: eth0 eth1

Creando reglas para aplicaciones.

Añadiendo un servicio a la zona

La forma más fácil de agregar un servicio o puerto a la zona que usa el firewall. Echa un vistazo a los servicios disponibles:

firewall-cmd -get-Services
RH-SATELLITE-6 Amanda-Client Bacula Bacula-Client DHCP DHCPV6 DHCPV6-Cliente DNS FTP HTPT disponibilidad HTTP HTTPS IPP IPP-Cliente IPP-Cliente IPP-Cliente LDAP LIBVIRT LIBVIRT-TLS MDNS MOUNDS MS-WBT MYSQL NFS NTP OpenVPN PMCD PMPROXY PMWEBAPI PMWEBAPIS POP3S POSTGRESQL PROXY-DHCP RADIUS RPC-BIND SAMBA SAMBA CLIENTE SMTP SSH TELNT TFTP TFTP-Cliente Transmisión-Cliente VNC-Server WBEM-HTTPS

Nota: Se puede encontrar más información sobre cada servicio específico en archivos.xml en el directorio / USR / LIB / Firewalld / Service. Por ejemplo, la información del servicio SSH se almacena en /usr/lib/firewalld/services/ssh.xml y se parece a esto:



Ssh

Para habilitar el soporte de servicio en una zona particular, use la opción -ad-service \u003d. Puede especificar la zona de destino utilizando la opción -zone \u003d. De forma predeterminada, estos cambios funcionarán para una sesión. Para guardar los cambios y usarlos de forma continua, agregue la bandera permanente.

Por ejemplo, para iniciar un servidor web para mantener el tráfico HTTP, primero debe habilitar el soporte para este tráfico en el área pública para una sesión:

sudo firewall-cmd --zone \u003d Public --add-service \u003d http

Si el servicio necesita agregarse a la zona predeterminada, se puede omitir la bandera -Zone \u003d.

Asegúrese de que la operación sea exitosa:

firewall-CMD --Zone \u003d Public - List-Services
Dhcpv6-cliente http ssh

Pruebe el trabajo del servicio y el firewall. Si todo funciona correctamente, puede cambiar el conjunto permanente de reglas y agregarle una regla para admitir este servicio.

sudo firewall-cmd --zone \u003d público -permanent --dd-service \u003d http

Para ver una lista de reglas permanentes, ingrese:

sudo firewall-cmd --zone \u003d Public --Permanent - Lista-Servicios
Dhcpv6-cliente http ssh

Ahora, la zona pública es compatible con HTTP y Puerto 80 de forma continua. Si el servidor web puede atender el tráfico SSL / TLS, también puede agregar el servicio HTTPS (para una sesión o en un conjunto de reglas permanentes):

sudo firewall-cmd --zone \u003d público --dd-service \u003d https
Sudo firewall-cmd --zone \u003d -perment --add-service \u003d https

¿Qué pasa si el servicio requerido no está disponible?

Firewalld Firewall de forma predeterminada incluye muchos de los servicios más comunes. Sin embargo, algunas aplicaciones requieren servicios que no son compatibles con Firewalld. En este caso, puedes hacer de dos maneras.

Método 1: Configuración de puertos

La forma más fácil de abrir un puerto de aplicación en la zona de firewall necesaria es la más fácil. Solo necesita especificar el rango de puerto o puerto y el protocolo.

Por ejemplo, se debe agregar una aplicación que utiliza el protocolo Puerto 5000 y TCP al área pública. Para habilitar el soporte de la aplicación para la sesión inferior, use el parámetro -DD-PORT \u003d y especifique el protocolo TCP o UDP.

sudo firewall-cmd --zone \u003d Public --Add-Port \u003d 5000 / TCP

Asegúrese de que la operación haya pasado correctamente:

firewall-cmd - List-Ports
5000 / TCP.

También puede especificar la gama de puertos en serie de puertos, separando el primer y último puerto del rango por DASH. Por ejemplo, si una aplicación utiliza los puertos UDP 4990-4999 para agregarlos a la zona pública, debe ingresar:

sudo firewall-cmd --zone \u003d Public --DD-PORT \u003d 4990-4999 / UDP

Después de las pruebas, puede agregar estas reglas en la configuración permanente del firewall.

sudo firewall-cmd --zone \u003d -perment --add-puerto \u003d 5000 / tcp
Sudo firewall-cmd --zone \u003d público -permanent --add-puerto \u003d 4990-4999 / UDP
Sudo firewall-cmd --zone \u003d Public --Permanent - List-Ports
Éxito.
Éxito.
4990-4999 / UDP 5000 / TCP

Método 2: Definición de servicio

Agregue puertos a la zona simplemente, pero si tiene muchas de esas aplicaciones, como resultado será difícil rastrear, para el cual se pretende que uno u otro puerto se pretenden. Para evitar tal situación, puede determinar los servicios en lugar de los puertos.

Los servicios son simplemente conjuntos de puertos con un nombre y descripción específicos. Con la ayuda de los servicios, es más fácil controlar la configuración, pero ellos mismos son más difíciles que los puertos.

Primero, debe copiar el script existente en el directorio / USR / LIB / Firewalld / Service en el directorio / etc / firewalld / service (aquí, el firewall está buscando configuraciones no estándar).

Por ejemplo, puede copiar la definición del servicio SSH y usarlo para determinar el servicio de ejemplo condicional. El nombre del script debe coincidir con el nombre del servicio y tener la extensión .xml.

sudo cp /usr/lib/firewalld/services/service.xml /etc/firewalld/services/example.xml

Corregir el archivo copiado.

sudo nano /etc/firewalld/services/example.xml.

El archivo es la definición de ssh:



Ssh
Secure Shell (SSH) es un protocolo para iniciar sesión y ejecutar comandos en máquinas remotas. Proporciona comunicaciones cifradas seguras. Si planea acceder a su máquina RemoteNet a través de SSH a través de una interfaz firewall, habilite esta opción. Necesita instalado el paquete OpenSSH-Server para que esta opción sea útil.

La mayor parte de la definición de servicio es metadatos. Cambie el nombre corto del servicio en las etiquetas. . Este es un nombre de servicio al cliente. También es necesario agregar una descripción del servicio. El único cambio que afectará el servicio del servicio es cambiar el número de puerto y el protocolo.

Volvamos al Servicio de ejemplo; Supongamos que requiere Abrir Puerto TCP 7777 y Puerto UDP 8888. La definición se verá así:



Servicio de ejemplo
Este es solo un servicio de ejemplo. Probablemente no se debe usar en un sistema real.

Guarde y cierre el archivo.

Reinicie el firewall:

sudo firewall-cmd --Reload

Ahora aparecerá el servicio en la lista de servicios disponibles:

firewall-cmd -get-Services
RH-Satellite-6 Amanda-Client Bacula Bacula-Client DHCP DHCPV6 DHCPV6-Cliente DNS Ejemplo FTP HTTP HTTP HTTP HTTP IPP IPP-Cliente IPSEC Kerberos KPASHD LDAP LDAP LIBVIRT LIBVIRT-TLS MDNS MOUNDS MS-WBT MYSQL NFS NTP OpenVPN PMCD PMPROXY PMWEBAPI PMWEBAPIS POP3S POSTGRESQL Proxy-DHCP RADIUS RPC-BIND SAMBA SAMBA-CLIENT SMTP SSH TELN TELN TFTP TFTP-Cliente Transmisión-Cliente VNC-Server WBEM-HTTPS

Creando zonas

Firewall proporciona muchas zonas predefinidas, que, en la mayoría de los casos, lo suficiente para trabajar. Pero en algunas situaciones hay la necesidad de crear una zona personalizada.

Por ejemplo, para un servidor web, puede crear una zona de telaraña publicweb, y para el servicio DNS - Zona privatedns.

Creación de una zona, debe agregarlo a la configuración constante del firewall.

Intenta crear áreas de PublicWeb y PrivateSNS:

sudo firewall-cmd -permanent --new-zone \u003d publicweb
Sudo firewall-cmd -permanent --new-zone \u003d privatedns

Asegúrese de que las zonas existan:

sudo firewall-cmd -permanent --get-zones

En la sesión actual, las nuevas zonas no estarán disponibles:

firewall-Cmd - Pet-Zonas
Bloque de DMZ Drop Inicio Externo Hogar Público Interno Trabajo Trabajo

Para acceder a nuevas zonas, necesita reiniciar el firewall:

sudo firewall-cmd --Reload
Firewall-Cmd - Pet-Zonas
Bloque DMZ Drop Inicio Externo Interno PrivateSNS Público PublicWeb Trabajo de confianza

Ahora puede asignar los servicios y puertos requeridos a las nuevas zonas. Por ejemplo, en la zona de PublicWeb, puede agregar SSH, HTTP y HTTPS.

sudo firewall-cmd --zone \u003d publicweb --add-service \u003d ssh
Sudo firewall-cmd --zone \u003d publicweb --add-service \u003d http
Sudo firewall-cmd --zone \u003d publicweb --add-service \u003d https
Firewall-Cmd --Zone \u003d PublicWeb - Toda
PublicWeb.
Interfaces:
FUENTES:
Servicios: http https ssh
Puertos:
MASQUERADA: No.
Puertos hacia adelante:
Bloques de ICMP:
Reglas ricas:

Puede agregar DNS en la zona privatedns:

sudo firewall-cmd --zone \u003d privatedns --add-service \u003d dns
Firewall-Cmd --Zone \u003d PrivateDns - Lista-Toda
Privatedns.
Interfaces:
FUENTES:
Servicios: DNS.
Puertos:
MASQUERADA: No.
Puertos hacia adelante:
Bloques de ICMP:
Reglas ricas:

Luego puede enlazar las interfaces de red a las nuevas zonas:

sudo firewall-cmd --zone \u003d publicweb --change-interfaz \u003d eth0
Sudo firewall-cmd --zone \u003d privatedns --change-interfaz \u003d eth1

Ahora puedes probar la configuración. Si todo funciona correctamente, puede agregar estas reglas a la configuración constante.

sudo firewall-cmd --zone \u003d publicweb --permanent --add-service \u003d ssh
Sudo firewall-cmd --zone \u003d publicweb --permanent --add-service \u003d http
Sudo firewall-cmd --zone \u003d publicweb --permanent --dd-service \u003d https
Sudo firewall-cmd --zone \u003d privatedns -permanent --add-service \u003d DNS

Después de eso, puede configurar las interfaces de red para conexión automática A la zona correcta.

Por ejemplo, eth0 estará atado a PublicWeb:

sudo nano / etc / sysconfig / red-scripts / ifcfg-eth0
. . .
IPv6_Autoconf \u003d No.
DNS1 \u003d 2001: 4860: 4860 :: 8844
DNS2 \u003d 2001: 4860: 4860 :: 8888
DNS3 \u003d 8.8.8.8.
Zona \u003d PublicWeb.

Y la interfaz eth1 estará vinculada a privatedns:

sudo nano / etc / sysconfig / red-scripts / ifcfg-eth1
. . .
Netmask \u003d 255.255.0.0.
Defruta \u003d "No"
Nm_controlled \u003d "si"
Zona \u003d privatedns.

Reinicie Servicios de red y Firewall:

sudo systemctl reiniciar la red
Sudo systemctl reinicia firewalld

Compruebe las zonas:

firewall-CMD - Zonas activas
Privatedns.
Interfaces: eth1
PublicWeb.
Interfaces: eth0.

Asegúrese de que las necesidades de los siguientes servicios estén trabajando en zonas:

firewall-cmd --Zone \u003d PublicWeb - Servicios
http http ssh.
Firewall-CMD --Zone \u003d privatedns - List-Services
DNS.

Las zonas personalizadas están completamente preparadas para el trabajo. Puedes hacer cualquiera de ellos la zona predeterminada. Por ejemplo:

sudo firewall-cmd --set-default-zone \u003d publicweb

Lanzamiento automático del firewall

Ahora que revisó todas las configuraciones y se aseguró de que todas las reglas funcionen correctamente, puede personalizar el Firewall Autorun.

Para hacer esto, ingrese:

sudo systemctl habilita firewalld

Ahora el firewall se ejecutará junto con el servidor.

Conclusión

Firewalld Firewall es una herramienta muy flexible. Las zonas le permiten cambiar rápidamente la política de firewall.

Ahora, ya sabe cómo funciona Firewalld, familiarizado con los conceptos básicos de Firewall, sepa cómo crear zonas personalizadas y agregar servicios.

Etiquetas:

Hoy le presentaré su visión de la configuración inicial del servidor universal en el sistema operativo popular. Hablaré sobre cómo hacer la configuración básica del servidor CENTOS inmediatamente después de la instalación para usarlo en cualquier calidad a su discreción. Presentado consejo practico Mejore la seguridad y la conveniencia de trabajar con el servidor. El artículo será relevante para las dos últimas versiones de CentOS - 7 y 8.

  1. Enumere la configuración inicial de los centros que realizo en el servidor más fresco.
  2. Mostrar ejemplos de configuraciones que utilizo en una configuración típica.
  3. Da consejos sobre la configuración de los Centos en función de su experiencia laboral.
  4. Cree una lista de programas típicos y utilidades que ayudan a administrar el servidor.

Este artículo es parte del ciclo unificado del artículo sobre el servidor.

Introducción

Después de la liberación de la nueva versión de Centros 8, se hizo difícil en un solo artículo para describir ajuste inicial Ambos servidores, pero no quería compartir un artículo, ya que hay muchos enlaces entrantes de diferentes lugares. Es más conveniente mantener material general en ambos lanzamientos que yo. Al mismo tiempo, las diferencias en dos versiones serán visibles, lo que durante un par de años después de la salida CentOS 8 será relevante tanto y se utilizará la otra versión, dependiendo de la situación.

Centos 7 usa un administrador por lotes yum, y en Centlos 8 - dNF.. Al mismo tiempo, dejó un enlace simbólico con yum en DNF, para que pueda escribir el primer nombre y el segundo. Para la uniformidad, usaré yum por todas partes, y te advierto, solo para entender por qué hago esto. Realmente, los Centos 8 usan DNF, este es otro, más moderno administrador por lotes que le permite trabajar con versiones diferentes mismo software Esto utiliza repositorios separados que aparecieron para CentOS 8.

Centros de configuración inicial.

Personalmente, soy cualquier configuración del sistema, ya sea un centros u otro, después de la instalación, comience con el hecho de que actualizo completamente el sistema. Si la imagen de instalación estaba fresca, o la instalación se realizó a través de la red, lo más probable es que no sean actualizaciones. La mayoría de las veces son, ya que las imágenes de instalación no siempre se actualizan regularmente.

Actualizamos el sistema.

# Yum actualización.

Para facilitar la administración, siempre instalo el comandante de medianoche, o simplemente MC:

# yum install mc

E inmediatamente para ello, enciendo el resaltado de la sintaxis de todos los archivos que no están explícitamente en el archivo USR / Share / MC / SYNTAX / SINTAX Sintaxis para sh y scripts de bash. Esta sintaxis universal es normalmente adecuada para los archivos de configuración que con mayor frecuencia tienen que trabajar en el servidor. Sobrescribir el archivo desconocido.Syntax. Es este patrón que se aplicará a los archivos C.conf i.cf, ya que ninguna sintaxis claramente no está atada a ellos.

# CP /USR/SHARE/MC/SYNTAX/SH.SYNTAX /USR/SHARE/MC/SYNTAX/IKNOWN.SYNTAX

Además, usaremos utilidades de red. Dependiendo del conjunto de los paquetes iniciales que elija al instalar el sistema, tendrá uno u otro conjunto de utilidades de red. Aquí hay una lista de aquellos que están acostumbrados a personalmente, IFCONFIG, NETSTAT, NSLOOKUP y otros. Si la necesitas, tal como yo, entonces propongo instalarlos por separado si aún no lo están. Si no los necesita particularmente y no los usa, puede omitir su instalación. Compruebe que tenemos en el sistema en este momento.

# ifconfig

Si ves la respuesta:

Bash: ifconfig: comando eXTRAVIADO.

Así que la utilidad no está instalada. En lugar de IFCONFIG EN CENTOS AHORA UTILIDAD iP. Esto se aplica no solo al centro. Dicha imagen es casi todas las modernas distribuciones de Linux. Estoy acostumbrado a IFCONFIG durante mucho tiempo, aunque Últimamente Prácticamente no lo usamos. Siempre me gustó que en diferentes distribuciones Linux, todo es aproximadamente el mismo. Uso de IFCONFIG, puede configurar la red no solo en Linux, sino también en FreeBSD. Es cómodo. Y cuando en cada distribución, esta herramienta no es conveniente. Aunque ahora no es muy relevante, ya que no trabajo con FreeBSD, y la utilidad IP está en todas las distribuciones de Linux. Sin embargo, si necesita IFCONFIG, puede instalar el paquete herramientas netas.en el que ella entra:

# Yum install net-tools

Para que tengamos los comandos de nslookup o, por ejemplo, el host debe instalar el paquete bINT-utils.. Si esto no se hace, entonces en el comando:

# nslookup

Habrá una conclusión:

Bash: nslookup: comando no encontrado

Así que instale Bind-utils:

# Yum install enlac-utils

Desactivar SELINUX

Apague SELINUX. Su uso y configurar una conversación por separado. Ahora no voy a hacer esto. Así que nos apagamos:

# MCEDIT / ETC / SYSCONFIG / SELINUX

cambiar el valor

Selinux \u003d deshabilitado.

Para cambiar los cambios, puede reiniciar:

# Reiniciar

Y si desea reiniciar, aplique Apagado SELINUX, luego ejecute el comando:

# Stenforce 0

Constantemente recibo muchas críticas en el tema de SELinux deshabilitar. Sé cómo trabaja, puedo personalizarlo. Realmente no es muy difícil y no es difícil dominar. Esta es mi elección consciente, aunque a veces lo configuré. Mi formato de trabajar con el sistema es tal que SELINUX se necesita más a menudo para mí, por lo que no paso tiempo en ello y en la configuración básica de los centros se apaga. La seguridad del sistema es un trabajo integral, especialmente en el mundo moderno del desarrollo web, donde la regla de microservicio y contenedores. Las herramientas de Selinux Nishey que no siempre son necesarias y no en todas partes. Por lo tanto, en este artículo, él no es un lugar. Quién necesita, incluirá por separado SELINUX y configurar.

Indique los parámetros de red

Continuamos la configuración básica del CentOS después de la instalación. Ahora produciremos si por alguna razón no lo hicieron durante la instalación, o si necesita cambiarlos. En general, la red en los Centos está configurada por Gerente de Redes. y su utilidad de consola nmtui.. Va en el sistema básico de oralovka. Hay una interfaz gráfica simple y comprensible, por lo que no hay nada que contar. Estoy más usado para sintonizar la red a través de archivos de configuración Red-Scripts. En los centros de la 7ª versión, son desde la caja, en la 8ª versión que fueron eliminados. Para usarlos para configurar la red, debe instalar el paquete por separado. red-Scripts..

# Yum install red-scripts

Ahora puedes configurar la red. Para hacer esto, abra el archivo. / etc / sysconfig / red-scripts / ifcfg-eth0

# MCEDIT / etc / sysconfig / red-scripts / ifcfg-eth0

Si lo consigues configuración de red Por DHCP, el conjunto mínimo de configuración en el archivo de configuración será así.

TIPO \u003d "Ethernet" BootProto \u003d "DHCP" Defruta \u003d "Sí" IPv4_Failure_Fatal \u003d "No" nombre \u003d "eth0" dispositivo \u003d "eth0" onboot \u003d "SI"

Para configurar la dirección IP estática, la configuración será la siguiente.

TIPO \u003d "Ethernet" BootProto \u003d "Ninguno" Defruta \u003d "Sí" IPv4_Failure_Fatal \u003d "No" Nombre \u003d "Eth0" Dispositivo \u003d "Eth0" OnBoot \u003d "SÍ" iPADDR \u003d 192.168.167.117 DNS1 \u003d 192.168.117.113 Prefijo \u003d 28 Gateway \u003d 192.168.167.113

En el campo IPADDR, ingrese su dirección, en la máscara de red de prefijos, en la puerta de enlace de la puerta de enlace, Dirección DNS Servidor DNS. Guarde el archivo y reinicie la red para aplicar la configuración:

# Systemctl reiniciar la red

Personaliza el firewall

Añadiendo repositorios

Al configurar CentOS, a menudo necesita un software que no está en el Repex estándar. Para instalacion paquetes adicionales necesario. El más popular es Epel. Solía \u200b\u200bser RPMForge, pero ya unos años cerrado. Sobre él todo olvidado. Conecte el repositorio de Epel. Con él, todo es simple, se añade desde el nabo estándar:

# Yum instale la liberación de Epel

Además, el repositorio REMI es extremadamente útil para los Centros 7, lo que le permite establecer una versión grande de PHP, en contraste con los del repositorio estándar. Permítanme recordarle que esta es la versión de PHP 5.4, que ya no es adecuada y elimina de soporte.

# rpm -uhv http://rpms.remirepo.net/enterprise/Remi-Relelease-7.RPM

Para Centos 8 Remi no es relevante aún, pero creo que es temporal. En principio, estos dos repositorios en centros generalmente agarra en general. Otros están conectados bajo necesidades específicas para instalar varios software.

Configuración de almacenamiento de la historia en Bash_History

Mocario para configurar el sistema CentOS en el servidor. Útil hará algunos cambios en el mecanismo estándar para salvar la historia de los equipos. A menudo ayuda cuando necesitas recordar uno de los comandos ingresados \u200b\u200banteriormente. Los ajustes estándar tienen algunas restricciones que se sienten incómodas. Aquí están su lista:

  1. De forma predeterminada, solo se guardan los últimos 1000 comandos. Si hay más de ellos, entonces los nuevos serán eliminados y reemplazados por otros nuevos.
  2. Las fechas de ejecución de los comandos no se especifican, solo su lista en orden de ejecución.
  3. El archivo con la lista de mensajes se actualiza después de que se complete la sesión. Con sesiones paralelas, se puede perder parte de los comandos.
  4. Absolutamente todos los comandos se guardan, aunque no hay sentido en el almacenamiento.

La lista de los últimos comandos ejecutados se almacena en el directorio de inicio en el archivo en el archivo .bash_history. (al principio del punto). Se puede abrir por cualquier editor y ver. Para una salida más conveniente de la lista, puede ingresar el comando en la consola:

# Historia.

y vea la lista numerada. Encuentre rápidamente un comando específico, puede usar el filtrado solo las filas deseadas, por ejemplo, como esta:

# Historia | Grep yum.

Así que veremos todas las opciones para ejecutar el comando Yum, que se almacenan en la historia. Corregiremos las desventajas enumeradas de la configuración de almacenamiento de comandos estándar en los centros. Para hacer esto, edita el archivo. .bashrc.que se encuentra en el mismo directorio que un archivo con historial. Agregue las siguientes líneas:

Exportar histsize \u003d 10000 Export HisttimeFormat \u003d "% H% D% H:% M:% S" PR Previst_Command \u003d "History" Exportar histignore \u003d "LS: LL: Historia: W: htop"

El primer parámetro aumenta el tamaño del archivo a 10,000 líneas. Puedes hacer más, aunque generalmente toma tal tamaño. El segundo parámetro indica que necesita guardar la fecha y la hora del comando. La tercera línea obliga inmediatamente después de ejecutar el comando para mantenerlo en la historia. En la última línea, creamos una lista de excepciones para aquellos comandos cuyo registro no se requiere en la historia. Traje un ejemplo de la lista más sencilla. Puedes agregarlo a tu discreción.

Para aplicar los cambios, es necesario alinearse y conectarse nuevamente o ejecutar el comando:

# Fuente ~ / .bashrc

Al configurar el almacenamiento de la historia de los comandos, todo. En el archivo .bashrc, puede configurar muchas cosas interesantes. En un momento, me gustaba experimentar, pero entonces todo lo arrojó, porque no tiene sentido. Trabajar con los servidores de los clientes, más a menudo veo la bash predeterminada, por lo que es mejor acostumbrarse y trabajar en él. Y la configuración y las decoraciones individuales son el lote de computadoras y servidores personales. No hay trabajadores. Mientras más no configuro nada de acuerdo con el estándar en el servidor de Cientos a este respecto.

Actualización automática del sistema

Para mantener la seguridad del servidor en el nivel adecuado, es necesario al menos para actualizarlo de manera oportuna, tanto el kernel con los servicios públicos del sistema y otros paquetes. Puede hacerlo manualmente, pero para un trabajo más eficiente, es mejor configurar la ejecución automática. No es necesario instalar actualizaciones automáticamente, pero al menos para verificar su apariencia. Normalmente me adherí a tal estrategia.

Yum-cron

La utilidad ayudará a verificar automáticamente las actualizaciones en Centlos 7 yum-Cron.. Se realiza tradicionalmente a través de Yum del repositorio estándar.

# Yum install yum-cron

Después de instalar Yum-Cron se crea tarea automática En la ejecución de la utilidad en /etc/cron.daily. y /etc/cron.huy. De forma predeterminada, la utilidad descarga las actualizaciones encontradas, pero no las aplican. En su lugar, se envía una notificación de actualizaciones al administrador a la raíz del buzón local. Además, ya estás en modo manual Venga y decida si instalar actualizaciones o no en un momento conveniente para usted. Veo que este modo de trabajo más conveniente, por lo que no cambio estas configuraciones.

Puede configurar Yum-Cron a través de los archivos de configuración que se encuentran en /etc/yum/yum-cron.conf. y yum-cron-hoursly.conf. No son malos comentados, por lo que en las explicaciones detalladas no necesitan. Llamo la atención sobre la sección. donde puede especificar los parámetros de envío de mensajes. De forma predeterminada, enviando correo a través del host local. Puede cambiar los parámetros y enviar mensajes a través de un servidor de correo de terceros. Pero, en cambio, personalmente prefiero a nivel mundial para todo el servidor para ajustar el reenvío de correo local raíz a un buzón externo a través de la autorización en otro servidor SMTP.

DNF-Automático.

Como dije anteriormente, otro gerente de lotes se utiliza en Centlos 8 - DNF. Configuración de la actualización del paquete se realiza a través de la utilidad. dNF-Automático.. Ponlo y configúralo.

# Yum instale DNF-Automatic

La gestión de la puesta en marcha a la programación ya no es Cron, pero el sistema es su programador incorporado. Mira los temporizadores de lanzamiento automáticos pueden ser equipos:

# SystemCl List-Timers * DNF- *

Si no hay una sola tarea, entonces puede agregar un temporizador manualmente:

# SystemCTL Habilitar --Now DNF-Automatic.Timer

El temporizador predeterminado está configurado para iniciar la hora automática DNF después de que el servidor esté cargado y la repetición diaria. La configuración del temporizador vive aquí. /etc/systemd/system/multi-user.target.wants/dnf-automatic.timer..

Configuración para la vida automática DNF en /etc/dnf/automatic.conf.. De forma predeterminada, solo descarga actualizaciones, pero no las aplican. La configuración está bien comentada, por lo que puede configurarlo como desee. No se requieren explicaciones separadas. Configure la actualización de los paquetes del sistema a su discreción. Como dije, automáticamente los balanceo. La instalación siempre mantente bajo control con control manual.

Apague las publicaciones de inundación en / var / log / mensajes

Continuando con el escenario de los centros, corrige un pequeño inconveniente. En la instalación predeterminada del 7º Sistema de Versiones, todo su registro de su sistema / Var / log / mensajes Después de algún tiempo, el servidor se obstruirá con los siguientes registros.

16 de octubre 14:01:01 XS-Files Systemd: Se creó una rebanada de usuario-0.SLICE. 16 de octubre 14:01:01 XS-Files Systemd: Arranque a Usuario-0.SLICE. 16 de octubre 14:01:01 XS-Files Systemd: Se inició la sesión 14440 de la raíz del usuario. 16 de octubre 14:01:01 XS-Files Systemd: Sesión de inicio 14440 de la raíz del usuario. 16 de octubre 14:01:01 XS-Files Systemd: eliminó la rebanada de usuario-0.SLICE. 16 de octubre 14:01:01 XS-Files Systemd: Detener el usuario-0.SLICE. 16 de octubre 15:01:01 XS-Files Systemd: Se creó una rebanada de usuario-0.SLICE. 16 de octubre 15:01:01 XS-Files Systemd: Iniciar usuario-0.SLICE. 16 de octubre 15:01:01 XS-Files Systemd: Sesión iniciada 14441 de la raíz del usuario. 16 de octubre 15:01:01 XS-Files Systemd: Sesión de inicio 14441 de la raíz del usuario. 16 de octubre 15:01:01 XS-Files Systemd: Sesión iniciada 14442 de la raíz del usuario. 16 de octubre 15:01:01 XS-Files Systemd: Sesión de inicio 14442 de la raíz del usuario. 16 de octubre 15:01:01 XS-Files Systemd: eliminó la rebanada de usuario-0.SLICE. 16 de octubre 15:01:01 XS-Files Systemd: deteniendo el usuario de usuario-0. 16 de octubre 16:01:01 XS-Files Systemd: Se creó una rebanada de usuario-0.SLICE. 16 de octubre 16:01:01 XS-Files Systemd: Iniciar usuario-0.SLICE. 16 de octubre 16:01:01 XS-Files Systemd: Sesión iniciada 14443 de la raíz del usuario. 16 de octubre 16:01:01 XS-Files Systemd: Sesión de inicio 14443 de la raíz del usuario. 16 de octubre 16:01:01 XS-Files Systemd: eliminó la rebanada-0.

En Centlos 8 no los noté, por lo que no es necesario hacer nada allí. No hay uso práctico de la comunicación, por lo que los rechazaremos. Para hacer esto, cree una regla separada para RSYSLOG, donde enumeramos todas las plantillas de mensajes que cortarán. Publicar esta regla en un archivo separado /etc/rsyslog.d/ignore-systemd-session-slice.conf..

# CD /TC/RSYSLOG.D && MCEDIT IGNORE-SYSTEMD-SLIECE.CONF IF $ PROGRAGNAME \u003d\u003d "Systemd" y ($ MSG contiene "Sesión de inicio" o $ MSG contiene "Sesión iniciada" o $ MSG contiene "Slice creado" O $ MSG contiene "Inicio de usuario-" o $ MSG contiene "Arranque de la rodaja de usuario de" o $ MSG contiene "Sesión eliminada" o $ MSG contiene "Rebanada de usuario de corte eliminada de" o $ MSG contiene "Terminación de la rodaja de usuario"), entonces Detener.

Guarde el archivo y reinicie RSYSLOG para aplicar la configuración.

# Systemctl reiniciar rsyslog

Debe entenderse que en este caso apagamos la inundación en el archivo de registro solo en el servidor local. Si almacena registros, entonces esta regla Será necesario ajustarlo exactamente en él.

Instalación de IFTOP, STOP, HTOP, LSOF en CentOS

Y finalmente, al final de la configuración, agregue varias utilidades útiles que puedan ser útiles durante la operación del servidor.

shows IFTOP En tiempo real Cargando la interfaz de red, puede comenzar con varias claves, no se detendré en este detalle, hay información sobre este tema en Internet. Poner:

# Yum install iftop

Y dos tareas interesantes del despachador, yo uso más a menudo HTOP, pero a veces es útil. Ponemos ambos, mirándonos, compartirá lo que le gusta más, adecuado:

# Yum install htop # yum install enop

Para mostrar información sobre qué archivos son utilizados por los u otros procesos, le aconsejo que ponga la utilidad lsof. Es más probable que sea útil antes o más tarde cuando diagnostica la operación del servidor.

# Yum install wget bzip2 traceroute gdisk

Tengo todo en esto. Configuración básica Se completa los Centos, puede comenzar a instalar y configurar el funcionario principal.

Configuración del correo del sistema

Finalmente configurar servidores CENTOS Hagamos que el correo dirigido a la raíción local se envíe a través de un servidor de correo externo al buzón seleccionado. Si esto no se hace, entonces se doblará localmente en el archivo / Var / carrete / correo / raíz. Y puede haber información importante y útil. Configúrelo para enviar a un cuadro Administrador del sistema.

Le dije detalle sobre esto en un artículo separado -. Aquí solo solo los comandos y la configuración rápida. Establecemos los paquetes necesarios:

# Yum install mailx cyrus-sasl cyrus-sasl-lib cyrus-sasl-plana postfix

Dibujamos sobre tal configuración para Postfix.

Gato /etc/postfix/main.cf ## Configuración predeterminada Comenzar ######################_directory \u003d / var / spool / postfix command_directory \u003d / usr / sbin daemon_directory \u003d / usr / libexec / postfix data_directory \u003d / var / lib / postfix mail_ewner \u003d postfix inet_interfaces \u003d localhost inet_protocols \u003d allnown_local_recipient_rejunt_code \u003d 550 alias_maps \u003d hash: / etc / aliases alias_database \u003d hash: / etc / aliases debug_peer_level \u003d 2 debugger_command \u003d ruta \u003d / bin: / bin: / bin: / usr / bin ddd $ daemon_directory / $ process_name $ process_id & sleep 5 sendmail_path \u003d /usr/sbin/sendmail.postfix newaliases_path \u003d / / usr / bin / newaliases.postfix mailq_path \u003d / usr / bin / mailq.postfix setgid_group \u003d PostDrop HTML_DIRECTORY \u003d NO MANPAGE_DIRTORY \u003d / USR / COMPARTIDO / MAN SAMPO_DIRTORY \u003d / MUJER MUESTRA / DOC / POSTFIX-2.10.1 / MUESTRAS README_DIRECTORY \u003d / USR / COMPARTIDO / DOC / POSTFIX-2.10.1 / Readme_Files-2.10.1 ## Config por defecto FIN ###################### # Nombre del servidor, que muestra el nombre de host myhostname \u003d centos-test command. Xs.Local # aquí n Debe dejar solo un dominio sobre la lógica, pero en este caso es mejor dejar el nombre completo del servidor para que en el campo del remitente apareciera el nombre completo del servidor, es más conveniente desmontar los mensajes de servicio Mydomain \u003d centos-test.xs.xs.local mydestination \u003d $ MyHostName Myorigin \u003d $ MyDomain # Dirección del servidor que enviará el correo releayhost \u003d mailsrv.myrv.mymil.ru:25 smtp_use_tls \u003d sí smtp_sasl_auth_enable \u003d sí smtp_sassasl_password_maps \u003d hash: / etc / postfix / sasl_security_options / sasl_security_option_sasl_security_ops \u003d noanymous smtp_tls_security_level \u003d mayo

Cree un archivo con información sobre el nombre de usuario y la contraseña para la autorización.

# MCEDIIT / etc / postfix / sasl_passwd mailsrv.mymail.ru:25 [Correo electrónico protegido]: Contraseña.

Crea un archivo DB.

# Postmap / etc / postfix / sasl_passwd

Ahora puedes reiniciar Postfix y verificar el trabajo.

# Systemctl reiniciar postfix

Al alias estándar para la raíz en / etc / aliases, Agregue una dirección externa donde se duplique el correo dirigido a la raíz. Para hacer esto, edite el archivo especificado cambiando la última cadena.

#Root: Marc.

Raíz: raíz, [Correo electrónico protegido]

Actualizamos la base de datos de certificados:

# Newaliases

Enviaremos una carta a través de la consola LAN:

# Df -h | Correo -s "uso de disco" raíz

La carta debe ir a la caja al aire libre. Si usa un cuadro de Yandex, lo más probable es que obtenga un error en el registro del servidor de correo y la letra no será enviada.

Relé \u003d smtp.yandex.ru: 25, retardo \u003d 0.25, retrasos \u003d 0/0 / 0.24 / 0.01, DSN \u003d 5.7.1, estado \u003d rebotado (host smtp.yandex.ru dijo: 553 5.7.1 Dirección del remitente rechazado: No es propiedad de autenticación. (En respuesta a correo desde el comando)))

Este error significa que no tiene la misma caja que un remitente que utiliza para la autorización. Cómo solucionarlo, le digo en un artículo separado. Con otros sistemas postales donde no hay tal cheque, todo debería estar bien y, por lo tanto.

En esto, se completa la configuración del correo local. Ahora, todas las letras dirigidas a la raíz local, por ejemplo, los informes de CRON se duplicarán a un buzón externo, y con el envío de un servidor de correo completo. Por lo tanto, las cartas se entregarán finamente, sin caer en el spam (aunque no es necesario, también hay filtros heurísticos).

Conclusión

Realizamos algunos pasos primarios Al configurar el servidor CENTOS, que generalmente hago al preparar el servidor inmediatamente después de la instalación. No pretendo la verdad absoluta, tal vez extraño o no tengo razón. Estaré encantado de comentarios y comentarios razonables y significativos con sugerencias.

..
  • Comprender las características del despliegue, la configuración y el mantenimiento de redes construidas sobre la base de Linux.
  • La capacidad de resolver rápidamente problemas emergentes y garantizar una operación estable e ininterrumpida del sistema.
  • Compruebe usted mismo en la prueba de introducción y vea más del programa de software.

    Pero el equipo de IPTables es complejo, y muchos usuarios son difíciles de recordar todas las opciones y casos en los que deben usarse. Por lo tanto, los desarrolladores distributivos crean sus propias superestructuras sobre IPTables que ayudan a simplificar el control del firewall. Centlos El complemento para controlar iptables se llama firewalld.

    Firewalld tiene varias diferencias importantes en comparación con IPTables. Aquí, el control de acceso a la red se realiza a nivel de zonas y servicios, y no las cadenas y las reglas. Y las reglas se actualizan dinámicamente sin interrumpir las sesiones en ejecución. Este artículo considerará la configuración de Firewall CentOS 7 en el ejemplo de Firewalld.

    Como dije anteriormente, Firewalld no trabaja con cadenas de reglas, sino con zonas. Se puede asignar una cierta zona a cada interfaz de red. La zona es un conjunto de reglas, restricciones y permisos que se aplican a esta interfaz de red. Para una interfaz, solo se puede seleccionar una zona. Los desarrolladores crearon varias zonas preestablecidas:

    • soltar. - Bloquee todos los paquetes entrantes, permiten solo salientes.
    • cuadra - A diferencia de la versión anterior, el remitente del paquete se enviará para bloquear su paquete;
    • público - Los soportes son compatibles solo para SSH y DHCLIENT;
    • externo - Admite NAT para ocultar la red interna;
    • interno - Se permiten servicios SSH, SAMBA, MDN y DHCP;
    • dMZ. - Se utiliza para servidores aislados, que no tienen acceso a la red. Solo se permite la conexión SSH;
    • trabaja - Servicios SSH y DHCP permitidos;
    • cASA. - similar a la interna;
    • confiado. - Todo está permitido.

    Por lo tanto, para permitir o prohibir cualquier servicio, puede agregarlo o eliminarlo de la zona actual o cambiar la zona de la interfaz a la que está permitida. Puede realizar una analogía con las políticas de acciones predeterminadas para paquetes en IPTables. La zona de confianza tiene una política de aceptación y permite todas las conexiones, el bloque del bloque tiene una política de niega que prohíbe todas las conexiones, y todas las demás zonas pueden considerarse los herederos de la zona de bloques, además de que ya están predeterminados por las reglas para resolver Conexiones de red para algunos servicios.

    Además, Firewalld tiene dos tipos de configuración:

    • tiempo de ejecución. - válido solo antes de reiniciar, todos los cambios en los que de lo contrario no se especifican se aplican a esta configuración;
    • permanente. - Configuraciones permanentes que funcionarán y después de reiniciar.

    Ahora sabes todo lo que necesitas, así que vamos a pasar a la utilidad Firewall-CMD.

    Sintaxis y opciones Firewall-CMD

    Puede controlar la configuración de Firewalld como usando la utilidad de la consola Firewall-CMD y en interfaz gráfica. Los centos se utilizan con mayor frecuencia en los servidores, por lo que tiene que trabajar en la terminal. Veamos la utilidad de sintaxis:

    opciones de firewall-cmd

    Para gestionar las zonas, se utiliza esta sintaxis:

    firewall-CMD - Configuración --Zone \u003d Zona de opción

    Como configuración, debe especificar la opción -permanente para guardar los cambios después de reiniciar o especificar nada, entonces los cambios serán válidos solo antes de reiniciar. Como zona, use el nombre de la zona deseada. Veamos las utilidades de las opciones:

    • --Expresar - Retirar el estado del firewall;
    • --Recargar. - Actualizar las reglas de la configuración constante;
    • --Comprar-recargar. - Reglas de reinicio duro con una ruptura de todas las conexiones;
    • --Runtime-a-Permanente - Transfiera los ajustes de configuración de tiempo de ejecución a una configuración constante;
    • --permanente. - Use una configuración constante;
    • - Zona predeterminada - Mostrar la zona predeterminada;
    • - Predeterminado de la Zona predeterminada - Establecer la zona predeterminada;
    • - zonas activas - Mostrar zonas activas;
    • - zonas - Mostrar todas las áreas disponibles;
    • - Post-Services. - retirar los servicios predefinidos;
    • - list-all-zonas - Retirar la configuración de todas las zonas;
    • - Nueva Zona - crear una nueva zona;
    • - Delete-Zone - Retire la zona;
    • --Listar todo. - Salir todo lo que se agrega, de la zona seleccionada;
    • - List-Services. - Retirar todos los servicios agregados a la zona;
    • --D-servicio. - Añadir servicio a la zona;
    • --Remate-Service. - Eliminar el servicio de la zona;
    • - List-Puertos. - Pantalla de puertos agregados a la zona;
    • --Add-Port. - Agregar puerto a la zona;
    • --Remove-Port. - Retire el puerto de la zona;
    • --Puerto de consulta - Mostrar si el puerto se agrega a la zona;
    • - Lista-Protocolos - Retirar los protocolos agregados a la zona;
    • --Add-protocolo - Agregar protocolo a la zona;
    • - Protocolo - Retire el protocolo de la zona;
    • - Lista-Source-Ports - Retire los puertos de origen agregados a la zona;
    • --Add-Port-Port - Agregar una fuente de puerto a la zona;
    • --Remove-Source-Port - Retire la fuente del puerto de la zona;
    • - List-ICMP-Blocks - Mostrar bloqueos de ICMP;
    • --Add-ICMP-BLOQUE - Añadir bloqueo de ICMP;
    • --Add-ICMP-BLOQUE - Retire el bloqueo de ICMP;
    • --Add-Port - Añadir un puerto para redirigir a NAT;
    • --Remove-Forward-Port - Retire el puerto para redirigir a NAT;
    • --Add-Mascarada. - Incluir NAT;
    • --ReMove-Mascarada. - Eliminar NAT.

    Esta no es toda la utilidad de las opciones, pero para este artículo seremos suficientes para nosotros.

    Configure el firewall en CentOS 7

    1. Estado del firewall

    En primer lugar, es necesario ver el estado del firewall. Para hacer esto, sigue:

    sudo SystemCTL Estado Firewalld

    Si el servicio Firewalld está deshabilitado, entonces es necesario incluirlo:

    sudo systemctl start firewalld
    Sudo systemctl habilita firewalld

    Ahora necesitas ver si Firewalld se ejecuta, usando el comando Firewall-CMD:

    sudo firewall-cmd - estado

    Si el programa se está ejecutando y todo está bien, recibirá un mensaje "Ejecutando".

    2. Gestión de zona

    Como ya entendió, las zonas son la herramienta principal para administrar las conexiones de red. Para ver el área predeterminada, siga:

    sudo firewall-cmd - pet-petting-zone

    En mi caso, esta es una zona pública. Puede cambiar la zona actual utilizando la opción - configure la zona predeterminada:

    sudo firewall-cmd --set-default-zone \u003d público

    Para ver qué zonas se utilizan para todas las interfaces de red, realice:

    sudo firewall-cmd --get-activo-zonas

    La lista contendrá zonas e interfaces para las cuales están asignados. Dicho comando puede verse una configuración para una zona específica. Por ejemplo, para la zona pública:

    3. Configuración de servicios.

    Puedes ver todos los servicios predefinidos con un equipo:

    sudo firewall-cmd --get-services

    El comando mostrará todos los servicios disponibles, puede agregar cualquiera de ellos a la zona para permitirlo. Por ejemplo, habilitar la conexión a http:

    sudo firewall-cmd --zone \u003d público --add-service \u003d http -permanent

    Y para eliminar este servicio, realizar:

    sudo firewall-cmd --zone \u003d Public --Remove-Service \u003d http -permanent

    En ambos casos, usamos la opción -permanente para que la configuración se guarde después de reiniciar. Después de los cambios, necesita actualizar las reglas:

    sudo firewall-cmd --Reload

    Luego, si mira la configuración de la zona, el servicio agregado aparecerá allí:

    sudo firewall-cmd --zone \u003d público - lista

    4. Cómo abrir el puerto en Firewalld

    Si no hay servicio para el programa que necesita, puede abrirlo manualmente. Para hacer esto, simplemente agregue el puerto deseado a la zona. Por ejemplo Puerto 8083:

    sudo firewall-cmd --zone \u003d Public --Add-Port \u003d 8083 / TCP --Permanal

    Para eliminar este puerto de la zona, realice:

    sudo firewall-cmd --zone \u003d Public --Remove-Port \u003d 8083 / TCP --Permanal

    Similar a los servicios para abrir el puerto en centros de firewall. 7 Debemos reiniciar el firewall.

    sudo firewall-cmd --Reload

    5. Puertos de firewalld

    Los puertos de los puertos en Firewalld se configuran mucho más fáciles que en IPTables. Si necesita, por ejemplo, redirige el tráfico desde el puerto 2223 al puerto 22, es suficiente para agregar redirección a la zona:

    sudo firewall-cmd --zone \u003d Public --DD-Forward-Port \u003d Puerto \u003d 2223: proto \u003d tcp: toport \u003d 22

    Aquí la redirección se realiza solo en la máquina actual. Si desea configurar la red NAT y realice el puerto en otra máquina, debe permitir primero habilitar el soporte de Masquerade:

    sudo firewall-cmd --zone \u003d público --dd-masquerade

    A continuación, puede agregar puerto:

    sudo firewall-cmd --zone \u003d PUBLIX - ADELLIX-PORT-PORT \u003d PORT \u003d 2223: PROTO \u003d TCP: TOPORT \u003d 22: TOADDR \u003d 192.168.56.4

    6. Reglas extendidas

    Si la funcionalidad de las zonas no es suficiente para usted, puede usar reglas extendidas. La sintainta general de reglas extendidas es:

    familia de reglas \u003d "Familia" Valor de origen Valor de destino de la acción de auditoría de registro

    Aquí está el valor de los parámetros básicos:

    • Como Protocolos familiares Puede especificar IPv4 o IPv6 o no especificar nada, entonces la regla se aplicará a ambos protocolos;
    • fuente y destino - Este es el remitente y el destinatario del paquete. La dirección IP (dirección), servicio (nombre de servicio), puerto, protocolo (protocolo), se puede utilizar como estos parámetros;
    • tronco. - Le permite ingresar el paso de los paquetes, por ejemplo en syslog. En esta configuración, puede especificar la línea de prefijo del registro y el nivel de los detalles de registro;
    • auditoría. - esto es manera alternativa Iniciar sesión cuando los mensajes se envíen al servicio de AuditD.
    • actuar - Esta es una acción que debe ejecutarse con el paquete coincidido. Disponible: aceptar, soltar, rechazar, marcar.

    Veamos algunos ejemplos. Tenemos que bloquear el acceso al servidor para el usuario con IP 135.152.53.5:

    sudo firewall-cmd --zone \u003d Public --DDD-Rich-Rich-Rich-Richy Family \u003d "IPv4" Dirección de origen \u003d 135.152.53.5 Rechazar "

    O necesitamos prohibir que el mismo usuario solo acceda al puerto 22:

    sudo firewall-cmd --zone \u003d Public --DDd-Rich-Rich-Rich-regla "Familia de reglas \u003d" IPv4 "Dirección de origen \u003d 135.152.53.5 Port Port \u003d 22 Protocol \u003d TCP Rechazar"

    Vea todas las reglas extendidas del equipo:

    sudo Firewall-CMD - Lista Rich-Rich-Reglas

    conclusiones

    En este artículo nos desmontamos cómo se hace. estableciendo firewall En los centros 7 y qué tareas puede realizar con ella. El programa es mucho más fácil de usar que IPTables, pero en mi opinión, el complemento de Faervola de Ubuntu es aún más fácil de usar.



    ¿Te gustó el artículo? Compártelo