|
Негде проверить.....
но когда-то этот скрипт работал.........
====================================================================== ========
#!/bin/sh
PORT="20 21"; # какие порты открыть для доступа к серверу
SERV="192.168.0.1"; #сервер в локакльной сети
DEV="ppp0"; # Device к Internet
FORWARD="YES"; #Если YES forward на сервер
##--Определение ip-adresse--##
if [ "$DEV" = "" ]
then
echo "No Device ?";
exit 1;
else
SENDER="`/sbin/ifconfig $DEV | awk -F: '/inet addr/ {print $2}'`";
SENDER2="`echo $SENDER | awk -F" " '{print $1}'`";
fi
##-- Делаем маскарадинг -------------##
#
if [ $FORWARD = YES ]; then
ipchains -D forward -s 0,0,0,0/0 -d $SERV -j MASQ;
ipchains -A forward -s 0,0,0,0/0 -d $SERV -j MASQ;
ipmasqadm autofw -F;
for pr in $PORT;
do
ipchains -D input -p tcp -s 0,0,0,0/0 -d $SERV $pr -j ACCEPT;
ipchains -A input -p tcp -s 0,0,0,0/0 -d $SERV $pr -j ACCEPT;
ipchains -D forward -p tcp -s 0,0,0,0/0 -d $SERV $pr -j ACCEPT;
ipchains -A forward -p tcp -s 0,0,0,0/0 -d $SERV $pr -j ACCEPT;
ipchains -D output -p tcp -s $SERV $pr -j ACCEPT;
ipchains -A output -p tcp -s $SERV $pr -j ACCEPT;
ipmasqadm autofw -A -p tcp $pr $SERV:$pr;
echo "forward to server $SERV and PORT $pr ";
done
echo "Run... :-)"
else
for pr in $PORT;
do
ipchains -D input -p tcp -s 0,0,0,0/0 --destination-port $pr -j ACCEPT;
ipchains -A input -p tcp -s 0,0,0,0/0 --destination-port $pr -j ACCEPT;
echo "PORT $pr is free";
done
fi
;;
esac
====================================================================== ======
Последний раз редактировалось Gennadi; 24.06.2004 в 18:11.
|