TUNEL MEDIANTE SSH

febrero 8, 2009 a las 10:00 pm | Escrito en SSH, Unix | Deja un comentario

#ssh -vvv -L puerto_tunel:IP_Tunel:puerto_destino IP_destino

#ssh -vvv -L 80:172.22.44.108:80 172.22.44.106

La conexión se realizará posteriormente a http://localhost

SERVIDOR  <——–>  TUNEL  <——–>  CLIENTE
(P.ej: Servidor X)
(Puerto 6000)

ssh -R puerto_tunel:servidor:puerto_servidor -f -N cliente

Desde la máquina local hacemos:

#ssh -L puerto_local:maquina_tercera:puerto_maquina_tercera usuario@maquina_segunda_con_acceso_a_tercera

#ssh -L 80:172.19.5.2:80 usuario@172.19.1.227

Luego haremos las conexiones a http://localhost

UUIDS (Universally Unique Identifier)

febrero 8, 2009 a las 9:58 pm | Escrito en Unix | Deja un comentario

La finalidad de los identificadores universales es la posiblidad de identificar información sin una coordinación centralizada. Es el caso por ejemplo de computación distribuida donde podemos usar un UUID para identificar una partición. Los sistemas de ficheros ext2/ext3 usan UUID para identificar las particiones.

De esta forma podemos tener un entorno heterogéneo de tecnologías de almacenamiento (SAN, DAS, iSCSI, …) sin que sea muy complejo el mantenimiento de los mismos (fstab).

No obstante no suele ser muy util en el caso de un equipo de escritorio.

¿Cómo obtenemos el UUID de una determinada partición?

# vol_id –uuid {/dev/device}

Para listar todos los UUIDS:

# blkid

¿Cómo podemos usar los UUIDS?

Los añadimos en el fstab usando la siguiente sintaxis:

UUID={NUESTRO-UID}    {/path/to/mount/point}               {file-system-type}    defaults,errors=remount-ro 0       1

MEDIR ANCHO DE BANDA ENTRE HOSTS

agosto 22, 2008 a las 11:57 pm | Escrito en Linux, Redes, Unix | Deja un comentario

Usaremos el programa “iperf”

Una vez instalado en ambos hosts usaremos uno como servidor ejecutando:

$ iperf -s

Y otro como cliente con:

$ iperf -c nodo1

Configurando IPerf.

Podemos configurar tanto el cliente como el servidor para personalizar un poco las mediciones.

Como servidor.

A parte de la opción -s que deja a IPref a la escucha, podemos usar:

* -D como servicio
* -R remover servicio
* -u recibir datagramas UDP en vez de TCP por defecto.
* -P x número de conexiones simultáneas
* -m muestra MTU (depende del sistema operativo )
* -w specifica el tamaño de Ventana (TCP window size). Muy útil para ir calculando nuestro tamaño de ventana más óptimo según las mediciones de ancho de banda.
* -f[bkmBKB] mostrar resultados en bits/s, kilobits/s, megabytes/s, Bytes/s, KiloBytes/s, MegaBytes/s (s=segundos). Tanto en cliente como servidor:

>iperf -c 192.168.1.250 -f B
————————————————————
Client connecting to 192.168.1.250, TCP port 5001
TCP window size: 64512 Byte (default)
————————————————————
[844] local 192.168.1.30 port 3591 connected with 192.168.1.250 port 5001
[ ID] Interval Transfer Bandwidth
[844] 0.0-10.0 sec 118792192 Bytes 11860687 Bytes/sec

Como cliente.

Lo más básico es -c IP pero podemos establecer otras opciones, las más importantes:

* -f[bkmBKB] (igual que lo comentado como servidor)
* -w (lo mismio que para servidor)
* -m muestra MTU (depende del sistema operativo)
* -T ttl especifica valor TTL
* -i segundos especifica un intervalo, medido en segundos, en el cual se volverá a realizar la medición.
* -t segundos tiempo duración transmisión. Hace más fiable la medida.

>iperf -c 192.168.1.250 -t 60
————————————————————
Client connecting to 192.168.1.250, TCP port 5001
TCP window size: 63.0 KByte (default)
————————————————————
[844] local 192.168.1.30 port 3670 connected with 192.168.1.250 port 5001
[ ID] Interval Transfer Bandwidth
[844] 0.0-60.0 sec 669 MBytes 93.5 Mbits/sec

* -p especifica puerto en el que escucha el servidor
* -u envio de UDP en vez de TCP por defecto. Podemos medir también pérdida de paquetes

COMPARTIR DIRECTORIO ACTUAL VIA SERVIDOR WEB

