В этой статье мы разберемся как узнать текущий TCP порт, на котором слушает и ожидает подключения именованный или default экземпляр MS SQL Server, как изменить порт подключения SQL Server на статический/динамический и как используется служба SQL Server Browser клиентами при подключении к SQL.
Настройка Брандмауэра (netfilter) для SSH и тырем порт
По умолчанию для SSH соединения, используется порт ТСP-порт 22. Забегая перед следует сказать, что многие рекомендует его поменять, но я так не думаю. Смена порта не поможет, «любой» сканер без труда отыщет ваш порт куда вы его не запрятали. Способ смены порта хорошо известен и Хакеры пишут соответствующие скрипты. Ниже будут приведены меры безопасности, прочитав их вы можете решить стоит ли менять порт или нет. Чтобы узнать какой порт слушает демон (sshd) на сервере, нужно выполнить команду:
$ sudo grep -w ‘Port’ /etc/ssh/sshd_config #Port 22
Применив директиву Port поменяв значение, вы укажете демону (sshd) порт который нужно слушать;
Port 8822
Теперь демон (sshd) будет слушать порт 8822, для подключения к серверу, нужно воспользоваться на клиентской машине командой:
$ ssh -p8822 [email protected]
Ключ ‘-p‘ указывает порт, вместо user пишем имя пользователя, 127.0.0.1 меняем на IP своего сервера.
C портами разобрались, теперь нужно настроить брандмауэр. Можно воспользоваться средствами TUI дистрибутива.
Внимание! Будьте внимательны и последовательны в ваших действиях ! Неправильные действия могут привести к потере удалённого доступа.
Для Red-Hat based:
- Установка и настройка Grafana | Losst
- Grafana по умолчанию в Linux
- Установка и настройка Grafana | Losst
- Grafana в Ubuntu 20.04 …
- How to send logs from EKS with Promtail …
$ sudo yum install iptables system-config-securitylevel-tui $ sudo system-config-securitylevel-tui
Нужно открыть порты (SSH) ТСP-22, UDP-22 или соответственно открыть порт который указали в директиве Port
Для SuSE:
$ sudo yast
Заходим в /Безопасность и пользователи/ Брандмауэр / Разрешённые службы — добавляем «Сервер Secure Shell», если вы указали порт директивой Port то / Брандмауэр / Разрешенные службы /Дополнительно и добавляем порт TCP и UDP .
Для «ручной настройки» следует внимательно ознакомиться с правилами iptables и настройкой брандмауэра вашего дистрибутива.
Приведу пример открытия портов простыми правилами:
iptables -A INPUT -p tcp —dport 22 -j ACCEPT iptables -A OUTPUT -p udp —sport 22 -j ACCEPT
Внимание ! Следует понимать, что к примеру SuSEfirewall2 генерирует правила для iptables из конфигурационного файла /etc/sysconfig/SuSEfirewall2, в каждом дистрибутиве есть свои особенности управления брандмауэром.
Основы Iptables
Все данные передаются по сети в виде пакетов. Ядро Linux предоставляет интерфейс для фильтрации пакетов входящего и исходящего трафика при помощи специальных таблиц. Iptables — это приложение командной строки и межсетевой экран для Linux, которым можно пользоваться для создания, поддержания работоспособности и проверки этих таблиц.
Можно создать несколько таблиц. В каждой таблице может содержаться несколько цепочек. Цепочка — это набор правил. Каждое правило определяет, что делать с пакетом, если он соответствует условиям. При соответствии пакета над ним выполняется целевое действие (TARGET). Это может быть проверка следующей цепочкой или один из следующих вариантов:
- ACCEPT: разрешить передачу пакета.
- DROP: запретить передачу пакета.
- RETURN: пропустить текущую цепочку и перейти к следующему правилу в цепочке, которая ее вызвала.
В данном руководстве мы будем работать с одной из таблиц по умолчанию, которая называется фильтром (filter). В таблице фильтра есть три цепочки (набора правил):
- INPUT – используется для контроля входящих пакетов. Можно разрешать или блокировать подключения по порту, протоколу или IP-адресу источника.
- FORWARD – используется для фильтрации пакетов, приходящих на сервер, но перенаправляемых куда-либо еще.
- OUTPUT – используется для фильтрации исходящих пакетов.
TCP порты и служба SQL Server Browser
До версии MSSQL 2000 нельзя было установить больше одного экземпляра СУБД на один компьютер. Такая возможность появилась в более новых версиях MSSQL. Служба SQL Server Browser впервые появилась в SQL Server 2005 и использовалась как посредник для распределения подключений между различными экземплярами MSSQL, установленными на одном компьютере.
Также SQL Server Browser отвечает за подключение к MSSQL (например, из SQL Server Management Studio) без указания порта, например testnode1\node1. Служба SQL Server Browser узнает номер текущего динамического порта экземпляра из реестра и сообщает его клиенту.
Если вы отключите службу SQL Server Browser, то для подключения к экземпляру необходимо вручную указывать TCP порт. Например, testnode1\node1, 1440.
При отключенной службе SQL Server Browser и использовании динамических портов приложения не смогут узнать номер порта, к которому нужно обращаться.
Стандартные порты SQL Server
- Установка и настройка Grafana — блог …
- Open Source Grafana Tutorial: Getting …
- Настройка Grafana | Администрирование …
- grafana в Unix/Linux | linux-notes.org
- System monitoring with Grafana …
- TCP 1433 — Стандартный порт SQL Server
- UDP 1433 – порт, используемый SQL Server Browser
Другие порты настраиваются при установке/настройке конкретного сервиса. Так что по умолчанию, Вам достаточно открыть в файерволе только два порта: 1433 TCP/UDP.
Если у вас используются строгие настройки фаервола, или если вы хотите максимально ограничить SQL Server, рекомендуется отключить Dynamic Ports (выставить пустое значение) и отключить службу SQL Server Browser.
Если же ваши SQL Server’a находятся в публичном доступе, то будет хорошей идеей поменять порт на нестандартный. Это не защитит от атак полностью, но снизит их число.
Установка и синтаксис Nmap
По умолчанию программа недоступна в дистрибутивах ОС семейства Linux. Установим ее из официального репозитория.
sudo apt-get install nmap
Инсталляция займет не более 4 минут. Запуск утилиты осуществляется командой nmap с дополнительными ключами. Если требуется ознакомиться с синтаксисом и возможностями, вводим наименование ПО в терминале и нажимаем Enter.
Справочник
Общий вид команды для сканирования выглядит следующим образом:
Nmap key target
Key – опция, с которой проводится сканирование. Утилита обладает множеством возможностей.
Target – конечная точка. Это может быть сайт, имя компьютера, IP-адрес и т.д.
Разработчики программы создали специальный веб-ресурс для тестирования возможностей Nmap. Его адрес:
Для начала проверим работоспособность Nmap на сайте без опций.
nmap
Получим следующие данные.
Сканирование сайта
Изображение выше показывает, что на ресурсе открыт порт 80 по протоколу TCP. Через него работает служба HTTP.
Поле State принимает четыре значения. Open означает, что порт открыт, а Closed – закрыт, т.е. ни одна программа не использует его. Третий вариант – Filtred, т.е. порт блокируется межсетвым экраном или фильтром. Последнее значение Unfiltered обозначает, что Nmap не определил, открыт ли порт или закрыт.
Создание панели инструментов с помощью Grafana
Последний шаг — создание панели инструментов с использованием Grafana. Первым делом подключаемся к веб-интерфейсу Grafana по этой ссылке:
http://<your_raspberry_ip>:3000
Вы получите эту страницу:
- Grafana в Ubuntu 20.04 …
- Prometheus+Grafana+Node_exporter …
- server cluster using Grafana …
- Help combining two metrics into single …
- Настройка Grafana с Graphite/Zabbix …
Теперь выполните следующие действия:
- Войдите в Grafana используя (admin / admin)
- Сконфигурируйте источник данных, выбрав InfluxDB
- Создайте свою панель с графиками, как вы предпочитаете
Пример панели инструментов Grafana с использованием температуры и давления показан ниже:
Открываем и настраиваем портал
Проверяем работу портала
После установки графаны открываем браузер и переходим по адресу http:// :3000.
Для авторизации используем логин и пароль: admin / admin.

