Limpiando Ubuntu y SO derivados a fondo.

Con el fin de mantener los equipos limpios, he ido recopilando unos cuantos scripts para pasar la escoba en cualquier sistema basado en Debian. Mantener el equipo limpio nos sirve para aprovechar mejor el espacio en disco, eliminar procesos y librerías innecesarias y, lo más importante, eliminar agujeros de seguridad que pudieran existir. Los comandos recopilados que paso a explicar a continuación son meramente informativos y para recordar su sintaxis y uso en el futuro.

Ver nuestras aplicaciones instaladas:

dpkg --get-selections | more

Nos mostrará una lista con todos los paquetes y aplicaciones instalados en nuestro equipo. Útil si sabemos qué queremos eliminar pero no conocemos el nombre exacto del paquete.

Encontrar archivos de gran tamaño:

find / -type f -size +100000k -exec ls -lh {} \;

Por partes. Con este comando le estamos indicando al sistema que localice, en todo el sistema de archivos / los ficheros que sean mayores de ~100Mb y nos los muestre por pantalla indicando el tamaño en un idioma entendible para humanos (KB, MB, GB…). Si queremos buscar en una carpeta en concreto podemos cambiar / por la ruta en cuestión. Si ponemos un punto “.” nos buscará en la carpeta actual.

Mostrar el tamaño que ocupa una carpeta:

du -ch | grep total

Nos mostrará de un vistazo cuánto ocupa en nuestro sistema la carpeta en la que nos encontramos. Si queremos indicar otra ruta podemos hacerlo antes del operador de canalización (|).

Borrar logs antiguos:

En ubuntu podemos borrar y liberar espacio eliminando logs que ya no se usan y no son necesarios. Cada aplicación puede dejar las versiones antiguas de los log de una forma distinta, renombrar el archivo, empaquetarlo en un tar.gz… Aquí las más comunes.

find /var/log -type f -name "*.gz" -exec rm -f {} \;
find /var/log -type f -name "*.0" -exec rm -f {} \;
find /var/log -type f -name "*.1" -exec rm -f {} \;
find /var/log -type f -name "*.old" -exec rm -f {} \;

No se recomienda el borrado de los ficheros .log, ya que alguna aplicación podría estar escribiendo sobre ellos.

Limpiando la caché de aplicaciones:

Si nos hemos pasado un tiempo instalando y desinstalando programas, puede que nos hayan quedado aplicaciones y paquetes que ya no nos sirvan e incluso paquetes descargados en caché que ya no necesitamos (/var/cache/apt/archives/ y /var/cache/apt/archives/partial/). No se recomienda borrar esta carpeta directamente, para borrar su contenido y desinstalar las dependencias que ya no necesitamos usamos los siguientes comandos.

apt-get autoremove --purge
apt-get autoclean
apt-get clean

A mí me gusta usar autoremove junto con –purge cuando desinstalo paquetes, ya que esto nos elimina también los ficheros de configuración de las aplicaciones que ya no necesitamos, liberando más espacio. En cuanto a diferencias entre autoclean y clean, el primero elimina únicamente los paquetes que ya no están disponibles para descargar, mientras que el segundo elimina todos los paquetes.

Paquetes olvidados:

En ocasiones apt-get autoremove no es tan eficaz como nos gustaría y deja paquetes inservibles en el equipo. Existe una pequeña herramienta que los busca y elimina: Deborphan.

apt-get install deborphan

Para usarla, podemos hacerlo con el siguiente comando:

aptitude purge $(deborphan)

ó

apt-get remove $(deborphan) --purge

Automáticamente nos buscará y eliminará los paquetes que ya no dependen de ningún software. Lo ideal es ejecutarlo varias veces hasta que ya no encuentre nada. Cabe mencionar que debemos revisar lo que elimina antes de confirmar.

Idiomas innecesarios:

Otro software interesante para eliminar los idiomas que no necesitamos es localepurge. Promete eliminar todos los manuales, archivos de ayuda, etc… que estén en idiomas que no necesitemos.

apt-get install localepurge

En la instalación podemos marcar en una terminal gráfica qué idiomas queremos conservar (Español UTF-8 e Inglés seguramente sean los más comunes).

Para ejecutar la limpieza usamos:

localepurge

 

¿No necesitas una interfaz gráfica? (usar con cuidado)

Si hemos instalado una ISO de Ubuntu normal en vez del CD de instalación servidor, habremos instalado un entorno gráfico completo con todas sus aplicaciones que tendremos que eliminar tarde o temprano, ya que si queremos un equipo sin entorno gráfico ni aplicaciones, etc… Podemos proceder del tirón a borrar todo aquello que no nos interesa:

apt-get remove lxde* xfce* kde* mate* gnome* unity* desktop* --purge

Seguro que me dejo alguna cosa, pero con esto nos basta por ahora, luego podemos listar los paquetes para ver si se nos queda algo.

dpkg --get-selections | more

Eliminamos dependencias y paquetes ya inservibles:

apt-get autoremove --purge
aptitude purge $(deborphan)
...
apt-get clean

Reiniciamos la máquina y tendremos una bonita y limpia consola de comandos para empezar de cero.

Cómo evitar que el ordenador se infecte con CryptoLocker

Se pueden utilizar los grupos de Windows o el editor de directivas locales para crear directivas de restricción de software que bloquean los ejecutables que se inician cuando se encuentran en rutas específicas. Para obtener más información sobre cómo configurar directivas de restricción de software, consulta estos artículos de MS:

http://support.microsoft.com/kb/310791

http://technet.microsoft.com/en-us/library/cc786941(v=ws.10).aspx

Las rutas de los archivos que han sido utilizados por esta infección son:

C:\Users\<User>\AppData\Local\<random>.exe (Vista/7/8)
C:\Users\<User>\AppData\Local\<random>.exe (Vista/7/8)
C:\Documents and Settings\<User>\Application Data\<random>.exe (XP)
C:\Documents and Settings\<User>\Local Application Data\<random>.exe (XP)

Con el fin de bloquear CryptoLocker podemos crear reglas para las rutas en las que no se permite la ejecución de archivos. Para crear estas directivas de restricción de software, podemos usar la herramienta CryptoPrevent o añadir las políticas de forma manual usando el editor de directivas de seguridad local o el editor de directivas de grupo. Ambos métodos se describen a continuación.

Nota: Si estás utilizando Windows Home o Windows Home Premium, no tendrás disponible el editor de directivas de seguridad local. En lugar de esto se sugiere usar la herramienta CryptoPrevent, que establece automáticamente estas políticas.

CryptoProtect

Cómo usar la herramienta CryptoPrevent:

FoolishIT LLC creó una herramienta gratuita llamada CryptoPrevent que agrega automáticamente las reglas de directiva de restricción de software a las rutas arriba mencionadas en el equipo. Esto hace que sea muy fácil para cualquier persona que utilice Windows XP SP2 y superiores agregar rápidamente las directivas de restricción de software a su equipo con el fin de prevenir que CryptoLocker y Zbot se ejecuten. Esta herramienta también es capaz de establecer estas políticas en todas las versiones de Windows, incluyendo las versiones Home.

Una nueva característica de CryptoPrevent es la opción de añadir a la lista blanca todos los programas existentes en %AppData% y %LocalAppData%. Es una opción útil, ya que nos aseguramos de que las restricciones que se van a aplicar no afectarán a las aplicaciones legítimas que se encuentran ya instaladas en el equipo. Para usar esta función, asegúrate de revisar la opción Whitelist EXEs que ya se encuentran en %appdata% / %localappdata% antes de pulsar el botón Block.

Puedes descargar CryptoPrevent desde el siguiente enlace:

http://www.foolishit.com/download/cryptoprevent/

Para más información sobre el uso de la herramienta, puedes mirar esta página:

http://www.foolishit.com/vb6-projects/cryptoprevent/

Nota: Puedes usar CryptoPrevent de manera gratuita, pero también ofrece una versión de pago que incluye la actualización automática y silenciosa de la aplicación y sus definiciones, alertas de correo electrónico cuando se bloquea una aplicación, y personalización de las políticas de bloqueo para afinar la protección.

Una vez ejecutado el programa, simplemente hacemos clic en el botón Apply Protection para añadir las políticas de restricción de software por defecto a su equipo. Si deseas personalizar la configuración, revisa las casillas de verificación y cámbialas si es necesario. Si CryptoPrevent provoca problemas de ejecución de aplicaciones legítimas, consulta esta sección sobre cómo habilitar aplicaciones específicas. También puedes eliminar las directivas de restricción de software agregadas hacienda clic en el botón Undo.

Cómo crear manualmente las directivas de restricción de software para bloquear CryptoLocker:

Con el fin de crear manualmente las directivas de restricción de software necesitas usar Windows Professional, Bussiness, Enterprise o Ultimate, o Windows Server. Si quieres establecer estas políticas para un determinado equipo puedes usar el editor de directivas de seguridad local. Si vas a aplicar estas políticas para todo un dominio, entonces necesitas utilizar el editor de directivas de grupo. Si eres usuario de Windows Home, el editor de directivas no estará disponible y se deberá usar la herramienta CryptoPrevent. Para abrir el editor de directivas de seguridad local, haz click en el botón Inicio y escribe “Directiva de seguridad local”, para después seleccionar el resultado de la búsqueda que aparece. Para abrir el editor de directivas de grupo, escribe “Directiva de grupo” en su lugar. En esta guía veremos el editor de directivas de seguridad local en los ejemplos.

Una vez abierto el editor de directivas de seguridad local, veremos una pantalla similar a la de abajo.

Una vez la pantalla está abierta, expande Configuración de seguridad y, a continuación haz clic en la sección de directivas de restricción de Software. Si no ves nada en el panel de la derecha (como se muestra arriba), tendrás que añadir una nueva política. Para ello haz clic en el botón Acción y selecciona Nuevas políticas de restricción de Software. Esto habilitará la directiva para que aparezca el panel de la derecha. Después, debes hacer clic en la categoría Reglas adicionales, e ir al panel derecho, donde seleccionaremos Nueva regla de ruta… A continuación, agregamos una regla de ruta para cada uno de los elementos enumerados a continuación.

Si las directivas de restricción de software causan problemas al intentar ejecutar aplicaciones legítimas, mira esta sección sobre cómo habilitar aplicaciones específicas.

A continuación se presentan algunas reglas de ruta que se sugieren, no solo para bloquear las infecciones sin más, si no también para bloquear los archivos adjuntos que se ejecuten al abrir un cliente de correo electrónico.

Block CryptoLocker executable in %AppData%

Ruta: %AppData%\*.exe
Seguridad: Disallowed
Descripción: Don’t allow executables to run from %AppData%.

Block CryptoLocker executable in %LocalAppData%

Ruta en Windows XP: %UserProfile%\Local Settings\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\*.exe
Seguridad: Disallowed
Descripción: Don’t allow executables to run from %AppData%.

Block Zbot executable in %AppData%

Ruta: %AppData%\*\*.exe
Seguridad: Disallowed
Descripción: Don’t allow executables to run from immediate subfolders of %AppData%.

Block Zbot executable in %LocalAppData%

Ruta en Windows XP: %UserProfile%\Local Settings\*\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\*\*.exe
Seguridad: Disallowed
Descripción: Don’t allow executables to run from immediate subfolders of %AppData%.

Block executables run from archive attachments opened with WinRAR:

Ruta en Windows XP: %UserProfile%\Local Settings\Temp\Rar*\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\Temp\Rar*\*.exe
Seguridad: Disallowed
Descripción: Block executables run from archive attachments opened with WinRAR.

Block executables run from archive attachments opened with 7zip:

Ruta en Windows XP: %UserProfile%\Local Settings\Temp\7z*\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\Temp\7z*\*.exe
Seguridad: Disallowed
Descripción: Block executables run from archive attachments opened with 7zip.

Block executables run from archive attachments opened with WinZip:

Ruta en Windows XP: %UserProfile%\Local Settings\Temp\wz*\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\Temp\wz*\*.exe
Seguridad: Disallowed
Descripción: Block executables run from archive attachments opened with WinZip.

Block executables run from archive attachments opened using Windows built-in Zip support:

Ruta en Windows XP: %UserProfile%\Local Settings\Temp\*.zip\*.exe
Ruta en Windows Vista/7/8: %LocalAppData%\Temp\*.zip\*.exe
Seguridad: Disallowed
Descripción: Block executables run from archive attachments opened using Windows built-in Zip support.

En la imagen de abajo vemos una entrada de registro alertando que muestra un ejecutable que se ha bloqueado:

Cómo permitir la ejecución de aplicaciones específicas utilizando directivas de restricción de software

