Páginas

sábado, 19 de diciembre de 2009

Unir Linux a un dominio Active Directory

Hace falta tener instalados todos los paquetes cliente de Samba, Winbind, y Kerberos. Tambien es
necesario que haya cuentas para los usuarios y equipos Linux en Active
Directory.
1. Instalar los paquetes:
# aptitude install samba smbclient winbind krb5-user krb5-config
Detener samba y winbind
# /etc/init.d/samba stop
# /etc/init.d/winbind stop

Luego, cree un grupo Linux que albergue Machine Trust Accounts:
# groupadd machines

Agregar los hosts importantes a /etc/hosts
# /etc/hosts
192.168.1.55 samba.dominio.com samba1
192.168.1.35 windows1.dominio.com windows1

Asegurese de que /etc/resolv.conf contenga su servidor DNS:
nameserver 192.168.1.45

Ahora pruebe a conectar con el KDC. No debería haber errores.
# kinit freedom@dominio.com
Password for freedom@dominio.com

Tendra que editar /etc/samba/smb.conf para autenticar frente a Active Directory, utilizando su propio nombre de dominio, nombre NETBIOS, cadena del servidor y seccion realm de Kerberos. Será algo asi:

/etc/samba/smb.conf

[global]
workgroup = dominio
netbios name = samba1
realm = DOMINIO.COM
server string = Samba server one
security = ADS
encrypt passwords = yes

idmap uid = 10000-20000
idmap gid = 10000-20000
winbind use default domain = yes
winbind enum users = Yes
winbind enum groups = Yes
winbind separator = +

log file = /var/log/samba/log
log level = 2
max log size = 50
hosts allow = 192.168.1.

[homes]
comment = Home Directories
valid users = %S
read only = No
browseable = No

Edite /etc/nsswitch.conf incluya estas lineas
passwd: files winbind
group: files winbind
shadow: files

Inicie Samba y winbind. Una el pc Linux al dominio Active Directory, también establezca una Machine Trust Acount con la cuenta de administrador del servidor AD ó la de cualquier usuario con derechos administrativos.
# net ads join -U Administrador%password

En este momento deberia ver una cuenta de equipo nueva con el nombre NetBIOS de su PC Linux (samba1) en AD, debajo de equipos en la carpeta Equipos.

finalmente tiene que configurar los PAM (Pluggable Authentication Modules) de manera que permita la autenticación vía Winbind.

#
# The PAM configuration file for the Shadow `login' service
#
auth requisite pam_securetty.so
auth requisite pam_nologin.so
auth required pam_env.so
auth sufficient pam_winbind.so
auth required pam_unix.so nullok use:first_pass

account requisite pam_time.so
account sufficient pam_winbind.so
account required pam_unix.so

session required pam_unix.so
session optional pam_time.so
session optional pam_motd.so
session optional pam_mail.so standard noenv
session required pam_mkhomedir.so skel=/etc/skel umask=0027

Reinicie su maquina Linux,luego intente entrar en el dominio.

Por diseño Windows dificulta la interoperabilidad. Pero los programadores de Linux, hacen posible esta y las redes mixtas. Importante es la directiva pam_mkhomedir.so crea directorios personales para los usuarios la primera vez que entran.

Notese que como las cuentas de usuario son gestionadas en el servidor AD y estan disponibles via Winbind y PAM para Linux, no sera necesario crear cuentas duplicadas en el Ordenador LINUX. Aunque puede seguir teniendo cuentas locales en la máquina Linux. Estas son invisibles para Active Dir, y permiten a los usuarios administrativos acceder con libertad al servidor local ó remotamente via SSH.

Fuente: Administracion de Sistemas GNU-Linux Lubanovic, Bill; Adelstein, Tom.
Redes en Linux Carla Schroder

domingo, 13 de diciembre de 2009

Arrancar en modo texto en Debian

Debian arranca X Windows automáticamente, probablemente con el Administrador de pantallas de Gnome (GDM), el Administrador de pantallas K (KDM), o el Administrador de pantallas X (XDM). En Sistemas Debian los niveles de ejecución del 2 al 5 son, de forma predeterminada, iguales. Seguramente ha elegido durante la instalación inicio gráfico, los niveles de ejecución del 2 al 5 se iniciarán con inicio de sesión gráfico. ¿Quiere configurarlo todo para que se inicie sólo con una sesión de texto?

Primero debe averiguar cuál es el administrador de pantallas que utiliza su sistema, eliminarlos de los niveles de ejecución apropiados. Para comprobarlo utilice:

$ ps ax | grep dm

2917 ? S 0:00 /usr/sbin/gdm
2921 tty7 S<> .. /init.d/gdm
/etc/rc1.d/K01gdm -> .. /init.d/gdm
/etc/rc2.d/K01gdm -> .. /init.d/gdm
/etc/rc3.d/K01gdm -> .. /init.d/gdm
/etc/rc4.d/K01gdm -> .. /init.d/gdm
/etc/rc6.d/K01gdm -> .. /init.d/gdm
/etc/rc5.d/S30gdm -> .. /init.d/gdm

Puede hacer lo mismo de otra manera:
Para que GDM se ejecute en el nivel de ejecución 5 y prioridad 30, muévase hacia /etc/rc5.d/ y cree un enlace simbólico a gdm:

# cd /etc/rc5.d/
# ln -s /etc/init.d/gdm S30gdm

y detenga el resto
# cd /etc/rc0.d/
# ln -s /etc/init.d/gdm K01gdm
# cd /etc/rc1.d/
# ln -s /etc/init.d/gdm K01gdm
# cd /etc/rc2.d/
# ln -s /etc/init.d/gdm K01gdm
# cd /etc/rc3.d/
# ln -s /etc/init.d/gdm K01gdm
# cd /etc/rc4.d/
# ln -s /etc/init.d/gdm K01gdm
# cd /etc/rc6.d/
# ln -s /etc/init.d/gdm K01gdm

Otra forma de habilitar un servicio, update-rc.d nombre defaults n-start n-stop:
# update-rc.d gdm defaults 30 01

Por último edite /etc/inittab para establecer el nivel de ejecución predeterminado para que los arranques del sistema se realicen en modo de texto. El nivel de ejecución predeterminado de Debian es 2.

# The default runlevel.
id:2:initdefault:

También debe saber que el arranque en modo texto sigue ofreciendo la opción de ejecutar X Windows cuando desee. Ejecute startx para ejecutar X Windows.

Si en el archivo /etc/inittab el 2 lo sustituye por 5 arrancará automáticamente X Windows.

update-rc.d es el comando utilizado por Debian para editar niveles de ejecución. El indicador -f quiere decir "forzar la eliminación de los symlinks aunque siga existiendo /etc/init.d/nombre". Así se preserva el script de inicio en /etc/init.d, algo que definitivamente no quiere eliminar.

Los servicios habilitados para iniciar en el arranque que no utilice, por ejemplo, pcmcia (es un periférico diseñado para computadoras portátiles), demonio cron, postfix, etc podrá desactivarlos de manera que no desperdiciará inútilmente los recursos de hardware.

miércoles, 25 de noviembre de 2009

Nslookup en modo interactivo

El modo interactivo de nslookup es mucho mas interesante. Ademas de buscar maquinas por su nombre, se puede tambien preguntar por cualquier registro DNS, y transferir la informacion de zona completa de un dominio.

Cuando se invoca sin argumentos, nslookup mostrara el servidor de nombres en uso y entrara en modo interactivo. En el prompt ‘>’ que se mostrara, puede teclear cualquier nombre de dominio por el que quiera preguntar. Por defecto, preguntara por registros de tipo A, es decir, aquellos que dan una direccion IP correspondiente al dominio introducido.

Esta puede ser una sesion con nslookup:
$ nslookup
Server: 80.58.61.250
Address: 80.58.61.250#53

** server can't find nslookup: NXDOMAIN

Preguntaremos por un nombre que tiene una IP asociada:
> pucmm.edu.do

Non-authoritative answer:
Name: pucmm.edu.do
Address: 200.26.171.83
>

Si intenta preguntar por un nombre que no tiene direccion IP asociada, pero se encuentran otros registros relacionados en el DNS, el programa respondera con un error “No type A records found” (no se encontraron registros de tipo A). Sin embargo, puede hacer preguntas para otro tipo de registros sin mas que usar el comando “set type”. Por ejemplo, para obtener el registro SOA de pucmm.edu.do:

> set type=SOA
> pucmm.edu.do

Non-authoritative answer:
pucmm.edu.do
origin = server1.pucmm.edu.do
mail addr = hostmaster.nic.do
serial = 2009112201
refresh = 7200
retry = 900
expire = 604800
minimum = 86400

Authoritative answers can be found from:
mail.pucmm.edu.do internet address = 200.26.171.82
>

De manera similar, se pueden pedir registros MX, etc. Y mediante la palabra ANY se
obtendran todos los RR asociados al nombre escrito.

> set type=MX
> pucmm.edu.do

Non-authoritative answer:
pucmm.edu.do mail exchanger = 0 mail.pucmm.edu.do.

Authoritative answers can be found from:
mail.pucmm.edu.do internet address = 200.26.171.82
>

Una aplicacion practica de nslookup para la depuracion es obtener la lista de servidores raiz. Esto puede hacerse pidiendo todos los registros NS asociados al dominio raiz:

> set type=NS
> .
Non-authoritative answer:
. nameserver = D.ROOT-SERVERS.NET.
. nameserver = L.ROOT-SERVERS.NET.
. nameserver = F.ROOT-SERVERS.NET.
. nameserver = B.ROOT-SERVERS.NET.
. nameserver = H.ROOT-SERVERS.NET.
. nameserver = I.ROOT-SERVERS.NET.
. nameserver = M.ROOT-SERVERS.NET.
. nameserver = J.ROOT-SERVERS.NET.
. nameserver = G.ROOT-SERVERS.NET.
. nameserver = C.ROOT-SERVERS.NET.
. nameserver = K.ROOT-SERVERS.NET.
. nameserver = A.ROOT-SERVERS.NET.
. nameserver = E.ROOT-SERVERS.NET.

