По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Одной из основных задач, с которой сталкивается администратор IP-АТС, является её защита от внешних вторжений. Как правило, все IP-АТС закрываются от внешней сети по средствам NAT-ирования и порт-форвардинга, но даже в этом случае, сервер может оставаться незащищенным от порт-сканеров, в частности, открытых SIP-портов 5060 и 5061.
В сегодняшней статье рассмотрим механизмы внутренней защиты IP-АТС Asterisk, доступные в web-интерфейсе Elastix 4. Инструменты, о которых пойдёт речь получили общее название Firewall
Итак, для того, чтобы попасть в модуль, переходим по следующему пути: Security → Firewall, перед нами открывается доступный функционал:
Рассмотрим каждую вкладку
Firewall Rules
В данной вкладке, настраиваются правила разрешающие или запрещающие прохождение трафика к IP-интерфейсам вашей IP-АТС. По умолчанию, Firewall выключен и первое, что необходимо сделать – это активировать его, нажав Activate Firewall. С этого момента, Elastix Firewall , будет контролировать ваши IPTables и все настройки, которые были сделаны вручную до этого – аннулируются.
После активации Firewall, перед нами откроется нумерованный список правил для всех портов, которые может использовать Elastix, а также возможность добавления собственного правила - Add Rule
В качестве примера покажем правило, запрещающее подключаться к нашей IP-АТС по протоколу SIP из некоторой подсети. Допустим мы в логах обнаружили слишком частые запросы из подсети 31.54.0.0/24. Для того, чтобы заблокировать доступ для этой сети, выбираем правило №4 (SIP) и редактируем его следующим образом:
Таким же образом можно заблокировать, например, протоколы, которые вы не используете (часто IAX, MGCP). Также, будет полезно ограничить возможность доступа к web-интерфейсу для всех, кроме администраторов Elastix по таким протоколам как HTTP(порт 80/8080/8088), HTTPS(порт 443), SSH(порт 22), Telnet (порт 23)
Define Ports
В данной вкладке можно настроить номера портов, которые впоследствии можно применить в правилах. Например, как правило, HTTP может использовать два порта 80 и 8080, в интерфейсе же мы видим только порт 80. Добавим его, для этого нажимаем View → Edit добавляем запись 8080 и кликаем Save. Можно добавить только ещё один номер порта.
Port Knocking Interfaces
Ещё один механизм защиты, позволяющий получать доступ к выбранным интерфейсам вашей IP-АТС, только после последовательности подключений к специальным портам. По умолчанию, порт, который вы хотите защитить, будет закрытым, пока на него не поступит последовательность пактов, которая заставит его открыться.
Port Knocking Users
Данная вкладка позволяет настроить механизм Port-Knocking для определенных пользователей и соответствующих портов.
Команды Linux могут показаться пугающими на первый взгляд, если вы не привыкли использовать терминал. Для выполнения операций и процессов в вашей системе Linux существует огромное количество команд.
Независимо от того, являетесь ли вы новичком в Linux или опытным пользователем, полезно иметь список общих команд под рукой. В этом руководстве вы найдете часто используемые команды Linux, а также загружаемую шпаргалку (так называемый cheatsheet) с синтаксисом и примерами.
Скачать PDF
Список команд Linux
Важное замечание: В зависимости от настроек вашей системы для выполнения некоторых из приведенных ниже команд может потребоваться запуск sudo.
Информация об оборудовании
Показать сообщения, которые выводило ядро во время загрузки:
dmesg
Показать информацию о процессоре:
cat /proc/cpuinfo
Показать свободную и использованную память с:
free -h
Список информации о конфигурации оборудования:
lshw
Показать информацию о блочных устройствах:
lsblk
Показать устройства PCI в древовидной схеме:
lspci -tv
Отображение USB-устройств в виде древовидной диаграммы:
lsusb -tv
Показать информацию об оборудовании из BIOS:
dmidecode
Показать информацию о диске:
hdparm -i /dev/disk
Провести тест скорости чтения на устройстве/диске:
hdparm -tT /dev/[device]
Проверка на нечитаемые блоки на устройстве/диске:
badblocks -s /dev/[device]
Поиск
Поиск определенного паттерна в файле:
grep [pattern] [file_name]
Рекурсивно искать паттерн в каталоге:
grep -r [pattern] [directory_name]
Найти все файлы и каталоги, связанные с конкретным именем:
locate [name]
Вывести список имен, начинающиеся с указанного символа a в указанном месте /folder/location, с помощью команды find:
find [/folder/location] -name [a]
Просмотр файлов, размер которых превышает указанный размер + 100M в папке:
find [/folder/location] -size [+100M]
Файлы
Список файлов в каталоге:
ls
Список всех файлов (включая скрытые):
ls -a
Показать каталог, в котором вы сейчас работаете:
pwd
Создать новый каталог:
mkdir [directory]
Удалить файл:
rm [file_name]
Удалить каталог рекурсивно:
rm -r [directory_name]
Рекурсивно удалить каталог без подтверждения:
rm -rf [directory_name]
Скопировать содержимое одного файла в другой файл:
cp [file_name1] [file_name2]
Рекурсивно скопировать содержимое одного файла во второй файл:
cp -r [directory_name1] [directory_name2]
Переименовать имя_файла1 в имя_файла2:
mv [file_name1] [file_name2]
Создать символическую ссылку на файл:
ln -s /path/to/[file_name] [link_name]
Создать новый файл:
touch [file_name]
Показать содержимое файла:
more [file_name]
Показать первые 10 строк файла:
head [file_name]
Показать последние 10 строк файла:
tail [file_name]
Зашифровать файл:
gpg -c [file_name]
Расшифровать файл:
gpg [file_name.gpg]
Показать количество слов, строк и байтов в файле:
wc
Навигация
Подняться на один уровень вверх в структуре дерева каталогов:
cd ..
Перейти в каталог $ HOME:
cd
Изменить местоположение на указанный каталог:
cd /chosen/directory
Сжатие файлов
Заархивировать существующий файл:
tar cf [compressed_file.tar] [file_name]
Извлечь заархивированный файл:
tar xf [compressed_file.tar]
Создайте сжатый gzip tar-файл:
tar czf [compressed_file.tar.gz]
Сжать файл с расширением .gz:
gzip [file_name]
Передача файлов
Скопировать файл в каталог сервера через ssh:
scp [file_name.txt] [server/tmp]
Синхронизировать содержимое каталога с резервным каталогом:
rsync -a [/your/directory] [/backup/]
Пользователи
Показать подробности об активных пользователях:
id
Показать последние системные логины:
last
Показать, кто в данный момент вошел в систему:
who
Показать, какие пользователи вошли в систему и их активность:
w
Добавить новую группу:
groupadd [group_name]
Добавить нового пользователя:
adduser [user_name]
Добавить пользователя в группу:
usermod -aG [group_name] [user_name]
Удалить пользователя:
userdel [user_name]
Изменить информацию о пользователе:
usermod
Установка пакета
Список всех установленных пакетов с yum:
yum list installed
Найти пакет по связанному ключевому слову:
yum search [keyword]
Показать информацию и краткую сводку о пакете:
yum info [package_name]
Установить пакет с помощью менеджера пакетов >YUM:
yum install [package_name.rpm]
Установить пакет с помощью менеджера пакетов >DNF:
dnf install [package_name.rpm]
Установить пакет с помощью менеджера пакетов >APT:
apt-get install [package_name]
Установить пакет .rpm из локального файла:
rpm -i [package_name.rpm]
Удалить пакет .rpm:
rpm -e [package_name.rpm]
Установить программное обеспечение из исходного кода:
tar zxvf [source_code.tar.gz]
cd [source_code]
./configure
make
make install
Процессы
Показать снимок активных процессов:
ps
Показать процессы в древовидной диаграмме:
pstree
Показать карту использования памяти процессами:
pmap
Показать все запущенные процессы:
top
Завершить процесс Linux с заданным идентификатором:
kill [process_id]
Завершить процесс с определенным именем:
pkill [proc_name]
Завершите все процессы, помеченные как proc:
killall [proc_name]
Список и сводка остановленных заданий в фоновом режиме:
bg
Перевод последней фоновой задачи в активный режим:
fg
Перевод конкретной задачи в активный режим:
fg [job]
Список файлов, открытых запущенными процессами:
lsof
Системная информация
Показать информацию о системе:
uname -r
Показать информацию о релизе ядра:
uname -a
Показать, как долго работает система, включая среднюю нагрузку:
uptime
Показать имя хоста системы:
hostname
Показать IP-адрес системы:
hostname -i
История перезагрузки системы:
last reboot
Показать текущее время и дату:
date
Запрос и изменение системных часов:
timedatectl
Показать текущий календарь (месяц и день):
cal
Список залогиненых пользователей:
w
Показать текущего пользователя:
whoami
Показать информацию о конкретном пользователе:
finger [username]
Использование диска
Показать свободное и использованное пространство на смонтированных системах:
df -h
Показать свободные иноды (inode) на смонтированных файловых системах:
df -i
Показать разделы диска, размеры и типы:
fdisk -l
Показать использование диска для всех файлов и каталогов:
du -ah
Показать использование диска в каталоге, в котором вы находитесь:
du -sh
Показать целевую точку монтирования для всей файловой системы:
findmnt
Смонтировать устройство:
mount [device_path] [mount_point]
SSH
Подключиться к хосту как пользователь:
ssh user@host
Подключиться к хосту через SSH порт по умолчанию 22:
ssh host
Подключиться к хосту, используя определенный порт:
ssh -p [port] user@host
Подключиться к хосту через telnet порт по умолчанию 23:
telnet host
Разрешение файлов
Назначить права на чтение, запись и выполнение всем:
chmod 777 [file_name]
Дать владельцу право на чтение, запись и выполнение, а также разрешение на чтение и выполнение для группы и других пользователей:
chmod 755 [file_name]
Назначить полное разрешение владельцу, а также разрешение на чтение и запись для группы и других пользователей:
chmod 766 [file_name]
Изменить владельца файла:
chown [user] [file_name]
Изменить владельца и групповое владение файлом:
chown [user]:[group] [file_name]
Сеть
Список IP-адресов и сетевых интерфейсов:
ip addr show
Назначить IP-адрес интерфейсу eth0:
ip address add [IP_address]
Отображение IP-адресов всех сетевых интерфейсов:
ifconfig
Показать активные (прослушиваемые) порты:
netstat -pnltu
Показать порты tcp и udp и их программы:
netstat -nutlp
Показать больше информации о домене:
whois [domain]
Показать DNS информацию о домене:
dig [domain]
Обратный поиск по домену:
dig -x host
Обратный поиск IP-адреса:
dig -x [ip_address]
Поиск IP для домена:
host [domain]
Показать локальный IP-адрес:
hostname -I
Скачать файл из домена с помощью команды wget:
wget [file_name]
Сочетания клавиш Linux
Убить процесс, запущенный в терминале:
Ctrl + C
Остановить текущий процесс:
Ctrl + Z
Вырезать одно слово перед курсором и добавить его в буфер обмена:
Ctrl + W
Вырезать часть строки перед курсором и добавить ее в буфер обмена:
Ctrl + U
Вырезать часть строки после курсора и добавить ее в буфер обмена:
Ctrl + K
Вставить из буфера обмена:
Ctrl + Y
Вызвать последнюю команду, которая соответствует предоставленным символам:
Ctrl + R
Запустите ранее вызванную команду:
Ctrl + O
Выйти из истории команд без выполнения команды:
Ctrl + G
Запустить последнюю команду еще раз:
!!
Выйти из текущей сессии:
exit
Заключение
Чем чаще вы используете команды Linux, тем лучше вы их запомните. Не переживайте о запоминании их синтаксиса - используйте наш шпаргалку.
А больше материалов про Linux можно найти в нашем разделе.
Настройка RIPv2 (Routing Information Protocol v2) - крайне простой процесс и состоит из трех шагов:
включения протокола глобальной командой router rip
сменой версии протокола на вторую version 2
выбор сетей, которые протокол будет «вещать», для чего используется команда(ы) network;
Первые две команды очевидны, но последняя команда требует объяснения: с помощью network вы указываете интерфейсы, которые будут участвовать в процессе маршрутизации. Данная команда берет классовую сеть как параметр и включает RIP на соответствующих интерфейсах.
Пример настройки RIPv2
В нашей топологии у маршрутизаторов R1 и R2 есть напрямую подключенные подсети.
Нам нужно включить данные подсети в процесс динамической маршрутизации RIP. Для этого нам сначала нужно включить RIP на обоих маршрутизаторах и затем «вещать» данные сети с помощью команды network. На маршрутизаторе R1 переходим в глобальный режим конфигурации и вводим следующие команды:
router rip
verison 2
network 10.0.0.0
network 172.16.0.0
Немного пояснений – сначала мы включаем протокол динамической маршрутизации, затем меняем версию на вторую, затем используем команду network 10.0.0.0 для включения интерфейса Fa0/1 на маршрутизаторе R1. Как мы уже говорили, команда network берет классовую сеть, так что каждый интерфейс с подсетью, начинающейся на 10 будет добавлен в RIP процесс. К примеру, если на другом интерфейсе будет адрес 10.1.0.1, то он тоже будет добавлен в процесс маршрутизации. Также нам необходимо соединить два маршрутизатора в RIP, для этого добавляем еще одну команду network – с адресом 172.16.0.0
IP-адреса начинающиеся на 10, по умолчанию принадлежат к классу «А» и имеют стандартную маску подсети 255.0.0.0.
На R2 настройка выглядит похожей, только с другой подсетью – т.к к маршрутизатору R2 напрямую подключена подсеть 192.168.0.0.
router rip
verison 2
network 192.168.0.0
network 172.16.0.0
Как проверить таблицу маршрутизации?
Для проверки, необходимо ввести команду show ip route - вы должны увидеть подсеть 192.168.0.0/24 на R1 и подсеть 10.0.0.0/24 на R2 отмеченных буквой R – то есть это RIP маршрут. Также там будет видна административная дистанция и метрика для данного маршрута.
Административная дистанция – это некая степень доверия к протоколу, и у RIP данный показатель равен 120. В качестве метрики у RIP выступает число хопов между подсетями.