Si usas directivas de restricción de software o CryptoPrevent, al bloquear Cryptolocker es posible que algunas aplicaciones legítimas ya no funcionen. Esto se debe a que algunas compañías instalan erróneamente sus aplicaciones bajo los perfiles de los usuarios en lugar de en la carpeta “Archivos de programa” al que pertenecen. Por ello, las directivas de restricción de software evitarán que esas aplicaciones se ejecuten.

Afortunadamente, cuando Microsoft diseñó el software de directivas de restricciones, lo hicieron de manera que se pudiesen crear reglas para permitir programas específicos. Por lo tanto, si una directiva de restricción de software bloquea un programa legítimo, tendrás que hacer unos pasos extra para agregar un regla que permita la ejecución del programa. Crearíamos una regla de ruta para el ejecutable de un programa en concreto y estableceríamos el nivel de seguridad a Unrestricted en vez de Disallowed Como se ve en la imagen de abajo.

Una vez añadida la regla, habremos permitido de nuevo la ejecución de esa aplicación.

Creando un área de cliente para portfolios con PHP y MySQL – Cuarta parte

En la parte 3, hemos hecho básicamente cosas que podrías encontrar en cualquier tutorial de PHP/MySQL. Ahora, sin embargo, llegamos a la parte que lo convierte en un “área de cliente”. En este tutorial cubriremos la sección “documentos compartidos” del área de cliente.

Compartir documentos de ida y vuelta entre los cliente puede ser una molestia real a través del correo electrónico y otras herramientas en línea para manejar esto pueden salir caras. Tener tu propia área de clientes para gestionar los documentos es una buena manera de combatir ambos problemas. Sigue leyendo

Creando un área de cliente para portfolios con PHP y MySQL – Segunda parte – Algunas Correcciones

En el post anterior repasábamos algunos aspectos para conseguir tener una seguridad básica en nuestro formulario de registro. En este post quiero, antes de pasar a la tercera parte, modificar un poco ése código y añadir alguna medida más de seguridad para un correcto funcionamiento. Gracias por la ayuda a @Zapy_91 Sigue leyendo

Creando un área de cliente para portfolios con PHP y MySQL – Segunda parte

Repasaremos algunos problemas de seguridad para nuestro formulario de registro. Cuando se trata de bases de datos, es importante asegurarse de que la información del cliente es segura. También repasaremos algunas maneras de asegurarnos de que el usuario introduce los datos correctos. Al final de este manual nos quedaremos con una base de datos de estructura sólida, un formulario de registro que introduzca con éxito los datos correctos y un plan general para el proyecto.

Vamos a repasar la seguridad cuando se trabaja con PHP y bases de datos, y aplicaremos algunas medidas de seguridad especiales para nuestro formulario de registro.

Repasaremos inyecciones SQL, seguridad básica de los formularios HTML, cifrado de contraseñas MD5, y más. Sigue leyendo

Creando un área de cliente para portfolios con PHP y MySQL

Buenos días a todos. Para empezar con mi blog, voy a hacer un tutorial en español, para crear un área de cliente de una cartera personal o portfolio, usando PHP y MySQL, aunque también veremos algo de HTML y JavaScript para los formularios y validaciones. El diseño corre de vuestra cuenta. En él, el cliente podrá inscribirse/iniciar sesión, ver su proyecto actual, enviar notas al diseñador, subir documentos, mirar facturas y más.

Un área de cliente no es algo muy común en las carteras, pero suele ser una gran adición a cualquier portfolio. Si estás cansado de usar 10 herramientas diferentes a través de la web para el control de tus clientes, esta es una solución para ponerlo todo en un solo lugar. En el tutorial de hoy, vamos a planear el proyecto, crearemos la base de datos MySQL y usaremos PHP para crear un formulario de inscripción del cliente. Para aquellos que ya conozcan PHP, esta parte será un poco básica, pero si tienen paciencia se hará más intensa.

Este tutorial se divide en varias partes, dejando espacio para el debate y adiciones según sea necesario. Sigue leyendo

¡Bienvenidos!

Hola a todos los que paséis por aquí, y a los que volváis también.

Empiezo animadamente a escribir este blog, en el cual explicaré paso a paso, y de la manera más clara posible, conceptos relacionados con la informática, ofimática, desarrollo de aplicaciones para Android y Windows, desarrollo Web (HTML5, PHP, JS y MySQL) y sistemas en general, tanto redes, como administración y reparación del PC.

Espero poco a poco ir añadiendo contenidos y atender los comentarios que surjan al respecto.

Un saludo.