viernes, 29 de noviembre de 2013

Cómo arreglar el error com.android.phone en Android 4.3 con Pepephone y otras OMV's

Hola de nuevo,

hace un tiempo actualicé por OTA mi Nexus 4 a Android 4.3 (Jelly Bean).
Una vez aplicada la OTA, siempre es recomendable hacer un Factory Reset para borrar todos los datos y evitar conflictos con ficheros antiguos, así que hice el Factory Reset y al reiniciar empezó a salirme una ventana de error de "com.android.phone" que no te permitía hacer nada, ya que al darle al botón de aceptar volvía a salir una nueva ventana inmediatamente.

El problema viene porque la SIM de Pepephone (y otros OMV's) contiene por defecto un montón de APN's que hace que Android 4.3 falle (ojo, con 4.4 no pasa).
Y la solución es bien sencilla, hay que borrar todos los APN's y poner el de tu compañía a mano, pero claro, con la ventana de error saliendo continuamente se hace muy dificil llegar hasta los APN's y borrarlos.
Si pones el móvil en modo avión deja de salirte el error, pero tienes el problema de que estando en modo avión no te permite entrar en los ajustes para borrar los APN's.

Publiqué la solución en HTCMania hace un tiempo en el foro de Nexus 4, pero me consta que ahora ocurre en más teléfonos que se están actualizando a 4.3 y por eso lo publico aquí también.

Los pasos a seguir para arreglar en error sin necesidad de ser root son los siguientes:

1. Instalamos la OTA
2. Factory reset (y perdemos todos los datos, fotos, vídeos, etc)
3. Primer reinicio y no para de darnos el error
4. Salimos del asistente de inicio (ya crearemos la cuenta después)
5. Ponemos modo avión (dejando el botón de power pulsado/modo avión). A partir de aquí ya no nos sale el error.
6. Activamos el Wifi y nos conectamos a nuestra red.
7. Vamos a ajustes/seguridad/origenes desconocidos y lo marcamos.
8. Bajamos el siguiente apk: http://bit.ly/17b3nET (totalmente fiable, lo he hecho yo, no requiere ningún permiso)
9. Lo instalamos, le damos a ejecutar y nos saldrá la lista de APN's (tras 6 segundos mostrando la pantalla de bienvenida)
10. Borramos TODOS los APN's y creamos el de nuestra compañía
11. Quitamos el modo avión y a disfrutar de 4.3

Espero que os sirva.
Saludos.

Incrementar la seguridad de tu servidor (Tercera parte) (Fail2ban)

Hola de nuevo,

después de la primera parte y de la segunda parte, vamos a explicar cómo incrementar la seguridad de nuestro servidor evitando que nos hagan un ataque de fuerza bruta (o de diccionario) a servicios que requieran un usuario y una contraseña.


Cuando hablamos de un ataque de fuerza bruta nos estamos refiriendo a que alguien empiece a probar usuarios y contraseñas en algún servicio que tengamos en nuestro servidor. Por ejemplo, en el servicio SSH, que nos pide usuario y contraseña, alguien podría empezar a probar contraseñas para el usuario "root", empezaría por aaaaaaaa, aaaaaaab, aaaaaaac, etc. Evidentemente, esto se realiza de forma automática mediante un script que va probando distintas contraseñas hasta que da con la nuestra.

De forma análoga tenemos el ataque de diccionario, en el que se prueban contraseñas de un diccionario de contraseñas, el cual contiene las contraseñas más habituales, por ejemplo "12345678", "qwertyuio", "god","password", etc.

Servicios que sean vulnerables a este tipo de ataques son SSH, apache, ftp, wordpress, etc. En general, cualquier servicio que nos pida un usuario y una contraseña.

Fail2ban es una herramienta que nos protege de este tipo de ataques, bloqueando la IP del cliente que nos está haciendo dicho ataque cuando llega a un número de intentos determinados que podemos configurar.

Es decir, podemos poner que como máximo una misma IP pueda equivocarse tres veces poniendo la contraseña de SSH, o la del admin del wordpress, o la de FTP, y al intentar una cuarta vez ya no podría conectar porque estaría bloqueado por el firewall de nuestro servidor.
Que se bloquee a nivel de firewall nos da dos ventajas:
- Que no puede seguir realizando el ataque
- Y que no nos consumirá tanto ancho de banda, ya que ni siquiera puede establecer la conexión para intentar introducir el usuario y la contraseña.
Fail2ban lo que hace es leer los ficheros de log de los distintos servicios para saber qué ip se ha equivocado al hacer login y bloquearla siguiendo unas reglas.


Para instalar fail2ban en Ubuntu tenemos que ejecutar el siguiente comando como root:

 Una vez instalado tenemos que hacer una copia del fichero /etc/fail2ban/jail.conf a jail.local para que si alguna vez se actualiza el paquete fail2ban no nos sobreescriba nuestra configuración:


Y luego hay que editar el fichero /etc/fail2ban/jail.local para activar los servicios que queremos monitorear, en mi caso serían vsftp (FTP), ssh y wordpress:


En la línea 6 (ignoreip) puedes poner IP's que NUNCA serán baneadas, por ejemplo la de tu trabajo (si es IP fija).
En la línea 7 (bantime) se especifica el tiempo de baneo, en mi caso puse 36000 segundos = 10 horas
En la línea 8 pones las veces como máximo que se pueden equivocar al poner la contraseña, he puesto 3 aunque luego en cada servicio se puede especificar las veces que quieres.

Y después tenemos la configuración para cada servicio que se entiende bastante fácil para qué es cada cosa, si tenéis dudas poned un comentario y respondo.

 Para que funcione bien hay que modificar la configuración de ssh para que en el log guarde las IP's y no los nombres de las máquinas que se contectan, para ello añadimos esta línea al final del fichero /etc/ssh/sshd_config:

 
Para que wordpress cree el fichero de log hay que instalar este plugin:
 
http://wordpress.org/plugins/wp-fail2ban/
 
El zip del plugin viene con el fichero wordpress.conf que hay que copiar en la ruta /etc/fail2ban/filter.d
 
Y luego ya podemos reinciar el ssh, el fail2ban y el wordpress:
 
 
A partir de ese momento, fail2ban empezará a banear las IP's.
Este es un ejemplo de IP's baneadas (ficticias):
 
 
 En mi servidor cada día banea unas 10 IP's, sobre todo en el servicio ssh, sobre todo de paises como Tailandia, China, etc.
Espero que os sirva, y si hay dudas, ya sabéis... un comentario ;-)