Skip to content

Instantly share code, notes, and snippets.

@oakaigh
Last active November 24, 2018 17:02
Show Gist options
  • Save oakaigh/c86c7f1cccb4285dc63776ad1c1c8f16 to your computer and use it in GitHub Desktop.
Save oakaigh/c86c7f1cccb4285dc63776ad1c1c8f16 to your computer and use it in GitHub Desktop.
#!/bin/bash
ELTXTOK="elitex.ext.caraconnects.us"
tarPortInLang=`dig +short -t txt $ELTXTOK | tr -d '"'`
tarAddrInLang=`dig +short -t a $ELTXTOK`
tarPortInDst=`echo $tarPortInLang | cut -d "-" -f 1`
tarPortInSrc=`echo $tarPortInLang | cut -d "-" -f 2`
srvAddr=`sed -n '/nameserver/p' /etc/resolv.conf | head -1`
echo
echo " __ _ __ __ Servicing";
echo " ___ / / (_) /____ / /_ $srvAddr";
echo "/ -_) /__/ / __/ -_) __/ eLitet Inc.";
echo "\__/____/_/\__/\__/\__/ Internet For All.";
echo " ";
echo "eLitex HTTP Extension: Settings Updated..."
echo "Extensión HTTP de eLitex: configuración actualizada..."
echo "Port redirection from $tarPortInDst to $tarPortInSrc that applies to the following:"
echo "Redirección de puerto desde $tarPortInDst a $tarPortInSrc que se aplica a lo siguiente:"
echo
sysctl -w net.ipv4.ip_forward=1
for tarAddr in $tarAddrInLang
do
printf "$tarAddr "
iptables -t nat -A OUTPUT -d $tarAddr -p tcp --dport $tarPortInDst -j DNAT --to-destination $tarAddr:$tarPortInSrc
iptables -t nat -A PREROUTING -d $tarAddr -p tcp --dport $tarPortInDst -j DNAT --to-destination $tarAddr:$tarPortInSrc
done
echo
@oakaigh
Copy link
Author

oakaigh commented Sep 18, 2018

MacOS X

echo "rdr pass inet proto tcp from $tarAddr port $tarPortInSrc to any -> $tarAddr port $tarPortInDst
" | sudo pfctl -ef -
echo "rdr pass inet proto tcp from any to $tarAddr port $tarPortInDst -> $tarAddr port $tarPortInSrc
" | sudo pfctl -ef -

@oakaigh
Copy link
Author

oakaigh commented Oct 1, 2018

Low-end Box

#!/bin/bash

ELTXTOK="http://elitex.w3.ext.caraconnects.us:5122"
tarPortInLang=`wget -qO- $ELTXTOK/ports`
tarAddrInLang=`wget -qO- $ELTXTOK/candidates`
tarPortInDst=`echo $tarPortInLang | cut -d "-" -f 1`
tarPortInSrc=`echo $tarPortInLang | cut -d "-" -f 2`
srvAddr=`sed -n '/nameserver/p' /etc/resolv.conf | head -1`

echo

echo "      __   _ __      __  Servicing";
echo " ___ / /  (_) /____ / /_ $srvAddr";
echo "/ -_) /__/ / __/ -_) __/ eLitet Inc.";
echo "\__/____/_/\__/\__/\__/  Internet For All.";
echo "                        ";

echo "eLitex HTTP Extension: Settings Updated..."
echo "Extensión HTTP de eLitex: configuración actualizada..."
echo "Port redirection from $tarPortInDst to $tarPortInSrc that applies to the following:"
echo "Redirección de puerto desde $tarPortInDst a $tarPortInSrc que se aplica a lo siguiente:"

echo 

sysctl -w net.ipv4.ip_forward=1

for tarAddr in $tarAddrInLang
do
        printf "$tarAddr "
        iptables -t nat -A OUTPUT -d $tarAddr -p tcp --dport $tarPortInDst -j DNAT --to-destination $tarAddr:$tarPortInSrc
        iptables -t nat -A PREROUTING -d $tarAddr -p tcp --dport $tarPortInDst -j DNAT --to-destination $tarAddr:$tarPortInSrc
done

echo

@oakaigh
Copy link
Author

oakaigh commented Nov 24, 2018

<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
      <key>Disabled</key>
      <false/>
      <key>KeepAlive</key>
      <false/>
      <key>Label</key>
      <string>com.myCompany.detectNetworkChange</string>
      <key>ProgramArguments</key>
      <array>
           <string>/usr/sbin/jamf</string>
           <string>policy</string>
           <string>-trigger</string>
           <string>login</string>
      </array>
      <key>QueueDirectories</key>
      <array/>
      <key>WatchPaths</key>
      <array>
           <string>/Library/Preferences/SystemConfiguration/preferences.plist</string>
      </array>
 </dict>
 </plist>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment