sysadmin:pfsense:start

Это старая версия документа!


pfSense

HowTo

Скрипт проверки доступности сервера DNS Yandex

1. Простой

В консоле pfSense

tee > inet_check.sh
chmod +x inet_check.sh

Редактировать

#!/bin/sh
ping -n -q -c 4 -t 3 78.88.8.8

Редактировать cron

crontab -e

Добавить в cron pfSense

*/10 * * * * /usr/local/bin/inet_check.sh

2. С логами

<code bash> #!/bin/sh

# СКРИПТ ПРОВЕРКИ РАБОТЫ И АКТИВНОСТИ ИНТЕРНЕТ СОЕДИНЕНИЯ

# ОПРЕДЕЛЯЕМ ПЕРЕМЕННЫЕ, ПУТИ ДО ЛОГ-ФАЙЛОВ И ИСПОЛНЯЕМЫХ СКРИПТОВ

# ПУТЬ ДО ЛОГ-ФАЙЛА LOG=«/var/log/check_inet.log»

# ОПРЕДЕЛЯЕМ СЕРВЕР ДЛЯ ПРОВЕРКИ ДОСТУПНОСТИ ИНТЕРНЕТА SERVER=«77.88.8.8»

# ОПРЕДЕЛЯЕМ ПУТЬ ДО ИСПОЛНЯЕМОГО ФАЙЛА ПРОГРАММЫ PING PING=«/sbin/ping»

# ОПРЕДЕЛЯЕМ ПУТЬ ДО ИСПОЛНЯЕМОГО ФАЙЛА ПРОГРАММЫ REBOOT REBOOT=«/sbin/reboot»

# ПРОВЕРКА ИНТЕРНЕТА restart() { ${PING} -q -c1 -t1 -s0 ${SERVER} >/dev/null 2>/dev/null if [ $? -eq 0 ]; then

      echo "$(date +%d-%m-%y\ %H:%M:%S) ТЕСТ PING ${SERVER} УСПЕШНО ВЫПОЛНЕН!" >> ${LOG}
      exit 0

else

      echo "$(date +%d-%m-%y\ %H:%M:%S) ОШИБКА!! ТЕСТ НЕУДАЧЕН!! --> REBOOT СЕРВЕРА" >> ${LOG}
      ${REBOOT}

fi

return 0 }

# СТАРТ - ОБЩЕЕ НАЧАЛО РАБОТЫ СКРИПТА echo «=============================================================» » ${LOG} echo «$(date +%d-%m-%y\ %H:%M:%S) СТАРТ ПРОВЕРКИ ДОСТУПНОСТИ ИНТЕРНЕТА» » ${LOG} restart

exit 0 <code> Истоник

  • Последнее изменение: 20:01:2025 14:07