mirror of
https://github.com/yarrick/iodine.git
synced 2024-12-02 22:45:10 +00:00
Added contrib dir and my script to bring tunnel up and down on Fedora with automatic SOCKS proxying
This commit is contained in:
parent
1160649794
commit
6f4cea3960
58
contrib/fedora-tunnel
Executable file
58
contrib/fedora-tunnel
Executable file
@ -0,0 +1,58 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Fedora/GNOME3 iodine tunneler
|
||||||
|
# By Ricky Burgin
|
||||||
|
# http://ricky.burg.in/
|
||||||
|
#
|
||||||
|
# Enable and disable iodine + SSH-based SOCKS tunnel
|
||||||
|
# on Fedora with GNOME3 (and probably other GNOME3-
|
||||||
|
# based systems)
|
||||||
|
#
|
||||||
|
# Requires that you have SSH-key configured shell
|
||||||
|
# on your remote server that runs iodine
|
||||||
|
#
|
||||||
|
# Run `dnf install iodine-client` to install
|
||||||
|
# iodine on Fedora
|
||||||
|
#
|
||||||
|
# This will tunnel any app on your system that
|
||||||
|
# is designed to detect system proxy settings
|
||||||
|
# and supports proxying via SOCKS. Tested with
|
||||||
|
# Google Chrome.
|
||||||
|
#
|
||||||
|
# Usage: Just run the script
|
||||||
|
#
|
||||||
|
####################################
|
||||||
|
# BEGIN CONFIG
|
||||||
|
# !!! YOU MUST EDIT THESE VALUES !!!
|
||||||
|
####################################
|
||||||
|
servertunip="10.0.0.1" # The IP which you configure for iodined on your tunnel server
|
||||||
|
remoteuser="user" # The user to log in as on your server that runs iodine
|
||||||
|
socksport="1080" # The SOCKS port for which the SSH tunnel and your system should be configured for
|
||||||
|
tuntopdomain="your.domain.com" # The Top domain configured for your tunnel
|
||||||
|
tunpassword="somepassword" # The same password that was configured on iodined
|
||||||
|
nonemanualauto="none" # Which proxy configuration to return GNOME to once finished with the tunnel. Choices are "none", "manual" and "auto".
|
||||||
|
####################################
|
||||||
|
# END OF CONFIG
|
||||||
|
####################################
|
||||||
|
iodinepid=`pgrep -f "$tuntopdomain"`
|
||||||
|
sshpid=`pgrep -f "ssh $remoteuser@$servertunip -D $socksport -N"`
|
||||||
|
|
||||||
|
echo "tunip: $servertunip user: $remoteuser port: $socksport domain: $tuntopdomain pass: $tunpassword proxy: $nonemanualauto iodine pid: $iodinepid ssh pid: $sshpid"
|
||||||
|
|
||||||
|
if [ -z "$iodinepid" ] && [ -z "$sshpid" ]; then
|
||||||
|
echo "Starting iodine tunnel..."
|
||||||
|
sudo iodine -P $tunpassword $tuntopdomain
|
||||||
|
echo "SSHing to iodine server and establishing SSH/SOCKS tunnel..."
|
||||||
|
ssh $remoteuser@$servertunip -D $socksport -N 2>&1 &
|
||||||
|
echo "Configuring GNOME's proxy settings..."
|
||||||
|
gsettings set org.gnome.system.proxy mode "manual"
|
||||||
|
gsettings set org.gnome.system.proxy.socks host "127.0.0.1"
|
||||||
|
gsettings set org.gnome.system.proxy.socks port "$socksport"
|
||||||
|
echo "Tunnel established!"
|
||||||
|
else
|
||||||
|
echo "Existing iodine tunnel detected, killing process and removing GNOME proxy settings..."
|
||||||
|
sudo kill $iodinepid $sshpid
|
||||||
|
gsettings set org.gnome.system.proxy.socks host ""
|
||||||
|
gsettings set org.gnome.system.proxy.socks port 0
|
||||||
|
gsettings set org.gnome.system.proxy mode "$nonemanualauto"
|
||||||
|
echo "Done!"
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user