Suele pasar a veces que hay links de spammers hacia tu web que no has puesto tu o vienen de sitios webs de sospechosa procedencia y no nos interesan esas visitas. Pueden ser sitios de spam, foros de spammers, sitios porno, o simplemente webs de las que no quieres recibir visitantes.
Para bloquear los visitantes procedentes de estos sitios webs, es necesario agregar unas pocas líneas en tu archivo .Htaccess
# spam_ref variable definida
SetEnvIfNoCase Referer "^ http:// (www.)? Refferer.com Sitio" spam_ref = 1
SetEnvIfNoCase Referer "^ http:// (www.)? Otra-site.com" spam_ref = 1
SetEnvIfNoCase Referer "^ palabra-incluido-en-dirección-url" spam_ref = 1
# bloquear todo el conjunto en spam_ref
<FilesMatch "(.*)">
Orden allow, deny
Dejar de todas las
Deny from env = spam_ref
</ FilesMatch>
«#»Añadido delante de las líneas. Htaccess, cancelar la línea. Digamos que una línea informativa.
Requisito para una urgencia en una empresa fue crear de urgencia unos full backups y un backup incremental diario de un repositorio. Como siempre estos requerimientos se requieren para ayer y son para salvar cabezas cuando las papas queman.
Debido al gran volumen de datos, como estrategia de backups se decidió realizar un Full backup mensual y un backup incremental diario.
A tal fin, se escribieron dos scripts, el primero de ellos, que dado un directorio crea un archivo tar comprimido del mismo. Y el segundo, el que se ejecuta diariamente, que se encarga de verificar la fecha de modificación del último backup full del directorio y a partir de la misma crea un tar comprimido con los cambios desde entonces.
Nada de otro mundo, dos scripts en bash sencillos, pero que se dejan a vuestra disposición por si las moscas.
Backup incremental:
#!/bin/sh
TAR=$(which tar)
TEE=$(which tee)
ARGS=2
if [ $# -ne $ARGS ]
then
echo “Usage: “$0” file dir”
echo ” file: backup file name”
echo ” dir: path to backup”
exit
fi
APP=$0 #app name
FILE=$1“_incremental.tgz” #backup file
FILE_FULL=$1“_full.tgz” #backup full
FILE_OLD=$FILE“~” #file backuped before remove
DIR=$2 #path
LOG_DIR=/var/log
LOG_FILE=$LOG_DIR“/”${APP##*\/}“.log” #remuevo de APP lo que este antes de la ultima /
TODAY=`date “+%Y-%m-%d %a”`
echo $TODAY” *** Backup incremental ***” | $TEE -a $LOG_FILE
if [ ! -d $DIR ]
then
echo “ERROR: path “$DIR” not exist” | $TEE -a $LOG_FILE
exit
fi
# Reviso si existe el backup full
if [ ! -f $FILE_FULL ];
then
echo “ERROR: full backup “$FILE_FULL” not exist!” | $TEE -a $LOG_FILE
exit
fi
#Realizo backup del backup
echo “Rotating files…” | $TEE $LOG_FILE
if [ -f $FILE ];
then
#cp -v $FILE $FILE_OLD | $TEE $LOG_FILE
rm -v $FILE | $TEE $LOG_FILE
fi
#Realizo el backup
DATE_FULL=“`date \”+%Y-%m-%d %H:%M\” -r “$FILE_FULL“`”
echo “Full backupe created: “$DATE_FULL | $TEE $LOG_FILE
echo “Making backup…” | $TEE $LOG_FILE
$TAR -chzf $FILE –newer-mtime=“$DATE_FULL” $DIR | $TEE -a $LOG_FILE
if [ $? == 0 ]
then
echo “Backup successfull!”
else
echo “ERROR: error making backup <img alt=":-(" src="http://luauf.com/wp-includes/images/smilies/icon_sad.gif" /> “
fi
Full backup:
#!/bin/bash
TAR=$(which tar)
TEE=$(which tee)
ARGS=2
if [ $# -ne $ARGS ]
then
echo “Usage: “$0” file dir”
echo ” file: backup file name”
echo ” dir: path to backup”
exit
fi
APP=$0 #app name
FILE=$1“_full.tgz” #backup file
FILE_OLD=$FILE“~” #file backuped before remove
DIR=$2 #path
LOG_DIR=/var/log
LOG_FILE=$LOG_DIR“/”${APP##*\/}“.log” #remuevo de APP lo que este antes de la ultima /
TODAY=`date “+%Y-%m-%d %a”`
echo $TODAY” *** Backup full *** “ | $TEE -a $LOG_FILE
if [ ! -d $DIR ]
then
echo “ERROR: path “$DIR” not exist” | $TEE -a $LOG_FILE
exit
fi
#Realizo backup del backup
echo “Rotating files…” | $TEE -a $LOG_FILE
if [ -f $FILE ];
then
#cp -v $FILE $FILE_OLD | $TEE -a $LOG_FILE
rm -v $FILE | $TEE -a $LOG_FILE
fi
echo “Making backup…” | $TEE -a $LOG_FILE
#Realizo el backup
$TAR -chzf $FILE $DIR | $TEE -a $LOG_FILE
if [ $? == 0 ]
then
echo “Backup successfull!”
else
echo “ERROR: error making backup <img alt=":-(" src="http://luauf.com/wp-includes/images/smilies/icon_sad.gif" /> “
fi
La necesidad de redireccionar hacia otra IP todos los emails salientes en un servidor puede ser debido a que hallan metido la IP principal de salida SMTP en alguna buena jodida lista negra en la que tarden mucho en des-listar la IP. Para solucionar este problema rápidamente hay que redireccionar todo el tráfico saliente del puerto 25 o 587 (o al puerto que tengamos configurado el SMTP) hacia otra IP que tengamos configurada en nuestro servidor. La regla de IPTables es la siguiente:
Al igual que conocéis Htop, en está ocasión vamos a ver que es y como se instala Glance.
Glance es una herramienta de monitoreo basado en CLI curses para GNU/Linux y BSD OS. Glance es mucho más completo que el ultra conocido HTOP. Glances utiliza la librería PsUtil para obtener la información del sistema. Está desarrollada en Phyton.
Instalación
Pre-requisitos:
Python 2.6+ (no probado con Python 3+)
build-essential (para instalación vía Pypi y setup.py)
python-dev (para instalación vía Pypi)
python-setuptools (para instalación vía setup.py)
python-psutil 0.4.1+ (reemplaza las librería anteriores libstatgrab’s lib)
python-jinja2 2.0+ (opcional para exportar a HTML)
pysensors (librería Python para estadísticas de sensores)
Desde administrador de paquetes (la manera mas fácil)
Paquetes existen para Debian (SID), Arch, Fedora, RedHat, FreeBSD
Desde PyPi (forma facil y multiplatforma)
PyPi es una administrador de paquetes no oficial.
Primero necesitas instalar pypi en tu sistema. Por ejemplo en Ubuntu/Xubuntu:
Esta instalación es básica para servidores y/o equipos con sistemas Debian/Ubuntu. Para instalar Glance en servidores basados en RHEL/Centos hay que instalar repositorios EPEL y después hacer
yum -y install python-pip
Ejecucion de Glance
En modo Standalone
Si quiere monitorear la maquina local, ejecuta:
glance
En modo cliente/servidor
Si quieres monitorear un maquina remotamente (llamado servidor) desde otra (llamada cliente)
Ejecuta este comando en el servidor:
server$ glances -s
Y este en el cliente:
client$ glances -c @server
Donde @server es la IP del servidor o el nombre del servidor
Glance utiliza el esquema de servicio XML/RPC y puede ser usado por otro software cliente
Guía de usuario
Por defecto las estadísticas se actualizan cada segundo, para cambiar esto puede usar la opción -t. Por ejemplo para definir la actualización cada 5 segundos seria:
glances -t 5
Las estadisticas importantes estan coloreadas como:
VERDE: conteo de estadísticas es “OK”
AZUL: conteo de estadistica es “CAREFUL” (Cuidado)
MAGENTA: conteo de estadistica es “WARNING” (Alarma)
ROJO: conteo de estadística es “CRITICAL” (Critico)
Cuando Glance esta en ejecucion puedes presionar las siguiente teclas:
‘h’ muestra el mensaje de ayuda en pantalla con las teclas que puedes utilizar
‘a’ definir el método automático. Los procesos son ordenados automaticamente
Si CPU > 70%, ordena los procesos por consumo de CPU
Si MEM > 70%, orden los procesos por consumo de tamaño de memoria
‘b’ intercambia entre bit/s o byte/s para la E/S de red
‘c’ ordena la lista de procesos por consumo de CPU
‘d’ habilita/deshabilita las estadísticas de I/O en disco
‘e’ habilita el modulo de sensores (la librería PySensors es necesaria; Solo Linux)
‘f’ hablita/deshabilita las estadísticas del sistema de archivos
‘l’ habilita/deshabilita el logeo de la aplicación.
‘m’ ordena la lista de procesos por consumo de memoria
‘n’ habilita/deshabilita las estadisticas de la interfaz de red
‘p’ ordena por el nombre del proceso
‘w’ elimina los WARNING finalizados (que ya no estan) del archivo log
’1′ intercambia entre las estadisticas globales del CPU y las estadisticas particulares por cada CORE
‘q’ salir de la aplicacion
En modo servidor, puede definir la IP donde escuchara las peticiones (-B DIRECCION) y el puerto (-p PUERTO)
En el modo cliente, puede definir el puerto del servidor con -p PUERTO
La IP de escucha por defecto es 0.0.0.0, es decir, en todas las que tenga el equipo.
Si teneis alguna pregunta sobre Glance, decirlos en los comentarios!! Be water my friends!!
Libro enfocado para aquellos administradores de sistemas, gestores y usuarios de Linux que deseen proteger servidores y estaciones de trabajo Linux contra intrusiones no autoriazadas y otras amenazas externas para la integridad de sus sistemas. Esta guia exclusiva de la seguridad en Linux la ha escrito un “hacker” con años de experiencia y en ella se identifican los agujeros y fallos de seguridad existente y potenciales, ademas de como solucionarlos.