Система может потребовать задать новый пароль — вводим его дважды.
Добавляем плагин для работы с Zabbix
Установка плагина для подключения к Zabbix выполняется командой:
grafana-cli plugins install alexanderzobnin-zabbix-app
После окончания установки мы должны увидеть:

Installed alexanderzobnin-zabbix-app successfully
Перезагружаем сервер графаны:
systemctl restart grafana-server
Переходим к веб-интерфейсу и открываем управление плагинами:
В открывшемся списке находим Zabbix и переходим к нему:

Активируем его, кликнув по Enable:
Добавляем источник данных
Переходим в раздел Configuration — Data Sources:
Кликаем по Add data source:
Выбираем Zabbix в качестве источника данных:

На открывшейся странице в разделе «HTTP», поле URL вводим http:// /api_, например:
Ниже, в разделе «Zabbix API details», вводим логин и пароль для учетной записи с правами выполнения запросов API, а также выбираем версию нашего сервера Zabbix:
* по умолчанию, в Zabbix создается учетная запись с правами администратора Admin с паролем zabbix. Однако, эту запись лучше использовать для проверки, а для целей интеграции лучше создать нового пользователя.
Нажимаем на Save & Test. Готово.
Создаем график на основе метрики в Zabbix

Переходим в раздел Create — Dashboard:
Выбираем Add Query:
Заполняем поля для получения данных с Zabbix:
- Query — источник данных. Выбираем Zabbix.
- Query Mode — тип данных. Оставляем Metrics.
- Group — группа серверов в Zabbix. Выбираем нужную нам группу.
- Host — имя сервера, для которого будем вытаскивать данные.
- Application — данные для какого компонента будем собирать. В данном примере, процессора.
- Item — какой именно тип информации нас интересует. На скриншоте выше выбрано время простоя процессора.
При желании, можно настроить графики в разделе Visualization:

В открывшемся всплывающем окне задаем имя дашборду и нажимаем Save. Готово.
источник