Authoritative answers can be found from:
D.ROOT-SERVERS.NET internet address = 128.8.10.90
L.ROOT-SERVERS.NET internet address = 199.7.83.42
L.ROOT-SERVERS.NET has AAAA address 2001:500:3::42
F.ROOT-SERVERS.NET internet address = 192.5.5.241
F.ROOT-SERVERS.NET has AAAA address 2001:500:2f::f
B.ROOT-SERVERS.NET internet address = 192.228.79.201
H.ROOT-SERVERS.NET internet address = 128.63.2.53
H.ROOT-SERVERS.NET has AAAA address 2001:500:1::803f:235
I.ROOT-SERVERS.NET internet address = 192.36.148.17
M.ROOT-SERVERS.NET internet address = 202.12.27.33
M.ROOT-SERVERS.NET has AAAA address 2001:dc3::35
J.ROOT-SERVERS.NET internet address = 192.58.128.30
J.ROOT-SERVERS.NET has AAAA address 2001:503:c27::2:30
G.ROOT-SERVERS.NET internet address = 192.112.36.4
>

Bibliografia: Guia de Administracion de Redes con Linux. Olaf Kirch.
Exelente libro disponible en formato pdf gratuito. Traducido al español por el proyecto luCAS.

miércoles, 18 de noviembre de 2009

Conexion a Internet compartida IP WAN dinamica

Tendremos una conexión a Internet compartida y un cortafuegos utilizando un switch DLINK 4 puertos Ethernet.

Para este ensayo los componentes de hardware a utilizar:

- Un portatil con GNU-Linux Debian Lenny con dos interfaces de red. Una alámbrica que la denominaremos como la nombra el sistema: "eth0" y otra interface de nombre "wlan0" inalámbrica, la 3945ABG Intel Centrino, un swicth dlink con 4 puertos Ethernet, dos claves CAT 5E UTP conectores RJ45.

- Un segundo de sobremesa con Ubuntu Jaunty instalado y una interfaz de red Ethernet eth0.

Lo primero es desactivar el cortafuegos si lo tenemos activado. Puede ser necesario instalar los paquetes net-tools, ifrename y Nmap en ambos pc's.

Configuración de tarjetas de interfaz de red en Debian:
Configuramos la tarjeta NIC LAN con una IP estática del tipo A para nuestro esquema de red privada. No asignaremos la dirección LAN con DHCP.

Configuraremos la interfaz WAN con la información proporcionada por nuestro ISP. Tendremos direcciones IP local estáticas y una dirección PUBLICA dinámica. No nos conectamos a internet todavía.

Para entrar en el router debemos estar en la misma red. Conectamos las dos terminales RJ45 a las tarjetas eth0 del portatil y eth0 del sobremesa y al switch local dlink. Nos ponemos en la misma red:

# ifconfig eth0 192.168.1.2 netmask 255.255.255.0 eth0

Entramos en el router con ip por defecto 192.168.1.1, user=admin, passw=admin.

Ahora, clic en la pestaña SETUP y acto seguido en MANAGEMENT IP. Cambiamos la IP a 10.0.0.1 netmask 255.255.255.0, aplicar para guardar los cambios. La nueva IP del router es 10.0.0.1.

Editamos el archivo interfaces con vim, ¿porque vi?, porque respeta el formato, para que quede así:
# vim interfaces
## /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# lan interface
auto eth0
iface eth0 inet static
address 10.0.0.2
netmask 255.255.255.0
gateway 10.0.0.1
network 10.0.0.0
broadcast 10.0.0.255

# wan interface
auto wlan0
iface wlan0 inet dhcp

Para añadir los servidores DNS de nuestro ISP a /etc/resolv.conf (para las direcciones DHCP WAN no se sigue el mismo procedimiento):
#vim /etc/resolv.conf
nameserver 80.58.61.250
nameserver 80.58.61.254

Ahora, fijamos los nombres de las interfaces con ifrename:
Primero buscamos las direcciones MAC de nuestras interfaces con ifconfig
$ ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:21:9b:e2:ff:44
......
wlan0 Link encap:Ethernet HWaddr 00:1f:dd:fd:a0:3c

En este momento introducimos nuestros nombres de interfaces y direcciones MAC en /etc/iftab. Si no existe el archivo iftab deberá crearlo.

# vim /etc/iftab
## /etc/iftab
eth0 mac 00:21:9b:e2:ff:44
wlan0 mac 00:1f:dd:fd:a0:3c

En el pc de sobremesa, con el que queremos compartir la conexión a Internet, la configuración de la tarjeta eth0 alámbrica tendrá IP 10.0.0.3 estática y los dns de su proveedor de acceso a Internet (ISP). Fíjese que el gateway es la direccion IP local asignada al primer ordenador, (el portatil):
ipaddress 10.0.0.3
netmask 255.255.255.0
gateway 10.0.0.2
network 10.0.0.0
broadcast 10.0.0.255

Ahora añadimos los servidores DNS de nuestro ISP a /etc/resolv.conf (para las direcciones DHCP WAN no se sigue el mismo procedimiento):
#vim /etc/resolv.conf
nameserver 80.58.61.250
nameserver 80.58.61.254

Añadiremos estos parámetros del kernel al archivo /etc/sysctl.conf necesarios para la conexión a Internet compartida.
#vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.accept_source_route = 0

Llamaremos /usr/local/bin/fw_nat al siguiente guión copielo y hágalo ejecutable en rw para root con chmod 0700.

#############Inicio del guion###################
#!/bin/sh
##/usr/local/bin/fw_nat
#iptables firewall script for sharing
#broadband Internet, with no public services

#define variables
ipt="/sbin/iptables"
mod="/sbin/modprobe"
LAN_IFACE="eth0"
WAN_IFACE="wlan0"

#basic set of kernel modules
$mod ip_tables
$mod ip_conntrack
$mod iptable_filter
$mod iptable_nat
$mod iptable_mangle
$mod ipt_LOG
$mod ipt_limit
$mod ipt_state
$mod ipt_MASQUERADE

#add these for IRC and FTP
$mod ip_nat_ftp
$mod ip_nat_irc
$mod ip_conntrack_ftp
$mod ip_conntrack_irc

# Flush all active rules and delete all custom chains
$ipt -F
$ipt -t nat -F
$ipt -t mangle -F
$ipt -X
$ipt -t nat -X
$ipt -t mangle -X

#Set default policies
$ipt -P INPUT DROP
$ipt -P FORWARD DROP
$ipt -P OUTPUT ACCEPT
$ipt -t nat -P OUTPUT ACCEPT
$ipt -t nat -P PREROUTING ACCEPT 43303031443230333138303133

$ipt -t nat -P POSTROUTING ACCEPT
$ipt -t mangle -P PREROUTING ACCEPT
$ipt -t mangle -P POSTROUTING ACCEPT

#this line is necessary for the loopback interface
#and internal socket-based services to work correctly
$ipt -A INPUT -i lo -j ACCEPT

#Enable IP masquerading
$ipt -t nat -A POSTROUTING -o $WAN_IFACE -j MASQUERADE

#Enable unrestricted outgoing traffic, incoming
#is restricted to locally-initiated sessions only
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -A FORWARD -i $WAN_IFACE -o $LAN_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$ipt -A FORWARD -i $LAN_IFACE -o $WAN_IFACE -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Accept important ICMP messages
$ipt -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
$ipt -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
$ipt -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT

#Reject connection attempts not initiated from inside the LAN
$ipt -A INPUT -p tcp --syn -j DROP
#############final del guion########################

Los nuevos parámetros sysctl debe abrirlos, para ello teclee desde el terminal:
# /sbin/sysctl -p

Ejecute firewall_nat
# /usr/local/bin/fw_nat

Conecte la interfaz WAN a su router de banda ancha:
# /sbin/ifup wlan0
# iwconfig wlan0 essid "WLAN_AB"
# iwconfig wlan0 essid "WLAN_AB" key 43303031443230333183303433
# dhclient wlan0

Después de ejecutar dhclient wlan0, Verá algo como:
Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/wlan0/00:1f:dd:fd:a0:3c
Sending on LPF/wlan0/00:1f:dd:fd:a0:3c
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 11
DHCPOFFER from 10.185.228.9
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPACK from 10.185.228.9
bound to 192.168.1.34 -- renewal in 122773 seconds.

Ya tiene que poder enviar ping desde y hacia las ip's 10.0.0.3 y 10.0.0.2 y navegar por Internet en cualquiera de los dos ordenadores.

Probado el 28 octubre 2009.

Bibliografía: Redes en Linux. Guia de Referencia. Carla Schroder.
Guia de Administracion de Redes con Linux. Olaf Kirch & Terry Dawson.

domingo, 8 de noviembre de 2009

Hamachi

Hamachi - VPN










Activar en el kernel soporte TUN/TAP y recompilar el nucleo:
Device Drivers  --->
  Network device support  --->
    [*] Universal TUN/TAP device driver support
Verificar la salida de dmesg
# dmesg | grep TUN
Universal TUN/TAP device driver 1.5 (C)1999-2002 Maxim Krasnyansky

Cargar módulo tun
# modprobe tun
# lsmod
Module                  Size  Used by
tun                     7296  0

Comprobar que nuestro kernel ya lo soporta y el dispositivo ha sido creado:
$ ls /dev/net/tun
/dev/net/tun

Para x86_64 bits será necesario instalar:
$ sudo apt-get -y install build-essential ia32-libs upx-ucl

Para x86_32 bits:
$ sudo apt-get -y install build-essential upx-ucl

Descargue la última versión de hamachi desde http://files.hamachi.cc/linux/.

Entre en el directorio donde lo descargó:

$ cd /home/debian/descargas/

Descomprimir el archivo:
$ tar -zxvf hamachi-0.9.9.9-20-lnx.tar.gz

Entramos en el directorio de hamachi
$ cd hamachi-0.9.9.9-20-lnx/


Instalar hamachi
$ sudo make install

Verá este mensaje:
Hamachi is installed

Crear grupo hamachi
$ sudo groupadd hamachi

Agregar root al grupo hamachi
$ sudo gpasswd -a root hamachi

Añadir usuario al grupo hamachi (en mi caso lenny)
$ gpasswd -a $USER hamachi

Cambiando al propietario de la carpeta /home/lenny/.hamachi
$ sudo chown -R $USER:$USER ~/.hamachi

Cambiando permisos
$ sudo chmod 760 /var/run/tuncfg.sock

Cambiando a grupo hamachi
$ sudo chgrp hamachi /var/run/tuncfg.sock

Iniciar tuncfg
$ sudo tuncfg
tuncfg: already running

Si sale este error:
  # /etc/init.d/tuncfg start
 * Starting tuncfg ...
