lunes, 29 de octubre de 2012

Correos electrónicos periódicos desde mi PC

MAIL

A veces parece interesante que nuestra máquina nos informe periódicamente de lo que en ella se cuece y enredando lo he conseguido. Para ello vamos a usar el comando mail que seguramente ya esté en nuestro sistema.
Para usar el comando mail nos vamos a la consola y lo llamamos

$ mail destinocorreo@dominio.com
Subject: Aquí ponemos el asunto del mensaje de correo
Y aquí añadimos todo el texto del mensaje
Si damos a enter trabajará como un editor de texto y pasará a otra línea. Necesitamos poner un punto solo en una línea y al dar a enter se entiende que el texto del correo ha terminado.
.
Cc: Por si queremos mandar copia al carbón a otro destinatario distinto
$

Si lo que queremos es mandar el contenido de un archivo sería así
cat archivo | mail ­-s "Asunto" correo@dominio.com

Otros ejemplos:


Mandar el texto pepe con nombre de asunto Asunto a la cuenta correo@dominio.com
echo "pepe" | mail ­s "Asunto" correo@dominio.com

Y si lo queremos enviar a varios destinatarios de correo:
echo "pepe" | mail ­s "Asunto" correo@dominio.com ­c correo2@dominio.com ­c 
correo3@dominio.com 

EXIM


Si queremos mandar correos a un destinatario fuera de nuestra red debemos instalar exim4 que no es otra cosa que un servidor de correo.


Lo primero que tenemos que hacer es asegurarnos que lo tenemos instalado:

apt-­get install exim4 exim4­-config

Una vez que lo hayamos instalado, aparecerá una pantalla de configuración. Si no aparece,
podremos acceder a ella en cualquier momento ejecutando el comando:

dpkg­reconfigure exim4-­config

Será entonces cuando nos pregunte por distintas opciones de configuración:

­ ¿Quiere utilizar archivos separados para la configuración?
Respondemos SI
­ ¿De qué forma queremos configurar nuestro servidor?
Respondemos “enviar por SMARTHOST, y recibir por SMTP o Fetchmail”
­ Escriba el nombre del sistema:
Respondemos con nuestro dominio: miDominio.com
­ Escriba la dirección IP desde donde va a atender las conexiones al SMTP:
Respondemos: 127.0.0.1
­ Escriba otros servidores destino que el SMTP será aceptado:
Aquí no respondemos nada, lo dejamos en blanco.
­ Sistemas a los que reenviar emails ?
No piques, esto también hay que dejarlo en blanco.
Escribe el sistema que gestionará el correo saliente de este sistema:
(Aquí escribimos nuestro servidor SMTP remoto, por ejemplo...)
smtp.miDominio.com
En mi caso voy a utilizar una cuenta de gmail, el servidor SMTP de gmail hay que especificarlo
junto con el puerto que va a utilizar, y sería esto: smtp.gmail.com::587 (ojo que lleva dos simbolos
de dos puntos antes del puerto)
­ ¿Quiere ocultar el nombre local del sistema local del email saliente?
Pues NO.
­ Quiere cachear las peticiones DNS para ahorrar ancho de banda?
Pues NO.
Bien, hasta ahora tenemos algunos parámetros básicos configurados, pero no hemos indicado el
usuario ni la contraseña con el que queremos autentificarnos para enviar emails. Si probásemos a
enviar emails, seguramente nuestro servidor remoto recibiría un email de un tal root@localhost y
nos lo rechazaría.

Vamos a configurar los datos importantes:
Editamos el archivo /etc/exim4/passwd.client y escribimos algo como esto:
smtp.miDominio.com:usuario:contraseña
En nuestro caso que queremos utilizar la cuenta de gmail, deberíamos poner algo como esto:
gmail­smtp.l.google.com:micuentadecorreo@gmail.com:contraseña
*.google.com:micuentadecorreo@gmail.com:contraseña
smtp.gmail.com:micuentadecorreo@gmail.com:contraseña
De esta manera, sea cual sea el nombre del servidor SMTP que utilicemos en gmail, le enviaremos
los parámetros correctos y nos aceptará el envío.

