Publi

  • Permitir que nuestros usuarios ejecuten tareas controladas en nombre de otro. #SUID #SGID – Con ejemplos y ataques

    Uno de los puntos fuertes de un sistema Unix es su forma de gestionar los privilegios de usuario. Se suele decir que el malware en GNU/Linux sólo afecta al usuario por el que entra (y podrá hacer todo lo que éste pueda hacer), por lo tanto será muy difícil (nada es imposible, y siempre hay bugs) que un programa ejecutado con privilegios de usuario normal afecte al sistema completo.

    Eso sí, otro de los puntos fuertes de un sistema tipo Unix, es que nos deja automatizar absolutamente todo.… Leer artículo completo

  • ¿Cómo obtener el tamaño de las tablas en MySQL? Y alguna idea para nuestros servidores

    Hoy en día tenemos multitud de aplicaciones web instaladas en nuestros servidores. Algunas serán para gestionar nuestros servicios de forma más cómoda, también puede que tengamos varios WordPress instalados, Drupal, una tienda online, CRM, o algunas más específicas. El problema aquí es que como todo en esta vida digital, tiende a ocupar el máximo espacio posible. El caso es que a veces, es muy útil contar con un resumen del tamaño de todas las tablas de nuestro servidor.… Leer artículo completo

  • Programas que me han salvado la vida este 2016

    photo-1477244075012-5cc28286e465Otro de los posts típicos de fin de año que me gusta hacer (bueno, el año pasado fue el primero, aunque hace unos años ya empecé con el tema). Sabemos que un navegador, un cliente de correo y tal vez un programa de música son esenciales (y un S.O., pero no quiero ser pesado con ese tema), así como la mensajería instantánea, aunque en este último caso debemos coger el programa que más utilicen nuestros contactos o alguno compatible.… Leer artículo completo

  • Asus Zenfone 2 Laser, desbloqueo, root, limpieza, sincronización y algunas cosas más

    movil_asus
    Hace un tiempo mi antiguo móvil empezaba a agonizar: perdía la cobertura, la batería duraba cada día menos, se reiniciaba, y muchos más pequeños detalles. Era un THL T11, comprado a una tienda china online. Es cierto que para el hardware que traía (octa core, 2Gb de RAM) no me salió caro, 118€. Aunque creo que a la larga, he perdido más tiempo esperando que reiniciara, rellamando a personas, reiniciando el teléfono y antes de jubilarlo instalando ROMs y tocando scripts de inicio.… Leer artículo completo

  • Cómo saber si existe una función en Bash, saber qué estamos ejecutando y más

    photo-1457317680121-ef12e98979e8

    En nuestra historia como programadores, hacemos infinidad de llamadas a funciones propias, de terceros, de biblioteca, a otros programas a un alias, etc Y si queremos que nuestros scripts sean lo más robustos posible, debemos tener claro antes de la ejecución que aquello que llamamos se puede ejecutar o dar opciones si algún comando o función no existe.

    Por ejemplo, nuestro script necesita hacer una llamada a wget de este tipo:

    wget -O salida http://totaki.com

    Pero queremos hacer que sea compatible con otros sistemas, por ejemplo, con cURL, y no podemos cambiar uno por otro, pues con curl sería con o minúscula:

    curl -o salida http://totaki.com

    Nuestro script podrá ser:

    1
    2
    3
    4
    5
    6
    7
    8
    if [ -n "$(which wget)" ]; then
        wget -O salida http://totaki.com
    elif [ -n "$(which curl)" ]; then
        curl -o salida http://totaki.com
    else
        echo "No puedo descargar el fichero"
        exit 1
    fi

    De modo que probamos la existencia de diferentes programas y utilizamos el que tengamos a disposición.… Leer artículo completo

  • Cómo localizar ese script en PHP que no para de enviar spam…

    photo-1424296308064-1eead03d1ad9

    Si administras un servidor en el que hay varias webs alojadas, tal vez te hayas encontrado alguna vez con envíos de correos indiscriminados en el servidor. O tal vez, tu proveedor de hosting te haya avisado de actividad maliciosa o ilegal por tu parte. Muchas veces se trata de un script malicioso que se ha instalado en el servidor que utiliza la función mail() de PHP, que a su vez llama al programa sendmail del sistema para el envío masivo de correos electrónicos.… Leer artículo completo

  • Vicio con el teclado, comandos, manías y coletillas que nos salen sin pensar

    photo-1445605081472-9788fb3bc02f

    Como apasionado de la consola, soy una de esas personas que tarda menos en escribir un comando y pulsar enter que en cargar una interfaz gráfica, click, click, control, clic, arrastrar, soltar, click… y el tiempo es muy valioso.
    Eso sí, cuando empiezas a pegarle al teclado y escribir comandos en la terminal, parece que todo va más lento, una simple coma, o un espacio es capaz de fastidiarlo todo, pero cuando llevas mucho tiempo, lo tienes todo tan automatizado que te sale el alma.… Leer artículo completo

  • Cómo conocer CPU y memoria ocupada por un grupo de procesos con el mismo nombre

    photo-1463123081488-789f998ac9c4

    En multitud de ocasiones, mientras estamos trabajando con nuestro ordenador, o incluso con un servidor remoto, se presenta la necesidad de saber la memoria ocupada o la CPU consumida por un determinado proceso.
    Para ello tenemos herramientas como top o ps (entre otras) que nos permiten conocer dicha información. Podemos encontrar multitud de tutoriales para ambos comandos, sólo daré una pincelada aquí.

    ps

    Casi siempre que uso ps suelo hacerlo de la siguiente manera:

    $ ps ax

    para así mostrar todos los procesos que están corriendo actualmente, y si queremos obtener información sobre memoria y CPU podremos ejecutar:

    $ ps axl

    o

    $ ps axo pid,pcpu,pmem,size,cmd

    Si queremos obtener más datos como ID de proceso (pid), % de CPU (pcpu), % de memoria (pmem), tamaño en memoria (size), comando que genera el proceso (cmd).… Leer artículo completo

  • Los principales partidos políticos y el software libre para las próximas elecciones

    elecciones_red2

    En España, tenemos elecciones generales dentro de unos días. Unas elecciones que llegan en un momento histórico y complicado en este país. En el blog no me gusta hablar de mis ideologías políticas sencillamente, porque no es el lugar idóneo para ello.
    Pero, voy a hacer un análisis lo más objetivo posible de los programas electorales de los principales partidos (Partido Popular o PP, Partido Socialista Obrero Español o PSOE, Ciudadanos, Podemos y Unidad Popular o UP).… Leer artículo completo

  • Cómo gestionar los parámetros de un programa en C (parte 2: parámetros largos)

    photo-1415348667647-9e035495cfb7_r

    Hace unos días publiqué Cómo gestionar los parámetros de nuestros programas con getopt en C como una introducción a la gestión de los argumentos desde nuestros programas en C. De esta forma podremos hacer nuestros programas más flexibles aceptando una entrada del usuario en forma de parámetros y así modificar el comportamiento.

    Antes de nada: WordPress cuando ve dos guiones seguidos (- y -) lo interpreta como un guión largo.… Leer artículo completo