tuncfg: cannot stat() /dev/net/tun -- No such file or directory
tuncfg: visit http://www.hamachi.cc/tuntap for more info  [ !! ]

primero hay que asegurarse que este archivo existe:
# ls -l /var/run/tuncfg.sock
ls: cannot access /var/run/tuncfg.: No such file or directory

No existe, tiene que crearlo:
# touch /var/run/tuncfg.sock


Cambie los permisos:
# chmod 1254 /var/run/tuncfg.sock

Falta crear el device tun:
# mkdir /dev/net
# mknod /dev/net/tun c 10 200

Intentelo de nuevo:
# /etc/init.d/tuncfg start
 * Starting tuncfg ...                [ ok ]

Crear una configuración inicial e indicándole el path de instalación:
$ sudo hamachi-init -c /usr/bin/hamachi
Initializing Hamachi configuration (/usr/bin/hamachi). Please wait ..

generating 2048-bit RSA keypair .. ok
making /usr/bin/hamachi/ directory .. ok
saving /usr/bin/hamachi/client.pub .. ok
saving /usr/bin/hamachi/client.pri .. ok
saving /usr/bin/hamachi/state .. ok

Authentication information has been created. Hamachi can now be started with
'hamachi start' command and then brought online with 'hamachi login'.

Configuracion inicial en home (normalmente no es necesario si lo instala por primera vez, puede obviar este paso):

$ sudo hamachi-init -f
Initializing Hamachi configuration (/home/lenny/.hamachi). Please wait ..

generating 2048-bit RSA keypair .. ok
making /home/lenny/.hamachi directory .. ok
saving /home/lenny/.hamachi/client.pub .. ok
saving /home/lenny/.hamachi/client.pri .. ok
saving /home/lenny/.hamachi/state .. ok

Iniciar el programa:
$ sudo /usr/bin/hamachi start
Starting Hamachi hamachi-lnx-0.9.9.9-20 .. ok

Login a Hamachi
$ sudo /usr/bin/hamachi login
Logging in ......... ok

Llegado a este punto configure su nick:
$ sudo /usr/bin/hamachi set-nick xenaunix

Acceder a una red existente o crear una nueva.

Unirse a una red existente:
$ sudo /usr/bin/hamachi join NETLENNY
Password:
Joining NETLENNY .. ok

O crear una red nueva:
$ sudo /usr/bin/hamachi create NETGENTOO

Por último, Tras unirnos o crear una red hay que ponerla online:
$ sudo /usr/bin/hamachi go-online NETGENTOO

Ver lista de redes y usuarios:
$ sudo /usr/bin/hamachi list
[NETLENNY]
5.3.129.195
5.7.236.132
5.177.3.194
5.183.232.165
5.205.183.13

Obtener los nicknames
sudo /usr/bin/hamachi get-nicks
Retrieving peers' nicknames ..

Listar usuarios con su nick

$ sudo /usr/bin/hamachi list
[NETLENNY]
5.3.129.195 DEBIANHP
5.7.236.132 NETGENTOO
5.177.3.194 NETLENNY
5.183.232.165 NETARCH
5.205.183.13 NETXENA

Averiguar el estado de hamachi:
$ sudo /usr/bin/hamachi
Hamachi, a zero-config virtual private networking utility, ver 0.9.9.9-20

version : hamachi-lnx-0.9.9.9-20
pid : 4456
status : logged in
nickname : NETGENTOO

También podemos borrar una red creada por nosotros:
$ sudo /usr/bin/hamachi delete NETGENTOO

Comando para desligarnos o desunirnos de una red:
$ sudo /usr/bin/hamachi leave NETLENNY

A continuación un sencillo guión impedirá repetir teclear todos os camandos:
Guardelo en /etc/init.d/ con el nombre de hamachi.

#!/bin/bash
#######################################
### script de inicio, parada y reinicio de hamachi ###
#######################################
case "$1" in
start)
echo "Iniciando hamachi..."
/usr/bin/sudo /sbin/tuncfg
/usr/bin/sudo /usr/bin/hamachi start
/usr/bin/sudo /usr/bin/hamachi login
/usr/bin/sudo /usr/bin/hamachi go-online NETGENTOO
sudo /usr/bin/hamachi set-nick NETGENTOO
;;
stop)
echo "Deteniendo hamachi..."
/usr/bin/sudo /usr/bin/hamachi stop
;;
restart|force-reload)
echo "Reiniciando hamachi..."
/usr/bin/sudo /usr/bin/hamachi start
sleep 1
/usr/bin/sudo /usr/bin/hamachi stop
;;
*)
exit 1
;;
esac
exit 0


Hacerlo ejecutable:
$ sudo chmod +x /etc/init.d/hamachi

Para ejecutarlo:
$ /etc/init.d/hamachi start
Iniciando hamachi...
tuncfg: already running
Starting Hamachi hamachi-lnx-0.9.9.9-20 .. ok
Logging in .......... ok
Going online in NETGENTOO .. ok
Setting nickname .. ok

Si queremos detener hamachi:
$ /etc/init.d/hamachi stop
Deteniendo hamachi...
Shutting down .. ok

Utilizando restart como parámetro reiniciamos hamachi:
$ /etc/init.d/hamachi restart
Reiniciando hamachi...
Starting Hamachi hamachi-lnx-0.9.9.9-20 .. ok
Shutting down .. ok

El programa hamachi-gui provee de interfaz gráfica a hamachi.

Descargar de http://hamachi-gui.sourceforge.net/index.html

Instalar hamachi-gui:
$ sudo dpkg -i hamachi-gui_0.9.6-1_amd64-hardy.deb

Ejecute el siguiente comando donde -c le indica a hamachi-gui donde encontrará el programa hamachi, nohup para que al cerrar la terminal el programa continue corriento. Si no se utilizan redirecciones todas las salidas del programa se dirigen a un fichero llamado nohup.out. & Se utiliza para recuperar inmediatamente el control del terminal:
$ sudo nohup hamachi-gui -c /usr/bin/hamachi > /dev/null 2>&1 &

Un script para iniciar la interfaz gráfica?, guardelo como hamachi_gui.sh.:
#!/bin/bash
########################################
### script hamachi-gui ######################
#######################################

echo "Iniciando interfaz grafica..."
/usr/bin/sudo /usr/bin/nohup /usr/bin/hamachi-gui -c /usr/bin/hamachi > /dev/null 2>&1 &

Hágalo ejecutable:
$ sudo chmod +x /etc/init.d/hamachi.

Para ejecutarlo:
$ sudo ./hamachi-gui.sh
[sudo] password for debian:
Iniciando interfaz grafica...

Activar hamachi durante el inicio de GNU-Linux:
$ sudo update-rc.d hamachi defaults

Desactivar hamachi durante el arranque:
$ sudo update-rc.d-f hamachi remove

sábado, 31 de octubre de 2009

Soporte usb virtualbox Debian

Probado en Debian y Ubuntu 9.04 Jaunty

Abra un Terminal y tecleae (vim o su editor favorito):
$ vim /etc/fstab

Agregue estas líneas:
# soporte usb para virtualbox
none /proc/bus/usb usbfs devgid=46,devmode=666 0 0

Guardar y teclear:
$ sudo mount -a

Ahora añada su nombre de USUARIO al grupo virtualbox en el archivo /etc/group
$ vim /etc/group, queda más o menos así (por ejemplo, xena):
vboxusers:x:125:xena

o puede hacerlo desde Sistema -> Administración -> Usuarios y Grupos -> desbloquear -> gestionar grupos -> vboxusers -> Propiedades -> marque el usuario, (por ejemplo, xena ), con el que hace login.

Por último en configuración de virtualbox habilite usb.
Reinicie virtualbox.

miércoles, 28 de octubre de 2009

Cortafuegos conexion a Internet compartida IP WAN estatica

Construir nuestra propia caja cortafuegos en hardware x86 para nuestra conexión a Internet por cable o DSL utilizano nuestra distribución GNU-Linux favorita.

Tendremos una conexión a Internet compartida y un cortafuegos, necesitamos saber que componentes de hardware utilizar.

Aunque existen distribuciones de GNU-Linux especializadas en cortafuegos o firewall para este ensayo utilizaremos:

- Un portatil con GNU-Linux Debian Lenny con dos interfaces de red. Una alámbrica que la llamaremos tal y como la nombre mi sistema "eth0" y otra interface de nombre "wlan0" inalámbrica, la 3945ABG Intel Centrino.
- Un segundo pc de sobremesa con Ubuntu 9.04 instalado y un cable cruzado puente para pasarle la conexión a Internet.

Lo primero es desactivar el cortafuegos si lo tenemos activado. Puede ser necesario instalar los paquetes net-tools, ifrename y Nmap en ambos pc's.

Configuración de tarjetas de interfaz de red en Debian:
Configuramos la tarjeta NIC LAN con una IP estática del tipo c para nuestro esquema de red privada. No asignaremos la dirección LAN con DHCP. Configuraremos la interfaz WAN con la información proporcionado por nuestro ISP, o sea, una dirección ip local estática y una dirección PUBLICA dinámica. No nos conectamos a internet todavía.

Editamos el archivo interfaces con vim, ¿porque vi? porque respeta el formato, para que quede así:
# vim interfaces
## /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# lan interface
auto eth0
iface eth0 inet static
address 10.0.0.10
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255

#wan interface
auto wlan0
iface wlan0 inet static
address 78.122.0.45
netmask 255.255.255.0
gateway 192.168.153.1

Guardamos y cerramos

Estos datos se los proporciona su ISP

Ahora, fijamos los nombres de las interfaces con ifrename:
Primero buscamos las direcciones MAC de nuestras interfaces con ifconfig
$ ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:21:9b:e2:cd:44
......
wlan0 Link encap:Ethernet HWaddr 00:1f:dd:ff:a0:3c

En este momento introducimos nuestros nombres de interfaces y direcciones MAC en /etc/iftab. Si no existe el archivo iftab deberá crearlo.

# vim /etc/iftab
## /etc/iftab
eth0 mac 00:21:9b:e2:cd:44
wlan0 mac 00:1f:dd:ff:a0:3c

La dirección LAN la dirección de la pasarela o gateway que será instalada en todos los pc's de nuestra LAN.

En el pc de sobremesa con el que queremos compartir la conexión a Internet la configuración de la tarjeta eth0 alámbrica será ip fija gw 10.0.0.10 y los dns de su ISP:
ip 10.0.0.20
netmask 255.255.255.0
gateway 10.0.0.10
dns1 80.58.61.250
dns2 80.58.61.254

