Reparar inconsistencia en sistema de paquetes apt, yum y rollback de apt upgrade en Ubuntu/Debian
15 de octubre de 2020
Ola Hallengren, gurú máximo de SQL Server
18 de noviembre de 2020
Reparar inconsistencia en sistema de paquetes apt, yum y rollback de apt upgrade en Ubuntu/Debian
15 de octubre de 2020
Ola Hallengren, gurú máximo de SQL Server
18 de noviembre de 2020

CONFIGURAR UNATTENTED UPGRADES

apt-get install unattended-upgrades
dpkg-reconfigure --priority=low unattended-upgrades
apt-get install unattended-upgrades apt-listchanges

– Instalar herramienta fail2ban.

– Instalar antivirus clamav si es necesario.

– Instalar herramienta de auditoria Lynis.

– Instalar herramienta de auditoria auditd.

– Instalar rkhunter si es necesario para malware y rootkits.

– Activar cortafuegos UFW


MONITORIZAR PUERTOS

All UDP/TCP ports — “netstat -atu” / ss -tuln

All listening ports— “netstat -l”

Information for all ports— “netstat -s”

Show hidden ports — “netstat -antp”


SECURIZAR KERNEL

sysctl fs.suid_dumpable=0

net.ipv4.conf.default.rp_filter =1

net.ipv4.conf.all.rp_filter =1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_syn_retries=2

net.ipv4.tcp_synack_retries=2

net.ipv4.tcp_max_syn_backlog=4096

net.ipv4.conf.all.proxy_arp=0

net.ipv4.conf.all.arp_ignore=1

net.ipv4.conf.all.arp_announce=2

sysctl net.ipv4.tcp_rfc1337=1

net.ipv4.conf.all.accept_redirects =0

net.ipv6.conf.all.accept_redirects = 0

fs.protected_hardlinks =0

fs.protected_symlinks =0

net.ipv6.conf.all.disable_ipv6 =1

net.ipv6.conf.default.disable_ipv6 =1

net.ipv6.conf.lo.disable_ipv6 =1


Aplicamos cambios sin reiniciar:

sysctl --system

Otras opciones para sysctl y limits.conf

First, Restrict Core Dumps by:

Add -> hard core 0 to the “/etc/security/limits.conf” file:

Add -> fs.suid_dumpable = 0 to the “/etc/sysctl.conf” file

Configure Exec Shield by:

Add -> kernel.exec-shield = 1 to the “/etc/sysctl.conf” file

Enable randomized Virtual Memory Region Placement by:

Add -> kernel.randomize_va_space = 2 to “/etc/sysctl.conf” file


ACCESO SSH

Change the default port number 22 to something else e.g. 2002.

Make sure that root cannot login remotely through SSH:

/etc/ssh/sshd_config -> PermitRootLogin no

Here are some additional options that you need to make sure exist in the “sshd_config” file:

Protocol2IgnoreRhosts to yes

HostbasedAuthentication no

PermitEmptyPasswords no

X11Forwarding no

MaxAuthTries 5

Ciphers aes128-ctr, aes192-ctr, aes256-ctr

ClientAliveInterval 900

ClientAliveCountMax 0

UsePAM yes

#chown root: root /etc/ssh/sshd_config

#chmod 600 /etc/ssh/sshd_config


AUTENTICACIÓN DOBLE FACTOR A2F

Instalar Google Authenticator PAM y ponerlo en marcha:

apt-get install libpam-google-authenticator google-authenticator

Cuando nos pregunte si las claves de verificación estarán basadas en el tiempo contestamos afirmativamente con una Y.

Ahora nos muestra un código QR para ser reconocido con Google Authenticator desde tu smartphone, otra opción es introducir la clave secreta directamente desde la app (es la que en el PC nos aparecía como “Your new secret is:”).

Y nos dará una serie de códigos por si no llevamos el smartphone encima y que sería bueno tenerlos presente.

Y seguimos contestado con y o n según nuestras preferencias.

Ahora abrimos (con nano, gedit, o tu editor de texto favorito) el fichero de configuración con:

sudo gedit /etc/pam.d/lightdm

Y añadimos la línea:

auth required pam_google_authenticator.so nullok

Guardamos y la próxima ver que inicies sesión nos pedirá la clave de verificación que nos generará nuestro móvil.

Si un día quieres quitar la verificación en dos pasos, solo tienes que borrar la línea “auth required pam_google_authenticator.so nullok” del fichero /etc/pam.d/lightdmVerify

No Accounts Have Empty Passwords? Type the following command

# awk -F: '($2 == "\") {print}' /etc/shadow

Lock all empty password accounts:

# passwd -l accountNameNo Non-Root Accounts Have UID Set To 0

Only root account have UID 0 with full permissions to access the system. Type the following command to display all accounts with UID set to 0:

# awk -F: '($3 == "0") {print}' /etc/passwd

You should only see one line as follows :

root:x:0:0:root:/root:/bin/bash

TURN OFF SERVICE AT BOOT TIME

# systemctl disable service

# systemctl START/STOP/RESTART httpd.service


ESTADO DE LOS SERVICIOS

# systemctl status service
# systemctl status httpd.service

VER SERVICIOS ACTIVOS

chkconfig --list | grep '3:on'

PARAR SERVICIOS

# service serviceName stop
# chkconfig serviceName off

TUTORIAL UFW

https://www.digitalocean.com/community/tutorials/como-configurar-un-firewall-con-ufw-en-ubuntu-18-04-es


APLICACIONES

https://cisofy.com/lynis/

https://www.fail2ban.org/wiki/index.php

https://www.clamav.net/

http://rkhunter.sourceforge.net/LMD+Clamav

https://www.tecmint.com/install-linux-malware-detect-lmd-in-rhel-centos-and-fedora

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Guía de hardening Linux
Este sitio web utiliza cookies para mejorar su experiencia. Al utilizar este sitio web, usted acepta nuestra Política de privacidad.
Leer más