По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Почитатей первую часть статьи про траблшутинг NAT/PAT на Cisco. В этой части мы рассмотрим проблемы DHCP. Урок 1 Вот новый сценарий, позвольте мне сначала объяснить его: Зеленая зона - это наша локальная сеть, так что это наш NAT inside. Красная область - это Интернет, поэтому это наш NAT outside. Предполагается, что хост - это компьютер с шлюзом по умолчанию 192.168.12.2. Наш маршрутизатор NAT подключен к маршрутизатору ISP. Маршрутизатор ISP назначил нам подсеть 172.16.1.0 / 24, которую мы собираемся использовать для трансляции NAT. BGP был настроен между NAT и маршрутизатором ISP для доступа к сети 192.168.34.0/24. Предполагается, что веб-сервер прослушивает TCP-порт 80 и использует 192.168.34.3 в качестве шлюза по умолчанию. Однако пользователи нашей локальной сети жалуются на то, что не могут подключиться к веб-серверу. Давайте проверим нашу конфигурацию NAT: Мы можем убедиться, что трансляция работает: Inside local IP-адрес нашего хоста. Inside global находится один из IP-адресов из нашей подсети 172.16.1.0/24. Outside local and global IP-адрес нашего веб-сервера Эта трансляция выглядит хорошо, потому что все IP-адреса верные. Мы видим, что маршрутизатор NAT научился достигать сети 192.168.34.0 / 24 через BGP. Наш NAT-маршрутизатор может подключаться к веб-серверу, поэтому проблема с подключением отсутствует. Однако следует помнить одну важную вещь. Пакет IP, который производит маршрутизатор NAT, выглядит следующим образом: IP-адрес получателя является нашим веб-сервером, и с ним нет проблем. Исходный IP-адрес - 192.168.23.2, и поскольку мы получили ответ, мы знаем, что маршрутизатор ISP знает, как достичь подсети 192.168.23.0 / 24. Это важно, поскольку подсеть 192.168.23.0 / 24 напрямую подключена к маршрутизатору ISP. Однако, если мы отправляем эхо-запрос с хост-устройства, он преобразуется из-за NAT в IP-адрес в подсети 172.16.1.0/24. Пакет IP будет выглядеть так: Вот что происходит, когда этот IP-пакет покидает маршрутизатор NAT и отправляется маршрутизатору ISP: Маршрутизатор ISP получает IP-пакет и проверяет свою таблицу маршрутизации, знает ли он, куда отправлять трафик для сети 192.168.34.0 / 24. Сеть 192.168.34.0/24 напрямую подключена к маршрутизатору ISP, поэтому она выполняет запрос ARP для MAC-адреса веб-сервера, получает ответ ARP и может пересылать IP-пакет на веб-сервер. Веб-сервер хочет ответить, и он создает новый IP-пакет с IP-адресом назначения 172.16.1. Поскольку веб-сервер имеет маршрутизатор ISP в качестве шлюза по умолчанию, он отправит IP-пакет маршрутизатору ISP. Маршрутизатор ISP должен выполнить поиск в таблице маршрутизации, чтобы узнать, знает ли он, где находится сеть 172.16.1.0 / 24. Маршрутизатор ISP не знает, где находится 172.16.1.0 / 24, и отбросит IP-пакет. Если бы это была настоящая производственная сеть, у нас не было бы доступа к маршрутизатору ISP. Так как это эмуляция сети и устройств, к которой у нас есть доступ, поэтому давайте сделаем отладку! ISP#debug ip packet 1 IP packet debugging is on for access list 1 ISP#conf t ISP(config)#access-list 1 permit host 192.168.34.4 Сначала включим отладку IP-пакетов и используем список доступа, который соответствует IP-адресу веб-сервера. Следующим шагом является то, что мы будем генерировать некоторый трафик с хост-устройства. Это то, что будет производить маршрутизатор ISP. Он говорит нам, что понятия не имеет, куда отправить IP-пакет для 172.16.1.1 to...it является не маршрутизируемым и будет отброшен. Так как же мы решим эту проблему? ISP-маршрутизатор требует сеть 172.16.1.0 /24 в таблице маршрутизации. Поскольку мы уже запустили BGP мы можем использовать его для объявления этой сети с нашего маршрутизатора NAT: NAT(config)#ip route 172.16.1.0 255.255.255.0 null 0 NAT(config)#router bgp 1 NAT(config-router)#network 172.16.1.0 mask 255.255.255.0 Сначала мы создадим статическое правило, которое указывает сеть 172.16.1.0 / 24 на интерфейс null0. Мы делаю это потому, что невозможно объявлять то, чего у тебя нет. Следующий шаг-объявить эту сеть в BGP. Пинг прошел проблема решена! Итог урока: убедитесь, что ваши маршрутизаторы знают, как связаться с translated сетями. Урок 2 Начнем с простого сценария. Маршрутизатор с левой стороны - это наш DHCP-клиент, а маршрутизатор с правой стороны - это наш DHCP-сервер. Клиент, однако, не получает никаких IP-адресов ... что может быть не так? Сначала мы проверим, включен ли интерфейс на клиенте DHCP и настроен ли он для DHCP. И это действительно так. Мы также должны убедиться, что интерфейс на сервере DHCP включен/включен и что у него есть IP-адрес. Пока все выглядит хорошо... Если мы хотим быть абсолютно уверенным, что проблема не в клиенте, нам надо применить отладку командой debug dhcp detail, чтобы посмотреть, отправляет ли клиент DHCP сообщения об обнаружении DHCP. Мы видим некоторые отладочные выходные данные, как показано выше. Это говорит о том, что наш DHCP-клиент отправляет сообщения DHCP Discover. Клиент, скорее всего, не является источником этой проблемы. DHCPServer#show ip dhcp pool Мы будем использовать команду show ip dhcp pool, чтобы проверить, существует ли пул DHCP. Вы видите, что у нас есть пул DHCP с именем "MYPOOL", и он настроен для подсети 192.168.12.0 / 24. Пока все выглядит хорошо. Мы можем использовать команду show ip dhcp server statistics, чтобы узнать, что делает сервер DHCP. Вы видите, что он ничего не делает ... что это может значить? Эта команда не часто применяется. show ip sockets показывает нам, на каких портах роутер слушает. Как вы видите, он не прослушивает никакие порты ... если мы не видим здесь порт 67 (DHCP), это означает, что служба DHCP отключена. DHCPServer(config)#service dhcp Включим сервис. Так-то лучше! Теперь мы видим, что маршрутизатор прослушивает порт 67, это означает, что служба DHCP активна. Как только служба DHCP будет запущена, вы увидите, что клиент получает IP-адрес через DHCP ... проблема решена! Итог урока: если все в порядке, убедитесь, что служба DHCP работает. Урок 3 Взгляните на сценарий выше. У нас есть 3 маршрутизатора; маршрутизатор на левой стороне настроен как DHCP-клиент для своего интерфейса FastEthernet0/0. Маршрутизатор с правой стороны настроен как DHCP-сервер. Помните, что DHCP-сообщения об обнаружении от клиентов транслируются, а не пересылаются маршрутизаторами. Вот почему нам требуется команда ip helper на маршрутизаторе в середине, именуемым как relay. Проблема в этом сценарии заключается в том, что клиент не получает IP-адреса через DHCP Сначала мы проверим, что интерфейс настроен для DHCP. Мы определим это с помощью команды show ip interface brief. DHCPClient(config)#interface fastEthernet 0/0 DHCPClient(config-if)#shutdown DHCPClient(config-if)#no shutdown Мы будем переводить интерфейс в режимы up и down для проверки, будет ли он отправлять сообщение DHCP Discover. Мы видим, что сообщения DHCP Discover принимаются на DHCP-сервере. Это означает, что маршрутизатор в середине был настроен с IP helper, в противном случае мы даже не получили бы эти сообщения. Сообщения с предложениями DHCP отправлены, но мы не видим сообщений DHCPACK (Acknowledgment). Это дает нам понять, что что-то происходит... DHCPServer#debug ip dhcp server packet Включим отладку, чтобы увидеть, что происходит. Мы видим, что наш DHCP-сервер пытается достичь IP-адреса 192.168.12.2, это интерфейс FastEthernet0/0 нашего маршрутизатора в середине. Знает ли DHCP-сервер, как добраться до этого IP-адреса? Как вы можете видеть, его нет в таблице маршрутизации, это означает, что IP-пакеты с назначением 192.168.12.2 будут отброшены. Чтобы доказать это, мы можем включить отладку Здесь видим, что IP-адрес назначения 192.168.12.2 не является маршрутизируемым, и в результате IP-пакет будет отброшен. Давайте исправим эту проблему. DHCPServer(config)#ip route 192.168.12.0 255.255.255.0 192.168.23.2 Мы добавим этот статический маршрут, чтобы исправить нашу проблему с подключением. Через некоторое время вы должны увидеть, что клиент получает IP-адрес через DHCP. Если вы оставили "debug ip dhcp server packet" включенным, вы увидите весь процесс DHCP: DHCP Discover DHCP Offer DHCP Request DHCP ACK Вот и все ... проблема решена! Итог урока: если вы используете IP helper, убедитесь, что DHCP-сервер знает, как связаться с подсетью, в которой находится клиент. 3 часть статьи про FHRP траблшутинг на Cisco доступна по ссылке.
img
Как системный администратор, вполне вероятно, что вы написали несколько сценариев Bash для автоматизации вашей работы. Например, вы можете запускать сценарии Bash для резервного копирования вашей работы или для регистрации некоторых событий, происходящих на вашем сервере. Скрипты Bash, как и скрипты, написанные на других языках программирования, могут запускаться различными способами. В этой статье мы расскажем о всех способах запуска скрипта Bash в Linux. Подготовка Прежде чем вы сможете запустить ваш скрипт, вам нужно, чтобы ваш скрипт был исполняемым. Чтобы сделать исполняемый скрипт в Linux, используйте команду chmod и присвойте файлу права execute. Вы можете использовать двоичную или символическую запись, чтобы сделать ее исполняемой. $ chmod u+x script $ chmod 744 script Если вы не являетесь владельцем файла, вам необходимо убедиться, что вы принадлежите к правильной группе или что права доступа предоставлены «другой» группе в вашей системе. В некоторых дистрибутивах ваш файл будет выделен другим цветом, когда он исполняемый. Теперь, когда ваш файл исполняемый, давайте посмотрим, как можно легко запустить скрипт Bash. Запустить Bash скрипт из пути к скрипту Чтобы запустить Bash скрипт в Linux, просто укажите полный путь к скрипту и укажите аргументы, которые могут потребоваться для запуска Bash скрипта. $ /path/to/script <arg1> <arg2> ... <argn> В качестве примера, скажем, у вас есть Bash-скрипт, расположенный в вашем домашнем каталоге. Чтобы выполнить этот скрипт, вы можете указать полный путь к скрипту, который вы хотите запустить. # Абсолютный путь $ /home/user/script # Абсолютный путь с аргументами $ /home/user/script "john" "jack" "jim" Кроме того, вы можете указать относительный путь к скрипту Bash, который вы хотите запустить. # Относительный путь $ ./script # Относительный путь с аргументами $ ./script "john" "jack" "jim" Таким образом вы узнали, как легко запустить Bash-скрипт в своей системе. Запустить Bash скрипт, используя bash Чтобы запустить скрипт Bash в вашей системе, вы должны использовать команду bash и указать имя скрипта, который вы хотите выполнить, с необязательными аргументами. $ bash <script> Кроме того, вы можете использовать sh, если в вашем дистрибутиве установлена утилита sh. В качестве примера, скажем, вы хотите запустить скрипт Bash с именем script. Чтобы выполнить его с помощью утилиты bash, вы должны выполнить следующую команду $ bash script This is the output from your script! Выполнить скрипт Bash, используя sh, zsh, dash В зависимости от вашего дистрибутива, в вашей системе могут быть установлены другие утилиты оболочки. Bash - интерпретатор оболочки, установленный по умолчанию, но вы можете захотеть выполнить ваш скрипт с использованием других интерпретаторов. Чтобы проверить, установлен ли интерпретатор оболочки в вашей системе, используйте команду which и укажите нужный интерпретатор. $ which sh /usr/bin/sh $ which dash /usr/bin/dash Когда вы определили интерпретатор оболочки, который хотите использовать, просто вызовите его, чтобы легко запустить скрипт. Запуск скрипта Bash из любого места В некоторых случаях вы можете запускать скрипты Bash, где бы вы ни находились в вашей системе. Чтобы запустить скрипт Bash из любой точки вашей системы, вам нужно добавить свой скрипт в переменную среды PATH. $ export PATH="<path_to_script>:$PATH" Благодаря тому, что путь к скрипту добавлен в PATH, вы можете вызывать его там, где хотите в своей системе. $ script This is the output from script! Кроме того, вы можете изменить переменную среды PATH в вашем файле .bashrc и использовать команду source для обновления вашей текущей среды Bash. $ sudo nano ~/.bashrc export PATH="<path_to_script>:$PATH" Выйдите из файла и используйте команду source для файла bashrc для внесения изменений. $ source ~/.bashrc $ echo $PATH /home/user/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games Отлично! Теперь ваш скрипт может быть запущен из любой точки вашей системы. Запуск Bash скриптов из графического интерфейса Последний способ выполнения Bash скриптов - это использование графического интерфейса, в данном случае интерфейса GNOME. Чтобы запустить ваши скрипты с использованием GNOME, вы должны установить в проводнике Ask what to do для исполняемых файлов. Закройте это окно и дважды щелкните файл скрипта, который вы хотите выполнить. При двойном щелчке вам предлагаются различные варианты: вы можете выбрать запуск скрипта (в терминале или нет) или просто отобразить содержимое файла. В этом случае мы заинтересованы в запуске этого скрипта в терминале, поэтому нажмите на эту опцию. Успех! Ваш скрипт был успешно выполнен Заключение Из этого руководства вы узнали, как легко запускать Bash скрипты в своей системе, указав путь к скрипту или интерпретаторы, доступные на вашем хосте. Вы узнали, что можете сделать это еще проще, добавив путь к скрипту в переменную среды PATH или используя существующие функции в пользовательском интерфейсе GNOME.
img
Графический интерфейс администратора IP – АТС Asterisk – FreePBX, насчитывает огромное количество опций настройки, вариантов маршрутизации, подключения различного оборудования, начиная от телефонных аппаратов и заканчивая шлюзами. Задумались о внедрении Asterisk? В статье мы опишем базовую настройку тринадцатой версии FreePBX сразу после установки дистрибутива FreePBX. Пошаговое видео Подключение к FreePBX Чтобы подключиться к графическому интерфейсу FreePBX, нужно ввести IP – адрес Asterisk, который вы указали на этапе установки. Если вы забыли, какой IP – адрес указали, то подключите монитор и клавиатуру к вашему серверу, а затем введите данные для пользователя root, как показано ниже: При подключении, вам будет указан IP – адрес вашего сервера. Если версия вашего дистрибутива отличается, и вы не увидели аналогичного вывода, укажите следующую команду: [root@localhost ~]# ifconfig Вывод команды позволит вам увидеть все доступные интерфейсы и их IP – адреса. Активация и пароль администратора Подключившись к FreePBX 13 через интернет – браузер вам будет сразу предложено создать учетную запись администратора указав логин, пароль и адрес электронной почты администратора системы. После успешного создания, выберите на главной страницу пункт FreePBX Administration и укажите созданные параметры: Сразу после подключение, перейдите во вкладку Admin → System Admin и нажмите кнопку Activation Далее нажмите кнопку Activate После этого, следуйте инструкциям инсталлятора. Необходимо будет указать адрес электронной почты, пароль, номер телефона и местоположение вашего сервера. Настройки SIP Модуль SIP Settings это графическая визуализация настроек в файле /etc/asterisk/sip_nat.conf. Здесь, с помощью графического интерфейса можно настроить важнейшие параметры, такие как настройки NAT, внешний IP – адрес и настройки кодеков. Чтобы перейти к настройке нажмите на вкладку Settings, а далее Asterisk Sip Settings. Allow Anonymous inbound SIP Calls Данная опция позволяет разрешить, или запретить входящие звонки с неизвестных номеров. Мы советуем запрещать данный вид звонков, так как потенциально, разрешенные анонимные звонки могут стать лазейкой для злоумышленников. Local Networks Введите локальные (находящиеся внутри вашей сети) адреса подсетей, которым Asterisk будет доверять. Например, 192.168.2.0/255.255.255.0 RTP Ranges Укажите диапазон RTP портов. Рекомендуем все оставлять по умолчанию. Strict RTP Когда между двумя устройствами устанавливается RTP поток, то назначаются адреса источника и назначения. При включенной данной опции, все пакеты приходящие с другого IP – адреса буду отброшены. Мы рекомендуем не выключать данную опцию. Codecs Галочкой отметьте нужные кодеки. Положение кодеков указывает их приоритет. Например, на скриншоте ниже приоритет отдан g.711 u-law, затем g.711 a-law, gsm и так далее. Более подробно про телефонные кодеки использующиеся в VoIP сетях вы можете прочитать в наших прошлых статях. Настройка NAT в FreePBX В большинстве случаев, если администратор обнаруживает проблему односторонней слышимости, или то, что звонки обрываются спустя несколько секунд разговора – проблема в NAT. Вот что нужно сделать, чтобы избавиться от этой проблемы: в настройка модуля Asterisk SIP Settings , переходим во вкладку Chan SIP Settings и отмечаем следующее: NAT - yes IP Configuration - Static IP Override External IP - введите ваш внешний IP - адрес Reinvite Behavior - No Обязательно укажите в настройках Local Networks в предыдущей вкладке вашу локальную подсеть. Помимо этого, пробросьте на вашем маршрутизаторе порт 5060 и диапазон портов из параметра RTP Ranges, по умолчанию равный 10000-20000 Настройка сетевых параметров FreePBX Есть три важных пункта данной настройки: Настроить статический IP – адрес для сервера Настроить DNS Настроить временную зону Перейдем к настройке IP. Для этого, перейдите во вкладку Admin → System Admin→ Network Settings Здесь мы настраиваем следующие опции: Network Interface - сетевой интерфейс, то есть конкретная сетевая карта (NIC) IP Assignment - выберите Static чтобы настроить статический IP - адрес Static IP - введите IP – адрес сервера Netmask - маска сети Gateway - шлюз по умолчанию Start Automatically - старт при загрузке сервера Далее, переходим к настройке DNS. Для этого переходим в боковом меню навигации к пункту DNS. Здесь просто указываем адрес DNS сервера, например 8.8.8.8: Идем дальше. Теперь настроим временную зону, перейдя в боковом меню навигации в пункт Time Zone. В данном примере, наш сервер располагается в Москве: Настроим уведомления нашего сервера Asterisk, при таких сбоях, как например малое дисковое пространство или сбой в работе RAID массива: Производим настройку следующих опций: From Address - адрес электронной почты, который АТС будет указывать как адрес отправителя при формировании письма Storage Notifications - почта для уведомлений о проблемах с хранением данных (сбой RAID или нехватка места на дисках) Intrusion Detection Notifications IP - почта для уведомлений о вторжениях или попытках взлома сервера Конфигурация системы безопасности В Asterisk встроена система обнаружения вторжений – Fail2Ban. Для настройки системы перейдите во вкладку Admin → System Admin→ Intrusion Detection Система гибкая, и , порой реагирует когда не нужно :) Поэтому, советуем заранее вносить в Whitelist перечень нужных IP – адресов, таких как IP SIP – прокси, адреса шлюзов, например FXS. Порой, бывает так, что в бан попадает IP – адрес FXS шлюза, к которому подключены все офисные аналоговые телефоны. Status - мы рекомендуем всегда контролировать состояние Fail2Ban, чтобы статус был running Intrusion Detection - в данном пункте можно остановить и перезапустить службу. Ban Time - время в секундах, которое IP – адрес будет находиться в статусе блокировки Max Retry - количество попыток подключения к АТС, которое пользователь может осуществить в течение Find Time. Find Time - время, в течение которого у пользователя есть Max Retry попыток подключения к системе. E-mail: - адрес электронной почты, на которую будут отправляться уведомления о внесении нового IP – адреса в бан. Whitelist - список заранее внесенных IP – адресов, которым доверяет администратор. Настройка внутренних номеров Для настройки телефонных аппаратов и создания внутренних номеров перейдите во вкладку Applications → Extensions. Процесс создания внутренних номеров (Extension) мы описали в статье по ссылке ниже: Создание Extensions Настройка SIP - транка Подключение к провайдеру является важнейшим этапом в настройке вашего сервера IP - АТС Asterisk. Именно настройки провайдера, позволят нашим пользователям совершать исходящие, и принимать входящие вызовы. Для настройки SIP – транка перейдите во вкладку Connectivity → Trunks. Процесс создания SIP - транка подробно расписан в статье по ссылке ниже: Создание SIP - транка Настройка маршрутизации После того, как мы настроили внутренние номера и SIP – транки для подключения к провайдеру, нам необходимо настроить маршрутизацию вызова. В рамках данной настройки, мы будем учить наш сервер Asterisk как обрабатывать входящий и исходящие вызовы. Connectivity → Inbound/Outbound Routes. Данный процесс мы подробно описали в статье по ссылке ниже: Настройка маршрутизации вызовов Настройка голосового меню Так как наш Астериск будет установлен в небольшой компании, мы планируем сделать голосовое меню, в котором будем помогать пользователям быстрее связаться с нужным человеком. Настройка голосового меню (IVR), регламентируется в модуле IVR, консоль конфигурации которого располагается во вкладке Applications → IVR. Настройку вы можете найти по ссылке ниже:: Настройка IVR
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59