Hay que verificar que el archivo /etc/exim4/passwd.client pertenezca al usuario root y grupo Debian-exim y que sólo pueda ser leído por ellos (por defecto está así). En caso contrario hay que ejecutar:
sudo chown root:Debian-exim /etc/exim4/passwd.client
sudo chmod 640 /etc/exim4/passwd.client

Si estamos configurando nuestra cuenta de Gmail, hay que indicarle (otra vez) que el envío debe
hacerlo por el puerto 587 en lugar del estandar (el 25), por lo que tendremos que editar el archivo:
/etc/exim4/conf.d/transport/30_exim4­config_remote_smtp_smarthost
y justo encima de la línea que dice algo como: (hosts_try_auth...) añadir lo siguiente:
port=587

Por último, vamos a reiniciar el servidor de correo para que que carge los cambios
sudo /etc/init.d/exim4 restart

Ya deberíamos haber conseguido poder mandar correos a internet, ahora lo siguiente

CRON Y CRONTAB

¿Que es cron? Pues no es otra cosa que un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, día, semana o mes). Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican en el fichero crontab.

Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo 
especificado por el usuario. Crontab verificará la fecha y hora en que se debe ejecutar el script o el 
comando, los permisos de ejecución y lo realizará en el background. Cada usuario puede tener su 
propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, 
cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces 
utilizaremos el comando crontab.
Pues eso, por si no lo has pillado todavía, es un archivo de texto en que le indicamos el periodo (cada minuto, cada semana, cada año, ...) el usuario y la tarea a ejecutar.

Vamos empezando con un ejemplo simple.
Vamos a automatizar la actualización de un sistema. Primero que nada haremos un script. Este script será llamado por cron y contendrá todas las instrucciones que queremos que haga, por lo tanto es necesario probarlo en varios casos y de varias formas antes de incluirlo a cron, un sencillo script de actualización como este:

#!/bin/bash
apt-­get update & ap-­get ­-y upgrade

Guardamos el script como actualizacion.sh (ej. directorio scripts tu home). Cambiamos los 
permisos de ejecucion del dichoso script con:

chmod a+x ~/scripts/actualizacion.sh

Ejecutamos el script un par de veces para verificar que todo ejecute sin problemas, modificamos lo 
necesario (no debe contener errores, si no cron solo repetira un error una y otra vez). Ahora a 
agregar la tarea a nuestro crontab

Ejecutamos la edición del crontab con crontab -­e, en algunas distros (como ubuntu) nos da la opcion 
de elegir el editor de textos que deseemos o editamos el archivo en /etc/crontab. El archivo crontab nos mostrará algo así.

# m h dom mon dow user command

donde:
m corresponde al minuto en que se va a ejecutar el script, el valor va de 0 a 59
h la hora exacta, se maneja el formato de 24 horas, los valores van de 0 a 23, siendo 0 las 
12:00 de la medianoche.
Dom hace referencia al día del mes, por ejemplo se puede especificar 15 si se quiere 
ejecutar cada dia 15
dow significa el día de la semana, puede ser numérico (0 a 7, donde 0 y 7 son domingo) o 
las 3 primeras letras del día en inglés: mon, tue, wed, thu, fri, sat, sun.
User define el usuario que va a ejecutar el comando, puede ser root, u otro usuario diferente 
siempre y cuando tenga permisos de ejecución del script.
Command refiere al comando o a la ruta absoluta del script a ejecutar, 
ejemplo:/home/usuario/scripts/actualizar.sh, si acaso llama a un script este debe ser 
ejecutable

Para que quedara claro unos cuantos ejemplos de tareas de cron explicados:

15 10 * * * usuario /home/usuario/scripts/actualizar.sh
Ejecutará el script actualizar.sh a las 10:15 a.m. todos los días

15 22 * * * usuario /home/usuario/scripts/actualizar.sh
Ejecutará el script actualizar.sh a las 10:15 p.m. todos los días

00 10 * * 0 root apt­get ­y update Usuario root
Ejecutará una actualización todos los domingos a las 10:00 a.m

45 10 * * sun root apt­get ­y update
Usuario root ejecutará una actualización todos los domingos (sun) a las 10:45 a.m

30 7 20 11 * usuario /home/usuario/scripts/actualizar.sh
El día 20 de noviembre a las 7:30 el usuario correra el script

01 * * * * usuario /home/usuario/scripts/molestorecordatorio.sh
Un molesto recordatorio cada minuto de cada hora todos los días (NO recomendable).

Igual se pueden manejar rangos especiales:
30 17 * * 1,2,3,4,5
A las 5:30 de la tarde todos los días de lunes a viernes.

00 12 1,15,28 * *
A las 12 del día todos los días primero, quince y 28 de cada mes (ideal para nóminas)

Si esto resulta confuso, crontab maneja cadenas especiales para definir estos rangos.
@reboot Ejecuta una vez, al inicio
@yearly ejecuta sólo una vez al año: 0 0 1 1 *
@annually igual que @yearly
@monthly ejecuta una vez al mes, el día primero: 0 0 1 * *
@weekly Semanal el primer minuto de la primer hora de la semana. 0 0 * * 0′′.
@daily diario, a las 12:00A.M. 0 0 * * *
@midnight igual que @daily
@hourly al primer minuto de cada hora: 0 * * * *
Su uso es muy sencillo.
@hourly usuario /home/usuario/scripts/molestorecordatorio.sh
@monthly usuario /home/usuario/scripts/respaldo.sh
@daily root apt­get update && apt­get ­y upgrade

Pues en nuestro caso creamos el archivo chivato en nuestra carpeta /home/usuario. El archivo chivato nos va a mandar el contenido del archivo log del sistema a nuestra cuenta de correo

$ cd /home/usuario
$ nano chivato
#!/bin/bash 
cat /var/log/secure | mail ­-s “log del sistema” micuentadecorreo@dominiomail.com
Le damos permisos de ejecución

$ chmod +x chivato

y nos queda así

­rwxr­xr­x 1 usuario usuario   62 2012­09­11 08:40 chivato 

Ahora editamos el archivo /etc/crontab y añadimos la tarea

# Correo-­e /var/log/secure 
0 8 * * * usuario /home/usuario/chivato

Esto es que todos los días a las 8:00 ejecute el archivo chivato
O.K.


viernes, 26 de octubre de 2012

Compartir internet con otro pc. Firestarter


Me he encontrado en la situación de tener que actualizar un pc de sobremesa sin conexión a internet, pero tenía cerca el portátil con conexión a la Red a través de wifi. Pero , ¿cómo acceder a internet a través del portátil?, consulté a los "expertos" y de todas las opciones que vi ésta es la que me pareció más interesante: Firestarter.

Instalamos firestarter y dhcp3-server:

Firestarter es un cortafuego que nos da interfaz gráfica para compartir internet, sin tener que editar las famosas iptables y dhcp3-server es un script para que nuestro pc se comporte como servidor de direcciones IP. En mi Ubuntu 10.04 sería así:

sudo apt-get install firestarter dhcp3-server

Después nos hicimos click con el botón derecho sobre el icono de redes y seleccionamos editar las conexiones.



ahí dentro añadimos una nueva conexión cableada




Luego nos situamos en la pestaña de ajuste ipv4, ahí cambiamos del modo automático a modo manual y ponemos nuestra ip, en nuestro caso pusimos 10.0.0.1 para el servidor




ahora creamos un enlace para que firestarter use dhcp3server

sudo ln -sf /etc/init.d/dhcp3-server /etc/init.d/dhcpd

ahora a configurar Firestarter:
lo abrimos: aplicaciones>>internet>>firestarter nos aparecerá un asistente:




Aquí ponemos el dispositivo que está conectado a internet




Aquí ponemos el dispositivo de "salida" internet




ya tenemos configurado la primera parte de firestarter. Le mandamos guardar.




bien ahora abriremos firestarter




y nos vamos a preferencias y nos situamos en confiuración de red, pinchamos donde dice activar dhcp para la red local, ponemos crear una configuración de dhcp nueva, y ponemos ahí la ip que pusimos antes(en nuestro caso 10.0.0.1)




Luego editamos el siguiente documento ingresando el nombre del dispositivo por donde va a "salir" el internet en mi caso eth0 (los nombres de los dispositivos los pueden obtener poniendo ifconfig en una consola)


sudo gedit /etc/default/dhcp3-server




