Acceso Remoto
FreeBSD Postfix

Principal
Arriba

Obtener FreeBSD
Instalar FreeBSD
Configurar FreeBSD
Acceso Remoto
Tips del FreeBSD


Ok, mate ( o café ) de por medio, queremos sentarnos en nuestra PC en la oficina calefaccionada, por lo que debemos permitir el acceso remoto al servidor vía telnet o ssh.

Para ello, debemos -todavía desde la consola- editar algunos archivos que nos permitan acceder al servidor desde la red. Entonces podemos elegir entre el telnet ( menos seguro ) o el Secure Shell ( ssh ) mas seguro.
 

Telnet:

Para telnet, debemos editar el archivo inetd.conf que se encuentra en el directorio /etc:

# ee /etc/inetd.conf

Obtenemos la ventana del editor, y aparecen varias líneas ( la mayoría precedida por el '#' que significa 'comentada' o sea no se activa el servicio ) y nos posicionamos en la que indica:

#telnet stream tcp nowait     root     /usr/libexec/telnetd     telnetd

y le quitamos el '#' del inicio. Salvamos el archivo ( ESC, leave editor, save changes ) y volvemos al prompt.

Ahora o bien reiniciamos el servidor o reiniciamos los servicios de inetd ( mucho mas rápido, no ?).
Si optamos por lo último, hacemos:

kill -HUP `cat /var/run/inetd.pid`

Esto es 'matar' el proceso y reiniciarlo, leyendo el archivo que acabamos de editar.

Si ahora nos conectamos veremos que nos rebota el login de 'root' y es porque las pseudoterminales de telnet están como 'inseguras' para root ( de hecho, lo son, ya que el telnet es texto plano y susceptible por lo tanto a sniffers ). Ergo, editamos el archivo ttys:

# ee /etc/ttys

Nos posicionamos en la pantalla al ver:

# Pseudo terminals
ttyp0     none         network
ttyp1     none         network
ttyp2     none         network

Y agregamos al final ( con tabulador ) la palabra 'secure' de forma que quede así:

# Pseudo terminals
ttyp0     none         network    secure
ttyp1     none         network    secure
ttyp2     none         network   

Así se habilitan 2 sesiones telnet para root. Esto NUNCA ES RECOMENDADO, salvo que el servidor esté en una zona segura detrás de un Firewall.
A partir de ahora, con cualquier cliente telnet podremos conectarnos a nuestro server. Calentitos y con mate ( o café ) en nuestro escritorio!.


Secure Shell -ssh-:

Para utilizar ssh, debemos manejar un par de archivos los cuales 'abren' las conexiones seguras.

Al iniciar el FreeBSD por vez primera, se generan un par de archivos con las claves públicas y privadas del server. Pero si no editamos el archivo hosts.allow ( en el directorio /etc ) y sshd_config  ( en el directorio /etc/ssh ) no podremos establecer el canal seguro de conexión.
 

# ee /etc/hosts.allow

Al editarlo vemos que existe una línea ( ALL : ALL : allow ) sin comentario. Le agregamos un '#' para inhabilitarla, y debajo ponemos sshd : ip.de.mi.red/255.255.255.??? : allow


# Start by allowing everything (this prevents the rest of the file
# from working, so remove it when you need protection).
# The rules here work on a "First match wins" basis.
#ALL : ALL : allow

# Wrapping sshd(8) is not normally a good idea, but if you
# need to do it, here's how

sshd : 192.168.100.0/255.255.255.192 : allow

En este caso, la red 192.168.100.0/32 es aceptada para conectarse al servidor. Grabamos el archivo y de esta forma, 'cerramos' el acceso al mismo de cualquier otra red salvo la especificada.

Ahora, tenemos dos opciones: Permitimos conexión vía SSH al superusuario 'root', o lo que es mas recomendado, le permitimos el ingreso a un usuario normal, y que luego gane con 'su' el acceso de superusuario.

OPCION 1 - NO RECOMENDADO:

editamos el archivo sshd_config:

# ee /etc/ssh/sshd_config

Y modificamos la línea donde dice PermitRootLogin de 'no' a 'yes' como debajo:

PermitRootLogin yes

Grabamos y de esta forma podremos acceder al servidor vía ssh con algún cliente de Secure Shell como el PuTTY el cual es gratis.

OPCION 2 - RECOMENDADO :

Ingresamos un nuevo usuario con el comando 'adduser' y lo ingresamos al grupo 'wheel' ( para que pueda hacer uso del comando 'su' el cual le permite --luego de ingresar el password de root-- ganar privilegios de superusuario ). Si el usuario 'normal' existe, llamado en este ejemplo 'test', se hace lo siguiente:

# pw user mod test -G wheel

Para que los usuarios tengan el uso de TAB y las flechas del cursor para los comandos anteriores, debería usar el shell 'csh', no el 'sh'. Por lo tanto, lo podemos cambiar de un tipo de terminal a otro con el comando:

$ chsh -s csh

Noten que acá, el cambio se efectúa logueado como el usuario al que le cambiamos el shell.  


Realizado por Andrés Gallo ( agallo@gesell.com.ar ) / Copyright © 2003-2004-2005 Cooperativa Telefónica de Villa Gesell Ltda.
Última modificación: 18 de Junio de 2005