Añadiremos estos parámetros del kernel al archivo /etc/sysctl.conf necesarios para la conexión a Internet compartida.
#vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.accept_source_route = 0

Llamaremos /usr/local/bin/firewall_nat al siguiente guion copielo y hágalo ejecutable en rw para root con chmod 0700. Es justo decir que este guion es obra de Schroder autora de Networking Linux.

#!/bin/sh
##/usr/local/bin/firewall_nat
#iptables firewall script for sharing
#broadband Internet, with no public services

#define variables
ipt="/sbin/iptables"
mod="/sbin/modprobe"
LAN_IFACE="eth0"
WAN_IFACE="wlan0"

#basic set of kernel modules
$mod ip_tables
$mod ip_conntrack
$mod iptable_filter
$mod iptable_nat
$mod iptable_mangle
$mod ipt_LOG
$mod ipt_limit
$mod ipt_state
$mod ipt_MASQUERADE

#add these for IRC and FTP
$mod ip_nat_ftp
$mod ip_nat_irc
$mod ip_conntrack_ftp
$mod ip_conntrack_irc

# Flush all active rules and delete all custom chains
$ipt -F
$ipt -t nat -F
$ipt -t mangle -F
$ipt -X
$ipt -t nat -X
$ipt -t mangle -X

#Set default policies
$ipt -P INPUT DROP
$ipt -P FORWARD DROP
$ipt -P OUTPUT ACCEPT
$ipt -t nat -P OUTPUT ACCEPT
$ipt -t nat -P PREROUTING ACCEPT

$ipt -t nat -P POSTROUTING ACCEPT
$ipt -t mangle -P PREROUTING ACCEPT
$ipt -t mangle -P POSTROUTING ACCEPT

#this line is necessary for the loopback interface
#and internal socket-based services to work correctly
$ipt -A INPUT -i lo -j ACCEPT

#Enable IP masquerading
$ipt -t nat -A POSTROUTING -o $WAN_IFACE -j MASQUERADE

#Enable unrestricted outgoing traffic, incoming
#is restricted to locally-initiated sessions only
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -A FORWARD -i $WAN_IFACE -o $LAN_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$ipt -A FORWARD -i $LAN_IFACE -o $WAN_IFACE -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Accept important ICMP messages
$ipt -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
$ipt -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
$ipt -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT

#Reject connection attempts not initiated from inside the LAN
$ipt -A INPUT -p tcp --syn -j DROP

Los nuevos parámetros sysctl debe abrirlos:
# /sbin/sysctl -p

Ejecute firewall_nat
# /usr/local/bin/firewall_nat

Conectese a la interfaz WAN utilizando su interfaz wireless:
# /sbin/ifup wlan0
# iwconfig wlan0 essid "WLAN_LIN"
# iwconfig wlan0 essid "WLAN_LIN" key 43303031443230333183303133
# dhclient wlan0

Después de ejecutar dhclient wlan0, Verá algo como:
Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

wmaster0: unknown hardware address type 801
wmaster0: unknown hardware address type 801
Listening on LPF/wlan0/00:1f:dd:ff:a0:3c
Sending on LPF/wlan0/00:1f:dd:ff:a0:3c
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 11
DHCPOFFER from 10.185.228.9
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPACK from 10.185.228.9
bound to 192.168.1.34 -- renewal in 122773 seconds.

Conectese al portátil desde el pc sobremesa utilizando un cable cruzado, interfaz eth0 y los datos mencionados anteriormente utilizando un gestor de redes o manualmente:
# eth0 pc_sobremesa
ip 10.0.0.20
netmask 255.255.255.0
gateway 10.0.0.10
dns1 80.58.61.250
dns2 80.58.61.254

Ya tiene que poder enviar ping desde y hacia las ip's 10.0.0.20 y 10.0.0.10 y navegar por Internet desde cualquiera de los dos pc's.

Linux es genial!

lunes, 19 de octubre de 2009

Home en una particion separada

Partiremos del supuesto que posee un sistema GNU-Linux en una particion y quiere separar /home del resto del sistema. Supondremos también que ya ha creado esa nueva partición ext3 ó ext4. Lo siguiente será montar la partición la nueva partición para realizar la copia de archivos. Una vez tenemos claro de dónde a dónde vamos a mover, tenemos que tener montada la partición nueva para poder copiar a ella los archivos.

$ sudo mkdir /mnt/soekris
$ sudo mount /dev/sda9 /mnt/soekris

La copiar de archivos se puede realizar desde el propio sistema, utilizando un terminal:

Nos desplazamos a nuestro directorio /home

$ cd /home

Como usuario root:
# cp -ax . /mnt/soekris

Despues de realizada la copia de archivos, renombramos el antiguo /home

$ cd /
# mv /home/  home.antiguo
# mkdir /home

Desmontar:
# umount /dev/sda9 /mnt/soekris

Montamos home en la nueva partición:
# mount /dev/sda9 /home

El siguiente paso es editar el /etc/fstab, para que el sistema monte la particion en cada reinicio.

Usamos el editor que queramos:
# vim /etc/fstab

Y añadimos esta linea al final.
/dev/sda9 /home ext3 defaults 0 2

En Debian squeeze:
21fdbd40-ea93-4597-8af6-a0dcd38559c5  /home  ext3  defaults 0  2
Agregar un usuario nuevo:

Conviertase en root con la orden su


Una vez que usted es un usuario root puede agregar un nuevo usuario con el comando adduser, indicando las opciones seguido del login (nombre de la cuenta a añadir):

# adduser -s /bin/bash -g users -G audio,video,plugdev,portage,usb,cdrom -m hypatia

#  passwd hypatia

Si desea dar al usuario 'susana' una cuenta en su sistema podría ejecutar 'useradd susana' para crear un inicio de sesión para ella.

Ahora establezca una contraseña para la cuenta ejecutando "passwd susana"

Lo siguiente que necesitas hacer es crear un directorio de inicio para ella. Esto normalmente sólo implica la ejecución de:

# mkdir /home/susana
# chown susana:users /home/susana

Esto crea un directorio con el mismo nombre que la cuenta de inicio de sesión bajo el directorio /home. Con chown el directorio pasa a ser propiedad del usuario.
Si se omite el comando chown el usuario no tendrá permiso para guardar archivos dentro de su propio directorio.

miércoles, 7 de octubre de 2009

Enrutamiento estatico subredes

Configuración de enrutamiento estático a través de subredes.

Hay varias formas de conseguirlo. Una de ellas es crear rutas estáticas de router a router. Me explico, supongamos que tienes tres subredes y tres routers:



Router A -- > 192.168.10.100 eth1 subred -- > 10.0.0.0/24
Router B -- > 172.16.5.125 eth1 subred -- > 10.0.1.0/24
Router C -- > 172.24.0.25 eth1 subred -- > 10.0.2.0/24

Cada router va a necesitar dos rutas:

En el Router A las rutas podrian establecerse asi;

# route add -net 172.16.5.0/24 gw 192.168.10.100 eth1
# route add -net 172.24.0.0/24 gw 192.168.10.100 eth1

En el Router B:

# route add -net 192.168.10.0/24 gw 172.16.5.125 eth1
# route add -net 172.24.0.0/24 gw 172.16.5.125 eth1

En el Router C:

# route add -net 192.168.10.0/24 gw 172.24.0.25 eth1
# route add -net 172.16.5.0/24 gw 172.24.0.25 eth1

Desde este momento los hots de las tres subredes pueden comunicarse entre si.
Para eliminar las rutas:
# route del -net 192.168.10.0/24

Debe conocer las mascaras de subred y no cometer errores tipograficos. ¿Y como calcular direcciones?
Hay un programa disponible para cualquier gnu-linux llamado ipcalc que permite averiguar todo lo que necesita saber para una sola red:

$ ipcalc 172.16.5.0/24

Supongamos que quiere dividir una red 172.150.0.0 en tres subredes para 90 hosts, digale a ipcalc su mascara de red y cuantos hosts quiere en cada segmento:

$ ipcalc 172.150.0.0/16 --s 35 25 30

Address: 172.150.0.0 10101100.10010110. 00000000.00000000
Netmask: 255.255.0.0 = 16 11111111.11111111. 00000000.00000000
Wildcard: 0.0.255.255 00000000.00000000. 11111111.11111111
=>
Network: 172.150.0.0/16 10101100.10010110. 00000000.00000000
HostMin: 172.150.0.1 10101100.10010110. 00000000.00000001
HostMax: 172.150.255.254 10101100.10010110. 11111111.11111110
Broadcast: 172.150.255.255 10101100.10010110. 11111111.11111111
Hosts/Net: 65534 Class B

1. Requested size: 35 hosts
Netmask: 255.255.255.192 = 26 11111111.11111111.11111111.11 000000
Network: 172.150.0.0/26 10101100.10010110.00000000.00 000000
HostMin: 172.150.0.1 10101100.10010110.00000000.00 000001
HostMax: 172.150.0.62 10101100.10010110.00000000.00 111110
Broadcast: 172.150.0.63 10101100.10010110.00000000.00 111111
Hosts/Net: 62 Class B

2. Requested size: 25 hosts
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000
Network: 172.150.0.64/27 10101100.10010110.00000000.010 00000
HostMin: 172.150.0.65 10101100.10010110.00000000.010 00001
HostMax: 172.150.0.94 10101100.10010110.00000000.010 11110
Broadcast: 172.150.0.95 10101100.10010110.00000000.010 11111
Hosts/Net: 30 Class B

3. Requested size: 30 hosts
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000
Network: 172.150.0.96/27 10101100.10010110.00000000.011 00000
HostMin: 172.150.0.97 10101100.10010110.00000000.011 00001
HostMax: 172.150.0.126 10101100.10010110.00000000.011 11110
Broadcast: 172.150.0.127 10101100.10010110.00000000.011 11111
Hosts/Net: 30 Class B

Needed size: 128 addresses.
Used network: 172.150.0.0/25
Unused:
172.150.0.128/25
172.150.1.0/24
172.150.2.0/23
172.150.4.0/22
172.150.8.0/21
172.150.16.0/20
172.150.32.0/19
172.150.64.0/18
172.150.128.0/17

Quiere que las rutas estáticas sean persistentes?.

En Debian, agréguelas a /etc/network/interfaces
para su interfaz correspondiente. (Como verá, ésta corresponde a la subred conectada al router A, las B Y C son facilmente deducibles):

auto eth1
iface eth1 inet static
address 192.168.10.100
netmask 255.255.255.0
gateway 12.34.56.78
broadcast 192.168.10.255

up route add -net 172.16.5.0/24 gw 192.168.10.100 eth1
up route add -net 172.24.0.0/24 gw 192.168.10.100 eth1
down route del -net 172.24.0.0/24
down route del -net 172.16.5.0/24

Otra manera de conseguirlo, (aburridamente facil), es tener los tres routers en la misma red, en cuyo caso no será necesario configurar ruta alguna:

Router A - 192.168.10.150 eth1
Router B - 192.168.10.151 eth1
Router C - 192.168.10.152 eth1

¿Y de donde he aprendido todo eso, uhhh que tio que sabe!!
Bibliografía: Carla Schroder "Todo sobre administracion GNU-LINUX" aqui esta todo y mas... os lo recomiendo. Sencillamente imprescindible.

viernes, 21 de agosto de 2009

Crear Imagen de particion con SystemRescuecd y FSArchiver

Crear una imagen de partición con FSArchiver GNU-Linux

Esta utilidad esta incluida en el livecd SystemRescue

Lo de siempre cambiar la boot sequence desde la bios para arrancar desde la unidad lectora de cd/dvd.

Crear un directorio para montar la partición en la que se guardará el archivo de imagen, (en mi caso /dev/sda6):

root@sysresccd /root % mkdir imagen

Luego:

root@sysresccd /root % mount /dev/sda6 /root/imagen

Para ver el listado de los sistemas de archivos detectados:

root@sysresccd /root % fsarchiver probe simple

[=====DEVICE=====] [==FILESYS==] [=====LABEL=====] [====SIZE====] [MAJ] [MIN]
[/dev/sda1 ] [ext4 ] [ubunturoot] [ 14.82 GB] [ 8] [ 1]
[/dev/sda3 ] [ext4 ] [ubuntu_home] [ 21.42 GB] [ 8] [ 3]
[/dev/sda5 ] [swap ] [ ] [ 4.38 GB] [ 8] [ 5]
[/dev/sda6 ] [ext4 ] [UTILS ] [ 16.16 GB] [ 8] [ 6]
[/dev/sda7 ] [ext3 ] [archlinux] [ 8.01 GB] [ 8] [ 7]
[/dev/sda8 ] [ext3 ] [archlinux_home ] [ 9.02 GB] [ 8] [ 8]

Crear imagen de la particion /dev/sda1 (sistema de archivos ext4):

root@sysresccd /root % fsarchiver -v savefs /root/imagen/ubunturoot.fsa /dev/sda1

Al finalizar verá algo como esto:

Statistics for filesystem 0 * files successfully processed:...regfiles=149160, directories=17177, symlinks=46007, hardlinks=12, specials=130 * files with errors:....................regfiles=0, directories=0, symliks=0, hardlinks=0, specials=0

Para obtener información del archivo:

root@sysresccd /root/imagen % fsarchiver archinfo /root/imagen/ubunturoot.fsa

====================== archive information ====================== Archive type: filesystems Filesystems count: 1 Archive id: 4a8e7198 Archive file format: FsArCh_001 Archive created with: 0.5.8 Archive creation date: 20090821-10:57:26 Archive label: archive-label Compression level: 3 (gzip level 6) Encryption algorithm: none ===================== filesystem information ==================== Filesystem id in archive: 0 Filesystem format: ext4 Filesystem label: Filesystem uuid: 17cd5f7e-6278-4b02-ac40-60ef27862bfb Original filesystem size: 14.59 GB (15665754112 bytes) Space used in filesystem: 4.39 GB (4712210432 bytes)

root@sysresccd /root/imagen % ls
ubunturoot.fsa

Restaurar la imagen previamente creada será tan sencillo como teclear:

root@sysresccd /root/imagen % fsarchiver restfs /root/imagen/ubunturoot.fsa id=0, dest=/dev/sda1

Comandos y argumentos de fsarchiver:

root@sysresccd /root % fsarchiver

the first argument must be a command.
====> fsarchiver version 0.5.8 (2009-07-12) - http://www.fsarchiver.org <==== Distributed under the GPL v2 license (GNU General Public License v2).
* usage: fsarchiver [] [ [ [...]]]

* savefs: save filesystems to an archive file (backup a partition to a file)
* restfs: restore filesystems from an archive (overwrites the existing data)
* savedir: save directories to the archive (similar to a compressed tarball)
* restdir: restore data from an archive which is not based on a filesystem
* archinfo: show information about an existing archive file and its contents
* probe simple|detailed: show list of filesystems detected on the disks

-o: overwrite the archive if it already exists
-v: verbose mode (can be used several times to increase the level of details)
-d: debug mode (can be used several times to increase the level of details)
-A: allow to save a filesystem which is mounted in read-write (live backup)
-a: allow to run savefs when partition mounted without the acl/xattr options
-z : valid compression level are between 1 (very fast) and 9 (very good)
-s : split the archive into several files of megabytes each
-j : create more than one compression thread. useful on multi-core cpu
-c : encrypt/decrypt data in archive. password length: 6 to 64 chars
-h: show help and information about how to use fsarchiver with examples
-V: show program version and exit
Support for optional features: (enabled or disabled during compilation):
* support for lzo compression:............yes
* support for lzma compression:...........yes
* support for encryption:.................yes
Warnings:
* fsarchiver is still in development, don't use it for critical data yet.

Instalar kde 3.5 en ubuntu, instrucciones de instalación repositorio.

Fuente: http://apt.pearsoncomputing.net/install.html

Agregue estas líneas a su archivo sources.list /etc/apt/sources.list:

Para Jaunty (4 lineas):

deb http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu jaunty main
deb http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu intrepid main

Para Intrepid (2 lineas):

deb http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/kde3-maintainers/ppa/ubuntu intrepid main

Agregar la firma GPG clave:

wget http://apt.pearsoncomputing.net/public.gpg
sudo apt-key add public.gpg

Instalar KDE 3.5:

sudo apt-get update
sudo apt-get install kubuntu-desktop-kde3

domingo, 9 de agosto de 2009

VI EDITOR

Vi Editor de texto.

vi es uno de los editores de texto más poderosos. Conocer lo básico de vi facilitara la edición de ficheros de texto.

vim es una versión mejorada de vi que añade color a la sintaxis

Para acceder a vim desde la consola teclee vim nombre_fichero, verá algo como esto:

vim fichero.txt

~
~
~

"fichero.txt" [Fichero nuevo] 0,0-1 Todo

El cursor se mueve utilizando teclas hjkl.
h (izquierda) j (abajo) k (arriba) l (derecha), o las teclas de dirección (flechas).

ESC :q! INTRO para salir del editor sin guardar los cambios pulse
ESC :qw INTRO para salir del editor guardando los cambios.

Pulsando ESC se cancela un mandato no deseado.

Pulse ESC y luego i para insertar texto, al finalizar de insertar texto pulse ESC.

Utilice la x para borrar un carácter. Después utilice ESC para salir del modo de borrado y volver al modo normal.
Teclee :w para guardar los cambios seguido de INTRO.

Para guardar el fichero con otro nombre:

saveas otro_nombre.txt INTRO

Para borrar:

dw se utiliza para borrar hasta el final de la palabra
d$ para borrar hasta el final de la linea.
de para borrar desde el cursor hasta el final de la palabra, sin incluir el espacio.
dd para borrar una linea entera
3dd para borrar tres lineas

Reemplazar:

Para sustituir el carácter bajo el cursor pulse r seguido del carácter.

Mandato change:

cw para cambiar desde el cursor hasta el final de la palabra,
c$ para cambiar hasta el final de la línea.

Para deshacer previas acciones teclee u
Deshacer todos los cambios en una linea U
Deshacer lo deshecho CTRL-R

Poner (mandato PUT)

dd para borrar una linea (queda almacenada en el buffer de vim)
p para pegar el texto que ha sido borrado anteriormente con dd.

Sustituir texto:

Pulse ESC
:s/anterior/actual/g para sustituir anterior por actual INTRO
:s/anterior/actual para sustituir anterior por actual en una línea (primera coincidencia)
:s/anterior/actual/g para sustituir todos los anterior por actual en una línea
:%s/anterior/actual/g para sustituir anterior por actual en todo el fichero
:%s/anterior/actual/gc para pedir confirmación en cada caso

El símbolo % significa que se aplicará el procedimiento a todo el fichero
La letra s que se realizará la búsqueda de la cadena de caracteres definida después de la barra (/) por la cadena de caracteres después de la siguiente barra (/) en toda la línea, y c pide confirmación.

Buscar utilizando opciones:

:/relativo para buscar la palabra relativo. Encuentre todas las coincidencias pulsando la letra n

:set ic La opción ic distinguirá entre mayúsculas y minúsculas (case-sensitive):

:set ingnorecase Encontrara todas las palabras sin distinguir caracteres mayúsculas o minúsculas.

:/relativo Busque nuevamente la palabra. Encontrará todas las coincidencias de la palabra sin distinguir mayúsculas o minúsculas

:set hls Utilícese para resaltar las coincidencias.

:nohl Cancelar lo que se encuentra resaltado de los resultados.

:wq! ++enc=utf8 Codifica el fichero en UTF-8.

Pulse una R mayúscula para sustituir más de un carácter. Para salir pulse .
Teclee a (minúscula) para añadir texto DESPUÉS del carácter que está sobre el cursor.
Pulsando una A mayúscula añade automáticamente texto al final de la línea.
Pulse o si desea abrir una línea debajo del cursor y sitúa el cursor en la línea abierta en modo Insert.
Con O mayúscula se abre una línea encima del cursor. 



Seleccionar texto:


Linea Visual: Seleccionamos lineas. Para ello, desde el modo de comandos simplemente escribimos MAY+v y con el cursor nos movemos para ampliar o reducir las lineas incluidas en la selección.



Pegar:

Simplemente con la tecla "p". Pegará justo despues de la linea en la que se encuentre.

Archivo ~/.vimrc

"numera las lineas
set number
"activa el resaltdo de sintaxis
syntax on
"sombreamos todo lo que se pase de 80 caracteres
"au BufEnter,BufNewFile,BufRead * exec 'match Todo /\%>' . 80 . 'v.\+/'
"ver siempre la posicion del cursor
set ruler

