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

miércoles, 18 de marzo de 2015

Protegiendo los servidores con UFW

Hace unas semanas se armó bastante revuelo cuando se público un documento de unos estudiantes que encontraron miles de servidores de MongoDB accesibles en internet sin ningún tipo de seguridad. Y unos días despues Salvatore Sanfilippo recordó en la lista de Redis que Redis tiene exactamente el mismo problema con la configuración por defecto.

Como buena práctica, en todos los servicios que tienen acceso por un puerto (memcached, postgres, redis, ...) siempre configuro que solo tengan acceso los servidores de la red privada (o localhost según el caso), pero hace unos meses pensé en darle una vuelta más y añadir seguridad extra por firewall, para asegurarme de que no se me pasaba nada.

La primera idea fue usar directamente IPtables, y como siempre que lo miro, me dio una pereza infinita pelearme con esa sintáxis que se me olvida a los cinco minutos de usarla y busqué otras opciones.

Afortunadamente, para mis necesidades, existe otra opción mucho más asequible en ubuntu: UncomplicatedFirewall (UFW). Hay mucha literatura en internet sobre UFW, por ejemplo esta guía de DigitalOcean y además tenemos un módulo en ansible para configurarlo.

Así que solo he tenido que cambiar el bootstrap de los servidores con ansible bloqueando por defecto todos los puertos y abriendo solo el puerto 22

- name: Set firewall default policy
  ufw: state=enabled policy=reject

- name: Allow ssh access
  ufw: rule=allow port=22
Y luego ir añadiendo los puertos que necesite cada servicio, p.e. en el rol de nginx
- name: Allow web access
  ufw: rule=allow proto=tcp port={{item}}
  with_items:
    - 80
    - 443 
O si queremos dar acceso a solo unas IPs determinadas (por ejemplo en el servidor donde esté la web de administración)
- name: Firewall permissions - Add allowed IPs
  ufw: rule=allow port=443 proto=tcp src={{ item }}
  with_items: admin.allowed_ips
Donde admin.allowed_ips es una lista de IPs permitidas definidas en el yaml de configuración

Y así de simple, con 4 líneas de configuración, ya tenemos los servidores un poco más protegidos :)

He actualizado el proyecto de ejemplo que cree en GitHub cuando hice el post de Bootstrap con Ansible añadiendo esta configuración


domingo, 30 de septiembre de 2012

Instalando Ubuntu en Vostro 3500 (parte 2)

Hace año y medio escribí una entrada en el blog explicando los problemas que había tenido con la instalación de Ubuntu Maverick en mi Dell Vostro 3500. Por los comentarios que tuve, parece que había bastante gente con los mismos problemas que yo (y que tambien me ayudaron a arreglar mis problemas), así que ahora que hace unos meses que actualicé a Ubuntu Precise (12.04), llegó el momento de actualizar la entrada.

Tarjeta gráfica


Como comenté en entrada anterior, este portátil tiene una tarjeta híbrida que no está soportada en ubuntu por defecto. Hace algo más de un año probé Bumblebee, pero estaba bastante verde, me dio muchos problemas y acabé por desinstalarlo. En cambio ahora es un proyecto bastante estable y llevo utilizándolo varios meses sin ningún problema.


Usando Bumblebee, por una parte, se consigue una mejor gestión del consumo de energía desactivando la tarjeta cuando no se usa (lo que se nota bastante trabajando con batería) y por otra permite activarla manualmente ejecutando las aplicaciones desde consola anteponiendo el comando optirun


He leído en pcworld y en phoronix que nvidia ha empezado a trabajar en un driver para este tipo de tarjetas, pero todavía no hay fechas, así que por ahora la mejor opción sin duda es Bumblebee.



HDMI

He probado a conectar el portátil a la tele con un cable HDMI y detecta la tele, pero no se ve el vídeo (con un cable VGA funciona sin problema). 

No he investigado el problema, así que no se si es un problema de configuración o si realmente no se puede.

Lector de huellas

El lector de huellas integrado (VFS300) todavía no está soportado. Hay un error abierto en launchpad desde hace bastante tiempo y en el comentario #51 hay un paquete que añade soporte para este lector.