Y por último iniciamos Firestarter presionando el boton que está al lado del candado en la ventana principal del programa, de este modo comenzaría a compartir (si no lo hace reiniciad el pc)
Ahora el pc de sobremesa que se conectará al portátil se debe con figurar de forma automática y con el sólo hecho de conectar el cable cruzado y seleccionando en el portátil la configuración cableada que habíamos creado (puente) en el administrador de redes. Haciendo un ifconfig podemos observar cómo queda:




Si abrimos Firestarter y nos fijamos en las conexiones activas en el menú inferior podemos ver trabajar a los dos equipos el PC de sobremesa con ip automática 10.0.0.2 y el portátil por wifi con la 192.168.2.103



Por supuesto si pensáis usar Firestarter en un servidor para gestionar la salida de una red a internet tenéis muchas opciones en el programa como lista negra/blanca, horarios y demás.

Un saludo.

Índice con enlaces. Open Office.


Lo primero que debemos tener en cuenta es que debemos marcar claramente el nivel del título en el que nos encontramos par que el índice lo refleje así. Veamos los diferentes niveles:


Para este ejemplo vamos a usar sólo el encabezado 1. Seleccionamos encabezado 1 para escribir los titulos más importantes.
Cuando ya lo tenemos así empezamos la creacción del índice. Nos colocamos en el lugar en el que vamos a colocar en índice y pinchamos en Insertar>Indice>Indice y se nos abre una ventana



Le ponemos título a nuestro índice y pinchamos en la pestaña Entradas


Ahora le vamos a poner hiperenlaces a nuestros capítulos del índice así que en el centro de la ventana en “Estilo de carácter” abrimos el desplegable y elegimos “carácter de numeración”



Ahora en “Estructura” vemos varias marcas. Son la estructura de cada línea de entrada del índice:
E# Es el número correlativo en nuestro índice.
E Es el texto de cada entrada del índice.
T Es una Tabulación.
# Es la página de nuestro documento en la que se encuentra lo que marca el índice.

Tenemos que poner marcas de inicio y fin al texto “E” para que se cree el hiperenlace.
Ponemos el cursor en el espacio delante de “E” y pinchamos en “Hiperenlace”. Aparecerá una marca “HI”. Ahora hacemos lo mismo en el espacio posterior y aparece la marca “HF”.
Todo esto marcando antes de cada “Hiperenlace” la opción “Carácter de numeración”
Debería quedar así:



Pinchamos en “Aceptar” y nos debe de aparecer nuestro flamante índice. Si guardamos el documento en PDF también nos aparecerán nuestros enlaces. Luego sólo nos queda tunearlo a nuestro gusto con colores y demás, pero eso es otra historia.

Añadir tipo de letra


Muchos de nosotros que utilizamos Windows en el pasado, sabemos bien la forma de instalar tipos de letra, usando el administrador de fuentes. En el caso de Linux, en todas sus distribuciones, la cosa es algo parecida. Existe un gestor de tipos de letra que facilita esta faena, pero quizá por alguna razón tal gestor no aparece por ninguna parte. ¿Qué hacer entonces?

Bien, la cosa es sencilla si se analiza con cuidado. Este método (probado por mí) aplica en sistemas ubuntu-debian. Me tomaré el atrevimiento de ejemplificar con mi experiencia. Aclaro, todas las fuentes TrueType y/u OpenType que se usan bajo Windows, sirven perfectamente en Linux.

Yo me bajé un tipo de letra de máquina de escribir antigua de http://www.1001fonts.com/fonts_overview.html?page=1&category_id=27 en concreto Bohemian typewriter

1.- Lo primero, es abrir una terminal y teclear
sudo nautilus

Una vez abierto, debemos dirigirnos a la carpeta de fuentes que se halla en /usr/share/fonts.

2.- Se puede crear una carpeta que contenga las fuentes que queremos usar en este mismo lugar, o bien, se puede ingresar a la carpeta /truetype (si aplica) donde hallaremos distintas carpetas con las familias de fuentes. Yo preferí crear una carpeta dentro de /truetype donde pudiese añadir las fuentes, más que nada, para mantener el orden adecuado de las jerarquías. Esto quiere decir, se creará una carpeta con la familia de fuentes correspondientes a la tipografía a instalar. En mi caso, la carpeta fue /Bohemian