Bibliografía:
vim avanzado: http://amix.dk/blog/viewEntry/51
Implementación de servidores con GNU-Linux Joel Barrios Dueñas
vimtutor Escrito por Michael C. Pierce y Robert K. Ware.


Linux es genial! 

jueves, 30 de julio de 2009

Instalando Arch Linux

Hoy he instalado Arch Linux sin entorno grafico. Luego, desde la linea de comandos, he configurado la conexion wired (alambrica), descargado los paquetes necesarios tambien la wireless (inalambrica), con chipset ipw3945 fue configurada.

Destacar que en la instalacion sera necesaria la instalacion del paquete wirelees-tools para la utilizacion de la utilidad iwconfig, iwlist, etc. Tambien los paquetes: wpa_supplicant, dhcpcd o dhclient. Tambien la configuracion del archivo /etc/rc.conf con la inclusion de:

eth0="dhcp"
wlan0="dhcp"
Interfaces=(eth0,wlan0)

En el apartado gateway:
gateway="default gw 192.168.1.1" ## o el que corresponda en su caso.

En cuanto al escritorio el elegido fue gnome. Tambien puede instalar KDE 3.5 paquetes o KDE 4 paquetes utilizando KDEmod:

http://chakra-project.org/download-kdemod.html

Recuerde que arch linux esta basada en la distro preferida por los gurus de GNU-Linux GENTOO.

Puede utilizarse la guia oficial de instalacion que encontrara en el sitio oficial de arch linux: http://wiki.archlinux.org/

En este sitio tambien hay un tutorial sencillo para la instalacion de arch linux www.fibergran.wordpress.com/2009/01/11/instalando-arch-linux/

Experiencias y consejos de este sitio dedicado a arch linux
http://www.wiki.archlinux.org.

Tengo que decir que la comunidad de Arch Linux me sorprendio por la cantidad de informacion en diferentes idiomas que maneja y que permitiran aclarar cualquier duda. Gracias.

domingo, 26 de julio de 2009

Recuperar grub Gentoo

Recuperar GRUB. 0.97

Escasos los errores del Grub que impidan arrancar un sistema linux. Necesitará un livecd con fdisk y grub. Por ejemplo, el CD de Gentoo Linux mininal.

# mount -v -t ext3 /dev/sda3 /mnt/gentoo
# mount -v -t ext2 /dev/sda2 /mnt/gentoo/boot
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# export PS1="(chroot) $PS1"

fdisk /dev/sda
Establecer la bandera de arranque presionando la letra "a" luego selecciona la particion. Guardar y salir.

Acceder a la configuración de Grub escribiendo "grub" en la consola. Una vez que la detección del BIOS ha pasado:

grub> root (hd0,0)
grub> setup (hd0)
grub> quit

Reiniciar

Linux es genial!

domingo, 12 de julio de 2009

Configuración de una red Wi-Fi

Fuente: Josep Jorba Esteve, Remo Suppi Boldrito
Depósito legal: B-31.591-2007
Curso completo, libre descarga: http://www.uoc.edu

Para la configuración de interfaces Wi-Fi se utiliza básicamente el paquete wireless-tools (además de ifconfig o ip). Este paquete utiliza el comando iwconfig para configurar una interfaz inalámbrica, pero también se puede hacer a través del /etc/network/interfaces.

Ejemplo: Configurar una WiFi en Debian Sarge(Etch) (similar en FC6)

Supongamos que queremos configurar una tarjeta de red inalámbrica Intel Pro/Wireless 2200BG (muy común en una gran cantidad de portátiles -p. ej. Dell, HP...-). Normalmente el software que controla las tarjetas se divide en dos partes: el módulo software que se cargará en el kernel a través del comando modprobe y el firmware que es el código que se cargará en la tarjeta y que nos da el fabricante (consultar la página de Intel para este modelo). Como estamos hablando de módulos, es interesante utilizar el paquete de debian module-assistant que nos permite crear e instalar fácilmente un módulo (otra opción sería instalar las fuentes y crear el módulo correspondiente).
El software (lo encontramos en la página del fabricante y lo denomina ipw2200) lo compilaremos e instalaremos con el comando m-a del paquete module-assistant.

aptget install module-assistant (instalo el paquete)
m-a -t update
m-a -t -f get ipw2200
m-a -t -build ipw2200
m-a -t install ipw2200

Desde la dirección indicada por el fabricante (en su documentación) se descarga la versión del firmaware compatible con la versión del driver, en nuestro caso para el driver versión 1.8 lel firmware es la 2.0.4 obtenida desde la página:

http://ipw2200.sourceforge.net/firmware.php

Y a continuación se descomprime e instala el firmware:

tar xzvf ipw2200fw2.4.tgz C /tmp/fwr/
cp /tmp/fwr/*.fw /usr/lib/hotplug/firmware/

Con esto se copiarán tres paquetes (ipw2200-bss.fw, ipw2200-ibss.fw y ipw2200-sniffer.fw).
Luego se carga el módulo con: modprobe ipw2200, se reinicia el sistema (reboot) y luego desde consola podemos hacer dmesg | grep ipw, este comando nos mostrará algunas líneas similares a las que se muestran a continuación y que indicarán que el módulo está cargado (se puede verificar con lsmod):

ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, git1.0.8
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
...

Luego se descarga el paquete wirelesstools que contiene iwconfig y entre otras con aptget install wirelesstools y ejecutamos iwconfig y saldrá algo parecido a:

eth1 IEEE 802.11b ESSID:"Nombre-de-la-Wifi"
Mode:Managed Frequency:2.437 GHz
Access Point:00:0E:38:84:C8:72
Bit Rate=11 Mb/s TxPower=20 dBm
Security mode:open
...

Se debe a continuación configurar el archivo de redes por ejemplo gedit /etc/network/interfaces y añadir la interfaz wifi eth1 por ejemplo:

iface eth1 inet dhcp
pre-up iwconfig eth1 essid "Nombre de la Wifi"
pre-up iwconfig eth1 key open XXXXXXXXXX

La líneas pre-up ejecuta el comando iwconfig antes de activar la interfaz. Esta configuración se hace si se quiere utilizar un servicio en modo DHCP (asignación automática de IP, se verá más adelante). Se debe utilizar en vez de dhcp la palabra static y además poner las siguientes líneas por ejemplo (como en una tarjeta de cable):

address 192.168.1.132
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.1.1

Un método alternativo para configurar la interfaz es:

iface eth1 inet dhcp
wireless-essid "Nombre de la Wifi"
wireless-key 123456789e

A continuación se puede poner en marcha la red con ifup eth1 y nos dará información sobre la conexión, su estado y calidad de recepción. Para buscar (scan) las redes WiFi disponibles (puntos de acceso) podemos utilizar iwlist scan, lo que nos mostrará información de las redes disponibles, y si nos queremos conectar a una diferente, se puede utilizar el comando iwconfig para cambiar de red o punto de acceso (Access
Point).

viernes, 29 de mayo de 2009

Compilación en Debian del kernel (Debian way)

Fuente: http://kernel-handbook.alioth.debian.org/
Josep Jorba Esteve. Ingeniero superior y doctor en Informática por la UAB. Curso completo, (12 modulos) disponibles para descargar:
Master internacional de Software Libre Universidad Autonoma de Barcelona


En Debian, hay que añadir la configuración por el método denominado Debian Way. Un método que nos permite construir el kernel de una forma flexible y rápida.

Para el proceso serán necesarias una serie de utilidades (instalar los paquetes, o similares): kernel-package, ncurses-dev, fakeroot, wget, bzip2.

Podemos observar el método desde dos perspectivas, reconstruir un kernel equivalente al proporcionado por la distribución, o bien personalizarlo y utilizar así el método para construir un kernel equivalente personalizado.

En el primer caso, pasamos por obtener la versión de las fuentes del kernel que nos proporciona la distribución (sea x la revisión del kernel 2.6):

# apt-get install linux-source-2.6.x
$ tar -xvjf /usr/src/linux-source-2.6.x.tar.bz2

donde obtenemos las fuentes y las descomprimimos (el paquete deja el archivo en /usr/src).

Instalación de herramientas básicas:

# apt-get install build-essential fakeroot

Comprobar dependencias de las fuentes

# apt-get build-dep linux-source-2.6.x

Y construcción del binario, según configuración preestablecida del paquete
(semejante a la incluida en los paquetes image oficiales del kernel en Debian):

$ cd linux-source-2.6.x
$ fakeroot debian/rules binary

Existen algunos procedimientos extra para la creación de kernels en base a diferentes niveles de patch proporcionados por la distribución, y posibilidades de generar diferentes configuraciones finales (puede verse la referencia de la nota para complementar estos aspectos).

En el segundo caso, más habitual, cuando deseamos un kernel personalizado,
deberemos realizar un proceso semejante a través de un paso de personalización típico (por ejemplo, mediante make menuconfig), los pasos:

Obtención y preparación del directorio (aquí obtenemos los paquetes de la
distribución, pero es equivalente obteniendo las fuentes desde kernel.org):

# apt-get install linux-source-2.6.x
$ tar xjf /usr/src/linux-source-2.6.x.tar.bz2
$ cd linux-source-2.6.x

a continuación realizamos la configuración de parámetros, como siempre podemos basarnos en ficheros .config que hayamos utilizado anteriormente, para partir de una configuración conocida (para la personalización, también puede usarse cualquiera de los otros métodos, xconfig, gconfig...):

$ make menuconfig

construcción final del kernel dependiendo de initrd o no, sin initrd disponible (hay que tener cuidado con la versión utilizada; a partir de cierta versión del kernel, puede ser obligatorio el uso de imagen initrd):

$ make-kpkg clean
$ fakeroot make-kpkg --revision=custom.1.0 kernel_image

o bien si disponemos de initrd disponible (construido ya)

$ make-kpkg clean
$ fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image

El proceso finalizará con la obtención del paquete asociado a la imagen del kernel, que podremos finalmente instalar:

# dpkg -i ../linux-image-2.6.x_custom.1.0_i386.deb

Añadimos, también en este apartado, otra peculiaridad a tener en cuenta en Debian, que es la existencia de utilidades para añadir módulos dinámicos de kernel proporcionados por terceros. En particular la utilidad module-assistant permite automatizar todo este proceso a partir de las fuentes del módulo.

Necesitamos disponer de los headers del kernel instalado (paquete linux-headers-version) o bien de las fuentes que utilizamos en la compilación del kernel. A partir de aquí module-assistant puede utilizarse interactivamente, permitiendo seleccionar entre una amplia lista de módulos registrados previamente en la aplicación, y puede encargarse de descargar el módulo, compilarlo e instalarlo en el kernel existente.

También en la utilización desde línea de comandos, podemos simplemente especificar (m-a es equivalente a module-assistant):

# m-a prepare
# m-a auto-install nombre_modulo

Lo cual prepara el sistema para posibles dependencias, descarga fuentes del módulo, compila y, si no hay problemas, instala para el presente kernel. El nombre del módulo podemos observarlo de la lista interactiva de module-assistant.

sábado, 16 de mayo de 2009

Ip publica y privada linea de comandos

Fuente: go2linux.org

Averiguar direccion ip publica utilizando la consola.

# echo "Mi IP pública es " && wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

Aunque la ip privada podemos verla utilizando el comando ifconfig (sin argumentos), en este caso lo combinaremos con el comando sed para obtener la salida de solo la direccion ip privada.

# ifconfig | sed -n "/inet addr:.*255.255.255.0/{s/.*inet addr://; s/ .*//; p}"

