Ir al contenido principal

Configuración de seguridad de SSH en servidor Apache con Ubuntu

S

i queremos incrementar la seguridad del el servicio SSH de nuestra máquina, que viene configurado por defecto, lo que haremos es modificar algunas opciones para darle más seguridad en el archivo /etc/ssh/sshd_config, aunque antes de modificarlo, haremos una copia de seguridad del mismo para poder restablecerlo, en caso de que hayamos modificado algo que no debíamos, mediante las siguientes líneas de código:


sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
sudo chmod a‐w /etc/ssh/sshd_config.original

Una vez copiado a un nuevo archivo y protegido contra escritura para no poder modificarlo, procedemos a su modificación:


1. El puerto asignado al servicio (22) lo cambiamos por el 5301. Para ello buscamos la línea “Port 22” y en su lugar escribimos “Port 5301”.


2. Establecemos el número máximos de intentos fallidos de conexión a 1. Si no la tenemos aún, añadimos la línea “MaxAuthTries 1”.


3. Indicamos que el número máximo de conexiones concurrentes no autenticadas sean 2 mediante la siguiente línea “MaxStartups 2”.


4. Establecemos la dirección de escucha con nuestra IP Privada: “ListenAdrress 192.168.2.100 (IP maquina)”.


5. Indicamos qué usuarios pueden conectarse y desde qué IP: “AllowUsers usuario@192.168.0.11”


6. También debemos tener en cuenta que probablemente, al ser administradores, necesitaremos conectarnos desde cualquier máquina independientemente de si se encuentra en nuestra red o no, por lo que debemos añadir algún usuario para dicho propósito: ”AllowUsers usuario usuario2 usuario3”.


7. Por último, deshabilitamos la opción de conectarnos como root, para evitar intentos de intrusión externos, editando la línea “PermitRootLogin no”.


Si queremos completar aún más la seguridad, podemos configurar los permiso de los host que se intenten conectar al servicio. Para ello debemos realizar las siguientes modificaciones:


1. En el archivo /etc/host.deny añadimos la siguiente línea: “ALL: ALL”.


2. Editamos el archivo /etc/host.allow y añadimos los host a los que permitimos el acceso. En este caso solo lo haremos a un único ordenador. “sshd: 192.168.0.104 (IP portatil)”.


Una vez guardados los cambios, debemos reiniciar el servicio para que tengan efecto:


sudo /etc/init.d/ssh restart

Comentarios

Entradas populares de este blog

Exportar archivo de configuración de WinSCP

S i estamos trabajando con WinSCP seguro que ya hemos guardado distintas sesiones para acceder a ellas directamente en futuras ocasiones y evitar volver a introducir todos los parámetro de configuración. Seguro que también muchos de vosotros habéis agrupado las sesiones en carpetas dependiendo de la naturaleza de las mismas. Este trabajo ocupa un valioso tiempo que no nos podemos permitir repetirlo para todos los equipos que tenemos, por lo que lo más lógico es configurar todas las sesiones y exportar su configuración al resto de equipos , teniendo una sola versión y evitarnos tener que volver a configurar todas las sesiones en cada uno. El problema es que WinSCP no nos muestra la opción de exportar de una forma sencilla, por lo que tendremos que buscarnos la vida. Lo primero que debemos hacer es abrir el programa y acceder a Preferencias -> Almacenamiento (o su equivalente al inglés) En esta pantalla deberemos indicar que almacene la configuración en un archivo

Asignar valores por defecto a input=”file” y a textarea

S eguro que muchos os habéis estado rompiendo la cabeza buscando la forma de dar un valor por defecto a el tipo de dato input=”file” . Pues que sepáis que no se puede!!! No se puede dar un valor por defecto a los campos de este tipo, ya que hacen referencia a una ruta física local y podrían surgir problemas de seguridad. Lo que se puede hacer, por ejemplo, es mostrar la imagen o el nombre del dato que tenemos almacenado y si el usuario desea modificarla, ofrecerle la opción de cargar una nueva. La etiqueta textarea , aunque pueda parecérnoslo, no se trata de un input y para darle valor por defecto simplemente debemos mostrar el texto que deseemos entre su marca de apertura y de cierre. Es decir, en caso de que lo que deseemos mostrar por defecto sea una variable, introduciremos el siguiente código: <textarea id="txtobservaciones" name="txtobservaciones" rows="2" cols="40" class="txt" ><?=$_POST["txtobservaciones"] ?&

Configuración de archivo de Logs para IpTables

I pTables se usa para configurar, mantener e inspeccionar las tablas de reglas de filtrado de IPs en el kernel de Linux, pero por defecto, su sistema de logs no es todo lo completo esperamos. Por defecto, la mayoría de los logs del sistema se guardan en el fichero /var/log/messages pero en este caso vamos a configurar un nuevo fichero para que almacene únicamente los logs que generaremos con algunas reglas en IpTables , creando así su propio archivo de bitácora . Lo primero que debemos hacer es configurar el archivo /etc/syslog.conf , que se trata de un archivo de configuración en el que se indica el modo en que los mensajes del sistema son bitacorizados a través de la utilidad syslogd que se instala y configura por defecto en todos los sistemas GNU/Linux . Debemos añadir al final del fichero la siguiente sentencia: kern.warning /var/log/iptables.log Con esto indicamos que se almacenen los mensajes provienen del kernel con prioridad 4 o superior ('warning' es el nivel de