miércoles, 30 de enero de 2013

Usos "productivos" de nuestra ip pública e ip privada

Naturalmente que quizás solo queramos saber nuestra ip pública y privada por motivos de curiosidad ( ver el tema correspondiente: Averiguar nuestra dirección ip pública e ip privada) , pero lo mas normal es que una vez que tenemos esos datos queramos usarlos para algo mas "productivo"; en mi caso el saber la ip privada y pública me ha servido para las siguientes actividades:

- Crear una red local: Conociendo la ip privada de los pcs que tengamos en nuestra casa podremos conectarlos entre sí para Crear una red local entre pcs con Ubuntu (protocolo sftp y Nautilus)  y realizar algunas de estas acciones:  Imprimir en una red local de pcs con Ubuntu , Imprimir desde Linux Mint con una impresora instalada en Windows, compartida en red , Compartir archivos con Giver o Meiga en una red local con Ubuntu

- Acceder a la configuración del router:  Sabiendo la IP privada de un pc , se puede “deducir” la del router, ya que por norma general es la misma IP pero acabado en “1″

Si la IP privada de un ordenador conectado a un router es 192.168.0.XXX , seguramente la IP del router sera 192.168.0.1
Si la IP privada  de un  ordenador conectado a un router es 192.168.1.XXX , seguramente la IP del router sera 192.168.1.1

Para confirmar la dirección del router lo mejor es ingresar dicha dirección en el Navegador ( Firefox ) y ver si se abre la ventana de configuración del router.

- Configurar un cortafuegos: Conocer la ip privada nos servirá para abrir y/o cerrar puertos en un cortafuegos, por ejemplo para por ejemplo conseguir una id alta en el Amule


- Controlar si alguien se quiere conectar a nuestra red wifi: Sabiendo la ip privada de un pc, y por tanto la del router, podremos detectar si alguien se conecta a nuestra wifi  y nos intenta "robar la conexión".

- Controlar un pc remoto: A través de la ip privada e ip pública de un pc distinto al que tengamos enfrente, podemos controlar un pc remoto según se explica en los temas:  Controlar un pc remoto en una red local y Remmina: cliente de escritorio remoto en una red local de pcs con Linux

- Videovigilancia por internet: sabiendo la ip pública de un pc remoto se puede controlar éste y por tanto usar su webcam para usarla como cámara de videovigilancia, grabando también el resultado. Esto en realidad no lo he probado...todavía.

- Localización geográfica: una dirección ip pública se puede utilizar a menudo para identificar la región o el país desde los cuales se conecta un pc a internet, es decir para conocer la localización general del usuario. Podemos obtener la localización por su ip pública de un pc a través de esta página: http://www.localizarip.com/ . Este sistema sirve también para que algunas páginas averigüen nuestra ip pública, localicen nuestro pc, y nos manden publicidad adecuada a dicha localización.

- Navegación "anónima": De modo que si de algún modo "cambiamos" la ip pública con la que se reconoce nuestro pc, "cambiaremos" nuestra localización geográfica en internet; esto se consigue como se explica en los temas:  Ocultar nuestra ip, navegar de forma anónima con Firefox  y Ocultar nuestra ip, navegar de forma anónima con Chromium/Chrome
—————————————————

jueves, 24 de enero de 2013

Averiguar nuestra dirección IP Pública e IP Privada

Una Dirección IP es una etiqueta numérica que identifica  a un interfaz (elemento de comunicación/conexión) de un dispositivo (por ejemplo un pc) dentro de una red que utilice el protocolo IP (Internet Protocol).
Dicho número no se ha de confundir con la dirección MAC, que es un identificador de 48bits para identificar de forma única la tarjeta de red y no depende del protocolo de conexión utilizado ni de la red.

IP Dinámica: La dirección IP puede cambiar muy a menudo por cambios en la red o porque el dispositivo encargado dentro de la red de asignar las direcciones IP decida asignar otra IP (por ejemplo, con el protocolo DHCP). dinámica).

IP Fija:Los sitios de Internet que por su naturaleza necesitan estar permanentemente conectados generalmente tienen una dirección IP fija (comúnmente, IP fija o IP estática). Esta no cambia con el tiempo. Los servidores de correo, DNS, FTP públicos y servidores de páginas web necesariamente deben contar con una dirección IP fija o estática, ya que de esta forma se permite su localización en la red.

