new fortunes
[feisty_meow.git] / scripts / security / uva_web_proxy.sh
1 #!/bin/bash
2 # this script makes a tunnel for SMTP traffic and others.  a remote ssh server
3 # is required.  this is especially useful for routing around firewalls using
4 # a web proxy like squid.  when used for SMTP, it ensures that none of the
5 # text is seen on whatever network one is on before it's sent from the remote
6 # server.
7 #
8 # it accepts a single parameter so far, which will be used as the name of a
9 # sound file to play.
10
11 #hmmm:  none of the user info below will work for others: parameterize it.
12
13 #ssh_host=khandroma.cs.virginia.edu
14 ssh_host=mason.cs.virginia.edu
15
16 soundfile=$FEISTY_MEOW_APEX/infobase/sounds/woouoo.wav
17 if [ ! -z "$1" ]; then
18   soundfile=$1
19 fi
20
21 while true; do
22   echo Connecting uva web sites via a machine on site: $ssh_host
23   ssh -i $HOME/.ssh/id_dsa_fred -2 -N -v -D localhost:14420 fred@$ssh_host
24   bash $FEISTY_MEOW_SCRIPTS/multimedia/sound_play.sh $soundfile
25   echo "Got dumped from tunnels; re-establishing connection."
26   echo "Note: if you're being asked for a password, you haven't set up an RSA key yet."
27   sleep 14
28 done
29
30 #-L 8028:localhost:3128 
31
32 #-L 8043:localhost:443 
33
34 # ports sometimes used:
35 #     25 is the sendmail tunnel.
36 #   3128 is the squid proxy server.
37 #    443 is the https version of squid.
38
39 # ssh flags in use sometimes:
40 #   -f   go into the background once connected.
41 #   -2   enforce ssh version 2.
42 #   -N   don't execute any command; just forward data between the ports.
43 #   -L   (port:host:hostport) connect the local machine's "port" to the
44 #        remote port "hostport" on the "host" specified.  the local "port"
45 #        becomes an alias for the remote port.  note that the connection
46 #        being made to host and hostport is from the perspective of the ssh
47 #        server, not the local host.
48
49