#!/bin/bash # ip-up <интерфейс> <мой_адрес> <pid_демона> <локальный_адрес> <удаленный_адрес> <аргументы> #3/29/1999 #Это пример скрипта ip-up для старых ядер версий 1.x 2.x, использующих ipfwadm, #настраивающий маршруты и правила firewall для соединения вашей сети класса c #с удаленной сетью класса c. #Правила настроены с учетом невозможности нелегального перехвата пакетов, #а также нелегальной маршрутизации между сетями. Дополнительные меры безопасности #приведены в конце скрипта (закомментированы). #Вопросы и предложения посылайте по адресу acj@home.com. #-------------------------------------------------------------------------- #Настраиваем некоторые переменные device=$1 # Интерфейс CIPE me=$2 # Наш UDP-адрес pid=$3 # ID процесса демона ipaddr=$4 # IP-адрес нашего CIPE-устройства vptpaddr=$5 # IP-адрес удаленного CIPE-устройства option=$6 # аргументы, переданные через опции скрипта PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" #рас(за)-комментируйте следующую строку для включение в системный журнал #всех попыток неавторизованного доступа. Эта строка должна соответствовать #строке в скрипте ip-down для правильного отключения правил. log="-o" #-------------------------------------------------------------------------- umask 022 # пример записи в журнал #echo "UP $*" >> /var/adm/cipe.log # во многих системах требуются такие pid-файлы #echo $3 > /var/run/$device.pid #-------------------------------------------------------------------------- #добавляем маршрут к удаленной сети network=`expr $ptpaddr : '\([0-9]*\.[0-9]*\.[0-9]*\.\)'`0 route add -net $network netmask 255.255.255.0 dev $device #для ядер версии 2.0 надо добавить и маршрут к машине route add -host $ptpaddr dev $device #-------------------------------------------------------------------------- #Правила для входящего потока firewall для интерфейса cipe #они должны задаваться в обратном порядке #запрещаем все остальные входящие с интерфейса cipe пакеты ipfwadm -I -i deny -W $device -S 0/0 -D 0/0 $log #разрешаем все пакеты, входящие с интерфейса cipe из удаленной сети для локальной ipfwadm -I -i accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #разрешаем все пакеты, входящие с интерфейса cipe из локальной сети для удаленной ipfwadm -I -i accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #запрещаем все пакеты, входящие с интерфейса cipe из локальной сети для локальной; записываем это в журнал ipfwadm -I -i deny -W $device -S $ipaddr/24 -D $ipaddr/24 $log #-------------------------------------------------------------------------- #Правила для исходящего потока firewall для интерфейса cipe #они должны задаваться в обратном порядке #запрещаем все остальные исходящие из интерфейса cipe пакеты ipfwadm -O -i deny -W $device -S 0/0 -D 0/0 $log #разрешаем все пакеты, исходящие с интерфейса cipe из удаленной сети для локальной ipfwadm -O -i accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #разрешаем все пакеты, исходящие с интерфейса cipe из локальной сети для удаленной ipfwadm -O -i accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #запрещаем все пакеты, исходящие с интерфейса cipe из локальной сети для локальной; записываем это в журнал ipfwadm -O -i deny -W $device -S $ipaddr/24 -D $ipaddr/24 $log #-------------------------------------------------------------------------- #Правила для проходящего потока firewall для интерфейса cipe #они настроены так, чтобы машины локальной сети не попадали для удаленной #под маскарадинг. Так лучше работать с обеими сетями #они должны задаваться в обратном порядке #запрещаем все остальные проходящие через интерфейс cipe пакеты; записываем это в журнал ipfwadm -F -i deny -W $device -S 0/0 -D 0/0 $log #разрешаем все пакеты, проходящие через интерфейс cipe из удаленной сети в локальную ipfwadm -F -i accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #разрешаем все пакеты, проходящие через интерфейс cipe из локальной сети в удаленную ipfwadm -F -i accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #-------------------------------------------------------------------------- #Для большей уверенности разрешаем ядру переадресацию пакетов /bin/echo 1 > /proc/sys/net/ipv4/ip_forward #-------------------------------------------------------------------------- #Дополнение к системе безопасности - в случае, если стандартное правило для #проходящего потока установлено в DENY или REJECT. #определяем интерфейсы машины #localif="eth0" #staticif="eth1" ;для пользователей кабельных модемов #staticif="ppp0" ;для пользователей обычных модемов #По-настоящему грубо определяем удаленный ip-адрес, взяв его из файла options. #В идеале этот адрес надо передавать скрипту через аргументы #Надо раскомментировать обе строки #peerfile=`grep $device /etc/cipe/options.* | cut -f1 -d:` #peer=`grep peer $peerfile | cut -f1 -d: | awk '{print $2}'` #Запоминаем удаленный ip-адрес для скрипта ip-down #echo $peer > /var/run/$device.peerip #разрешаем пересылку пакетов из локальной сети в удаленную, через сетевую карту #ipfwadm -F -i accept -W $localif -S $ipaddr/24 -D $ptpaddr/24 #разрешаем пересылку пакетов из удаленной сети в локальную, через сетевую карту #ipfwadm -F -i accept -W $localif -S $ptpaddr/24 -D $ipaddr/24 #разрешаем пересылку на интерфейсе staticif от этой системы к удаленной #myaddr=`echo $me | cut -f1 -d:` #ipfwadm -F -i accept -W $staticif -S $myaddr -D $peer #-------------------------------------------------------------------------- #Второе дополнение к системе безопасности - блокируем все запросы к udp-порту #cipe, кроме идущих от удаленной машины #необходимо определить udp-порты интерфейса cipe #получаем наш udp-порт #if [ "$option" = "" ]; then # myport=`echo $me | cut -f2 -d:` #else # myport=$option #fi #получаем удаленный udp-порт #переменная peerfile должна быть задана #peerport=`grep peer $peerfile | cut -f2 -d:` #запоминаем удаленный udp-порт cipe для скрипта ip-down #echo $peerport > /var/run/$device.peerport #получаем наш ip-адрес #myaddr=`echo $me | cut -f1 -d:` #запрещаем все запросы к udp-порту cipe; записываем это в журнал #ipfwadm -I -i deny -P udp -W $staticif -S 0/0 -D $myaddr $myport $log #разрешаем все запросы к udp-порту cipe, идущие из интерфейса staticif, от удаленной машины #ipfwadm -I -i accept -P udp -W $staticif -S $peer $peerport \ #-D $myaddr $myport exit 0 |
#!/bin/bash # ip-up <interface> <myaddr> <daemon-pid> <local> <remote> <arg> #3/29/1999 #Это пример скрипта ip-up для новых ядер версий 2.1/2ю2, использующих ipchains, #настраивающий маршруты и правила firewall для соединения вашей сети класса c #с удаленной сетью класса c. В этом скрипте задаются три пользовательских потока - #по одному на каждый интерфейс cipe (разделенные по имени интерфейса). #После этого, в каждый из трех встроенных потоков, добавляются правила, #переназначающие эти потоки в пользовательские #Правила настроены с учетом невозможности нелегального перехвата пакетов, #а также нелегальной маршрутизации между сетями. Дополнительные меры безопасности #приведены в конце скрипта (закомментированы). #Вопросы и предложения посылайте по адресу acj@home.com. #-------------------------------------------------------------------------- #Настраиваем некоторые переменные device=$1 # Интерфейс CIPE me=$2 # Наш UDP-адрес pid=$3 # ID процесса демона ipaddr=$4 # IP-адрес нашего CIPE-устройства ptpaddr=$5 # IP-адрес удаленного CIPE-устройства option=$6 # аргументы, переданные через опции скрипта PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" #рас(за)-комментируйте следующую строку для включение в системный журнал #всех попыток неавторизованного доступа. Эта строка должна соответствовать #строке в скрипте ip-down для правильного отключения правил. log="-l" #-------------------------------------------------------------------------- umask 022 # пример записи в журнал #echo "UP $*" >> /var/adm/cipe.log # во многих системах требуются такие pid-файлы #echo $3 > /var/run/$device.pid #-------------------------------------------------------------------------- #добавляем маршрут к удаленной сети network=`expr $ptpaddr : '\([0-9]*\.[0-9]*\.[0-9]*\.\)'`0 route add -net $network netmask 255.255.255.0 dev $device #-------------------------------------------------------------------------- #Создаем пользовательский поток для входящего по интерфейсу cipe ipchains -N $device"i" #удаляем все правила для этого потока (на всякий случай) ipchains -F $device"i" #запрещаем все пакеты, входящие с интерфейса cipe из локальной сети для локальной; записываем это в журнал ipchains -A $device"i" -j DENY -i $device -s $ipaddr/24 -d $ipaddr/24 $log #разрешаем все пакеты, входящие с интерфейса cipe из локальной сети для удаленной ipchains -A $device"i" -j ACCEPT -i $device -s $ipaddr/24 -d $ptpaddr/24 #разрешаем все пакеты, входящие с интерфейса cipe из удаленной сети для локальной ipchains -A $device"i" -j ACCEPT -i $device -s $ptpaddr/24 -d $ipaddr/24 #запрещаем все остальные входящие с интерфейса cipe пакеты ipchains -A $device"i" -j DENY -s 0/0 -d 0/0 $log #-------------------------------------------------------------------------- #Создаем пользовательский поток для исходящего из интерфейса cipe ipchains -N $device"o" #удаляем все правила для этого потока (на всякий случай) ipchains -F $device"o" #запрещаем все пакеты, исходящие с интерфейса cipe из локальной сети для локальной; записываем это в журнал ipchains -A $device"o" -j DENY -i $device -s $ipaddr/24 -d $ipaddr/24 $log #разрешаем все пакеты, исходящие с интерфейса cipe из локальной сети для удаленной ipchains -A $device"o" -j ACCEPT -i $device -s $ipaddr/24 -d $ptpaddr/24 #разрешаем все пакеты, исходящие с интерфейса cipe из удаленной сети для локальной ipchains -A $device"o" -j ACCEPT -i $device -s $ptpaddr/24 -d $ipaddr/24 #запрещаем все остальные исходящие из интерфейса cipe пакеты ipchains -A $device"o" -j DENY -s 0/0 -d 0/0 $log #-------------------------------------------------------------------------- #Правила для проходящего потока firewall для интерфейса cipe #они настроены так, чтобы машины локальной сети не попадали для удаленной #под маскарадинг. Так лучше работать с обеими сетями #Создаем пользовательский поток для проходящего через интерфейс cipe ipchains -N $device"f" #удаляем все правила для этого потока (на всякий случай) ipchains -F $device"f" #разрешаем все пакеты, проходящие через интерфейс cipe из локальной сети в удаленную ipchains -A $device"f" -j ACCEPT -i $device -s $ipaddr/24 -d $ptpaddr/24 #разрешаем все пакеты, проходящие через интерфейс cipe из удаленной сети в локальную ipchains -A $device"f" -j ACCEPT -i $device -s $ptpaddr/24 -d $ipaddr/24 #запрещаем все остальные, проходящие через интерфейс cipe, пакеты; записываем это в журнал ipchains -A $device"f" -j DENY -s 0/0 -d 0/0 $log #-------------------------------------------------------------------------- #Для большей уверенности разрешаем ядру переадресацию пакетов /bin/echo 1 > /proc/sys/net/ipv4/ip_forward #-------------------------------------------------------------------------- #добавляем в стандартные потоки правила со ссылками на пользовательские потоки ipchains -I input -i $device -j $device"i" ipchains -I output -i $device -j $device"o" ipchains -I forward -i $device -j $device"f" #-------------------------------------------------------------------------- #Дополнение к системе безопасности - в случае, если стандартное правило для #проходящего потока установлено в DENY или REJECT. #определяем интерфейсы машины #localif="eth0" #staticif="eth1" ;для пользователей кабельных модемов #staticif="ppp0" ;для пользователей обычных модемов #По-настоящему грубо определяем удаленный ip-адрес, взяв его из файла options. #В идеале этот адрес надо передавать скрипту через аргументы #Надо раскомментировать обе строки #peerfile=`grep $device /etc/cipe/options.* | cut -f1 -d:` #peer=`grep peer $peerfile | cut -f1 -d: | awk '{print $2}'` #Запоминаем удаленный ip-адрес для скрипта ip-down #echo $peer > /var/run/$device.peerip #разрешаем пересылку пакетов из локальной сети в удаленную, через сетевую карту #ipchains -I forward -j ACCEPT -i $localif -s $ipaddr/24 -d $ptpaddr/24 #разрешаем пересылку пакетов из удаленной сети в локальную, через сетевую карту #ipchains -I forward -j ACCEPT -i $localif -s $ptpaddr/24 -d $ipaddr/24 #разрешаем пересылку на интерфейсе staticif от этой системы к удаленной #myaddr=`echo $me | cut -f1 -d:` #ipchains -I forward -j ACCEPT -i $staticif -s $myaddr -d $peer #-------------------------------------------------------------------------- #Второе дополнение к системе безопасности - блокируем все запросы к udp-порту #cipe, кроме идущих от удаленной машины #необходимо определить udp-порты интерфейса cipe #получаем наш udp-порт #if [ "$option" = "" ]; then # myport=`echo $me | cut -f2 -d:` #else # myport=$option #fi #получаем удаленный udp-порт #переменная peerfile должна быть задана #peerport=`grep peer $peerfile | cut -f2 -d:` #запоминаем удаленный udp-порт cipe для скрипта ip-down #echo $peerport > /var/run/$device.peerport #получаем наш ip-адрес #myaddr=`echo $me | cut -f1 -d:` #запрещаем все запросы к udp-порту cipe; записываем это в журнал #ipchains -I input -j DENY -p udp -i $staticif -s 0/0 \ #-d $myaddr $myport $log #разрешаем все запросы к udp-порту cipe, идущие из интерфейса staticif, от удаленной машины #ipchains -I input -j ACCEPT -p udp -i $staticif -s $peer $peerport \ # -d $myaddr $myport #-------------------------------------------------------------------------- # Включаем в ядре в качестве дополнительной меры безопасности защиту от "spoofing"-а #-------------------------------------------------------------------------- #Зачем включать в ядре защиту от "spoofing"-а, если в этом скрипте эта #защита уже реализована, для каждого интерфейса на уровне firewall? #Предположим, что я параноик. if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then echo -n "Включаем защиту от IP-spoofing..." iface="/proc/sys/net/ipv4/conf/$device/rp_filter" echo 1 > $iface echo "done." else echo "Невозможно включить в ядре защиту устройства $device от IP-spoofing" \ | mail -s"Предупреждение Системы Безопасности: $device" root exit 1 fi exit 0 |
#!/bin/bash # ip-down <interface> <myaddr> <daemon-pid> <local> <remote> <arg> #3/29/1999 #Это пример скрипта ip-down для старых ядер версий 1.x 2.x, использующих ipfwadm, #удаляющий маршруты и правила firewall, заданные ранее для соединения вашей сети класса c #с удаленной сетью класса c. #Вопросы и предложения посылайте по адресу acj@home.com #-------------------------------------------------------------------------- #Настраиваем некоторые переменные device=$1 # Интерфейс CIPE me=$2 # Наш UDP-адрес pid=$3 # ID процесса демона ipaddr=$4 # IP-адрес нашего CIPE-устройства ptpaddr=$5 # IP-адрес удаленного CIPE-устройства option=$6 # аргументы, переданные через опции скрипта PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" #рас(за)-комментируйте следующую строку для включение в системный журнал #всех попыток неавторизованного доступа. Эта строка должна соответствовать #строке в скрипте ip-up для правильного отключения правил. log="-o" #-------------------------------------------------------------------------- umask 022 # пример записи в журнал #echo "DOWN $*" >> /var/adm/cipe.log # во многих системах требуются такие pid-файлы #rm -f /var/run/$device.pid #-------------------------------------------------------------------------- #Правила для входящего потока firewall для интерфейса cipe #удаляем запрещение всех остальных входящих с интерфейса cipe пакетов ipfwadm -I -d deny -W $device -S 0/0 -D 0/0 $log #удаляем разрешение всех пакетов, входящих с интерфейса cipe из удаленной сети для локальной ipfwadm -I -d accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #удаляем разрешение всех пакетов, входящих с интерфейса cipe из локальной сети для удаленной ipfwadm -I -d accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #удаляем запрещение всех пакетов, входящих с интерфейса cipe из локальной сети для локальной ipfwadm -I -d deny -W $device -S $ipaddr/24 -D $ipaddr/24 $log #-------------------------------------------------------------------------- #Правила для исходящего потока firewall для интерфейса cipe #удаляем запрещение всех остальных, исходящих из интерфейса cipe, пакетов ipfwadm -O -d deny -W $device -S 0/0 -D 0/0 $log #удаляем разрешение всех пакетов, исходящих из интерфейса cipe, из удаленной сети для локальной ipfwadm -O -d accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #удаляем разрешение всех пакетов, исходящих из интерфейса cipe, из локальной сети для удаленной ipfwadm -O -d accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #удаляем запрещение всех пакетов, исходящих из интерфейса cipe, из локальной сети для локальной ipfwadm -O -d deny -W $device -S $ipaddr/24 -D $ipaddr/24 $log #-------------------------------------------------------------------------- #Правила для проходящего потока firewall для интерфейса cipe #удаляем запрещение всех остальных пакетов, проходящих через интерфейс cipe ipfwadm -F -d deny -W $device -S 0/0 -D 0/0 $log #удаляем разрешение всех пакетов, проходящих через интерфейс cipe, из удаленной сети для локальной ipfwadm -F -d accept -W $device -S $ptpaddr/24 -D $ipaddr/24 #удаляем разрешение всех пакетов, проходящих через интерфейс cipe, из локальной сети для удаленной ipfwadm -F -d accept -W $device -S $ipaddr/24 -D $ptpaddr/24 #-------------------------------------------------------------------------- #Дополнение к системе безопасности - в случае, если стандартное правило для #проходящего потока установлено в DENY или REJECT. #define machine interfaces #localif="eth0" #staticif="eth1" ;для пользователей кабельных модемов #staticif="ppp0" ;для пользователей обычных модемов #По-настоящему грубо определяем удаленный ip-адрес, взяв его из файла options. #В идеале этот адрес надо передавать скрипту через аргументы #Надо раскомментировать обе строки #peerfile=`grep $device /etc/cipe/options.* | cut -f1 -d:` #peer=`grep peer $peerfile | cut -f1 -d: | awk '{print $2}'` #Запоминаем удаленный ip-адрес для скрипта ip-down (???) #echo $peer > /var/run/$device.peerip #удаляем разрешение пересылки пакетов из локальной сети в удаленную, через сетевую карту #ipfwadm -F -d accept -W $localif -S $ipaddr/24 -D $ptpaddr/24 #удаляем разрешение пересылки пакетов из удаленной сети в локальную, через сетевую карту #ipfwadm -F -d accept -W $localif -S $ptpaddr/24 -D $ipaddr/24 #удаляем разрешение пересылки пакетов через интерфейс staticif от этой системы к удаленной #myaddr=`echo $me | cut -f1 -d:` #ipfwadm -F -d accept -W $staticif -S $myaddr -D $peer #-------------------------------------------------------------------------- #Второе дополнение к системе безопасности - блокируем все запросы к udp-порту #cipe, кроме идущих от удаленной машины #необходимо определить udp-порты интерфейса cipe #получаем наш udp-порт #if [ "$option" = "" ]; then # myport=`echo $me | cut -f2 -d:` #else # myport=$option #fi #получаем удаленный udp-порт #переменная peerfile должна быть задана #peerport=`grep peer $peerfile | cut -f2 -d:` #запоминаем удаленный udp-порт cipe для скрипта ip-down (???) #echo $peerport > /var/run/$device.peerport #получаем наш ip-адрес #myaddr=`echo $me | cut -f1 -d:` #удаляем запрещение всех запросов к udp-порту cipe #ipfwadm -I -d deny -P udp -W $staticif -S 0/0 -D $myaddr $myport $log #удаляем разрешение всех запросов к udp-порту cipe, идущих из интерфейса staticif, от удаленной машины #ipfwadm -I -d accept -P udp -W $staticif -S $peer $peerport \ #-D $myaddr $myport exit 0 |
#!/bin/sh # ip-down <interface> <myaddr> <daemon-pid> <local> <remote> <arg> #3/29/1999 #Это пример скрипта ip-down для новых ядер версий 2.1/2.2, использующих ipchains, #удаляющий маршруты и правила firewall, заданные ранее для соединения вашей сети класса c #с удаленной сетью класса c. #Вопросы и предложения посылайте по адресу acj@home.com. #-------------------------------------------------------------------------- #Настраиваем некоторые переменные device=$1 # Интерфейс CIPE me=$2 # Наш UDP-адрес pid=$3 # ID процесса демона ipaddr=$4 # IP-адрес нашего CIPE-устройства ptpaddr=$5 # IP-адрес удаленного CIPE-устройства option=$6 # аргументы, переданные через опции скрипта PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" #рас(за)-комментируйте следующую строку для включение в системный журнал #всех попыток неавторизованного доступа. Эта строка должна соответствовать #строке в скрипте ip-up для правильного отключения правил. log="-l" #-------------------------------------------------------------------------- umask 022 # пример записи в журнал #echo "DOWN $*" >> /var/adm/cipe.log # во многих системах требуются такие pid-файлы #rm -f /var/run/$device.pid #-------------------------------------------------------------------------- #удаляем с главных потоков ссылки на пользовательские ipchains -D input -i $device -j $device"i" ipchains -D output -i $device -j $device"o" ipchains -D forward -i $device -j $device"f" #-------------------------------------------------------------------------- #Удаляем все правила из пользовательского входящего потока ipchains -F $device"i" #Удаляем пользовательский входящий поток ipchains -X $device"i" #-------------------------------------------------------------------------- #Удаляем все правила из пользовательского исходящего потока ipchains -F $device"o" #Удаляем пользовательский исходящий поток ipchains -X $device"o" #-------------------------------------------------------------------------- #Удаляем все правила из пользовательского проходящего потока ipchains -F $device"f" #Удаляем пользовательский проходящий поток ipchains -X $device"f" #-------------------------------------------------------------------------- #Удаляем дополнительные меры безопасности #получаем ip-адрес удаленной машины #peer=`cat /var/run/$device.peerip` #определяем интерфейсы машины #localif="eth0" #staticif="eth1" ;для пользователей кабельных модемов #staticif="ppp0" ;для пользователей обычных модемов #получаем наш ip-адрес #myaddr=`echo $me |cut -f1 -d:` #удаляем разрешение пересылки пакетов из локальной сети в удаленную, через сетевую карту #ipchains -D forward -j ACCEPT -i $localif -s $ipaddr/24 -d $ptpaddr/24 #удаляем разрешение пересылки пакетов из удаленной сети в локальную, через сетевую карту #ipchains -D forward -j ACCEPT -i $localif -s $ptpaddr/24 -d $ipaddr/24 #удаляем разрешение пересылки пакетов через интерфейс staticif от этой системы к удаленной #ipchains -D forward -j ACCEPT -i $staticif -s $myaddr -d $peer #удаляем файл с запомненным удаленным ip-адресом #rm /var/run/$device.peerip #-------------------------------------------------------------------------- #Удаляем дополнительные меры безопасности #получаем удаленный udp-порт #peerport=`cat /var/run/$device.peerport` #получаем наш udp-порт #if [ "$option" = "" ]; then # myport=`echo $me | cut -f2 -d:` #else # myport=$option #fi #удаляем запрещение всех запросов к udp-порту cipe #ipchains -D input -j DENY -p udp -i $staticif -s 0/0 \ #-d $myaddr $myport $log #удаляем разрешение всех запросов к udp-порту cipe, идущих из интерфейса staticif, от удаленной машины #ipchains -D input -j ACCEPT -p udp -i $staticif -s $peer $peerport \ #-d $myaddr $myport #удаляем файл с запомненным удаленным ip-адресом #rm /var/run/$device.peerport #-------------------------------------------------------------------------- exit 0 |