sudo mkdir /usr/share/fonts/truetype/Bohemian/
sudo cp “Bohemian typewriter.ttf” /usr/share/fonts/truetype/Bohemian

3.- Después de poner estas fuentes en la susodicha carpeta (o según el nombre escogido por alguien en particular), hay que salir de Nautilus. Al volver a la terminal, se debe teclear

sudo fc-cache /usr/share/fonts/truetype/Bohemian/

Es importante respetar TODAS las barras al escribir la ruta de donde se regenerará la caché de las tipografías. Esperamos a que el proceso acabe, aunque eso no tardará más de dos o tres segundos. A continuación, salimos de la terminal.

Si se siguieron todos los pasos adecuadamente, las tipografías recién instaladas quedarán disponibles para todas las aplicaciones que precisen de usar tipos de letra. Yo lo hice así y funcionó.



jueves, 25 de octubre de 2012

NoIP



Bueno pues vamos a configurar el cliente de no-ip en ubuntu, pero primero, Que es NO-IP???

Bien no-ip es un servicio de dirección a través de un servidor DNS y un cliente, bien mas explicado, la mayoría tenemos una ip dinámica  cada vez que nos conectamos a Internet nuestra ip cambia, nuestro modem nos da una diferente cada vez, el problema es cuando queremos montar un servidor o algún servicio en internet, si nuestra ip cambia constantemente como localizar nuestra pc.

Es decir si montamos un servidor web para localizarlo tendríamos que darle constantemente nuestra ip al cliente y esto es molesto y no es practico, la solución es un nombre de dominio dinámico  así nuestro nombre de dominio podría ser algo como: tuxfamily.serverhttp.com y también necesitamos un programa que nos actualizase constantemente el nombre de domino, esto es lo que hace el servicio de no-ip.

No-Ip tiene servidores DND (servidores de nombre de dominio). Un servidor DNS en una computadora que tiene un listado de direcciones de sitios web, con su correspondiente ip, así al visitar una pagina lo que realmente hace el navegador es tomar la URL o nombre de dominio o dirección del sitio, por ejemplo www.google.com es navegador no tiene idea de que computadora tiene esa pagina, así que se conecta con el servidor dns y este le devuelve la ip de www.google.com asi el navegador teniendo la dirección ip sabe a donde ir y se conecta a google.


Bien ahora que entendemos esto, debemos instalar el cliente de no-ip en linux este se encargara de chequear si nuestra ip ha cambiado y se conecta a no-ip y actualiza nuestro nombre de domino a nuestra nueva ip, así no hay problema, podemos montar un servidor aunque nuestra ip sea dinámica.

Para empezar nos registramos en www.no-ip.com y creamos una cuenta gratis, esa bastara.


Aquí tenemos la pagina, nos registramos, nos logeamos y procedemos a crear un nuevo host, solo debemos seleccionar "Add a Host"
Y ahora solo tenemos que ingresar el nombre de dominio
 yo puse tuxfamily y quedara así:

tuxfamily.sytes.net

ahora solo le damos al botón crear y listo ya tendrán su nombre de dominio listo



Como ven ya tengo algunos pero usaremos el recién creado:

tuxfamily.sytes.net

ahora vamos a instalar el cliente de ni-ip, lo podemos descargar pero también se encuentra en los repositorios, así que lo instalamos:

$ sudo aptitude install noip2

y al instalarse nos pide el nombre con el que nos registramos



Y claro la contraseña

Y nos pregunta el intervalo en minutos con el que queremos que refresque el DNS, cada cuanto tiempo chequea si cambio nuestra IP, por defecto esta 30 min yo lo voy a dejar asi, pueden poner el tiempo que quieran


 
Ahora, hemos creado mas de un dominio debemos seleccionar cual dominio queremos que se actualice en esta pc, bien, yo tengo 3 pero los otros 2 son para otras pcs asi que solo selecciono tuxfamily.sytes.net, si lo dejas en blanco, se seleccionaran todos los dominios que hayas creado.


Si tenemos mas de una interfaz de red, por ejemplo red cableada o wi-fi debemos seleccionar que dispositivo vamos a usar, en lo particular yo uso la cableada que se llama eth0.


