jueves, junio 24, 2010

Apuntes Seguridad en Debian (I)

Comienzo con una serie de apuntes sobre seguridad y manejo de Linux Debian. Son mas para recordarlos y tener una copia en internet, pero aunque no estan explicados pueden ser utilizados sin problemas. Para mas información "man" o google:

*** Controlar los Progamas con Conexión a Internet***

# lsof -i

Tambien:

# nmap -p 0- localhost ----------> -p(uertos) del 0(cero) al máximo(espacio)

Para saber el PID del programa que lo ha abierto:

# fuser -n tcp "NºPuerto"

Tambien:

# lsof -i :"puerto" Ej. lsof -i :22

Y para saber el ejecutable responsable:

# ps -l "PID"

Si queremos ver los programas que tienen la conexion establecida:

# netstat -pnat | grep ESTABLISHED

Los programas con puertos abiertos en espera de conexion:

# netstat -pnat | grep LISTEN

Asi veremos sobretodo los servicios abiertos en linux, en mi Debian Lenny:

tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 2596/mysqld
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2127/portmap
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2939/apache2
tcp 0 0 127.0.0.1:8118 0.0.0.0:* LISTEN 23999/privoxy
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2510/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2674/cupsd

En mi caso el servidor MySQL (base de datos) y CUPS (impresora) deben estar abiertos para uso local, pero los demas los quitamos:

tcp 111 portmap (rpcbind) ------------> /etc/init.d/portmap stop

tcp 80 apache2 ------------> /etc/init.d/apache2 stop

tcp 22 sshd ------------> /etc/init.d/ssh stop

tcp 8118 privoxy ------------> /etc/init.d/privoxy stop

Si quieres que no vuelvan a cargar al inicio, hay dos formas:

1. update-rc.d -f privoxy remove

2. Manual, buscas el archivo /etc/inittab

Miras la linea:

#The default runlevel.
id:2:initdefault:

Lo normal es que el inicio de un PC normal sea el 2, pero como hay otras posibilidades es bueno asegurarse. Ahora con esta informacion vamos a /etc/rc2.d donde veremos los servicios que se cargan al inicio de esta forma:

@S16ssh ------> lo cambiamos por @K16ssh para que no se inicie. De forma que cuando queramos usar el servidor ssh o cualquier otro deberemos iniciarlo manualmente:

# /etc/init.d/ssh start

Hasta el proximo.
[JuanJose]

No hay comentarios: