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