Posts Tagged ‘bash script’
Friday, August 29th, 2014
Buenas gente, acá les dejo un mini script para redireccionar puertos a otra ip. Para que funcione primero tiene que hacer:
sysctl net.ipv4.ip_forward=1
Acá va el script:
#!/bin/bash
[ $# -eq 0 ] && { echo "Usage: $0 puertoPrincipal puertoSecundario IP"; exit 1; }
iptables -t nat -A PREROUTING -p tcp --dport $1 -j DNAT --to-destination $3:$1
iptables -A FORWARD -p tcp -d $3 --dport $1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport $1 -j DNAT --to-destination $3:$1
iptables -A FORWARD -p udp -d $3 --dport $1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport $2 -j DNAT --to-destination $3:$2
iptables -A FORWARD -p udp -d $3 --dport $2 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
exit 0
Tags:bash script, firewall, forward, iptables, linux, prerouting, redireccion
Posted in Scripting, Servidores Linux | Comments Closed
Wednesday, August 10th, 2011
Bueno gente, esto no tiene mucho más de lo que dice el título. Es más lo dejo acá para no olvidarmelo nomás.
ls | while read -r FILE; do mv -v “$FILE” `echo $FILE | tr ‘ ‘ ‘_’ `; done;
Lo saqué de acá: https://bbs.archlinux.org/viewtopic.php?id=36305
Muy piola.
MN
Tags:bash script, espacios, guion bajo
Posted in Programación, Scripting, Servidores Linux | Comments Closed
Thursday, April 14th, 2011
Holass samigos, acá les dejo el script que uso para iniciar geoserver, lo ponen el /etc/init.d y luego corren el comando:
update-rc.d geoserver defaults
Espero les sirva.
#! /bin/sh
### BEGIN INIT INFO
# Provides: geoserver
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: GeoServer OGC server
### END INIT INFO
# Author: Lennart Juette
# Geoserver configuration - use /etc/default/geoserver to override these vars
# user that shall run GeoServer
USER=root
GEOSERVER_HOME=/opt/geoserver-2.0.3
GEOSERVER_DATA_DIR=$GEOSERVER_HOME/data_dir
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="GeoServer daemon"
NAME=geoserver
JAVA_HOME=/usr/lib/jvm/java-6-openjdk/jre
JAVA_OPTS="-Xms128m -Xmx512m"
DAEMON="$JAVA_HOME/bin/java"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
DAEMON_ARGS="$JAVA_OPTS $DEBUG_OPTS -DGEOSERVER_DATA_DIR=$GEOSERVER_DATA_DIR -Djava.awt.headless=true -jar start.jar"
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
do_start(){
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --pidfile $PIDFILE --make-pidfile \
--chuid $USER --chdir $GEOSERVER_HOME \
-b --test --exec $DAEMON -- $DAEMON_ARGS > /dev/null \
|| return 1
start-stop-daemon --start --pidfile $PIDFILE --make-pidfile \
--chuid $USER --chdir $GEOSERVER_HOME \
-b --exec $DAEMON -- $DAEMON_ARGS \
|| return 2
}
do_stop(){
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --pidfile $PIDFILE \
--user $USER \
--retry=TERM/30/KILL/5
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
:
Tags:bash script, boot, debian, geoserver, runleve, SIG, update-rc.d
Posted in Programación, Scripting, Servidores Linux, SIG, Uncategorized | Comments Closed
Tuesday, December 29th, 2009
Bueno gente, un amigo (Zak) me pidió una solución para ejecutar scripts para determinados eventos de logs. No conozco nada que haga esto así que le voy a recomendar que haga lo que pongo acá abajo.
(more…)
Tags:bash script, escuchar por eventos de log, linux log, linux pipe fifo, listening for log events, logwatch, mkfifo example, syslog
Posted in Scripting, Servidores Linux | 4 Comments »
Thursday, December 17th, 2009
Esto está buenísimo, la idea de estos scripts es indexar el contenido de pdfs y docs en una base de datos mysql para su posterior búsqueda. Si bien es medio rebuscado está bueno en muchas situaciones y lo publico porque no creo que haya mucho de esto en internet.
(more…)
Tags:.doc mysql, bash script, dividir pdf, indexar archivos doc, indexar pdf, indexar word, mysql, pdf, pdf mysql, pdftk, perl, perl script, word mysql, wvPDF
Posted in Scripting, Servidores Linux | Comments Closed