Comunidad de diseño web y desarrollo en internet online

Buenas prácticas para evitar "hackeos" de servidores

Este es el primer tip de varios que pretendo publicar de cosas que debemos hacer o aprender para evitar que penosos hechos de seguridad o descuido hagan que pasemos malos ratos.

La gran mayoría de veces estos hackers no lo son en realidad y mas bien son lamers que a través de descuidos obtienen acceso a tu dominio, server, etc. Siendo lamers mucho conocimiento o experiencia técnica no tienen.

A mi personalmente me disgustan mucho los paneles de control, no solamente tienen un costo que no lo valen si no que además son una puerta a diversos huecos de seguridad, y en el caso de los lamers que tengan acceso a tu server es muy sencillo realizar cambios a través de este.

Mi recomendaciones vendrían por:


  • No utilizar un panel de control y si es imprescindible, estar 100% seguros que la versión instalada es la última estable.
  • En todo caso siempre un conocimiento básico de administración *unix es importantísimo.
  • Debemos saber reconocer los procesos que están corriendo para poder notar alguno extraño en caso nuestro server este "raro".
  • Debemos tener conocimientos básicos de iptables (o pf en caso de unix) en caso no tengamos un firewall y nuestro server este sufriendo ataques.
  • Debemos saber como correr un software de reconocimiento de rootkits.
  • No tengamos el user root habilitado para logueos, utilizamos un user sin privilegios para el logueo y de ser necesario ejecutemos comandos como root a través de un sudo.
  • Cambiemos los passwords de root cada cierto tiempo.
  • Etc, etc.

Digamos que uno de estos lamers ha tomado nuestro server porque descubrió que nuestro password era "cristalab". Logro entrar y nos cambió de password de root. Si esto sucede estamos en problemas si no hemos agregado nuestro ssh_key en los authorized_keys del server.

Esto es importante ya que nos permitiría loguearnos al server sin necesidad de saber el password de este.



Digamos que el server de llama "clab" y nuestro maquina "lap":
  • lap> ssh-keygen -t rsa

No ingresemos un passphrase.
  • lap> ssh user@clab mkdir -p .ssh
  • user@clab's password: xxxxx
  • lap> cat .ssh/id_rsa.pub | ssh user/clab 'cat >> .ssh/authorized_keys'
  • user@clab's password: xxxxx

Eso es todo :)

Ahora cuando hagamos:
  • lap> ssh user@clab

Vamos a poder ingresar y por ende volver a cambiar el password de root sin problemas.

Esto de la seguridad es importantísimo. Igual de importante que los backups diría yo.

Espero les ayude!

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro

Entra al foro y participa en la discusión

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate