sábado 29 de noviembre de 2008

Servidor FTP con VSFTPD

Paso 1.
Instalar VSFTPD.
    # apt-get install vsftpd

Paso 2.

Modificar la configuración del vsftpd de la siguiente manera:
    # gedit /etc/vsftpd.conf
Modificar los siguientes parámetros:
// Habilitar el acceso a usuarios anónimos. Para mayor seguridad poner NO.
anonymous_enable=NO

// Permitir el acceso de usuarios locales a sus respectivas carpetas privadas:
local_enable=YES

// Permitir el modo escritura:
write_enable=YES

// Mascara del directorio:
local_umask=022

//Mensaje de bienvenida:
ftpd_banner=Bienvenidos al servidor ftp en Ubuntu.

// De modo predeterminado los usuarios del sistema que se autentiquen tendrán acceso a otros directorios del sistema fuera de su directorio personal. Si se desea recluir a los usuarios a solo poder utilizar su propio directorio personal.
chroot_local_user=YES
chroot_list_enable=YES
Con lo anterior, cada vez que un usuario local se autentique en el servidor FTP, solo tendrá acceso a su propio directorio personal y lo que este contenga.

Ya con esto el servidor FTP funciona a la perfección aunque hay algunos otros parámetros como:

//Se utiliza para limitar la tasa de transferencia en bytes por segundo para los usuarios anónimos:
anon_max_rate=5120

//Hace lo mismo que anon_max_rate, pero aplica para usuarios locales del servidor:
local_max_rate=5120
//Establece el número máximo de clientes que podrán acceder simultáneamente hacia el servidor FTP. En el siguiente ejemplo se limitará el acceso a 5 clientes simultáneos.
max_clients=5
//Establece el número máximo de conexiones que se pueden realizar desde una misma dirección IP. Tome en cuenta que algunas redes acceden a través de un servidor proxy o puerta de enlace y debido a esto podrían quedar bloqueados innecesariamente algunos accesos. en el siguiente ejemplo se limita el número de conexiones por IP simultáneas a 5.
max_per_ip=5

Paso 3.
Reiniciar el demonio.
    # /etc/init.d/vsftpd restart

Paso 4.
Verificar su funcionamiento entrando al navegador y tecleando en la barra de direcciones:
ftp://ip_del_servidor



viernes 28 de noviembre de 2008

Servidor Web con Apache


Paso 1.

Crear una red pequeña cliente-servidor.

Paso 2.
Loguearse en consola como super usuario (root).
    # sudo su

Paso 3.

Instalar apache.
    # apt-get install apache2

Paso 4.
Reiniciar el demonio y verificar que funcione tanto en el servidor como en el cliente o clientes.
    #  /etc/init.d/apache2 restart
Si se quiere detener el demonio se cambia restart por stop.

Ahora hay que verificar que funcione en el servidor, para esto entras al navegador web y escribes:
http://localhost o http://127.0.0.1

Debe aparecer esto una página donde diga It Works!.


Ahora en cada cliente se entra al navegador web pero y se escribe:
http://ip_del_servidor

Con esto ya tenemos apache corriendo.



Ahora a configurarlo un poco.

Paso 5.

Cambiar el directorio de donde se quiere cargar la página web.
Podemos tener varias páginas y cambiar cual debe mostrar cuando ingrese la IP del servidor. Primero hay que crear la carpeta que contendrá la nueva página Web.

    # mkdir /var/www/web1
    # cp /var/www/index.html  /var/www/web1

Lo que se acaba de hacer es crear una nueva carpeta en el directoria raíz de nuestro servidor web apache y se les ha copiado el archivo index.html (el que contiene el It works!) así que ahora pasaremos a modificar ese archivo para que muestren algo diferente.
    # gedit /var/www/web1/index.html

Se abrirá lo siguiente:
<html><body><h1>It works!</h1></body></html>
Hay que modificarlo  para que quede así:
<html>
  <head>
    <title>Web de prueba</title>
  </head>
  <body>
    <h1 align=”center”>Ya chambeaa masizoo!</h1>
  </body>
</html>


Ahora si hay que cambiar un parámetro en el archivo default del servidor apache.

    # gedit /etc/apache2/sites-available/default
Donde dice  DocumentRoot /var/www/
Cambiarlo por DocumentRoot /var/www/web1
Es el directorio del cual cargara el archivo index.html
Hacer lo mismo con
<Directory /var/www/> <Directory /var/www/web1>

Para que los pareametros especificados en este tag se atribuyan a la nueva web creada

Reiniciar el servidor apache.
    # /etc/init.d/apache2 restart

Ya se puede verificar que es una página diferente la que nos carga y así ya puedes cargar la página que desees cambiando estos últimos dos parámetros cuando sea necesario.

NOTA: Estos dos últimos pasos son opcionales, en si hasta el paso 5 ya tienes listo el servidor web apache básico que te aceptara cualquier pagina html que no tenga interacción con base de datos ni código PHP.

Ahora hay que darle  soporte para páginas que manejen php.

Paso 6.
Instalar PHP
    # apt-get install php5

Se reinicia el servidor y ya esta listo.
    # /etc/init.d/apache2 restart

Modificar el archivo para convertirlo en php.
    # gedit /var/www/web1/index.html

Debe quedar así:
<head>
    <title>Web PHP</title>
  </head>
  <body>
   <?php phpinfo(); ?>
  </body>
</html>

Ahora entramos de nuevo al navegador y tecleamos la ip del servidor para verificar que funciona.
Ya con esto tenemos funcionando el servidor web apache-php.

Paso 7.
Instalar mySQL y phpmyadmin.

    # apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql


Pedirá contraseña para el usuario root de mySQL.

Paso 8.
Antes de instalar phpmyadmins se le debe asignar una contraseña
    #mysqladmin -u root password  prueba
    #apt-get install phpmyadmin

Se reinicia el servidor.
    # /etc/init.d/apache2 restart


miércoles 19 de noviembre de 2008

Servidor SAMBA en Ubuntu

Todo en 4 sencillos pasos:


1. Instala Samba en tu sistema

 

 Ingresar el siguiente comando

            #sudo apt-get install samba  smbfs samba-common sambaclient

 

2. Modificaremos el smb.conf

 

Abrir el erchivo de configuración /etc/samba/smb.conf

            #sudo gedit /etc/samba/smb.conf

 

3. Ahora editamos los siguientes parametros.

 

workgroup = GRUPO_TRABAJO

 

Debe ser el mismo grupo de trabajo  para todas las máquinas.

 

Si se prefiere  también puede cambiar la línea donde dice server string esto es simplemente la descripción que verá tu grupo del servidor puedes colocar algo como:

 

server string = %h Servidor de archivos

 

%h lo que hace es imprimir el nombre de host de tu servidor.

 

Quitar el ; al secuyriti=user

 

Esto es para que  se accceda por medio de usuario, si se pone shared en vez de user, podra ser accesado sin  necesidad de identificarse.

 

 

Ahora definir las carpetas a compartir.

Ejemplo:

 

[Documentos Elyager]

     //nombre que se mostrara en el cliente.

  comment = carpeta de documentos

 //comentario

  path = /home/elyager/Documentos

 //directorio a compartir

  public = yes

            //darle acceso publico

  writable = yes

  //permitir escritura

  browseable = yes

  //permitir navegar en ella

  create mask = 0700     //

máscara que se usa cuando se crean los archivos

  directory mask = 0700   // máscara que se usa cuando se crean los directorios

 

Si queremos que un grupo de usuarios pueda acceder al directorio agregamos a las líneas de arriba lo siguiente:

 

valid users = nombredeusuario1 nombredeusuario2

 

Para compartir impresoras, buscamos las siguientes líneas, y las descomentamos quitándole el #

 

 

# printing = cups

# printcap name = cups

 

Guardar los cambios y reiniciar los demonios con el siguiente comando.

            # /etc/init.d/samba restart

 

 

4. Creamos usuarios Samba.

 

Los usuarios de samba deberán de estar en el servidor linux también podemos crear un grupo samba y agregar a ese grupo todos los usuarios que tendrán acceso al servidor samba:

 

Para agregar un usuario a linux podemos utilizar el comando:

 

            # adduser nombre_usuario

 

Debe de introducir la clave de este usuario y algún que otro dato. Ahora creamos la clave de samba para el usuario creado con el siguiente comando como administrador.

 

            # smbpasswd -a nombre_usuario

 

Para borrar un usuario ejecutamos:

 

            # smbpasswd -x nombre_usuario

Podemos verificar que todo este correcto con los siguientes comandos:

 

            # testparm

Sirve para verificar parametros

.

            # smbstatus

Sirve para ver el estado de las conexiones.

 

Ya por último para acceder a las carpetas compartidas desde los cliente ingresamos al explorador de archivos del sistema e ingresamos lo siguiente:

Windows \\ip\cabecera

Linux smb://ip/cabecera

martes 4 de noviembre de 2008

papà bajame... papa bajame... papa baj... (ouuuh!)

sábado 1 de noviembre de 2008

Compartir archivos por medio de NFS

Para todos los que aun no hacen la practica que encargo chava para le lunes:

  1. Primero hay que conectar las máquinas,  si son 2 usar un cable cruzado y si son varias por medio de un switch o hub pues usen directos. Configurar las ip en le mismo rango en todas las maquinas con el siguiente comando.

    # ifconfig  eth0 192.168.10.1
    recuerden hacer todo con permisos de root (el # significa root, no lo pongan en la consola ¬¬)

  2. Instalar los paquetes que nos hagan  falta.

    # apt-get install nfs-kernel-server nfs-common portmap


  3. Reconfigurar portmap para que deje acceder a los clientes remotos.

    # dpkg-reconfigure portmap
     (responder  NO)

  4. En el archivo /etc/exports indicamos las carpetas compartir de la siguiente forma:

    directorio_compartido ip_cliente(opciones) ip_cliente2(opciones)
    Ejemplos:
    /home/geeko/documentos 192.168.10.2(rw,sync,root_squash)
    /home/geeko/documentos 192.168.10.0/50(ro,sync,root_squash) (ip's de 0 a 50 para los que usan varias maquinasK)

    Opciones:
    • ro | rw : Con la opción ro el directorio será compartido en modo lectura. Esta opción está por defecto. Con la opción rw se permitirá tanto acceso de lectura como de escritura.
    • sync | async : sync es la opción recomendada, ya que se ha de respetar el protocolo NFS, es decir, no se responden a las peticiones antes de que los cambios realizados sean escritos al disco. Con la opción async se permite mejorar el rendimiento y agilizar el funcionamiento global, pero supone un riesgo de corrupción de archivos o del sistemas de ficheros en casos de caidas del servidor y/o errores de éste.
    • root_squash | no_root_squash | all_squash : root_squash indica que un cliente identificado como root tendrá acceso al directorio con privilegios de un usuario anónimo. Si seleccionamos la opción no_root_squash evitaremos esto, y si indicamos all_squash, entonces aplicaremos esto último a todos los usuarios, no sólo root.

  5. Reiniciar los servicios.

    # /etc/init.d/nfs-kernel-server restart
    # exportfs -a
Configurar cliente(s):

  1. Instalar paquetes:

    # apt-get install portmap nfs-common

  2. Montar los ficheros compartidos.

    mount ip_del_servidor:directorio_remoto punto_de_montaje
    Ejemplo:
    mount 192.168.10.1:/home/geeko/Doucmentos  /home/elyager
Y  ya esta, con esto ya tenemos nuestro servidor NFS funcionando, si quieren que esto sea permanente se tiene que modificar el archivo /etc/fstab y agregar la siguiente linea ip_del_servidor:/home/geeko/Documentos /home/elyager  nfs defaults,auto,rw 0 0.