martes, 28 de octubre de 2014

Explorando Powershell: creando usb booteable









Usando nuestro Powershell esta vez vamos a preparar un usb para que funcione como usb de arranque o usb boteable. Lo primero que hay que decir es que necesitaremos utilidades que vienen integradas en el Powershell  4.0, este está implantado tanto en Windows 8 como en Windows Server 2012. Para el ejemplo crearemos un usb de arranque o usb boteable con el S.O. Windows server 2012. 

Los requisitos son los siguientes:

- Un Usb
- Powershell 4.0 
- Imagen .iso .


Lo primero que tendremos que hacer es iniciar nuestro Powershell con privilegios de administrador. Una vez iniciado comprobamos la versión de nuestro Powershell mediante "Get-host" y vemos que efectivamente es 4.0 .






Una vez comprobamos comenzamos con el proceso siguiendo con los comandos paso a paso donde n iremos poniendo las letras o números correspondientes:

- Montamos nuestra imagen .iso:

Mount-DiskImage –ImagePath "ruta de nuestra imagen.iso"

- Mostramos los discos visibles para el sistema operativo.

Get-Disk

- Una vez sabemos el número del disco borramos su contenido:

Clear-Disk –Number n –RemoveData

- Ahora creamos una nueva partición en el disco señalando su número, usando todo el espacio, marcando la partición como activa y finalmente pidiéndole que le asigne una letra.

New-Partition –DiskNumber n –UseMaximumSize –IsActive:$true -AssignDriveLetter

- Una vez creada la partición y asignada la letra, formateamos el volumen, en NTFS.

Format-Volume –FileSystem NTFS –DriveLetter n

Una vez visto que se hizo correctamente el paso anterior, actualizamos el código de arranque.

bootsect.exe /NT60 n:

Por último copiamos el contenido de la imágen en nuestro usb de arranque, primero tendremos que consultar donde esta montada nuestra imagen y la letra de nuestro usb de arranque y copiamos todo el contenido.

Copy-Item –Recurse n:\* n:\
Finalmente la siguiente imagen muestra el proceso con un ejemplo.





Una vez finalizada la copia comprobamos el contenido del usb de arranque que estará listo para cualquier instalación que necesitemos.










viernes, 24 de octubre de 2014

Comprimiendo y descomprimiendo ficheros/archivos ( .rar)









En "Comprimiendo y descomprimiendo" esta vez veremos ficheros .rar: 

- Comprimir:            rar -a ejemplo.rar /rutadelfichero/*
- Descomprimir:       rar -x ejemplo.rar
- Ver ( sin extraer):  rar -v ejemplo.rar




lunes, 20 de octubre de 2014

Virtualbox: Pantalla remota









Hoy veremos como usar la opción de pantalla remota que nos ofrece virtualbox para que accedamos a la pantalla de nuestro sistema operativo virtualizado de manera remota usando el protocolo RDP ( Remote Desktop Protocol). Esto nos permitirá acceder de manera remota a nuestra pantalla del sistema operativo virtualizado sin tener que que estar físicamente en la máquina y sin tener que habilitar el escritorio remoto en el sistema.

Para ello nos dirigimos a la pantalla de maquinas virtuales de Virtualbox y hacemos clic en configuración.







Una vez aquí nos dirigimos a pantalla > pantalla remota, elegimos habilitar servidor. Con esto ya podremos acceder, por defecto Virtualbox nos da primero un puerto ( este lo podremos cambiar). Ahora veremos los métodos de autenticación los cuales son nulo, externo, invitado.

Nulo: No nos pide nada para poder acceder a él con los problemas que eso conlleva. 
Externo: Este método nos pedirá las credenciales del sistema operativo anfitrión.
Invitado: Este último método usa "Guest Additions" para crear una cuenta de invitado para la conexión ( este método aún esta en pruebas)





Por último el tiempo de espera para la autenticación y el permitir múltiples conexiones ( Muy útil si quieres mostrar como funciona el sistema a un cliente por poner un ejemplo).

Ahora en el último paso vamos ver como conectar remotamente desde windows y linux.

En el caso de linux vamos a usar el popular remmina, hacemos clic en el menú superior el segundo icono empezando por la izquierda " Crear un archivo de escritorio remoto nuevo".





Una vez aquí rellenamos los siguientes campos.





Nombre: El nombre que le quieres dar a la conexión.
Protocolo: RDP Protocolo de escritorio remoto (Remote Desktop Protocol)
Servidor: Dirección ip de la máquina anfitriona (la máquina física) con su puerto. (ejemplo: 192.168.1.2:3389) 
Nombre usuario y contraseña: En caso de no poner método de autenticación ( null o nulo) no pondremos, en caso de poner método de autenticación externo, pondremos el usuario y contraseña del sistema operativo anfitrión ( la máquina física) y finalmente invitado donde mediante guest additions se crea una cuenta invitado para entrar la cual usaremos para rellenar estos campos.

Ahora vamos con windows y la herramienta que incluye para las conexiones remotas RDP "Conexión a escritorio remoto".






En equipo: La ip y puerto del equipo anfitrión (máquina física, ejemplo: 192.168.1.2:3389

En usuario: El usuario dependiendo del tipo de conexión ( nula, externa, invitado).

Y finalmente, es importante marca "Solicitar siempre credenciales" y para acabar pulsar en conectar.


Ahora nos salta la pantalla de login, en ella pondremos el usuario y contraseña para continuar.






En la ventana de advertencia pulsamos en "Sí" para continuar de todos modos.







Y por último ya tenemos acceso a nuestro sistema operativo virtualizado.













jueves, 16 de octubre de 2014

Editor Vim (Vi IMproved)









Vim, es una versión mejorada del antiguo editor vi. Al ser una versión mejorada de vi tiene muchas cosas en común con su antecesor ( no todas) y es este uno de los motivos por los que Vim tiene que ser aprendido ya que nos permitirá manejarnos en un amplio rango de servidores, hardware de red y demás, ya que todos ellos o la gran mayoría de ellos tiene vi como editor por defecto. Esto hará que nos podamos manejar con ellos sin problemas de no saber manejar un editor de ficheros común y extendido en la amplia mayoría del hardware de red y servidores.

Vim es complejo hay que decirlo pero es por un motivo para mejorar la eficiencia ya que cuando nos manejemos con cierta soltura con él, iremos viendo y lamentándonos como no antes no habíamos puesto con este editor.

Para dar el salto y entrar en materia yo recomiendo usar el manual que viene por defecto a través de la consola como es "vimtutor" que no es más que un tutorial el cual nos introducirá en el manejo de vim. Escribiendo "vimtutor" en nuestra consola ( linux, unix) podremos acceder a él.





También se ha creado un juego para la iniciación de los pequeños y los no tan pequeños en el siguiente enlace --> http://vim-adventures.com/

En definitiva una vez te manejas con Vim ya no querrás usar otro editor en consola que no sea este.


martes, 14 de octubre de 2014

Buscando nuestra dirección IP pública









Muchas veces nos encontramos con la necesidad de saber cual es nuestra ip pública o nuestra ip de la pata WAN del router para configurar múltiples cosas de nuestra red o simplemente para hacer un breve análisis de nuestra infraestructura de red. Está dirección es la que nos provee nuestro proveedor de servicios de internet ( ISP) y a continuación vamos a ver las formas con las que tenemos la posibilidad de conocerlas.

· Navegador web: Entrando en cualquiera de las siguientes paginas webs o simplemente buscando en google " cual es mi ip pública", tendremos acceso a múltiples páginas web las cuales nos mostrarán nuestra ip publica.

http://www.cualesmiip.com/

http://www.cual-es-mi-ip.net/






También accediendo nuestro router mediante el navegador. Este nos mostrara la ip pública que tiene asignada.






· Mediante comandos: Muchas veces estamos en un servidor el cual carece de interfaz gráfica o simplemente estamos accediendo mediante comandos y estamos trabajando contra un terminal.

Si disponemos de terminal linux o windows (también esta este paquete para windows), podemos instalar el paquete curl por ejemplo en derivado debian " sudo apt-get install curl" una vez con esto podemos lanzar el siguiente comando "curl ifconfig.me" o " curl icanhazip.com"y se nos mostrara nuestra ip pública.







Sin tener que instalar nada usando el comando nslookup, el cual nos permite saber si el dns esta resolviendo bien la ip o los nombres de dominio, aprovechamos esto para lanzarlo contra opendns.com mediante el siguiente comando "nslookup myip.opendns.com resolver1.opendns.com






A través de telnet (si esta habilitado) podemos acceder a nuestro router "
telnet ipdelrouter" para consultar la ip pública, en nuestro caso hacemos un "ifconfig interfazdered" a la interfaz que sabemos que tiene asignada la ip pública.






Finalmente con powershell mediante los siguientes comandos nos proporcionamos un método para recibir en este caso datos de un identificador URL conseguiremos extraer nuestra ip pública de una web y en segundo lugar descargamos el recurso solicitado como string, se especifica finalmemente como una cadena que contiene el URL.

$wc = new-object System.Net.Webclient
$wc.DownloadString("htpp://icanhazip.com/")










domingo, 12 de octubre de 2014

Comprimiendo y descomprimiendo ficheros/archivos ( .zip)









En "Comprimiendo y descomprimiendo" esta vez veremos ficheros .zip: 

- Comprimir:            zip ejemplo.tar /rutadelfichero/*
- Descomprimir:       unzip ejemplo.tar
- Ver ( sin extraer):  unzip -v ejemplo.tar





viernes, 3 de octubre de 2014

Explorando Powershell: mostrando información








"Explorando Powershell", son una serie de entradas que veremos para sacarle partido como administrador de sistemas a nuestro Powershell.

En esta entrada "mostrando información" explotaremos las opciones que podemos dar para mostrar información en general.

Mostrando información del fabricante y modelo:


Get-WmiObject -Class Win32_ComputerSystem



Obtener espacio en disco disponible:


Get-WmiObject -Class Win32_LogicalDisk -Filter "DriveType=3" -ComputerName .

Obtener sesiones iniciadas:
Get-WmiObject -Class Win32_LogonSession -ComputerName .
Obtener usuarios que han iniciado sesión:

Get-WmiObject -Class Win32_ComputerSystem -Property UserName -ComputerName .
Obtener estados de los servicios:
Get-WmiObject -Class Win32_Service -ComputerName . | Format-Table -Property Status,Name,DisplayName -AutoSize -Wrap