mirror of
https://github.com/moparisthebest/sslh
synced 2024-11-13 12:45:05 -05:00
26b4bcd089
WARNING: defaults have been removed for --user and --pidfile options, update your start-up scripts! No longer stop sslh when reverse DNS requests fail for logging. Added HTTP probe. No longer create new session if running in foreground. No longer default to changing user to 'nobody'. If --user isn't specified, just run as current user. No longer create PID file by default, it should be explicitely set with --pidfile. No longer log to syslog if in foreground. Logs are instead output to stderr. The four changes above make it straightforward to integrate sslh with systemd, and should help with launchd.
77 lines
1.5 KiB
Bash
Executable File
77 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# /etc/rc.d/init.d/sslh
|
|
# sslh This shell script takes care of starting and stopping
|
|
# sslh - a daemon switching incoming connection between SSH and SSL/HTTPS servers
|
|
#
|
|
# Author: Andre Krajnik akrajnik@gmail.com
|
|
# 2010-03-20
|
|
#
|
|
#
|
|
# chkconfig: 2345 13 87
|
|
#
|
|
# description: sslh - a daemon switching incoming connection between SSH and SSL/HTTPS servers
|
|
|
|
# Source function library.
|
|
. /etc/init.d/functions
|
|
|
|
# ./sslh -p 0.0.0.0:8443 -l 127.0.0.1:443 -s 127.0.0.1:22
|
|
|
|
SSLH="/usr/local/sbin/sslh"
|
|
PIDFILE="/var/run/sslh"
|
|
|
|
OPTIONS="--user nobody --pidfile $PIDFILE -p 0.0.0.0:8443 --ssl 127.0.0.1:443 --ssh 127.0.0.1:22"
|
|
|
|
if [ -f /etc/sysconfig/sslh ]; then
|
|
. /etc/sysconfig/sslh
|
|
fi
|
|
|
|
start() {
|
|
echo -n "Starting SSL-SSH-Switch: "
|
|
if [ -f $PIDFILE ]; then
|
|
PID=`cat $PIDFILE`
|
|
echo sslh already running: $PID
|
|
exit 2;
|
|
else
|
|
daemon $SSLH $OPTIONS
|
|
RETVAL=$?
|
|
echo
|
|
[ $RETVAL -eq 0 ] && touch $PIDFILE
|
|
return $RETVAL
|
|
fi
|
|
|
|
}
|
|
|
|
stop() {
|
|
echo -n "Shutting down SSL-SSH-Switch: "
|
|
echo
|
|
killproc sslh
|
|
echo
|
|
rm -f $PIDFILE
|
|
return 0
|
|
}
|
|
|
|
case "$1" in
|
|
start)
|
|
start
|
|
;;
|
|
stop)
|
|
stop
|
|
;;
|
|
status)
|
|
status sslh
|
|
;;
|
|
restart)
|
|
stop
|
|
start
|
|
;;
|
|
*)
|
|
echo "Usage: {start|stop|status|restart}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
exit $?
|
|
|
|
|
|
|