Los ordenadores se conectan entre sí mediante sus respectivas direcciones IP.

IP Pública:

Una dirección IP publica es un número que identifica de manera lógica y jerárquica a una interfaz de un dispositivo (habitualmente un ordenador) dentro de una red, en este caso el numero identifica tu punto de enlace con internet: es una única ip que identifica nuestra red desde el exterior.
Suelen darse dos casos de IP Publica:
-- Si tienes varios ordenadores conectados en red y a su vez a un router,  la IP Publica es la que tiene el router sea de cable o adsl e independiente de los ordenadores que tengas conectados.
-- Si por el contrario solo tienes un equipo conectado mediante un modem de cable o adsl, la IP Publica es la que tendrá el ordenador.

Los métodos para averiguar nuestra IP Pública son:
-- A través de una página web, por ejemplo en: http://ipwhats.appspot.com/
-- Ejecutando en la terminal el comando: echo $(curl -s http://ipwhats.appspot.com/ )  ( como se puede ver el comando saca la información de la misma página anterior ).

Podemos navegar de forma "anónima" tanto con Firefox como con Chromium/Chrome de forma que nuestra Ip pública sea distinta a la que aparece cuando navegamos de forma "normal": ocultar nuestra ip navegar de forma anónima con Firefoxocultar nuestra ip navegar de forma anónima con Chromium/Chrome
--------------------------------------------------------------------------

IP Privada: una ip que identifica a un dispositivo conectado en nuestra red interna. Esta IP es la que tenemos asignada en nuestro PC y es hacia donde tenemos que abrir los puertos en el router. En una misma red no pueden existir dos direcciones iguales, pero sí se pueden repetir en dos redes privadas que no tengan conexión entre sí o que se conecten mediante el protocolo NAT.

Las direcciones privadas son:

-- Clase A: 10.0.0.0 a 10.255.255.255 (8 bits red, 24 bits hosts).

-- Clase B: 172.16.0.0 a 172.31.255.255 (12 bits red, 20 bits hosts). 16 redes clase B contiguas, uso en universidades y grandes compañías.

-- Clase C: 192.168.0.0 a 192.168.255.255 (16 bits red, 16 bits hosts). 256 redes clase C continuas, uso de compañías medias y pequeñas además de pequeños proveedores de internet (ISP)

En un pc con conexión wifi: ejecutando en la terminal el comando: ifconfig  nos sale la ip Privada en el apartado Wlan0, tras Direct.Inet:




En un pc con conexión por cable: ejecutando en la terminal el comando: ifconfig   nos sale la ip Privada en el apartado Eth0, tras Direct.Inet



---------------------------------------------------

viernes, 18 de enero de 2013

Algunos usos prácticos del comando dd

El comando dd (Dataset Definition), es una herramienta sencilla, útil, y sorprendentemente fácil de usar; con esta herramienta se puede hacer lo mismo, sobre dispositivos: discos y particiones,  que con programas comerciales como Norton Ghost, en Windows o libres como CloneZilla, en Linux, con solo una pequeña línea de comandos.

-Sintaxis Básica: La sintaxis mas básica para el uso del comando dd, seria esta:
sudo dd if=origen  of=destino
Donde if significa "input file=archivo de entrada", es decir, lo que se quiere copiar y of significa "output file=archivo de salida", o sea, el archivo destino (donde se van a copiar los datos); origen y destino pueden ser dispositivos (lectora de CD o DVD, disco duro, diskettera, pendrive, partición, etc.), archivo de copia de seguridad o imagen de disco, etc, pero no carpetas o subcarpetas.

Para el uso sin problemas de este comando,lo primero siempre es tener claro como se llaman las particiones/discos duros en Linux (/dev/sda1 por ejemplo;  /dev deriva de device= dispositivo, en inglés ). para saber el disco/partición de origen y el de destino, algo que averiguamos fácilmente con el comando sudo fdisk -l   o con algún programa gráfico de particiones como gparted. Toda la información sobre el comando dd, se puede consultar con el comando man dd e info dd ,

Se debe utilizar este comando con precaución, y comprobando siempre el orden y nombre de los discos/particiones, porque lo mismo que se clona un disco, lo borra en un visto y no visto.

Sintaxis con el comando pv: Usar el comando dd con la sintaxis anterior tiene un pequeño inconveniente, ya que es un comando muy reservado - no da información - , pues al ejecutarlo, el prompt de la terminal queda inmóvil, por lo que no sabemos que es lo que esta pasando y cuanto tiempo falta para que termine de ejecutarse. Este pequeño inconveniente se puede solucionar añadiendo el comando pv,  ( *) - el cual actúa como una tubería de terminal que mide los datos que pasan a través de ella-  a la sintaxis del comando dd , de forma que ahora la sintaxis seria:

 [ (*) Comprobar antes de ejecutar cualquier linea de comandos con esta segunda sintaxis, que tenemos instalado en el sistema el paquete pv, o instalarlo si no lo tuviéramos: ambas cosas con Synaptic. ]

dd if=origen |pv|dd of=destino

( Para que aparezca el símbolo |  hay que teclear la combinación de teclas: AltGr+1    ;  de forma que |pv| se escribe tecleando: AltGr+1 pv AltGr+1 )

Como resultado obtendríamos en el terminal una especie de barra de progreso, la información sobre bytes transferidos, el tiempo que lleva ejecutándose y la tasa de transferencia, todo esto en tiempo real.

dd

Además al terminar nos muestra estadísticas de la tasa de transferencia, el total de bytes transferidos y el tiempo total que tardó en transferir todos los datos.

dd-2



-----------------------------------------------------

Vamos a ver algunos ejemplos prácticos y opciones de este comando ( en su versión con el truco explicado anteriormente con el comando pv ) :

A) Sobre discos duros y particiones:

= Clonar un disco duro:

Con esto clonaríamos el disco hda en hdb. (discos IDE):

sudo dd if=/dev/hda |pv|dd of=/dev/hdb bs=1M

Con esto clonaríamos el disco sda en sdb. (discos SATA):

sudo dd if=/dev/sda |pv|dd of=/dev/sdb bs=1M

Con la opción bs=1M , se consigue que tanto la lectura como la escritura se haga en bloques de 1 megabyte, (menos, seria mas lento pero mas seguro, y con mas nos arriesgamos a perder datos por el camino).
Hay que tener en cuenta que de esta forma se graba el disco “tal cual”, MBR, tabla de particiones, espacio vacío, etc…, por lo que solo podrás grabar en un disco del mismo o mayor tamaño.

= Grabar solo la primera partición (hda1) del disco de origen en el disco (hdb) de destino:

sudo dd if=/dev/hda1 |pv|dd of=/dev/hdb bs=1M

= Grabar el disco completo (hda) en la primera partición (hdb1) del disco de destino:

sudo dd if=/dev/hda |pv|dd of=/dev/hdb1 bs=1M

= Crear una imagen - puede ser bin o iso - del disco duro (hda) , en el directorio /home:

sudo dd if=/dev/hda |pv|dd of=/home/hda.bin

= Crear un pendrive iniciable a partir de una imagen .iso de una distrosudo dd if=/nombre-de-la.iso of=/dev/sdb ( por ejemplo: sudo dd if=/linuxmint-13-cinnamon-dvd-64bit.iso of=/dev/sdb , teniendo la .iso en el directorio raiz y siendo la partición del pendrive /dev/sdb: para saber el dispositivo en que esta montado el pendrive hay que ejecutar el comando sudo fdisk -l con el pendrive conectado y montado)

= Borrar totalmente la información de un disco: para ello, llena el disco con caracteres aleatorios, cinco veces. No va a quedar ni rastro de información en el disco:

for n in {1..5}; do dd if=/dev/urandom |pv|dd of=/dev/hda bs=8b conv=notrunc;

= Borrar cualquier partición y disco completo de cualquier dispositivo:

sudo dd if=/dev/zero |pv|dd of=/dev/sdx (Borrado de disco completo)

sudo dd if=/dev/zero |pv|dd of=/dev/sdxa (Borrado de partición de disco)
donde:  x es el disco a borrar  , a es la partición a borrar