Ahora nos pregunta si deseas que no-ip intente detectar tu ip externa, pues le decimos que si

Este asistente es para crear la configuración y es necesario para su funcionamiento, después de esto ya debería estar listo el cliente, en la shell deberíamos ver algo como esto:

 La configuración se ha creado en /var/lib/noip2/noip2.conf pero debemos indicarle a noip2 que use esa configuración con pero no nos dejara ya que el proceso esta activo así que tendremos que matar el proceso vamos al monitor de sistema en sistema> administración en la pestaña "ver" de damos en ver todos los procesos y buscamos el proceso noip2 y lo terminamos



Otra forma es ver el ID del proceso en mi caso es el 10145 y terminarlo desde la consola ejecutando:

$ sudo noip2 -K 10145

y listo el proceso teminara ahora solo falta indicarle donde esta la configuracion con

$sudo noip2 -c /var/lib/noip2/noip2.conf



Listo ya tendremos configurado correctamente el cliente para comprobarlo podemos checar informacion del cliente con el comando

$ sudo noip2 -S

Nos desplegara información del cliente ahora ya esta listo, acabo de instalar apache al ingresar tuxfamily.sytes.net deberíamos ver la pagina por defecto de apache, veamos.



Asi es funciona ahora no importa que tu ip cambie siempre podras accesar mediante el nombre de dominio, para cambial la configuracion primero matamos el proceso y despues ejecutamos

$ sudo noip2 -C

Por ultimo hacemos un ping a nuestro dominio y nos debe regresar nuestra IP externa

Todo listo y funcionando




Hasta aquí el tutorial de internet.
Después de instalarlo a mi no me funcionaba.

usuario@linux:~$ sudo noip2 -S
1 noip2 process active.

Process 7107, started as noip2 -c /var/lib/noip2/noip2.conf, (version 2.1.9)
Using configuration from /var/lib/noip2/noip2.conf
Last IP Address set 192.168.1.3
Account micuentadecorreo@hotmail.com
configured for:
host micuentanoip.myftp.org
Address check every 30 minutes, directly connected via /dev/eth0.
usuario@linux:~$

La ip que me da es la fija de la LAN y si hacíamos ping al dominio nos daba la ip local de la LAN


usuario@linux:~$ ping micuentanoip.myftp.org
PING micuentanoip.myftp.org (192.168.1.3) 56(84) bytes of data.
64 bytes from linux.local (192.168.1.3): icmp_seq=1 ttl=64 time=0.074 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=2 ttl=64 time=0.076 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=3 ttl=64 time=0.078 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=4 ttl=64 time=0.078 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=5 ttl=64 time=0.077 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=6 ttl=64 time=0.074 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=7 ttl=64 time=0.077 ms
64 bytes from linux.local (192.168.1.3): icmp_seq=8 ttl=64 time=0.075 ms
^C
--- micuentanoip.myftp.org ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7009ms
rtt min/avg/max/mdev = 0.074/0.076/0.078/0.004 ms
usuario@linux:~$ noip2 --help


después de hacer y deshacer todo lo que vi en internet di con la solución:

usuario@linux:~$ sudo /etc/init.d/noip2 stop
[sudo] password for usuario:
* Stopping No-IP.com dynamic address update noip2 [ OK ]
usuario@linux:~$ sudo noip2 -C

Auto configuration for Linux client of no-ip.com.

Please enter the login/email string for no-ip.com micuentadecorreo@hotmail.com
Please enter the password for user 'micuentadecorreo@hotmail.com' **********

Only one host [micuentanoip.myftp.org] is registered to this account.
It will be used.
Please enter an update interval:[30] 30
Do you wish to run something at successful update?[N] (y/N) y
Please enter the script/program name /var/lib/noip2/noip2.conf

New configuration file '/var/lib/noip2/noip2.conf' created.

usuario@linux:~$ sudo noip2



Ahora lo probamos


usuario@linux:~$ sudo noip2 -S
1 noip2 process active.

