mirror of
https://github.com/yarrick/iodine.git
synced 2024-12-01 05:55:12 +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