Instalación Servidor -Cliente Telnet

Esta práctica consisten en instalar un servidor y un cliente para poder usar y conectarnos a nuestros ordenadores a través de Telnet.

Para poder comprender mejor que es este servicio, comentaremos, que Telnet, es un protocolo de red, que se utiliza para poder conectarnos a los ordenadores que tengan dichos servicios activados, de forma remota. Por supuesto, comentar el hecho de que ambos ordenadores necesitan de la conexión de una red, para que su uso sea viable. Como detalle, explicar que Telnet, es el conjunto de dos vocablos anglosajones que son TELecommunication NETwork, es decir, Redes de Telecomunicaciones.

A continuación prodeceremos a explicar la instalación y configuración de dicho servicio.

Para instalar un servidor y un cliente telnet en nuestro Linux Ubuntu, abriremos un terminal, y escribiremos la siguiente línea de comandos:

sudo apt-get install telnetd

Dicha instalación nos realiza una serie de cambios, a parte de la creación de un grupo y un usuario cuyos nombres son telnetd. No realizamos la instalación de un cliente, porque usamos el cliente telnet que viene instalado por defecto en nuestro Linux Ubuntu.

Para probar que nuestro servidor funciona, procederemos a ejecutar la siguiente línea de comandos:

telnet 192.168.0.58

Así es en nuestro caso, en el hipotético caso de que tuviéramos una ip distinta, basta con cambiarla.

Una vez ejecutada dicha línea, nos pide el nombre de una cuenta de usuario, y a continuación, una contraseña. Si hemos introducido los datos correctos, nos aparecerá algo como esto:



mluisa@pc-mluisa:~$ telnet 192.168.0.58

Trying 192.168.0.58...

Connected to 192.168.0.58.

Escape character is '^]'.

Ubuntu 8.04.2

pc-mluisa login: mluisa

Password:

Last login: Tue Feb 3 12:27:26 CET 2009 from CARLITOS-UBUNTU.local on pts/1

Linux pc-mluisa 2.6.24-23-generic #1 SMP Mon Jan 26 00:13:11 UTC 2009 i686

The programs included with the Ubuntu system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by

applicable law.

To access official Ubuntu documentation, please visit:

http://help.ubuntu.com/

You have new mail.



En la práctica se nos pide que con distintos usuarios, modifiquemos algunos detalles en la configuración.

Nosotros hemos creado tres usuarios, con los cuales teníamos que hacer que tuvieran un límite de tiempo de conexión, que no tengan conexión al servidor telnet, y que cuando se loguee le aparezca un mensaje de bienvenida y a continuación la ejecución de un programa sin interfaz gráfica, en nuestro caso, ha sido un pequeño script.

El script que hemos realizado lo hemos creado a partir del gedit, y compuesto por las siguientes líneas:




#!/bin/bash

clear

echo

echo

echo ESTA ES LA EJECUCIÓN DE UN PROGRAMA

echo

echo

echo FIN DE LA EJECUCIÓN



Dicho archivo, lo hemos alojado en la carpeta /home y le hemos dado permisos a través del terminal con la siguiente línea de comandos:

sudo chmod 777 /home/prueba

Para que se ejecute dicho script cuando se logueen los usuarios, tenemos que editar los distintos .profile de cada usuario. Es decir que si tenemos un usuario llamado “user1”, tendremos que escribir la siguiente línea de comandos en el terminal:

sudo gedit /home/user1/.profile

De esta manera nos aparecerá el gedit abierto con el archivo .profile, aprovecharemos para modificarlo también y escribir un mensaje de bienvenida, a continuación mostramos como quedaría el archivo .profile de uno de nuestros usuarios.



# ~/.profile: executed by the command interpreter for login shells.

# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login

# exists.

# see /usr/share/doc/bash/examples/startup-files for examples.

# the files are located in the bash-doc package.

# the default umask is set in /etc/profile

#umask 022

# if running bash

if [ -n "$BASH_VERSION" ]; then

# include .bashrc if it exists

if [ -f "$HOME/.bashrc" ]; then

. "$HOME/.bashrc"

fi

fi

# set PATH so it includes user's private bin if it exists

if [ -d "$HOME/bin" ] ; then

PATH="$HOME/bin:$PATH"

fi

clear

echo _____________________________________________________

echo

echo

echo BIENVENIDO/A ^^

echo

echo

----------------------------------------------------------------------------------------

./prueba


-----------------------------------------------------------------------------------------------

Lo que hemos destacado en negrita es lo que hemos añadido al archivo original. Lo primero que e realizada es unlimpiado de la pantalla, se muestra el mensaje “BIENVENIDO/A”, después se cambia al directorio /home, y por último se ejcuta el script que se aloja en dicha carpeta.

Para que el usuario no se pueda loguear en el servidor telnet, lo que haremos será editar el archivo passwd, y cambiarle el bash (que es el shell por defecto de todos los usuarios que no sean del sistema), por el nombre de un shell falso. Para ello, ejecutamos la siguiente línea de comandos:

sudo gedit /etc/passwd

A quien le vamos a denegar el servicio telnet, es a nuestro usuario “user2”, y eso lo realizamos modificando la línea que hay en el archivo original, por la sigiente:




user1:x:1001:1002:user1,,,,:/home/user1:/bin/bash

user2:x:1002:1003:user2,,,,:/home/user2:/bin/false




La línea modificada es la remarcada en negrita. De esta manera no se puede loguera el usuario en el servidor telnet al ejecutar la línea que dijimos anteriormente de :

telnet 192.168.0.58

Por último nos quedaría el hecho de restringir la conexión de los usuarios. Lo que hemos encontrado que puede llegar a ser similar, es el hecho de que el propio sisitema operativo te expulse del servidor tras haber pasado un tiempo de inactividad. Para ello, volvemos a los distintos archivos .profile de acada usuario que se le quiera limitar la conexión, y se le añade la siguiente línea:

TMOUT = 5

De esta manera tras haber pasado 5 segundos de inactividad, el propio servidor te expulsa del mismo.

Por último comentar, que si hemos realizado algún cambio que sugiera reiniciar el servidor telnet, debemos escribir la siguiente línea de comandos:


sudo /etc/init.d/telnetd restart

De esta manera, tendremos configurado servicio de Telnet, limitado a los distintos usuarios.

sábado, 7 de marzo de 2009

0 Comments:

 
Bicheando por la Red - Blog Creado en el 2009 por: Ryuka