Esta operación es muy útil para borrar completamente cualquier partición, además los datos que se borrarán no se pueden recuperar, por lo tanto es un borrado a bajo nivel y muy seguro, muy útil por ejemplo para cuando los pendrives se nos infectan de virus con nuestro querido windows.

B) Sobre un CD/DVD

= Crear/Montar una imagen .iso de un CD (o DVD)

Para crear la imagen .iso de un CD en el directorio /home:

sudo dd if=/dev/cdrom |pv|dd of=/home/imagendeCD.iso

Para montar la imagen .iso del CD:

sudo mount -o loop imagedeCD.iso /mnt/home

= Recuperar un DVD rayado (Esto no recupera todo el DVD, en este caso, solo los sectores legibles). Sirve también para discos duros defectuosos:

sudo dd if=/dev/cdrom |pv|dd of=/home/dvd_recuperado.iso conv=noerror,sync

La opción noerror, sirve para obviar los errores de lectura en cualquier situación.

C) Sobre MBR y VBS:

= Copiar/Restaurar el Master Boot Record (MBR):

Para copiar el MBR:

sudo dd if=/dev/hda |pv|dd of=mbr count=1 bs=512

Para restaurar el MBR:

sudo dd if=mbr |pv|dd of=/dev/hda

= Limpiar nuestro MBR y la tabla de particiones:

sudo dd if=/dev/zero |pv|dd of=/dev/hda bs=512 count=1

= Limpia el MBR pero no toca la tabla de particiones, ( muy útil para borrar el GRUB sin perder datos en las particiones):

sudo dd if=/dev/zero |pv|dd of=/dev/hda bs=446 count=1

= Copiar/Restaurar el Volume Boot Sector (VBS):

Para copiar el VBS:

sudo dd if=/dev/hda |pv|dd of=/home/sector_arranque_hda count=1 bs=512

Para restaurar el VBS:

sudo dd if=/home/sector_arranque_hda |pv|dd of=/dev/hda

D) Otros:

= Grabar una imagen del disco en nuestro directorio /home saltándonos los errores del disco (muy útil para discos que se están muriendo):

sudo dd conv=noerror if=/dev/hda |pv|dd of=~/home/imagen_disco_con_errores.iso

= Crear un archivo vacío de 1 Mb:

sudo dd if=/dev/zero |pv|dd of=archivo_nuevo_vacio bs=1024 count=1024

= Crear un archivo swap de 2Gb:

sudo dd if=/dev/zero |pv|dd of=/swapspace bs=4k count=2048M
mkswap /swapspace
swapon /swapspace

= Convertir todas las letras en mayúsculas:

sudo dd if=miarchivo |pv|dd of=miarchivo conv=ucase

------------------------------------

Uso del comando dd con un programa con entorno gráfico: Gdiskdump, es un entorno gráfico para este comando dd que nos facilita la tarea de clonar particiones o discos, de una forma rápida y sencilla. Se puede descargar desde la página https://launchpad.net/gdiskdump/  Una vez lo abrimos , con permisos de root - sudo gdiskdump - , vemos que el programa es muy fácil de usar, ya que  solo tenemos que decirle la partición o disco a clonar (Formato de Entrada ) y su destino (Formato de Salida).




----------------------------------------

http://blog.luispuente.net/comando dd

http://usemoslinux.blogspot.com/2012/03/tip-comando-dd-con-barra-de-progreso.html


http://linuxzone.es/2012/12/10/gdiskdump-el-comando-dd-en-modo-grafico/

---------------------------------------------------

jueves, 10 de enero de 2013

Multisystem: crear un pendrive-live iniciable con varias distros

Si se es un usuario que  utiliza mas de una distribución Linux, ya sea para uso personal o para compartir con amigos, y queremos ahorrar cd-r , esto podría ser interesante: un programa para hacer fácilmente un pendrive-live  ( o pendrive iniciable ) con varias de distros en él, dependiendo de su capacidad, y con la posibilidad de elegir la distro que te guste, desde un menú tipo grub2,  para hacer demostraciones en los propios pcs de tus amigos.  MultiSystem es la herramienta que lo hace posible. Hacer un pendrive-live con MultiSystem es muy simple, básicamente sólo hay que arrastrar y soltar o seleccionar, desde la carpeta del administrador de archivos en la que hayamos guardado la .iso/.img de la distro que queramos añadir al pendrive, hasta la zona adecuada de la Ventana Principal del programa, en la pestaña MS.

