Hardening Debian Squeeze & Wheezy

Posted by Unknown | Posted on 15:15

0

Saludos a todos, tiempo sin escribir. Por aquí tengo una pequeña guía de ayuda para prevenir un poco la intrusión a nuestro servidor, un pequeño hardening para debian que sirve para squeeze y para wheezy. Agunas cosas las consegui en la web, con la ayuda de otros blog y algunas notas que tenia por alli. Claramente lo primero que debemos hacer es tener nuestro servidor montado e instalado.


Luego de una instalación por defecto verificamos que servicios tenemos escuchando:

# netstat -putan |grep LISTEN

Instalamos rcconf para bajar servicios que no utilizamos:

# aptitude install rcconf

# rcconf
Destildar todos los servicios que no vayamos a utilizar, como por ejemplo exim4, portmap, etc...



# reboot

Volvemos a verificar los servicios que escuchan luego de deshabilitar los que no son necesarios:

# netstat -putan|grep LISTEN

Todavia SSH nos queda escuchando en todas las ips y en ipv6, lo cambiamos:

# cp -pf /etc/ssh/sshd_config /etc/ssh/sshd_config.orig

# vim /etc/ssh/sshd_config
Port 2222
ListenAddress 192.168.1.x (colocamos esta opción en caso de solo utilizar ipv4)
Protocol 2
PermitRootLogin no
PermitEmptyPasswords no

# /etc/init.d/ssh restart


Volvemos a verificar que ahora no esta escuchando SSH en ipv6, fue cambiado el puerto y además restringida a una determinada ip:

# netstat -putan |grep LISTEN

Ips desde donde permitimos acceso ssh:

# vim /etc/hosts.allow
sshd : 192.168.1.0/255.255.255.0 : allow

# vim /etc/hosts.deny
sshd : ALL : deny

Eliminamos paquetes innecesarios como exim4, dhcpclient:

# aptitude remove --purge exim4-config exim4-base dhcp-client isc-dhcp-client isc-dhcp-common eject setserial fdutils discover info nano telnet makedev perl gcc libdiscover lighttpd sendmail

Deshabilitar el reinicio con ctrl+alt+del:

Comentamos la linea en el inittab

# vim /etc/inittab
#ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

# telinit q

Eliminamos la linea de la disquetera del fstab:

# vim /etc/fstab
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

Y si no usamos la lectora de cd:

/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0

Deshabilitamos las shells para los usuarios que no lo necesitan:

# vipw

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/false
bin:x:2:2:bin:/bin:/bin/false
sys:x:3:3:sys:/dev:/bin/false
games:x:5:60:games:/usr/games:/bin/false
man:x:6:12:man:/var/cache/man:/bin/false
lp:x:7:7:lp:/var/spool/lpd:/bin/false
mail:x:8:8:mail:/var/mail:/bin/false
news:x:9:9:news:/var/spool/news:/bin/false
uucp:x:10:10:uucp:/var/spool/uucp:/bin/false
proxy:x:13:13:proxy:/bin:/bin/false
www-data:x:33:33:www-data:/var/www:/bin/false
backup:x:34:34:backup:/var/backups:/bin/false
list:x:38:38:Mailing List Manager:/var/list:/bin/false
irc:x:39:39:ircd:/var/run/ircd:/bin/false
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/false
nobody:x:65534:65534:nobody:/nonexistent:/bin/false
libuuid:x:100:101::/var/lib/libuuid:/bin/false
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin


Eliminar bits suid y guid:

# find / -path /proc -prune -o -type f -perm +6000 -ls
1646604 72 -rwsr-xr-x 1 root root 68316 Jan 25 16:19 /bin/mount
1646635 32 -rwsr-xr-x 1 root root 31360 Oct 14 2010 /bin/ping
1646602 48 -rwsr-xr-x 1 root root 47304 Jan 25 16:19 /bin/umount
1646686 32 -rwsr-xr-x 1 root root 29152 Feb 15 17:50 /bin/su
1646636 36 -rwsr-xr-x 1 root root 35252 Oct 14 2010 /bin/ping6
1741025 12 -rwxr-sr-x 1 root mail 10164 Feb 13 2010 /usr/bin/dotlockfile
1738793 36 -rwsr-xr-x 1 root root 34740 Feb 15 17:50 /usr/bin/passwd
1739777 32 -rwxr-sr-x 1 root crontab 30248 Dec 18 20:46 /usr/bin/crontab
1738792 56 -rwsr-xr-x 1 root root 50388 Feb 15 17:50 /usr/bin/gpasswd
1737577 28 -rwsr-xr-x 1 root root 25184 Feb 15 17:50 /usr/bin/newgrp
1739927 40 -rwsr-sr-x 1 daemon daemon 40704 Nov 30 2009 /usr/bin/at
1738796 36 -rwsr-xr-x 1 root root 36372 Feb 15 17:50 /usr/bin/chfn
1741800 80 -rwsr-sr-x 1 root mail 75896 Apr 26 2010 /usr/bin/procmail
1738797 28 -rwsr-xr-x 1 root root 27956 Feb 15 17:50 /usr/bin/chsh
1739731 8 -rwxr-sr-x 1 root tty 7784 Jun 17 2010 /usr/bin/bsd-write
1741801 16 -rwxr-sr-x 1 root mail 13172 Apr 26 2010 /usr/bin/lockfile
1741277 32 -rwxr-sr-x 1 root mlocate 30492 Nov 4 2009 /usr/bin/mlocate
1737470 12 -rwxr-sr-x 1 root tty 9944 Jan 25 16:19 /usr/bin/wall
1741309 8 -rwxr-sr-x 1 root mail 7768 Jan 14 12:08 /usr/bin/mutt_dotlock
1738795 56 -rwxr-sr-x 1 root shadow 49556 Feb 15 17:50 /usr/bin/chage
1738794 16 -rwxr-sr-x 1 root shadow 14840 Feb 15 17:50 /usr/bin/expiry
1741396 100 -rwxr-sr-x 1 root ssh 95564 Dec 26 15:12 /usr/bin/ssh-agent
1777703 196 -rwsr-xr-x 1 root root 194680 Dec 26 15:12 /usr/lib/openssh/ssh-keysign
1737861 12 -rwsr-xr-x 1 root root 9676 Jan 23 21:10 /usr/lib/pt_chown
1433660 28 -rwxr-sr-x 1 root shadow 27900 Oct 19 2010 /sbin/unix_chkpwd
1433707 84 -rwsr-xr-x 1 root root 80600 Aug 26 2010 /sbin/mount.nfs


# chmod ug-s /usr/bin/wall /usr/bin/newgrp /usr/bin/chsh............


Permitir su - solo a los usuarios que pertenezcan al grupo wheel:

# addgroup --system wheel

# usermod -G wheel usuario_para_elevar_a_root

# vim /etc/pam.d/su
Descomentar:
auth required pam_wheel.so

Configurar maximo retries, tiempo máximo de login y Habilitar opción para registrar logins fallidos

Comandos:
# vim /etc/login.defs
##En el archivo login.defs se cambian los tiempos de las siguientes lineas:
LOGIN_RETRIES 3
LOGIN_TIMEOUT 30
LOG_UNKFAIL_ENAB yes

Bloquear las TTY para no acceder directamente como root

#vim /etc/securetty
ejecutar lo siguiente para comentar las tty
:1,$s/tty/#tty

Proteger los scripts de inicio.

#chmod -R 700 /etc/init.d/*

Chequeo de seguridad:

# aptitude install tiger

Editar el archivo de configuración /etc/tiger/tigerrc para activar y desactivar las opciones que se requieren revisar.

