Настройка DDNS от Укртелеком

14 февраля 2013 от Укртелеком появилась новая услуга «Динамический DNS».

Чтобы активировать услугу «Динамический DNS», необходимо зайти в личный кабинет на сайте http://my.ukrtelecom.ua/
Выбрать «Управление DSL доступом», далее выбрать дополнительные услуги и нажать активация.
Услуга будет активирована через некоторое время, обычно от нескольких минут до суток.

Проверить можно набрав в командной строке команду ping имя.ddns.ukrtel.net
Если адрес пингуется, значит услуга активирована и работает.

Настраивать на модеме ничего не нужно.

Автоматическое переключение между резервными линиями на MikroTik (RouterOS)

Допустим имеется два интернет канала, от разных или одного провайдера, шлюз может быть одинаковым, это не имеет значения. Включены они в первый и второй порты.

Читать далее «Автоматическое переключение между резервными линиями на MikroTik (RouterOS)»

SNMP OIDs для коммутатора HP 5800

Приведу список некоторых OID которые я использовал:
Определяем OID загрузки процессора выполнив команду в Linux:

snmpwalk -v 2c -c комьюнити хост .1.3.6.1.4.1.25506.2.6.1.1.1.1.6
snmpwalk -v 2c -c комьюнити хост .1.3.6.1.2.1.47.1.1.1.1.7

В результате выполнения первой команды будет отображен список OID, те в которых значение больше 0 означают загрузку процессора. Если коммутаторы объеденены в стек, то OID со значением больше нуля будет больше одного. Второй командой смотрим описание, наше будет «Board».

Определяем OID использования памяти:

snmpwalk -v 2c -c комьюнити хост .1.3.6.1.4.1.25506.2.6.1.1.1.1.8

Определяем OID температуры:

snmpwalk -v 2c -c комьюнити хост .1.3.6.1.4.1.25506.2.6.1.1.1.1.12

OID для просмотра ARP списка:

.1.3.6.1.2.1.3.1.1

Смотрим в каком vlan находятся ip:

.1.3.6.1.2.1.2.2.1.2

Смотрите также:
Список SNMP OID и MIB для интерфейсов

Мониторинг параметров MySQL в Zabbix

Создадим директорию для скриптов:
sudo mkdir /etc/zabbix/scripts/
sudo chown root:zabbix -R /etc/zabbix/scripts/
sudo chmod 750 /etc/zabbix/scripts/

Сам скрипт для мониторинга параметров MySQL:

#!/bin/bash
##### OPTIONS VERIFICATION #####
if [[ -z "$1" || -z "$2" ]]; then
  exit 1
fi
##### PARAMETERS #####
RESERVED="$1"
METRIC="$2"
USER="${3:-user}"
PASS="${4:-pass}"
#
MYSQLADMIN="/usr/bin/mysqladmin"
MYSQL="/usr/bin/mysql"
CACHE_TTL="55"
CACHE_FILE="/tmp/zabbix.mysql-stats.cache"
EXEC_TIMEOUT="1"
NOW_TIME=`date '+%s'`
##### RUN #####
if [ "${METRIC}" = "alive" ]; then
  ${MYSQLADMIN} -u${USER} -p${PASS} ping | grep alive | wc -l | head -n1
  exit 0
fi
if [ "${METRIC}" = "version" ]; then
  ${MYSQL} -V | sed -e 's/^.*\(ver.*\)$/\1/gI' | head -n1
  exit 0
fi
#
if [ -s "${CACHE_FILE}" ]; then
  CACHE_TIME=`stat -c"%Y" "${CACHE_FILE}"`
else
  CACHE_TIME=0
fi
DELTA_TIME=$((${NOW_TIME} - ${CACHE_TIME}))
#
if [ ${DELTA_TIME} -lt ${EXEC_TIMEOUT} ]; then
  sleep $((${EXEC_TIMEOUT} - ${DELTA_TIME}))
elif [ ${DELTA_TIME} -gt ${CACHE_TTL} ]; then
  echo "" >> "${CACHE_FILE}" # !!!
  DATACACHE=`${MYSQLADMIN} -u${USER} -p${PASS} extended-status 2>&1`
  echo "${DATACACHE}" > "${CACHE_FILE}" # !!!
  chmod 640 "${CACHE_FILE}"
fi
#
cat "${CACHE_FILE}" | grep -iw "$METRIC" | cut -d'|' -f3 | head -n1
#
exit 0

Установим скрипту владельца и права:
sudo chown root:zabbix /etc/zabbix/scripts/mysql-stats.sh
sudo chmod 550 /etc/zabbix/scripts/mysql-stats.sh