Interesante, como todo en GNU-Linux, esto no es posible en sistemas NO UNiX.

Notese que el ejemplo anterior sera valido en una red de tipo 192.168.1.0/24. Evidentemente tendra que adaptarlo a las particularidades de su Red.

viernes, 15 de mayo de 2009

Instalar y configurar tarjeta Ethernet

Instalar y configurar una tarjeta Ethernet como interfaz de Red.

Instalar tarjeta 3COM 3C905

- Ingrese como root.
- Buscar el modulo a utilizar para el dispositivo.
# /sbin/modprobe -l

Para enumerarlos una pagina a la vez
# /sbin/modprobe -l | less

Primero tendremos que googlear un poco para averiguar que modulo utiliza esta tarjeta, encontramos esta pagina
http://www.linux-cd.com.ar/manuales/rh9.0/rhl-rg-es-9/s1-modules-ethernet.html, aqui vemos que nuestra tarjeta:
Hardware
3Com EtherLink PCI III/XL Vortex (3c590, 3c592, 3c595, 3c597) Boomerang (3c900, 3c905, 3c595) utiliza el
modulo
3c59x.o

Utilizamos el comando cut para delimitar la busqueda (barra), que nos saque por pantalla las columnas 8 y 10, en orden alfabetico (sort) y filtramos solo las lineas que contienen 3c5loquesea (3c5*), que es lo que nos interesa.
# modprobe -l | cut -d'/' -f8,10 | sort | grep -i 3c5*
3c501.ko
3c503.ko
3c505.ko
3c507.ko
3c509.ko
3c515.ko
3c59x.ko
bt3c_cs.ko
eeprom_93cx6.ko
NCR53c406a.ko
sym53c416.ko
sym53c8xx_2

Instalamos el modulo
# /sbin/insmod 3c59x

Para asegurarse que el modulo ha sido instalado correctamente.
# /sbin/lsmod

Utilice ifconfig para asignarle una direccion IP
# ifconfig eth0 192.168.1.15 up

Manipular la tabla de enrutamiento para establecer las rutas estaticas en la red.
# /sbin/route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0

Ver si la tarjeta Ethernet esta activa en la red.
# sbin/ifconfig

miércoles, 13 de mayo de 2009

CISCO SOBRE LINUX - CCNA

Fuente: Antonio Perpiñan http://www.codigolibre.org
http://www.cisco.com
Técnicas De Routers Cisco. ARIGANELLO.

1. Sistemas de almacenamiento en el router

i) ROM

La memoria ROM es utilizada para almacenar el programa de arranque
del router (boot), partes del sistema operativo y los programas de
diagnóstico del arranque. Es una memoria de solo lectura por
lo que para realizar actualizaciones de la ROM es necesario
reemplazar un chip de la placa madre del router.


ii) Flash Memory

La memoria flash almacena el sistema operativo. Es una memoria que
permite operaciones de lectura y escritura, lo cual hace posible
realizar actualizaciones del sistema operativo sin tener que
reemplazar ningún chip.

El contenido de la memoria flash no se pierde cuando se apaga o
reinicia el router.



iii) RAMf

La memoria RAM es utilizada para almacenar las partes operativas
del sistema como por ejemplo las tablas de rutas o la configuración
activa del sistema. Además esta memoria puede ser utilizadas
para el encolado de paquetes o el mantenimiento de información
cacheada.

El contenido de la memoria RAM se pierde cuando se apaga o
reinicia el router.


iv) NVRAM

La NVRAM es una memoria RAM no volátil, es decir, que no
pierde los datos que contiene cuando el equipo se apaga o reinicia.

Es utilizada generalmente para almacenar la configuración
de arranque del router.


2. Proceso de arranque del router Cada vez que se enciende el router, ejecuta unos diagnósticos de auto-test para verificar el correcto funcionamiento de la CPU, la memoria y los interfaces de red. Tras ello, se ejecuta el software de arranque almacenado en la ROM que busca una imagen válidad del sistema operativo (IOS). Hay tres lugares donde puede localizarse la imagen del sistema operativo:
En la memoria flash
En un servidor TFTP
En la ROM

En el caso de que no se encontrase una imagen válida del sistema operativo el sistema entraría en el modo ROM Monitor. Si por el contrario se encuentra una imagen válida, se carga y se procede a buscar el fichero de configuración almacenado generalmente en la NVRAM. Este fichero almacena la configuración de los interfaces de red (direcciones IP, máscaras de red ...), procesos de enrutado y características del medio. En el caso de que el fichero de configuración no existiese, el sistema operativo ejecutaría un cuestionario para crear un nuevo fichero de configuración. En cambio, si existe el fichero, el sistema operativo lo ejecuta línea a línea.

3. Cisco IOS y CLI
El Cisco IOS (Internetworking Operating System) es el sistema operativo empleado por los routers de Cisco Systems. El Cisco IOS CLI (Command-Line Interface) es el método principal para la configuración, monitorización y mantenimiento de equipos Cisco. El acceso a este interfaz se realiza normalmente a través del puerto de consola de los routers. El conector de este puerto puede ser de diferentes tipos. Uno muy común es un conector RJ45 (lo cual NO quiere decir que sea un interfaz Ethernet). Se suele emplear un cable especial que ofrece un conector RJ45 en un extremo y serie para un PC en el otro. El interfaz CLI permite ejecutar comandos del Cisco IOS y una vez configurado el router se puede permitir el acceso a dicho interfaz a través de un interfaz de red además de por el puerto de consola.

4. Conectándose al puerto de consola
Enchufen a la corriente su router pero no lo enciendan todavía. Se les ha suministrado un cable para conectarse al mismo. Un extremo (RJ45) va al puerto de consola del router, el otro (DB9) al puerto serie del PC. Ejecuten la aplicación minicom en el PC y configuren el puerto serie para 9600 bps, 8 bits de datos, 1 de parada, sin paridad. Ahora enciendan el router. Deberían poder ver el proceso de arranque del mismo.

Conexión al puerto de consola
Ingrese al sistema como ROOT y ejecute:
# minicom -s

Despues de ejecutar el minicom teclee CTRL-a y luego z o para configurar el puerto serial de minicom. Asegurese que la configuracion se desplega asi.

A - Serial Device : /dev/ttyS0
B - Lockfile Location : /var/lock
C - Callin Program :
D - Callout Program :
E - Bps/Par/Bits : 9600 8N1
F - Hardware Flow Control : Yes
G - Software Flow Control : No


Guarde su configuracioncon cualquier nombre, en este caso algo como “cisco-1700”. La proxima vez que deseamos configurar este router utilizando el minicom, solo deberemos escribir en la linea de comandos:

# minicom cisco-1700


Al finalizar el arranque del router seguramente se encontrarán (a través del minicom) con algo como:

Router>

En este punto estamos en modo de comandos de usuario (User EXEC Mode) que es el de menos privilegios y con el que no vamos a poder cambiar la configuración del router. Puede ver los comandos disponibles desde este modo con el interrogante:

Router> ?
Exec commands:
<1 -99="-99"> Session number to resume
access-enable Create a temporary
Access-List entry access-profile Apply user-profile to interface
clear Reset functions
...

Para continuar viendo el resto de los comandos podemos dar a barra espaciadora o enter.

Podemos obtener ayuda de cada comando e incluso de las opciones del comando terminándolo con un interrogante. Por ejemplo:

Router> show ?
backup Backup status
clock Display the system clock
compress Show compression statistics
dialer Dialer parameters and statistics
flash: Display information about flash: file system
history Display the session command history

Podemos limpiar la pantalla usando los comandos de minicom:
Ctrl+A, luego C

Podemos ver la versión del sistema operativo y el hardware disponible (RAM, interfaces...) mediante el comando show version.
Router> show version

¿Qué versión del sistema operativo tiene su router?
¿Cuánta RAM tiene instalada?
¿De cuántos interfaces dispone su router?
¿De qué tipo son?
Identifíquelos físicamente en el router.

Con el comando show interfaces:
Router>show interfaces

pueden ver los interfaces de red de los que dispone el router y muchas características de estos. Averigüe la dirección MAC de cada uno de sus interfaces Ethernet.

Averigüe cómo ver los ficheros que existen en la flash con el comando show flash.
Router>show flash

Podemos acceder a información referente a IP con las opciones de show ip:
Router>show ip interface

(vea un poco las opciones existentes). Por ejemplo podemos ver información referente a IP de cada interfaz con show ip interface, especificar un solo interfaz u obtener información muy resumida de la configuración ip de los interfaces, para esto pruebe:

Router>show ip interface brief

También podemos ver la tabla de rutas con:
Router>show ip route

Lo más probable es que ahora vea que ningún interfaz tiene asignada dirección IP y que no hay ninguna entrada en la tabla de rutas. Podremos remedio a todo esto en breve.

A continuacion damos muchos comandos que podemos ejecutar fuera del modo privilegiado, que son para mostrar configuraciones actuales...
Ver informacion de version show version
Ver config actual del DRAM show running-config
Ver config de startup (NVRAM) show startup-config
Ver archivo del IOS y espacio de flash show flash
Ver los logs del router en su memoria show log
Ver esado de la interfaz e0 show interface e0
Ver todas las interfaces del router show ip interfaces brief
Ver tipo de cable serial en s0 show controllers 0 (note el espacio entre 's' y '0')
Ver resumen de los dispositivos cdp conectados show cdp neighbor