agosto 22, 2008 a las 9:38 pm | Escrito en Unix | Deja un comentario

alias webshare=’python -c “import SimpleHTTPServer;SimpleHTTPServer.test()”‘

MANEJO FICHEROS .WAR

agosto 22, 2008 a las 9:36 pm | Escrito en Unix | Deja un comentario

Ver el contenido de un fichero .war:
$ jar -tvf RemotingGalleryServer.war

Extracción de un fichero determinado de un .war:
$ jar xf RemotingGalleryServer.war WEB-INF/classes/app.properties

Actualización de un fichero .war para añadirle otro fichero:
$ jar uf RemotingGalleryServer.war WEB-INF/classes/app.properties

TUNEL MEDIANTE SSH

agosto 22, 2008 a las 9:36 pm | Escrito en Unix | Deja un comentario

#ssh -vvv -L puerto_tunel:IP_Tunel:puerto_destino IP_destino

#ssh -vvv -L 80:172.22.44.108:80 172.22.44.106

La conexión se realizará posteriormente a http://localhost

AUMENTAR EL TIMEOUT/TIEMPO DE EXPIRACIÓN DE UNA SESIÓN SSH

agosto 22, 2008 a las 9:20 pm | Escrito en SSH, Unix | Deja un comentario

Modificar el fichero /etc/ssh/sshd_config  para que incluya las siguientes líneas:

TCPKeepAlive yes
ClientAliveInterval 30
ClientAliveCountMax 99999

¿QUÉ PROCESO/S TIENE ABIERTO UN RECURSO? (lsof)

diciembre 20, 2007 a las 2:14 pm | Escrito en Unix | Deja un comentario

Por ejemplo al desmontar un Cdrom, el clásico: umount: /cdrom: device is busy

Podemos saber qué proceso o procesos tienen capturado un recurso con:

$ lsof +D /cdrom

Para saber qué proceso está detrás de una conexión o puerto abierto:

$ lsof -i :7000

Para saber qué procesos están usando un directorio:

$ lsof +D /home/usuario

Para saber los archivos abiertos por un grupo de usuarios:

# lsof -g n: Donde n es un ID de grupo

Para saber los archivos abiertos por un usuario:

# lsof -u n: Donde n es un ID de usuario

SOBRE EL NTP

diciembre 20, 2007 a las 2:12 pm | Escrito en Unix | Deja un comentario

Para sincronizar la hora con un servidor NTP usamos:

#ntpdate -u IP_SERVIDOR_NTP

La opción -u sirve para que el comando use puertos no privilegiados para obtener la hora del servidor.

Cuando lo que instalamos es un server, el fichero de configuración del demonio (ntpd) es /etc/ntpd.conf debería tener un contenido parecido al siguiente:

#
# Archivo de configuracion de NTP (/etc/ntp.conf)

#Servidor de hora para el servidor NTP
server  192.168.181.201
#
#En caso de que falle el servidor de arriba, usa el propio reloj del sistema como referencia

server 127.127.1.0
fudge  127.127.1.0 stratum 10
#
broadcastclient
#
#El fichero drift contiene las IPs de los servidores que hemos puesto arriba y sirve para que el servidor NTP aprenda el error que mas o menos va a tener.
enable bclient
driftfile /etc/ntp/drift

El ntp cliente no tiene demonio asociado. Debemos crear como root un script con 755 con el siguiente contenido:

#!/bin/bash
/usr/sbin/ntpdate -u 192.168.181.201

En linux podemos meterlo en /etc/cron.hourly. En los unix lo meteremos en el Cron.

Con el comando nptrace podemos ver un informe de la obtención de la hora del servidor establecido.

El servidor, cuando está instalado en un linux, se controla desde su correspondiente script en /etc/init.d/ntpd. Cuando está funcionando deja corriendo el demonio ntpd.

El puerto para NTP es el 123 UDP.

GESTION DE SESIONES DE USUARIOS EN UNIX

diciembre 20, 2007 a las 2:09 pm | Escrito en Unix | Deja un comentario

Ultimas 10 sesiones abiertas:
# last -10

Matar los procesos o la sesión de un usuario:

Utilizando la instrucción slay
#slay -9 hax0r o slay -KILL hax0r
Usando la instrucción skill
#skill -9 hax0r
Con un bash script
for i in `ps axu | grep ^hax0r| awk {‘print $2′}`; do kill $i; done
Con perl
ps -u hax0r | perl -ne ‘system(“kill”,”-9″,$1) if /^\s*(\d+)/;’

Página siguiente »

Blog de WordPress.com. | Tema Pool by Borja Fernandez.
Entradas y comentarios: feeds.

Seguir

Get every new post delivered to your Inbox.