All pastes #25524 Raw Edit

Someone

public text v1 · immutable
#25524 ·published 2005-10-15 00:24 UTC
rendered paste body
#!/bin/bash
# OrangeAsGreen for Ipcop 1.3.0
# OrangeAsGreen install script for Addon Server
# 19 October 2003 By Runar Skraastad <rus512@home.no>
# Packaged for Addon Server 2.1
# 03 May 2004 by Pat Benner <amigatec@users.sourceforge.net>

# Test for library.addons
if [ -f /var/ipcop/addons/library.addons ]
then
    . /var/ipcop/addons/library.addons
else
    /bin/echo ""    
    /bin/echo "This is OrangeAsGreen installing." 
    /bin/echo "This MOD is written for Addons-Server 2.1 or greater"
    /bin/echo "Please download and install Addons-Server 2.1 or greater"
    /bin/echo ""
    /bin/echo ""
exit 0
fi

# If library.addons exists continue
    /bin/echo ""    
    /bin/echo "This is OrangeAsGreen installing."
    /bin/echo ""    


# creating work directory and changing to it
/bin/mkdir /OrangeAsGreen
cd /OrangeAsGreen

# Appending Files

# rc.local
echo "# Added for OrangeAsGreen mod" >> /etc/rc.d/rc.local
echo "/sbin/iptables -I CUSTOMFORWARD 1 -i \$ORANGE_DEV -o \$GREEN_DEV -j DROP" >> /etc/rc.d/rc.local
echo "/sbin/iptables -I CUSTOMFORWARD 2 -i \$GREEN_DEV -o \$ORANGE_DEV -j DROP" >> /etc/rc.d/rc.local
echo "/sbin/iptables -A CUSTOMINPUT -i \$ORANGE_DEV -j ACCEPT" >> /etc/rc.d/rc.local
echo "/sbin/iptables -A CUSTOMFORWARD -i \$ORANGE_DEV -j ACCEPT" >> /etc/rc.d/rc.local
echo "# End OrangeAsGreen mod" >> /etc/rc.d/rc.local


# proxy.cgi
echo "http_port \$netsettings{'ORANGE_ADDRESS'}:800" > OrangeAsGreen
/bin/cat /home/httpd/cgi-bin/proxy.cgi | sed -e '/http_port / r OrangeAsGreen' > proxy.cgi
/bin/cp proxy.cgi /home/httpd/cgi-bin/proxy.cgi
/bin/rm proxy.cgi
echo "/acl localnet src/ c\\" > OrangeAsGreen
echo "acl localnet src \$netsettings{'GREEN_NETADDRESS'}/\$netsettings{'GREEN_NETMASK'} \$netsettings{'ORANGE_NETADDRESS'}/\$netsettings{'ORANGE_NETMASK'}" >> OrangeAsGreen
/bin/cat /home/httpd/cgi-bin/proxy.cgi | sed -f OrangeAsGreen > proxy.cgi
/bin/cp proxy.cgi /home/httpd/cgi-bin/proxy.cgi
/bin/rm proxy.cgi
echo "/GREEN_IP/ c\\" > OrangeAsGreen
echo "while (<ACL>) { \$_ =~ s/GREEN_IP/\$netsettings{'GREEN_ADDRESS'} \$netsettings{'ORANGE_ADDRESS'}/g; print FILE \$_; }" >> OrangeAsGreen
/bin/cat /home/httpd/cgi-bin/proxy.cgi | sed -f OrangeAsGreen > proxy.cgi
/bin/cp proxy.cgi /home/httpd/cgi-bin/proxy.cgi
/bin/rm proxy.cgi

. /var/ipcop/ethernet/settings
# squid.conf - checking if the proxy is enabled and if so, makes the changes to squid.conf and restarts squid
if [ -e "/var/ipcop/proxy/enable" ]; then
	echo "/http_port / a\\" > OrangeAsGreen
	echo "http_port $ORANGE_ADDRESS:800" >> OrangeAsGreen
	/bin/cat /var/ipcop/proxy/squid.conf | sed -f OrangeAsGreen > squid.conf
	/bin/cp squid.conf /var/ipcop/proxy/squid.conf
	/bin/rm squid.conf
	echo "/acl localnet src / c\\" > OrangeAsGreen
	echo "acl localnet src $GREEN_NETADDRESS/$GREEN_NETMASK $ORANGE_NETADDRESS/$ORANGE_NETMASK" >> OrangeAsGreen
	/bin/cat /var/ipcop/proxy/squid.conf | sed -f OrangeAsGreen > squid.conf
	/bin/cp squid.conf /var/ipcop/proxy/squid.conf
	/bin/rm squid.conf
	echo "/acl IPCop_ip dst / c\\" > OrangeAsGreen
	echo "acl IPCop_ip dst $GREEN_ADDRESS $ORANGE_ADDRESS" >> OrangeAsGreen
	/bin/cat /var/ipcop/proxy/squid.conf | sed -f OrangeAsGreen > squid.conf
	/bin/cp squid.conf /var/ipcop/proxy/squid.conf
	/bin/rm squid.conf
	# Restart squid
	/bin/sleep 5
	/usr/bin/killall -9 squid
	/usr/local/bin/restartsquid
fi

#adding firewall rules so you dont have to  restart
/sbin/iptables -I CUSTOMFORWARD 1 -i $ORANGE_DEV -o $GREEN_DEV -j DROP
/sbin/iptables -I CUSTOMFORWARD 2 -i $GREEN_DEV -o $ORANGE_DEV -j DROP
/sbin/iptables -A CUSTOMINPUT -i $ORANGE_DEV -j ACCEPT
/sbin/iptables -A CUSTOMFORWARD -i $ORANGE_DEV -j ACCEPT

# Cleaning up
/bin/rm -rf /OrangeAsGreen