Ejecutando las instrucciones del comentario en la configuración del usuario se puede activar su uso.  Pero me he encontrado varios problemas. El primero es que no va muy fino (la mayoría de las veces me da error al reconocer la huella) y el segundo es que al hacer login vuelve a pedir la contraseña para desbloquear el keyring (el keyring es donde ubuntu guarda las contraseñas, p.e. las de las wifis).


En la descripción del PPA oficial de fprint está muy bien explicado que es el keyring y como desactivar que pida contraseña (sección 'Note on keyrings and passwordless login') aunque esta última parte no la he probado.


Volviendo a launchpad, en el último comentario de final de agosto, pone que el bug ya está corregido, pero todavía no está aplicado en la versión de ubuntu. En resumen, seguiré con el lector desactivado por ahora hasta que esté mejor integrado.

La última versión de fprint ya incluye el soporte para el lector, así que instalándolo según las instrucciones, ya se puede usar sin problemas, aunque con las limitaciones que he comentado antes.




Unity


Otro de los grandes cambios al actualizar ubuntu fue cambiar gnome por unity, al principio es todo un poco raro, pero a la que llevas un tiempo usándolo se nota la mejora, queda bastante más espacio libre en la pantalla al tener los menús integrados en la barra superior y no tener la barra inferior de aplicaciones y a la que te acostumbras a buscar las aplicaciones por nombre (pulsando la tecla windows) es mucho más cómodo que la búsqueda por menú de gnome.


Con Unity desaparecen todos los indicadores del menú superior (por ejemplo el icono de skype), pero se pueden activar fácilmente tal y como explican en webupd8 ejecutando desde consola
gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"

Otro problema para mi era no tener los applets de gnome, que usaba varios. Los que me he instalado son:

System Load Indicator para tener monitorizado el uso de memoría, cpu y carga del sistema
sudo add-apt-repository ppa:indicator-multiload/stable-daily
sudo apt-get update
sudo apt-get install indicator-multiload
Jupiter para la gestión automática del consumo cuando se trabaja con batería. Tiene más opciones, pero no las uso normalmente
sudo add-apt-repository ppa:webupd8team/jupitersudo apt-get update
sudo apt-get install jupiter
Hardware Sensors Indicators para tener monitorizar los sensores, principalmente el de temperatura
sudo add-apt-repository ppa:alexmurray/indicator-sensors
sudo apt-get update
sudo apt-get install indicator-sensors
Previamente a instalar esta última aplicación ejecuté xsensors que detecta los sensores disponibles y instala los módulos necesarios para los sensores detectados.
sudo apt-get install xsensors
sudo sensors-detect

En AskUbuntu hay una lista bastante completa de applets.

Ventilador

El ventilador ya no se puede gestionar como en gnome usando las alarmas de sensors applets, así que he optado por la solución que me propuso samsagax en mi post anterior, gracias de nuevo!

La solución consiste en installar i8kutils y arrancar el módulo (para que arranque automáticamente al reiniciar se debe añadir i8k en /etc/modules)
sudo apt-get i8kutils
sudo modprobe i8k
Una vez instalado, editamos el fichero .i8kmon en el home del usuario, con los umbrales de temperatura adecuados para nuestra instalación (en man i8kmon los explica perfectamente)
more ~/.i8kmon 
set config(0) {{- 0}  -1  55  -1  60}
set config(1) {{- 1}  50  65  55  70}
set config(2) {{- 1}  50  65  55  70}
set config(3) {{- 2}  60 128  65 128}

Si no se configura tiene unos valores por defecto de temperatura, que en mi caso creo que son demasiado altos. Tambien se puede configurar en /etc/default/i8kmon. aunque prefiero la opción de ponerlo en mi home, ya que tengo particiones separadas para home y / y si formateo / no pierdo la configuración.

Y ya solo queda arrancarlo (-a para que controle la velocidad del ventilador a parte de monitorizar y -d para que arranque en modo demonio)
i8kmon -a -d


Bueno, pues por ahora esto es todo respecto a mi configuración. Como en la entrada anterior, iré actualizando a medida que vaya descubriendo nuevas configuraciones....




sábado, 2 de abril de 2011

Instalando Ubuntu en Vostro 3500


Actualización 10/12: He creado una entrada complementaria a ésta explicando las novedades en la instalación en Ubuntu 12.04 
http://diec123.blogspot.com.es/2012/09/instalando-ubuntu-en-vostro-3500-parte-2.html


Hace un par de meses cambié mi Dell Inspiron 6400, al que después de 4 años ya le tocaba descansar un poco, por un Dell Vostro 3500. Iba a poner un link a las especificaciones, pero veo que ya no lo venden y ahora está el Dell 3550, que es muy similar pero la tarjeta gráfica en lugar de ser nVidia GeForce es una ATI Radeon.

Lo primero que hice al encenderlo despues de ver que funcionaba con el Windows 7 de serie, fue instalar Ubuntu 10.10.

Tengo un par de compañeros de oficina que tienen ubuntu 32bits en este mismo ordenador, pero yo he probado con el de 64bits a ver que tal funciona.


Estos son los problemas que me he encontrado con el portátil:

Wi-Fi
La wi-fi conecta sin problemas, pero la conexión a internet no va todo lo rápida que debería ir (conectando directamente por cable al router me da 50Mbps y por wi-fi nunca me daba más de 7 o 8 Mbps). Además iwconfig siempre me daba como Bit Rate 1Mbps, así que me puse a investigar un poco...


Según las especificaciones del ordenador es una Dell Wireless 1501 (802.11b/g/n), pero según donde miraba me decía que es una Broadcom 4727 o una Broadcom 4313

$ dmesg | grep Wireless
[    8.954673] eth1: Broadcom BCM4727 802.11 Hybrid Wireless Controller 5.60.48.36

$ lspci -nn| grep Network
12:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g LP-PHY [14e4:4727] (rev 01)


En la web de Broadcom aclaré ese lío de nombres, la respuesta está en el readme.txt del driver. Dell 1501 es el nombre que le da Dell a la tarjeta, que realmente es una Broadcom 4313 y el 4727 es el vendor id. Al ejecutar lspci con la opción -nn muestra el id del fabricante (14e4) y de la tarjeta (4727).


En ese mismo readme.txt en la sección 'what's new' hay varios cambios que afectan a esta tarjeta que no están en el driver que instala ubuntu por defecto, así que me descargué el driver, compilé y instalé siguiendo las instrucciones.

Con el nuevo driver ha subido bastante la velocidad de conexión y iwconfig ya da la velocidad de conexión real. Problema resuelto.


Tarjeta gráfica

Este ordenador lleva una tarjeta gráfica híbrida, por lo que parece cuando hace falta poca potencia gráfica o en modo de bajo consumo utiliza sólo la tarjeta integrada y cuando se necesita toda la potencia utiliza la nVidia.

$ lspci |grep VGA
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 18)
01:00.0 VGA compatible controller: nVidia Corporation GT218 [GeForce 310M] (rev a2)



pero el driver de nVidia no se lleva bien con ubuntu, y al instalarlo se queda frito el entorno gráfico

Hay un error abierto en launchpad

https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers/+bug/643895

Pero los últimos drivers siguen sin funcionar bien, así que seguiremos esperando....

Además da un error de la tarjeta integrada al arrancar:

$ dmesg |grep intel
...
[    7.382308] intel ips 0000:00:1f.6: failed to get i915 symbols, graphics turbo disabled
...

Y tambien hay un error abierto en launchpad que dicen en los comentarios que se soluciona con la última versión del kernel

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/651104

Y para acabar de liarla, hay algún error más en el log de arranque

$ dmesg |grep Graphics
[   12.717458] agpgart-intel 0000:00:00.0: Intel HD Graphics Chipset
[   13.011187] [drm] MTRR allocation failed.  Graphics performance may suffer.

Así que por ahora he decidido no darle más vueltas a la tarjeta y esperar a ver si se soluciona. Será por todos estos problemas por lo que han cambiado de nVidia a ATI en el nuevo modelo???


Lector de huellas

Tiene integrado un lector de huellas que en windows funciona sin problemas, pero que ubuntu no lo reconoce:

$ lsusb
Bus 001 Device 004: ID 138a:0008 DigitalPersona, Inc



Actualizando la lista de Ids, al menos se entera de que es un lector de huellas

$ sudo update-usbids
$ lsusb
Bus 001 Device 004: ID 138a:0008 Validity Sensors, Inc. VFS300 Fingeprint Reader


Instalé fingerprint-gui desde ppa a ver si lo reconoce

$ sudo add-apt-repository ppa:fingerprint/fingerprint-gui
$ sudo apt-get install fingerprint-gui

