Instalamos biabam:
#apt-get install biabam
Ejecutamos el comando con el asunto, archivo adjunto y destinatarios:
#echo "Contenido del mail" | biabam /ruta/del/archivo/a/adjuntar -s "Asunto del mail" destinatario1@midominio.com,destinatario2@midominio.com
lunes, 24 de agosto de 2009
viernes, 14 de agosto de 2009
Restaurar conexion luego de insertar una regla erronea con iptables
Usualmente solemos agregar una regla en iptables, en la cual nos deja afuera del server. Si nuestro servidor esta alojado en otro pais y no disponemos de que nadie realice el cambio en la regla para volver acceder podemos utilizar el comando iptables-apply.
Un ejemplo de uso podria ser el siguiente:
Pensemos que queremos bloquear el acceso ssh para todos las PCs menos nuestra pc, si por casualidad nos equivocamos o ponemos mal algun filtro nos quedaremos sin acceso al server.
Guardamos las reglas de iptables en un archivo de texto:
#iptables-save > ipt.txt
Editamos dicho archivo:
#vim ipt.txt
En el INPUT denegamos el ssh, no tengamos miedo, ya que hasta que no restablezcamos no perderemos coneccion. Tengamos en cuenta que no restauraremos con el comando iptables-restore, sino que lo haremos con iptables-apply.
Dentro del ipt.txt pondremos lo siguiente dentro del la cadena INPUT:
-A INPUT -p tcp --dport 24 -j DROP
Guardamos y salimos:
:wq
Ahora indicaremos el tiempo que tendremos para que el servidor vuelva a restablecer las reglas antes que perdamos la conexion ssh. Tengamos en cuenta que si vemos un mensaje para volver validarlo, el cual pedira confirmacion, si no lo vemos perderemos la conexion. Recuerden que luego del tiempo que le ponemos mediante el parametro -t volveremos a poder conectarnos.
Ejecutamos el util comando:
#iptables-apply -t 30 ipt.txt
Vemos que se aplicaron bien las reglas y perdemos conexion a la terminal:
Applying new ruleset... done.
Luego de 30 segundos u otra cantidad que le especifiquemos con el -t volveremos a poder conectarnos.
Con itables -L veremos que volvio hacia atras el ultimo cambio que realizamos.
En cambio si hubiesemos colocado la regla correcta nos aparecera en pantalla un mensaje, al cual le indicaremos que si y aplicara los cambios sin volver a atras los cambios
Applying new ruleset... done.
Can you establish NEW connections to the machine? (y/N) y
... then my job is done. See you next time.
Un ejemplo de uso podria ser el siguiente:
Pensemos que queremos bloquear el acceso ssh para todos las PCs menos nuestra pc, si por casualidad nos equivocamos o ponemos mal algun filtro nos quedaremos sin acceso al server.
Guardamos las reglas de iptables en un archivo de texto:
#iptables-save > ipt.txt
Editamos dicho archivo:
#vim ipt.txt
En el INPUT denegamos el ssh, no tengamos miedo, ya que hasta que no restablezcamos no perderemos coneccion. Tengamos en cuenta que no restauraremos con el comando iptables-restore, sino que lo haremos con iptables-apply.
Dentro del ipt.txt pondremos lo siguiente dentro del la cadena INPUT:
-A INPUT -p tcp --dport 24 -j DROP
Guardamos y salimos:
:wq
Ahora indicaremos el tiempo que tendremos para que el servidor vuelva a restablecer las reglas antes que perdamos la conexion ssh. Tengamos en cuenta que si vemos un mensaje para volver validarlo, el cual pedira confirmacion, si no lo vemos perderemos la conexion. Recuerden que luego del tiempo que le ponemos mediante el parametro -t volveremos a poder conectarnos.
Ejecutamos el util comando:
#iptables-apply -t 30 ipt.txt
Vemos que se aplicaron bien las reglas y perdemos conexion a la terminal:
Applying new ruleset... done.
Luego de 30 segundos u otra cantidad que le especifiquemos con el -t volveremos a poder conectarnos.
Con itables -L veremos que volvio hacia atras el ultimo cambio que realizamos.
En cambio si hubiesemos colocado la regla correcta nos aparecera en pantalla un mensaje, al cual le indicaremos que si y aplicara los cambios sin volver a atras los cambios
Applying new ruleset... done.
Can you establish NEW connections to the machine? (y/N) y
... then my job is done. See you next time.
lunes, 25 de mayo de 2009
Script para cambiar serial de un DNS Server
#!/bin/sh
#Guardar serial que tiene en la zona antes del cambio:
SERIAL_VIEJO_COMPLETO=`cat mi-zona.com.ar | grep serial |cut --delimiter=" " -f 1`
#Obtener numero de serial solo de la zona antes del cambio:
SERIAL_SOLO_VIEJO=`echo $SERIAL_VIEJO_COMPLETO | cut -c9,10`
#Obtener fecha sola antes del cambio, sin incluir los ultimos digitos del serial:
FECHA_VIEJA=`echo $SERIAL_VIEJO_COMPLETO|cut -c1-8`
#Nuevo formato de la fecha para el serial, falta agregar el nuevo serial:
FECHA=$(date +%Y%m%d)
#Obtener numero de serial viejo solo:
SERIAL_SOLO_VIEJO=`echo $SERIAL_VIEJO_COMPLETO | cut -c9,10`
#Sumar numero serial viejo completo +1 cuando las fechas son iguales:
let NEW_SERIAL=SERIAL_VIEJO_COMPLETO+1
if test $FECHA -eq $FECHA_VIEJA
then
#echo "son iguales, solo incrementar el serial"
let SERIAL_NUEVO_COMPLETO=SERIAL_VIEJO_COMPLETO+1
echo $SERIAL_NUEVO_COMPLETO
else
#echo "son distintas, cambiar la fecha y poner el serial a 00"
echo `echo $FECHA`00
fi
#Guardar serial que tiene en la zona antes del cambio:
SERIAL_VIEJO_COMPLETO=`cat mi-zona.com.ar | grep serial |cut --delimiter=" " -f 1`
#Obtener numero de serial solo de la zona antes del cambio:
SERIAL_SOLO_VIEJO=`echo $SERIAL_VIEJO_COMPLETO | cut -c9,10`
#Obtener fecha sola antes del cambio, sin incluir los ultimos digitos del serial:
FECHA_VIEJA=`echo $SERIAL_VIEJO_COMPLETO|cut -c1-8`
#Nuevo formato de la fecha para el serial, falta agregar el nuevo serial:
FECHA=$(date +%Y%m%d)
#Obtener numero de serial viejo solo:
SERIAL_SOLO_VIEJO=`echo $SERIAL_VIEJO_COMPLETO | cut -c9,10`
#Sumar numero serial viejo completo +1 cuando las fechas son iguales:
let NEW_SERIAL=SERIAL_VIEJO_COMPLETO+1
if test $FECHA -eq $FECHA_VIEJA
then
#echo "son iguales, solo incrementar el serial"
let SERIAL_NUEVO_COMPLETO=SERIAL_VIEJO_COMPLETO+1
echo $SERIAL_NUEVO_COMPLETO
else
#echo "son distintas, cambiar la fecha y poner el serial a 00"
echo `echo $FECHA`00
fi
viernes, 8 de mayo de 2009
Huevos de Pascuas
Poderes de Super Vaca de apt-get:
server1:~# apt-get moo
Tren:
server1:~# apt-get install sl
server1:~# sl
server1:~# sl -l
server1:~# sl -F
server1:~# sl -e
server1:~# sl -alFe
Aptitude, tiene Huevos?
server1:~# aptitude moo
There are no Easter Eggs in this program.
server1:~# aptitude moo -v
There really are no Easter Eggs in this program.
server1:~# aptitude moo -vv
Didn't I already tell you that there are no Easter Eggs in this program?
server1:~# aptitude moo -vvv
Stop it!
server1:~# aptitude moo -vvvv
Okay, okay, if I give you an Easter Egg, will you go away?
server1:~# aptitude moo -vvvvv
All right, you win.
server1:~# aptitude moo -vvvvvv
What is it? It's an elephant being eaten by a snake, of course.
Jajaja, cualquiera, una vibora comiendo un elefante, jojooo.
Otro haciendo telnet:
telnet towel.blinkenlights.nl
server1:~# apt-get moo
Tren:
server1:~# apt-get install sl
server1:~# sl
server1:~# sl -l
server1:~# sl -F
server1:~# sl -e
server1:~# sl -alFe
Aptitude, tiene Huevos?
server1:~# aptitude moo
There are no Easter Eggs in this program.
server1:~# aptitude moo -v
There really are no Easter Eggs in this program.
server1:~# aptitude moo -vv
Didn't I already tell you that there are no Easter Eggs in this program?
server1:~# aptitude moo -vvv
Stop it!
server1:~# aptitude moo -vvvv
Okay, okay, if I give you an Easter Egg, will you go away?
server1:~# aptitude moo -vvvvv
All right, you win.
server1:~# aptitude moo -vvvvvv
What is it? It's an elephant being eaten by a snake, of course.
Jajaja, cualquiera, una vibora comiendo un elefante, jojooo.
Otro haciendo telnet:
telnet towel.blinkenlights.nl
sábado, 4 de abril de 2009
Papelera en Linux
Creamos una carpeta oculta en el home del root o del usuario que deseamos:
server1:~# mkdir /root/.papelera
Creamos el alias para el comando rm que pase a ejecutarse el mv:
server1:~# alias rm='mv --target-directory=/root/.papelera'
Ejecutamos el comando alias para verificar que fue correctamente agregado:
server1:~# alias
alias rm='mv --target-directory=/root/.papelera'
Creamos un archivo para luego al eliminarlo lo envie a la papelera:
server1:~# echo hola > pepe.txt
Ahora si eliminamos el archivo:
server1:~# rm pepe.txt
Verificamos que en vez de eliminarlo fue movido a /root/.papelera con el comando:
server1:~# ls -la /root/.papelera/
total 12
drwxr-xr-x 2 root root 4096 2009-04-04 23:50 .
drwxr-xr-x 6 root root 4096 2009-04-04 23:50 ..
-rw-r--r-- 1 root root 5 2009-04-04 23:46 pepe.txt
Obviamente que al crear un alias, al cerrar la sesion se pierde y hay que volver ejecutarlo, o simplemente podremos poner el comando ejecutado en el /root/.bashrc
server1:~# mkdir /root/.papelera
Creamos el alias para el comando rm que pase a ejecutarse el mv:
server1:~# alias rm='mv --target-directory=/root/.papelera'
Ejecutamos el comando alias para verificar que fue correctamente agregado:
server1:~# alias
alias rm='mv --target-directory=/root/.papelera'
Creamos un archivo para luego al eliminarlo lo envie a la papelera:
server1:~# echo hola > pepe.txt
Ahora si eliminamos el archivo:
server1:~# rm pepe.txt
Verificamos que en vez de eliminarlo fue movido a /root/.papelera con el comando:
server1:~# ls -la /root/.papelera/
total 12
drwxr-xr-x 2 root root 4096 2009-04-04 23:50 .
drwxr-xr-x 6 root root 4096 2009-04-04 23:50 ..
-rw-r--r-- 1 root root 5 2009-04-04 23:46 pepe.txt
Obviamente que al crear un alias, al cerrar la sesion se pierde y hay que volver ejecutarlo, o simplemente podremos poner el comando ejecutado en el /root/.bashrc
Partir archivos con split y volverlos a unir
El archivo pepe.txt pesa 65 Megas:
server1:/pruebas# ls -lath pepe.txt
-rw-r--r-- 1 root root 65M 2009-04-04 22:33 pepe.txt
Quiero partir el archivo pepe.txt en archivos de 10 Mbytes:
server1:/pruebas# split -b 10m pepe.txt pepe.txt-
Muestro la salida de los archivos partidos:
server1:/pruebas# ls -lath pepe.*
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-af
-rw-r--r-- 1 root root 5,0M 2009-04-04 22:40 pepe.txt-ag
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ad
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ae
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ab
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ac
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-aa
-rw-r--r-- 1 root root 65M 2009-04-04 22:33 pepe.txt
Borro el pepe.txt original:
server1:/pruebas# rm pepe.txt
Vuelvo a unir los archivos partidos en el archivo original:
server1:/pruebas# cat pepe.txt-* > pepe.txt
server1:/pruebas# ls -lath pepe.txt
-rw-r--r-- 1 root root 65M 2009-04-04 22:33 pepe.txt
Quiero partir el archivo pepe.txt en archivos de 10 Mbytes:
server1:/pruebas# split -b 10m pepe.txt pepe.txt-
Muestro la salida de los archivos partidos:
server1:/pruebas# ls -lath pepe.*
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-af
-rw-r--r-- 1 root root 5,0M 2009-04-04 22:40 pepe.txt-ag
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ad
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ae
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ab
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-ac
-rw-r--r-- 1 root root 10M 2009-04-04 22:40 pepe.txt-aa
-rw-r--r-- 1 root root 65M 2009-04-04 22:33 pepe.txt
Borro el pepe.txt original:
server1:/pruebas# rm pepe.txt
Vuelvo a unir los archivos partidos en el archivo original:
server1:/pruebas# cat pepe.txt-* > pepe.txt
lunes, 5 de enero de 2009
Conexion VPN por linea de comandos
Para realizar una conexión VPN en forma automática pondremos en un .bat los siguientes comandos:
Para conectar a la VPN:
rasdial
rasdial trabajo morsa passguord
Este por si no queremos que vean el password:
rasdial trabajo morsa *
Desconectamos a la VPN:
rasdial /disconnect
Para conectar a la VPN:
rasdial
rasdial trabajo morsa passguord
Este por si no queremos que vean el password:
rasdial trabajo morsa *
Desconectamos a la VPN:
rasdial
Guardar configuración del Putty
Como el putty no tiene archivo de configuración, ni permite exportarlo, hay que hacer el backup de la configuración desde el registro de windows.
Hay que exportar la siguiente clave:
HKEY_CURRENT_USER\Software\SimonTatham
Hacemos botón derecho sobre la clave putty y la exportamos, luego le damos doble click y "si" para copiarla en otra pc o en la misma luego de formatear.
Hay que exportar la siguiente clave:
HKEY_CURRENT_USER\Software\SimonTatham
Hacemos botón derecho sobre la clave putty y la exportamos, luego le damos doble click y "si" para copiarla en otra pc o en la misma luego de formatear.
Suscribirse a:
Entradas (Atom)