InicioLinuxvarios script que pueden ser de utilidad en gnu/linux
En este post quiero compartir con ustedes varios script para distintas funciones espero les pueda ser de utilidad (Aclarando que la información en este post fueron recabados desde la web y traducidos asi que sepan entender algunos errores de traducción)

script que monitorea si el servidor FTP esta activo
Este es un script que monitorea si el servidor FTP esta activo, caso contrario enviara un e-mail al administrador.
Requisito:
Smtp activo.

#!/bin/bash
#############################################
#############################################
#############################################
# ftpmail.sh
# Script que verifica si el servidor ftp esta activo,
# caso contrario, envia un e-mail al administrador
# del sistema.
#
#
##############################################
##############################################
##############################################
LOG1="/var/log/ftp.log"
LOG2="/tmp/ftp.log.tmp"
#Modifique el e-mail aqui
EMAIL="root@localhost"
FTP=$(netstat -l |grep ftp)
if [ $? -ne 0 ] ; then
        echo "**********************ATENCIÓN**************************" >> $LOG1
        echo "`date` Servico FTP paralizado!" >> $LOG1
        echo "**********************ATENCIÓN**************************" >> $LOG1
        SERVMAIL=$(netstat -l |grep smtp)
        if [ $? -eq 0 ] ; then
                tail -3 $LOG1 > $LOG2
                mail $EMAIL -s "FTP PARALIZADO!" < $LOG2
                exit 0
        fi
fi
#EOF


Script que Graba una imagen iso en el cd

graba_iso <archivo.iso>

#! /bin/sh
NOMBRE_ISO=$1
# graba una imagen iso en el cd
# sintaxis:
#
# graba_iso <archivo.iso>
 
if [ ! -f "$NOMBRE_ISO" ]; then
   echo "Imagen no puede ser encontrada!"
   echo $NOMBRE_ISO
else
   echo "Grabando el disco ..."
   cdrecord -v speed=12 dev=0,1,0 $NOMBRE_ISO
fi
echo "Terminado!"



Script que Monitorea intentos de conexiones

Simplemente muestra en una terminal los intentos de conexiones en los puertos especificados en la configuración del iptables. La regla para eso seria:

iptables -A INPUT -p tcp -m multiport --destination-port 21:23 -m state --state NEW -j LOG --log-prefix "[ FIREWALL ] "

En este script solamente se monitorean las conexiones en los puertos 21, 22 y 23, ustedes pueden agregar los puertos que quisieran.

Ejemplo --destination-port 21 : 23 , 80 , 6000 : 6009.

#!/bin/sh
#
#Description:
#This a simple script which works together with iptables and syslogd, you set some rules to save log then you run this script
#Ejemplo:
#
#iptables -A INPUT -p tcp -m multiport --destination-port 21 : 23 , 5900 : 5909 -m state --state NEW -j LOG --log-prefix "[  FIREWALL  ] "
# When someone tries to connect on this ports (21-23, 5900-5909) the script will show us
 
clear
 
echo -e t [tMonitoring Firewallt]
echo
echo Waiting Connections...
echo
echo
 
tail -n0 -f /var/log/syslog |sed -n "s/(.* [0-9]{2} [0-9]{1,}:[0-9]{1,}:[0-9]{1,} ).* ([ .* ] ).*(SRC=.* )DST.*(DPT=.*) W.*/1234/p"


Script de Backup Base de Datos PostgreSQL [pg_dump]

Este script genera backup de bases de datos PostGreSQL usando el pg_dump basado en 'innumerables variables' que informan el destino del backup y el nombre del archivo, etc.

#!/bin/sh
# Script que genera backup de bases de datos PostGreSQL

# VARIABLES ##################
vU="postgres"     # Usuario en PostGreSQL
vP="pgsql"        # Contraseña
vB=$1             # Base De datos
vBI="/usr/local/pgsql/bin/" # Directorio raíz de los binarios de PostGreSQL
vR="/BackupSuporte/"        # Directorio raíz
vD="BasesDeDatos/"          # Destino del Backup
vPre="basePGSQL"            # Prefijo del nombre del archivo de salida
vE=".dmp"                   # Extención del archivo de salida
vH="localhost"              # Host del servidor
vAno=`date +%Y` #Año
vMes=`date +%m` #Mes
vDia=`date +%d` #Dia
vHor=`date +%H` #Hora
vMin=`date +%M` #Min
vCod=`date +%N` #Código date [date (GNU coreutils) 5.3.0]
vDat="$vAno$vMes$vDia-$vHor$vMin-$vCod"
vA=$vPre"-"$vB"-"$vDat$vE
# VALIDACIÓN##################
if [ -z $vU ]; then
        echo "Sin usuario";
        exit 0;
fi
if [ -z $vP ]; then
        echo "Sin contraseña";
        exit 0;
fi
if [ -z $vB ]; then
        echo "informe del nombre de la base de datos";
        exit 0;
fi
# BACKUP #####################
echo "# Generando backup. Aguarde..."
echo "# Destino: $vR$vD"
echo "# Nombre del archivo: $vA"
$vBI""pg_dump -U $vU -h $vH --format=c --file=$vR$vD$vA $vB

Datos archivados del Taringa! original
79puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
16visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

c
cagl86🇦🇷
Usuario
Puntos0
Posts54
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.