pero no reconoce el lector, y de nuevo en launchpad encontramos otro error abierto


https://bugs.launchpad.net/ubuntu/+source/linux/+bug/285089

Por lo que dicen, parcheando y compilando la última versión de libfprint funciona, pero todavía no lo he probado.



Ventilador
Otro problema que me he encontrado es el ventilador, que una vez que arranca, ya no para nunca. No es un ruido insoportable y en un ambiente de oficina ni se nota, pero estando en casa si que se nota.

Con Dellfand se puede modificar la velocidad del ventilador en función de la temperatura, que parece que tiene 3 estados (parado, velocidad lenta y velocidad rápida).

Al ejecutarlo detecta la temperatura y la velocidad del ventilador, pero no es capaz de actualizarla. En el ejemplo intenta actualizar del estado 2 al 0 pero le da error

$ sudo ./dellfand 0 5 45 50 55
Fan 0 Status 2->0 Speed 138000 CPU Temp 42C
dellfand: warning: set fan 0 status to 0 last cycle, it's now 2 (BIOS interference ?)
Fan 0 Status 2->0 Speed 138000 CPU Temp 42C
Fan 0 Status 2->0 Speed 138000 CPU Temp 45C


Así que conviviremos con el ventilador por ahora...

He encontrado muchas quejas por foros, pero ninguna solución. Gracias a Mr. Anónimo (ver comentarios) he resuelto el problema


Se debe instalar i8kutils (la descripción del paquete es 'utilities for Dell Inspiron and Latitude laptops' pero funciona sin problemas en mi Vostro), y i8kfan nos va a permitir cambiar la velocidad del ventilador.

Para que funcione hay que cargar el módulo (y añadirlo en /etc/modules para que lo cargue al arrancar)

sudo modprobe i8k

i8kfan admite 2 parámetros (para controlar 2 ventiladores), como este ordenador sólo tiene un ventilador, le pasamos -1 en el primer parámetro y en el segundo parámetro la velocidad (0, 1 o 2), aunque el 0 no funciona y en pocos segundos pasa al 2 (parece que la bios no permite pararlo).

i8kfan -1 1

Y por último añadimos un par de alarmas en el sensors applet tal y como está explicado perfectamente en los comentarios.

Actualización 07-08-2011:  samsagax explica en los comentarios como monitorizar automáticamente con i8kmon sin necesidad de definir las alarmas. Gracias!



En resumen podría parecer que es un desastre de ordenador, igual es que soy muy sufrido, pero la verdad es que estoy bastante contento con él y seguiré comprando Dell a pesar de todos estos problemas :)

lunes, 29 de marzo de 2010

Ubuntu Remix Edition en Dell Mini 10v

Hace algo más de un mes compré un Dell mini 10v. Viene con Windows 7 starter y con 1GB de RAM y al ver lo lento que iba todo, lo que tardaba en arrancar, ... decidí formatearlo y instalarle Linux.

Dell tiene algunos modelos con Ubuntu, así que buscando un poco encontré que tienen una versión de Moblin para descargar en su wiki, que se instala sin ningún problema desde USB y que funciona perfectamente.

Eso si, despues de unas semanas de uso no me convenció la interfaz gráfica de Moblin, no me parece cómoda de usar, así que decidí instalar Ubuntu Remix Edition.

Una vez instalado todo funciona perfectamente, todo... menos la wi-fi... que es una Broadcom BCM4312 (se puede ver el modelo con lspci). Parece que no se instala el driver por defecto porque es un controlador no libre suministrado por el fabricante

Y para instalar el driver, de nuevo buscando un poco, en la sección de WifiDocs de la ayuda de Ubuntu hay una página donde lo explica todo paso a paso.

Simplemente hay que instalar un par de paquetes (dkms y patch, tambien dicen que hace falta fakeroot pero a mi me funcionó sin instalarlo), instalar bcmwl-kernel-source y habilitar el controlador privativo

Y si os pasa como a mi, que a mi router wi-fi le han dejado de funcionar los puertos ethernet para poder conectarlo directamente, pues os tocará bajaros los ficheros desde otro ordenador uno a uno desde la web de ubuntu y luego instalarlos a mano...

Eso es todo, relativamente sencillo y realmente me gusta mucho más el entorno de Ubuntu Remix Edition que el de Moblin y va mucho más rápido que con Windows.

ACTUALIZACIÓN 12/04/2010: En los comentarios me recomiendan Jolicloud, no lo he probado, pero tiene buena pinta. Gracias por la sugerencia!

viernes, 12 de junio de 2009

Epson DX8400 en Ubuntu

Como ya comenté en mi última entrada, lo que más guerra me dió al migrar a Ubuntu fue instalar la impresora multifunción Epson DX8400.

En la web de Epson te redirigen a Avasys para bajar los drivers. Seleccionando el modelo se pueden bajar los paquetes para la instalación. En mi caso pipslite_1.3.0-2_i386.deb para la impresora y iscan_2.19.2-1_i386.deb para el scanner

La impresora funciona perfectamente, pero lo del scanner es más divertido....

El paquete da un error de instalación ya que depende de libltdl.so.3 y en las últimas versiones de ubuntu se utiliza libltdl.so.7

Se puede arreglar simplemente con un link simbólico, como explican aquí:

sudo dpkg -i --ignore-depends=libltdl3 iscan_2.19.2-1_i386.deb
sudo ln -s /usr/lib/libltdl.so.7 /usr/lib/libltdl.so.3

El problema es que aunque con esto ya funciona el scanner, dejan de funcionar las actualizaciones automáticas de ubuntu, que dan un error de paquete roto. Y si le dices que lo arregle, desinstala iscan y te vuelves a quedar sin scanner.

Así que la solución es compilar el paquete para que utilice la librería correcta. Los fuentes se pueden bajar de la misma página donde está el paquete.

Mi primera opción fue el clásico make / configure / sudo make install.... pero como seguía sin reconocer el escáner, no tuve más remedio que hacer eso que sólo se hace en casos extremos.... leerme el README del paquete. En el README explica que se debe generar el paquete con

dpkg-buildpackage -rfakeroot

Y instalar el paquete generado

sudo dpkg -i iscan_2.19.2-1_i386.deb

Para poder compilar tuve que instalar unas cuantas librerias, que dependerán de lo que ya tengas instalado, en mi caso fueron:

sudo apt-get install gdk-imlib11-dev libsane-dev libgtk2.0-dev libgimp2.0-dev cdbs


Y esto si que funcionó y ya tengo el escáner funcionando como un campeón.

Por último unos cuantos comandos para chequear el escáner:

diego@diego-laptop:~$ lsusb |grep Epson
Bus 001 Device 022: ID 04b8:0839 Seiko Epson Corp. CX8300/CX8400/DX8400

diego@diego-laptop:~$ sane-find-scanner
found USB scanner (vendor=0x04b8, product=0x0839) at libusb:001:022

diego@diego-laptop:~$ scanimage -L
device `epkowa:usb:001:022' is a Epson Stylus CX8300/CX8400/DX8400 flatbed scanner

viernes, 29 de mayo de 2009

Adios Vista..... Hola ubuntu

Después de muchos años utilizando Windows como S.O. de trabajo, hasta hace un par de años por obligación y despues por la simplicidad de seguir utilizando lo mismo... llegó el momento de migrar a Ubuntu.

Inicialmente, la idea de este post antes de migrar era explicar los problemas que me he encontrara en la migración, que aplicaciones de Windows echaba en falta...

Pero la verdad es que después de una semana ubuntera no me he encontrado prácticamente con ningún problema, la práctica totalidad de las aplicaciones que uso en el día a día (Netbeans, Firefox, Thunderbird, Pidgin, Gimp, Thwirl, Filezilla, OpenOffice, ...) no es que funcionen igual, funcionan mejor y más rápido

Con respecto a la instalación, en Windows habría tardado 2 días en instalarlo todo, yendo de web en web para bajarme las diferentes aplicaciones (ruby, subversion, ...) y reiniciando n mil veces. En cambio en Ubuntu casi todo lo he podido instalar con Synaptic / apt-get y sin reiniciar ni una sóla vez.

Y además Spotify, que no tiene versión para linux, funciona perfectamente con wine :-)

Caso aparte el de los periféricos, la impresora multifuncion Epson DX-8400 no hubo manera de instalarla con los .deb que recomienda Epson y los tuve que compilar para que funcionaran, pero bueno, esto es tema para otro post...