Tabla de Contenidos
Seguridad en un servidor en modo Clásico
La seguridad de su servidor de alojamiento cloud Gandi es su responsabilidad.
Esta página pretende describir varias maneras en que usted puede acceder a su recién creado servidor en modo Clásico y sus servicios de escucha por defecto, así como para dar algunos consejos para la aplicación de algunas medidas de seguridad básicas.
Un servidor recién creado
Acceso SSH está activado por defecto para el usuario y la contraseña que ha configurado al crear el servidor. El usuario puede obtener permisos de root ejecutando el comando:
su -
Debido a la contraseña del usuario es la misma que la contraseña de root por defecto, sería prudente cambiarla con el comando “passwd”.
Mejores prácticas
SSH: Autenticación basada de clave
En lugar de utilizar una contraseña cuando se conecte a través de SSH, puede crear un par de claves pública/privada que le permitirá conectarse de su máquina local sin que se le pida una contraseña. La ventaja de este enfoque es que usted no necesita recordar una contraseña para conectarse, y el intercambio de claves es bastante seguro, siempre y cuando el par de claves se mantiene seguro. La desventaja es que necesitará cada ordenador que se conecta de esta manera el par de claves instalado.
Para crear las llaves, ejecute el comando siguiente en su ordenador local:
ssh-keygen -t rsa -b 2048
A continuación, copie la clave pública al servidor remoto (donde “ip_de_servidor” es la dirección IP de su VPS):
scp .ssh/id_rsa.pub usario@ip_de_servidor:~/.ssh/authorized_keys
Si el directorio ~/.ssh/
ya no existe en el VPS, usted tendrá que crearlo antes de subir la clave pública.
Ahora, cuando se conecta a través de SSH (“ssh usuario@ip_de_servidor”) ya no pedirá proporcionar la contraseña.
Para obtener más información sobre pubkey autenticación, consulte Connecting to your Classic mode server via SSH.
SSH: La clave de Gandi
Una clave SSH está incluido en los servidores de modo clásico para permitir el acceso a nuestro equipo de alojamiento si se presenta la autorización y si la urgencia o la complejidad del problema impide resolución por cualquier otro medio.
Si lo desea, puede desactivarlo en el archivo /etc/default/gandi
.
SSH: Escuchando en otro puerto o el port-knocking
Esta técnica permite reducir la eficacia de los ataques de fuerza bruta mediante el establecimiento de SSH para escuchar los intentos de conexión sólo después de que haya activado por “knocking” en otro puerto de primera.
Instrumentos de seguridad (Firewall, IDS ...)
Usted debe cerrar los puertos abiertos que no esté utilizando en las interfaces públicas. Varias instrumentos basados en iptables (Netfilter/Linux reglas de firewall) pueden ser utilizados para hacer esto, y así aumentar la seguridad de su servidor, así como informar de los intentos de conexión fraudulentos. Tenga en cuenta que iptables puede ser gestionado directamente desde la línea de comandos.
- Firewalls: Shorewall, Ufw, Arno-iptables-firewall, Dtc…
- Sistemas de reducción de la eficacia de los ataques de fuerza bruta: fail2ban…
En los sistemas Unix/BSD, Packet Filter (PF) es el firewall estándar.
ping
) a fin de que el protocolo IPv6 funcionará en su servidor privado virtual.
Alertas / instrumentos de informe
- Logwatch/logcheck: Informe diario enviado por correo electrónico - el análisis de los registros del servidor
- Rkhunter/Chkrootkit: Comprobación de rootkit en el sistema
- Ninja/Tiger: Generación de informes (mira sobre permisos y cambios a los archivos del sistema)
- Debsecan: Informar sobre fallos conocidos de los paquetes instalados en el servidor
Activación de SELinux en CentOS (6.0 y superior)
Puede utilizar SELinux para inhibir la instalación no autorizada y reconfiguración de software en su servidor, y mejorar la aplicación de las políticas de control de acceso. Este es un paso importante en el endurecimiento de sus sistemas.
Primero debe activar SELinux en la configuración de discos avanzada, accesible desde la sección del kernel de la página de gestión del disco en su cuenta de Gandi.
En la secció “Parámetros de activación avanzados” realice las selecciones siguientes:
- “Activar SELinux”: marcado
- “Sistema de seguridad (security framework)”: selinux
Haga clic en “Cambiar” para guardar la configuración del disco. Tenga en cuenta que el servidor tiene que ser reiniciado para que los cambios surtan efecto.
Puede comprobar si funcionaba ejecutando este comando en su servidor como usuario root:
# cat /proc/cmdline console=hvc0 nosep loglevel=8 selinux=1 security=selinux ro root=/dev/xvda1
A continuación, agregue las siguientes líneas en el archivo /etc/fstab
:
none /selinux selinuxfs defaults 0 0
Por último, instale los siguientes paquetes:
libselinux
selinux-policy
selinux-policy-<tipo>
(donde<tipo>
es minimum, targeted…)
SELinux ahora debe estar activo.
Si reinicia su servidor, tendrá que tomar medidas adicionales.
Será necesario utilizar semodule
para gestionar módulos de políticas de SELinux en el servidor, por ejemplo:
# packages="execmem.pp.bz2 unconfined.pp.bz2 unconfineduser.pp.bz2" # semodule -n -r oracle-port -b base.pp.bz2 -i $packages -s \ targeted 2>&1 | grep -v "oracle-port"
La lista de paquetes disponibles se puede encontrar en el archivo /usr/share/selinux/<type>/*.pp.bz2
.
También puede cargar políticas adicionales con el comando load_policy
.
Si es necesario, puede hacer arreglos con fixfiles
. Usted puede verificar el estado de SELinux con el comando sestatus
.
Puede obtener más información en los paquetes de scripts selinux-policy-<tipo>, y leerlos con el comando rpm-q-script
, por ejemplo: rpm -q –scriptps selinux-policy-minimum
.