Desplegar informacion detallada de todos los dispositivos show cdp entry *
Desplegar protocolos de enrutamiento actual show ip protocol
Desplegar tabla de enrutamiento de IP show ip route
Desplegar listas de acceso show access-lists

Revisar que el enrutador puede ver el switch ISDN show isdn status
Revisar una conexion PVC de un Frame Relay show frame-relay pvc

Mostrar estadisticas de un trafico lmi show frame-relay lmit
Desplegar la tabla del ARP invera show frame-relay map

Ahora algunos ejemplos:
Router> show version
Displaya la configuración del hardware, la versión de software, los nombres de los archivos de configuración e IOS.

Router> show processes
Displaya información acerca de los procesos activos.

Router> show protocols
Displaya el estado de los protocolos configurados en el nivel 3.

Router> show mem
Muestra las estadísticas de la memoria del router, incluyendo las estadísticas de la memoria libre del pool.

Router> show ip route
Displaya las entradas en la tabla de rutas.

Router> show flash
Muestra la información de la memoria flash.

Router> show interfaces
Muestra las estadísticas de todas las interfaces configuradas en el router.

Ahora mostramos comandos basicos de operaciones:
Entrar al modo privilegiado enable
Returnar al modo de usuario disable
Salir del Router logout/exit/quit
Regresar al ultimo comando Flechas cursoras arriba/Ctrl+P
Regresar al proximo comando Flecha curso abajo/Ctr+N
Suspender o abortar Shift y Ctrl y 6 luego x
Refrescar la salida Ctr+R
Completar un comando TAB

Muchos de estos comandos podemos ejecutarlo en modo no privilegiado pero, muchos no, asi que mejor nos convertimos en root, digamos, ejecutando enable.
Router> enable

Nos cambia al modo privilegiado, si colocamos un password nos la pide en en este momento sino NO.
Si deseamos coloca la contraseña “solucion” al router lo hacemos de la siguiente manera:
Router# con?
configure connect

Router# configure t

Router# configure terminal
Router(config)# enable secret solucion
Router(config)# Ctrl+Z
Router# copy running-config startup-config

o posiblemente

Router# write Router# exit

Ahora nos encontramos nuevamente en el modo de usuario y si deseamos regresar al modo de administracion nos pide la clave:
Router> enable Password: solucion
Router#

Ahora podemos dejarle una lista de otros comandos del modo CONFIG
Establecer la password de consola a solucion Router(config)#line con 0
Router(config-line)#password solucion
Router(config-line)#login

Establecer la contrasena del telnet a clave
Router(config)#line vty 0 4
Router(config-line)#password solucion
Router(config-line)#login

Detener que la consolo se inactive o time out
Router(config)#line con 0
Router(config-line)#exec-timeout 0 0

Establecer la contrasena a solucion
Router(config)#enable password solucion

Establecer la contrasena secreta a fcld, esta es sobre la de enable
Router(config)#enable secret fcld
y esta encriptada dentro del archivo config.

Habilitar una interfaz
Router(config-if)#no shutdown

Deshabilitar una interfaz
Router(config-if)#shutdown

Establecer la velocidad del reloj del router con el cable DCE a 64K R
outer(config-if)clock rate 64000

Establecer el ancho de banda a 64K al interfaz serial
Router(config-if)bandwidth 64
Note que los ceros no faltan

Agregar una direccion IP a una interfaz
Router(config-if)#ip addr 10.1.1.1 255.255.255.0

Habilitar RIP en todas las interfaces 172.16.x.y
Router(config)#router rip
Router(config-router)#network 172.16.0.0

Deshabilitar RIP
Router(config)#no router rip

Habilitar el IRGP con un AS de 200, a todas las interfaces
Router(config)#router igrp 200
Router(config-router)#network 172.16.0.0

Deshabilitar IGRP
Router(config)#no router igrp 200

Ruta estatica de la red es 172.16.1.0, con un a mascara de 255.255.255.0, el proximo salto es 172.16.2.1, a un costo de 5 salto
Router(cfig)#ip route 172.16.1.0 255.255.255.0 172.16.2.1 5

Deshabilitar CDP para el router por completo
Router(config)#no cdp run

Habilitar CDP para todo el router
Router(config)#cdp run

Deshabilitar CDPen una interfaz
Router(config-if)#no cdp enable

Ya que sabemos configurar el router necesitamos poder almacenar nuestros cambios y poder iniciar el router desde otras fuentes que no sean el flashran, etc.

Alguardar configuracion actual desde el DRAM a NVRAM copy running-config startup-config
Llevar config del NVRAM al DRAM copy startup-config running-config
Copiar config del DRAM a un servidor TFTP copy runing-config tftp
Juntar el config TFTP con la config actual en el DRAM copy tftp runing-config
Backup the IOS onto a TFTP server copy flash tftp
Upgrade the router IOS from a TFTP server copy tftp flash

Ejemplo de Recuperar Contrasena de Router CISCO desde LINUX:
Router>enable
Password:********
Password:*******
Password:*******
% Bad secrets

UPS!! parece que se nos olvido la contrasena... primero vamos a ver nuestra version ....

Router>show version
Cisco Internetwork Operating System Software
IOS (tm) 2500 Software (C2500-JS-L), Version 12.0(7)T, RELEASE SOFTWARE (fc2)
Copyright (c) 1986-1999 by cisco Systems, Inc.
............. .............
Configuration register is 0x2102

Router>
!--- El router acaba de encenderse y durante el arranque
!--- desde minicom se preciona la Ctrl+A+f para enviar
!--- sequencia enviada al router.

Abort at 0x10EA83C (PC)
>o/r 0x2142
>i

System Bootstrap, Version 5.2(8a), RELEASE SOFTWARE
Copyright (c) 1986-1995 by cisco Systems
2500 processor with 8192 Kbytes of main memory
.............
--- System Configuration Dialog ---
Would you like to enter the initial configuration dialog? [yes/no]:
!--- Presione Ctrl-C
!
Press RETURN to get started!
00:00:08: %LINK-3-UPDOWN: Interface Ethernet0, changed state to up
00:00:08: %LINK-3-UPDOWN: Interface Serial0, changed state to up
...............
...............

00:01:34: %LINEPROTO-5-UPDOWN: Line protocol on Interface TokenRing0, te to down

Router>enable
Router#copy start running-config
Destination filename [running-config]? [Enter]
1278 bytes copied in 10.448 secs (127 bytes/sec)

Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#enable secret solucion
Router(config)#int e0
Router(config-if)#no shutdown
*Mar 1 00:04:12.863: %LINK-3-UPDOWN: Interface Ethernet0, changed state to up
*Mar 1 00:04:13.947: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0, changed state to up

Router(config-if)#int s0
Router(config-if)#no shut
*Mar 1 00:04:18.107: %LINK-3-UPDOWN: Interface Serial0, changed state to up
*Mar 1 00:04:19.167: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to up

Router(config-if)#int s1
Router(config-if)#no shut
Router(config-if)#
*Mar 1 00:04:27.055: %LINK-3-UPDOWN: Interface Serial1, changed state to up
*Mar 1 00:04:28.071: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1, changed state to up

Router(config-if)#exit
Router(config)#config-register 0x2102
Router(config)#^Z Router#wr mem
*Mar 1 00:05:09.035: %SYS-5-CONFIG_I: Configured from console by console
Building configuration... [OK]
Router#

6. Configuración IP básica de un interfaz Ethernet del router
Para hacer cualquier cambio en la configuración del router lo primero que debemos hacer es pasar al modo de comandos privilegiado (priviledged EXEC mode). Para ello ejecute nuevamente:
Router> enable

En este punto el router podría (y debería) solicitar una password. De momento esa password está quitada pero en los siguientes pasos la configuraremos de nuevo.

Si el comando se ejecuta con éxito el prompt debería cambiar a algo como:
Router#
para indicarnos que estamos en modo privilegiado.

Tras terminar el reinicio vuelva a entrar en modo privilegiado. De ahí pasamos al modo de configuración con el comando:
Router# configure terminal

Lo primero que vamos a hacer es activar que el equipo actúe como un router. Para ello emplearemos el comando ip. Vea las opciones de este comando con: Router(config)# ip ? Lo activamos escribiendo:
Router(config)# ip routing

A continuación vamos configurar la dirección IP de uno de los interfaces Ethernet. Para ello hemos de pasar al modo de configuración de ese interfaz. Esto se hace con el comando interface especificando a continuación el nombre del interfaz. Entre en modo configuración del primer interfaz Ethernet de su router. El prompt debería ser ahora:
Router(config-if)#

Una vez en este modo primero le indicamos al IOS que active el interfaz con:
Router(config-if)# no shutdown

A continuación especificamos la dirección IP del interfaz empleando el comando ip.
Router(config-if)#interface NombreInterface
Router(config-if)#ip address 192.168.5.1 255.255.255.0
Router(config-if)#exit

Conexión a hub
Ahora podemos hacer también un telnet desde el PC al router por el interfaz IP, sin embargo, para poder conectarnos al mismo antes hay que asignar una password para las conexiones que vienen por la red. Para ello, de nuevo desde el minicom entre en modo privilegiado y en modo configuración. Desde ahí pasamos al modo de configuración de líneas con:
Router(config)# line vty 0 4

Y ahora activamos que se pueda hacer login y asignamos una password:
Router(config-line)# login
Router(config-line)# password lpr2003

Para asignar una password al modo privilegiado vuelva al minicom, entre en modo configuración y emplee el comando:
Router(config)# enable secret 0 telemat

Con lo que estamos asignando la password telemat al modo privilegiado.

Compruebe que ahora con un telnet puede acceder al modo de configuración.

Para que los cambios sean permanentes lo que se hace es guardar la configuración actual con el nombre del fichero de configuración que lee en el arranque el router y que se encuentra en la NVRAM, es decir, desde modo privilegiado debemos ejecutar:
Router# copy running-config startup-config
Para ver la configuración del router puede ejecutar desde modo privilegiado:
Router# show running-config

Si en algún momento deseamos deshacer un comando lo único que hace falta es ejecutarlo de nuevo poniendo delante no. Por ejemplo, para desactivar el routing podríamos desde modo configuración:
Router(config)# no ip routing.