Automáticamente la aplicación instala el paquete tripwire, que se utiliza para realizar la verificación de los archivos y directorios de nuestro sistema, en caso de que se realice una modificación el lo informara.
Dentro de la ruta de configuración del tiger, existe un archivo llamado cronrc, que es utilizado para realizar la revisión del sistema en ciertos horarios, esto se puede utilizar para obtener información en caso de una intrusión a nuestro sistema.

# tiger

Instalar postfix
#aptitude install postfix
Colocar el email hacia donde se enviaran las alertas
# vim /etc/aliases
root: usuario@tudominio.com
# postalias /etc/aliases

Habilitar sudo, y configurar los logs de sudo
visudo
en la seccion de Defaults poner
Defaults loglinelen=0 # disable line wrapping in log.
Defaults logfile=/var/log/sudo.log # or some other filename.

Instalar el paquete "acct" para llevar mas auditoría sobre las
cuentas de usuario
#aptitude install acct

Auditar por medio del historial
Editar /etc/profile y colocar

#vim /etc/profile

HISTFILE=~/.bash_history
HISTSIZE=10000
HISTFILESIZE=999999
# Don't let the users enter commands that are ignored
# in the history file
HISTIGNORE=""
HISTCONTROL=""
readonly HISTFILE
readonly HISTSIZE
readonly HISTFILESIZE
readonly HISTIGNORE
export HISTFILE HISTSIZE HISTFILESIZE HISTIGNORE HISTCONTROL

Comentar los repositorios de debian y solo dejar el de seguridad.

#deb http://ftp.us.debian.org/debian/ squeeze main

deb http://security.debian.org/ wheezy/updates main



Linux Mint Debian Edition LMDE + Dell Inspiron 11Z (1121)

Posted by Unknown | Posted on 22:27

0

Hace poco adquirí un portatil Dell inspiron 11z (1121), de 11.6" con un procesador core I3-330UM, 2GB de Ram y 250 de Disco, estuve probrando Debian Wheezy pero luego de instalarlo me di cuenta que cambiaron el entorno a gnome-shell, cosa que no me parece mal, pero la version que colocaron es una de las primeras que salio, y esta muy cruda, y por un colega que me dijo de Linux Mint, y la version de Debian.

LMDE en este equipo funciona al 100% realmente no hay que hacerle nada para que todo funcione, solo hay que instalar algunos paquetes para mejorar el rendimiento.

#lspci

00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06)
00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05)
00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 (rev 05)
00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a5)
00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 05)
00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 05)
01:00.0 Ethernet controller: Atheros Communications AR8132 Fast Ethernet (rev c0)
02:00.0 Network controller: Intel Corporation Centrino Advanced-N + WiMAX 6250 (rev 5e)
ff:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 02)
ff:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 02)
ff:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02)
ff:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 02)
ff:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 02)
ff:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 02)


#lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 0bda:0138 Realtek Semiconductor Corp. Card reader
Bus 001 Device 004: ID 0bda:58f3 Realtek Semiconductor Corp. 
Bus 002 Device 003: ID 8086:0188 Intel Corp. WiMAX Connection 2400m


La tarjeta de video es intel y para mejorar su rendimiento debemos instalar el siquiente paquete.

#aptitude install intel-gpu-tools

Me arrojo un error del turbo de gpu no habilitado, para ello realizamos lo siguiente.


 #echo "blacklist intel_ips" >> /etc/modprobe.d/blacklist.conf
 #echo -e "i915/nintel_ips" >> /etc/modules

Y ahora solo falta mejorar y optimizar el arranque del equipo, para ello instalamos los siguientes paquetes.

 #aptitude install prelink preload readahead-fedora insserv

Luego editamos los siguientes archivos.

 #vim /etc/default/readahead-fedora
 READAHEAD=”yes”
 IO_PRIORITY=”real-time”

#vim /etc/default/prelink
 PRELINKING=yes


Luego ejecutamos
 #prelink --all 
Esto puede durar varios minutos.


Hay algunas otras cosas que se pueden hacer al igual que en debian, para mejorar el arranque del equipo.





Espero sus comentarios....