Instalación del programa: La última versión del paquete Multisystem .deb se puede obtener desde http://liveusb.info/multisystem/depot/dists/all/main/binary-i386/m/  e instalar, una vez lo tengamos en una carpeta de nuestro sistema, de la forma habitual, con gdebi, haciendo doble click sobre él.

Otra forma de instalarlo es desde http://liveusb.info/dotclear/index.php?pages/install   bajar  http://liveusb.info/multisystem/install-depot-multisystem.sh.tar.bz2  y descomprimir y ejecutar en la terminal el script.sh que hay en él.

Antes de empezar a usar el programa debemos asegurarnos de tener montado y visible en el administrador de archivos un pendrive con formato fat32, y asegurarse de que se puede escribir en él, por ejemplo copiando y borrando en él algún archivo de prueba.

Inicio del programa: luego iniciamos el programa y nos aparece la Ventana Inicial similar a la siguiente, en la que se reconoce el pendrive en el que vamos a añadir una .iso para añadirla al menú del pendrive iniciable que vamos a crear con el programa. Debemos asegurarnos de que el pendrive es el que aparece seleccionado - en la imagen en azul - , en la sección Device. A continuación dar al botón Aceptar. ( El botón Quitar sirve para desinstalar el programa: al hacer click en él se abre una terminal en la que se pide la contraseña de root para desinstalar el programa ).


Añadir al menú de Multisystem una nueva distro: A continuación voy a explicar, como ejemplo, como añadir al menú de Multisystem una nueva distro ( En este ejemplo, la .iso de Manjaro-Cinnamon).

Tras haber dado al botón Aceptar en la ventana anterior, se abre la siguiente Ventana Principal del programa, con varias pestañas* (ver mas información sobre ellas mas abajo ) , de las cuales la mas importante - ya que con usar solo ella ya podemos añadir una .iso al menú del pendrive-live - es la siguiente: Pestaña MS, en la que arrastramos el archivo .iso  que queremos añadir como nueva entrada en el menú del pendrive iniciable ( lo mas cómodo es tenerlo en el escritorio y desde él arrastrarlo a la ventana de MS ) hacia el espacio indicado en ella. Hay que asegurarse de que el archivo .iso ha sido bien bajado y que no esta corrompido y concuerda la suma md5 . En este ejemplo habíamos añadido previamente las .isos de Mint-14-Cinnamon, Zevenos4, y Ubuntu-Cinnamon-Remix


Una vez arrastrada a la ventana anterior la .iso correspondiente, se abre una terminal en la que nos pide la contraseña de root, y a continuación y durante un cierto tiempo se ve que se va añadiendo dicha .iso, y al final actualiza el grub2 instalado en este pendrive.


Una vez terminado, aparece la ventana siguiente en la que se ve que ya esta añadida la .iso de manjaro1 al menú del pendrive.



( En la pestaña MS hay otros iconos a la derecha de la lista de isos instaladas en el pendrive-live, al poner el cursor de ratón sobre ellos aparece información sobre su utilidad )

Ya solo nos queda apagar el pc y volverlo a iniciar asegurándonos, bien tocando previamente la bios, o tecleando alguna tecla especial para ello - en mi portátil la F12 - , que lo va a hacer desde el pendrive. Una vez que se inicie desde el pendrive aparece un menú del tipo de Grub2 desde el que podremos elegir con que distro queremos usar el pc.

En la imagen siguiente aparece una imagen tomada de internet con un grub2 de MultiSystem con varias distros


--------------------------------------------------------

* Las siguientes pestañas tienen otras muchas utilidades/información no necesarias estrictamente para realizar lo dicho en el título del tema.

- Pestaña Menús:

- Pestaña Iniciar:

- Pestaña No-Libre: utilidades de software no libre del programa.


- Pestaña Sobre: información acerca de los autores/traductores del programa.


--------------------------------------------------------