Проверка работы скрипта:
sudo -u zabbix /etc/zabbix/scripts/mysql-stats.sh none questions ИМЯ ПАРОЛЬ

Просмотр списка возможных параметров по которым можно просматривать статистику:
mysqladmin -uroot -p extended-status

Добавляем указанную ниже строку в конфигурационный файл zabbix-агента /etc/zabbix/zabbix_agentd.conf:

UserParameter=mysql-stats[*],/etc/zabbix/scripts/mysql-stats.sh "none" "$1" [USER] [PASSWORD]

Перезапуск zabbix агента чтобы изменения вступили в силу:

/etc/init.d/zabbix-agent restart

Проверка:

sudo zabbix_get -k 'mysql-stats[questions]' -s 127.0.0.1

Установка и настройка ntopng

Ниже опишу установку ntopng в Ubuntu.
Выбираем необходимый пакет на http://packages.ntop.org/apt-stable/ и скачиваем его:

wget wget http://apt-stable.ntop.org/16.04/all/apt-ntop-stable.deb
sudo dpkg -i apt-ntop-stable.deb

Далее выполняем:

sudo apt-get clean all
sudo apt-get update
sudo apt-get install pfring nprobe ntopng ntopng-data n2disk nbox
sudo touch /etc/ntopng/ntopng.start
sudo /etc/init.d/ntopng restart

Если вышли новые версии ntopng, то можно обновиться выполнив команды:

sudo apt-get update
sudo apt-get upgrade

После установки конфигурационный файл будет находится в директории /etc/ntopng/ntopng.conf
Приведу пример его содержания:

-w=3000
-d=/var/tmp/ntopng
-G=/var/run/ntopng.pid
--httpdocs-dir /usr/share/ntopng/httpdocs
--local-networks="192.168.0.0/16,10.0.0.0/8,172.16.0.0/16"

Перезапустить/остановить/запустить ntopng можно командами:

sudo /etc/init.d/ntopng restart
sudo /etc/init.d/ntopng stop
sudo /etc/init.d/ntopng start

Проверить из консоли можно командой:

sudo /etc/init.d/ntopng status
sudo netstat -tulpn | grep :3000

Открыть веб-интерфейс можно набрав в адресной строке браузера:
http://адрес_хоста:3000

Стандартный логин и пароль admin/admin.

Смотрите также:
Установка и настройка nprobe
Решение ошибки «Missing /etc/ntopng/ntopng.start. Quitting»

Настройка DDNS клиента NO-IP в Mikrotik RouterOS

После регистрации на сайте www.noip.com, необходимо приступить к настройке маршрутизатора.

Создаем новый скрипт, например с именем «no-ip_ddns_update» и правами read, test, write. Через графический интерфейс меню находится в System -> Scripts.

В первых четверых строках необходимо указать имя зарегистрированного пользователя, его пароль, имя домена, если доменов несколько, то можно писать через запятую, имя сетевого интерфейса который смотрит в интернет, если используется PPOE, то необходимо указать его.

Текст скрипта:

:local noipuser "NOIP_USER"
:local noippass "NOIP_PASSWORD"
:local noiphost "NOIP_HOST"
:local inetinterface "WAN_INTERFACE"

:global previousIP

:if ([/interface get $inetinterface value-name=running]) do={
# Get the current IP on the interface
   :local currentIP [/ip address get [find interface="$inetinterface" disabled=no] address]

# Strip the net mask off the IP address
   :for i from=( [:len $currentIP] - 1) to=0 do={
       :if ( [:pick $currentIP $i] = "/") do={ 
           :set currentIP [:pick $currentIP 0 $i]
       } 
   }

   :if ($currentIP != $previousIP) do={
       :log info "No-IP: Current IP $currentIP is not equal to previous IP, update needed"
       :set previousIP $currentIP

# The update URL. Note the "\3F" is hex for question mark (?). Required since ? is a special character in commands.
       :local url "http://dynupdate.no-ip.com/nic/update\3Fmyip=$currentIP"
       :local noiphostarray
       :set noiphostarray [:toarray $noiphost]
       :foreach host in=$noiphostarray do={
           :log info "No-IP: Sending update for $host"
           /tool fetch url=($url . "&hostname=$host") user=$noipuser password=$noippass mode=http dst-path=("no-ip_ddns_update-" . $host . ".txt")
           :log info "No-IP: Host $host updated on No-IP with IP $currentIP"
       }
   }  else={
       :log info "No-IP: Previous IP $previousIP is equal to current IP, no update needed"
   }
} else={
   :log info "No-IP: $inetinterface is not currently running, so therefore will not update."
}

Далее добавляем в планировщик задание которое будет обновлять информацию NO-IP DDNS. Через графический интерфейс меню находится в System — Sheduler.
Через консоль команда выглядит следующим образом:

system scheduler add comment="Update No-IP DDNS" disabled=no interval=5m name=no-ip_ddns_update on-event=no-ip_ddns_update policy=read,write,test

Альтернативный скрип, написан по информации на http://www.noip.com/integrate/request и http://wiki.mikrotik.com/wiki/Manual:Scripting-examples

##############Script Settings##################
:local NOIPUser "no-ip.com ЛОГИН"
:local NOIPPass "no-ip.com ПАРОЛЬ"
:local WANInter "ИМЯ_WAN_ИНТЕРФЕЙСА"
###############################################

:local NOIPDomain "$NOIPUser.no-ip.org"
:local IpCurrent [/ip address get [find interface=$WANInter] address];
:for i from=( [:len $IpCurrent] - 1) to=0 do={ 
  :if ( [:pick $IpCurrent $i] = "/") do={ 
    :local NewIP [:pick $IpCurrent 0 $i];
    :if ([:resolve $NOIPDomain] != $NewIP) do={
      /tool fetch mode=http user=$NOIPUser password=$NOIPPass url="http://dynupdate.no-ip.com/nic/update\3Fhostname=$NOIPDomain&myip=$NewIP" keep-result=no
      :log info "NO-IP Update: $NOIPDomain - $NewIP"
     }
   } 
}

Mikrotik SMB — настройка файлового сервера

На примере буду использовать маршрутизатор Mikrotik RB951G-2HnD.

Подключаем к маршрутизатору USB носитель.
Смотрим состояние:

store disk print

Форматируем его:

store disk format-drive 1

Перезагружаем маршрутизатор:

reboot

Добавление хранилища:

store add name=share disk=usb1 type=user-manager activate=yes comment="test"

Добавление шары:

ip smb share add name=test max-sessions=15 directory=/test disabled=no comment="test share"

Пример отключения шары:

ip smb share disable

Включение smb:

enable smb

Приведу примеры некоторых команд:
ip smb print (просомтр параметров)
ip smb set allow-guests yes/no (разрешает подключение гостевым пользователям без ввода пароля, стандартно yes)
ip smb set comment TEXT (комментарий, стандартно MikrotikSMB)
ip smb set domain NAME (установка имени рабочей группы, стандартно MSHOME)
ip smb set enabled yes/no (включение/выключение SMB, стандартно no)
ip smb set interfaces all/wlan1/bridge-local/… (установка интерфейсов на которых будет запущен SMB, стандартно all)

ip smb users add read-only=no name=логин password=пароль disabled=no (создание пользователя)
ip smb users disable (отключение пользователя)
ip smb users enable (активация пользователя)
ip smb users print (просмотр списка пользователей)
ip smb users remove (удаление пользователя)
ip smb users set read-only=no name=логин password=пароль (изменение пользователя)

ip smb share enable (активация шары)
ip smb share print (просмотр списка шар)
ip smb share remove (удаление шары)
ip smb share set (изменение параметров шары)

Для получения справки в командной строке используется символ «?».
Для переходя на уровень выше — «..».

Пример настройки фаервола для smb:

add action=accept chain=input disabled=no dst-port=137-138 protocol=udp src-address-list=smb-allow
add action=accept chain=input disabled=no dst-port=137,139 protocol=tcp src-address-list=smb-allow
ip firewall address-list add address=1.1.1.1 disabled=no list=smb-allow

Официальные документации:
wiki.mikrotik.com/wiki/Manual:IP/SMB
wiki.mikrotik.com/wiki/Manual:Store

К маршрутизатору также можно подключить жесткий диск через переходник USB-SATA.

Решение ошибки «Kernel failure» и «Out of memory» в Mikrotik

Появилась проблема, часто начал сам перезагружаться MikroTik CAS125-24G-1S-RM.
Прошивка на тот момент стояла последняя — WebFig v6.9
В логах отображалась следующая информация:

System rebooted because of kernel failure
Out of memory condition was detected
router was rebooted without proper shutdown

Посмотрев в «system» -> «resources» было видно что свободная память устройства постоянно уменьшается.
Тут я начал вспоминать что было задействовано и настроено на устройстве.
Наткнувшись и посмотрев «Cache Used» в «IP» -> «Web Proxy» было видно что размер кэша постоянно растет.
Отсюда было ясно что когда память устройства заканчивалась и появлялся сбой kernel.
Поэтому решением данной проблемы было ограничение кеша прокси указав максимальный размер в «Max. Cache Size«.
Все.