Restrinja SSH a una interfaz


10

¿Cómo puedo restringir la solicitud de conexión SSH entrante a una sola interfaz? Estoy usando Ubuntu Server 10.04 LST.

Quiero bloquear el acceso a SSH a una sola interfaz porque uso el servidor como puerta de entrada a mi red doméstica. Una interfaz está conectada al módem / enrutador DSL y la otra está conectada a la red doméstica. Solo quiero permitir el acceso al formulario SSH dentro de la red doméstica.

¿Es suficiente restringir SSH a una IP en este caso? ¿O tengo que bloquearlo en una interfaz?


1
¿Puede ser más claro con lo que quiere decir con "solo una interfaz"? ¿Quiere decir que la máquina tiene más de una dirección IP y solo desea que SSH escuche en una dirección IP? ¿O quiere decir que desea que se descarten los paquetes entrantes al puerto SSH en otras interfaces? (Su solicitud es muy inusual y es posible que esté haciendo la pregunta incorrecta).
David Schwartz

@DavidSchwartz Pedí una restricción de interfaz porque no estaba seguro de si es suficiente para restringir el acceso SSH a una sola IP. También complementé mi pregunta con más detalle.
wowpatrick

Respuestas:


12

En el siguiente archivo:

 /etc/ssh/sshd_config 

Verás una línea como:

#ListenAddress 0.0.0.0

Esto está comentado, pero es el predeterminado, para enumerar en todas las direcciones IP para solicitudes ssh. Puede cambiar esto para que sea la dirección IP de la interfaz en la que desea aceptar conexiones, y solo esa dirección IP acepte conexiones ssh:

ListenAddress 111.222.111.222

Reinicie el servicio sshd una vez que haya cambiado.


44
Esto no restringirá las interfaces en las que SSH puede operar, solo la dirección IP de destino. (Eso puede ser lo que realmente quería el OP. Pero eso no es lo que el OP preguntó.)
David Schwartz

@DavidSchwartz gracias, ¿puedes aclarar? Si una dirección IP está vinculada a una interfaz, ¿puede otra interfaz aceptar una conexión con esta configuración de alguna manera (supongo que si el reenvío estaba habilitado, podría funcionar).
Paul

@DavidSchwartz ah, veo tu comentario arriba.
Paul

1
El reenvío solo se refiere a un paquete recibido en una interfaz que debe ser transmitido por otra. No es necesario aceptar un paquete recibido en una interfaz distinta a la que está asignada su dirección de destino. Linux usa un modelo donde las direcciones IP pertenecen al sistema, no a las interfaces: todas las interfaces conectan un solo host.
David Schwartz

2

Intente instalar un firewall y solo permita SSH en una interfaz. Mis preferencias son Shorewall, que es un paquete instalable en Ubuntu. Deberá configurarlo antes de que comience, pero está bien documentado y viene con varias configuraciones de ejemplo.

Utilizo un cortafuegos mayormente cerrado con solo los puertos requeridos abiertos. Si todo lo que quiere hacer es limitar la interfaz en la que se permite SSH, puede usar una acción REJECT o DROP para ssh en las otras interfaces. Sugeriría que si está creando un cortafuegos, al menos limite el acceso a las interfaces orientadas a Internet.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.