Process 8252, started as noip2, (version 2.1.9)
Using configuration from /var/lib/noip2/noip2.conf
Last IP Address set 79.1*4.4*.6*
Account micuentadecorreo@hotmail.com
configured for:
host micuentanoip.myftp.org
Executing /var/lib/noip2/noip2.conf upon successful update.
Updating every 30 minutes via /dev/eth0 with NAT enabled.
usuario@linux:~$


Como se observa la ip que nos da es la publica del router, no la fija de la LAN. Y si hacemos un ping al dominio nos dará la ip publica del router


usuario@linux:~$ ping micuentanoip.myftp.org
PING micuentanoip.myftp.org (79.1*4.4*.6*) 56(84) bytes of data.
64 bytes from 62.Red-79-154-43.dynamicIP.rima-tde.net (79.1*4.4*.6*): icmp_seq=1 ttl=255 time=0.599 ms
64 bytes from 62.Red-79-154-43.dynamicIP.rima-tde.net (79.1*4.4*.6*): icmp_seq=2 ttl=255 time=0.577 ms

--- micuentanoip.myftp.org ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7015ms
rtt min/avg/max/mdev = 0.547/0.571/0.599/0.025 ms
usuario@linux:~$


Ya está ...



Instalar servidor web Apache2


Pues eso, vamos allá. Empezamos la instalación:


sudo apt-get install apache2


lo probamos poniendo en el navegador http://localhost nos contesta It works eso es porque funciona.


Debemos editar como root el fichero /etc/apache2/sites-available/default y cambiar la linea donde nos dirige a la raiz del servidor por la carpeta donde nosotros queremos poner la raiz. Por defecto viene /var/www nosotros le ponemos la ruta de nuestros archivos /home/usuario/miservidor por ejemplo.


sudo nano /etc/apache2/sites-available/default


y eso cambiar en todos los sitios /var/www por /home/usuario/Escritorio


Para que permita los acentos editamos el fichero /etc/apache2/conf.d/charset y descomentar la linea


AddDefaultCharset UTF-8


Ahora reiniciamos el servidor


sudo etc/init.d/apache2 restart


y lo probamos (ejemplo)


http://miservidor.org


OK


Pues ahora que ya tenemos nuestro servidor Apache funcionando nos aparece un nuevo reto. ¿todo el mundo puede ver nuestras parginas web?. Pues como no me gusta vamos a ponerle acceso con usuario y contraseña.


#nano /etc/apache2/httpd.conf


buscamos eésta línea en la sección de Directory y sustituimos:
AllowOverride NONE
POR
AllowOverride AuthConfig


Y guardamos el archivo.
Ahora vamos a crear un archivo para las contraseñas y lo vamos a colocar en un lugar no accesible desde la red por ejemplo /etc/apache2/passwd
# mkdir /etc/apache2/passwd
# htpasswd -c /etc/apache2/passwd/password usuario


aparecerá:

New password: mypassword
Re-type new password: mypassword
Adding password for user usuario


htpasswd pedirá la contraseña, y luego la volverá a pedir para confirmarla.
lo que se consigue con esto es crear un archivo password en el directorio /etc/apache2/passwd con la información del login de: usuario y la contraseña.
El siguiente paso es configurar el servidor para que solicite una contraseña y decirle al servidor a qué usuarios se les permite el acceso y ésto lo haremos con el archivo .htaccess. Para ello nos vamos a la ruta de la raiz del servidor, en nuestro caso /home/usuario/Escritorio/publica y creamos allí el archivo .htaccess y lo editamos

# cd / home/usuario/Escritorio/publica
# touch .htaccess
# nano .htaccess


Y escri bimos


AuthType Basic
AuthName "Acceso al servidor”
AuthUserFile /etc/apache2/passwd/password
Require user usuario


El tipo de autenticación “Basic”, ”AuthName” es el texto que aparecerá cuando el sistema nos pida usuario y contraseña, la ruta donde se encuentra el archivo con la contraseña encriptada y que se requiere que el usuario sea “usuario”. Guardamos el archivo.
NOTA IMPORTANTE: EL archivo .htaccess solo debe contener la información listada arriba toda
otra directiva debe de ser comentada o borrada.
Para que los cambios tengan efecto, debemos reiniciar el servicio de apache .para esto tecleamos:

# /etc/init.d/apache2 restart


Ahora al buscar nuestro servidor en el navegador veremos ésto



O.K.