По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
pfSense это маршрутизатор и межсетевой экран с открытым исходным кодом на основе FreeBSD. PfSense подходит для малых и средних компаний и предоставляет недорогое специализированное решение межсетевого экрана и маршрутизатора для физических и виртуальных компьютерных сетей. /p> Программа, которую можно установить, как на физическую, так и на виртуальную машину, предоставляет широкий спектр функций, которые почти схожи с платными решениями. ПО так же поддерживает решения сторонних разработчиков такие, как Squid, Snort и другие, благодаря которым функционал еще больше расширяется. Плюсы использования межсетевого экрана pfSense: Не требует высокого уровня технических знаний; Имеет графический интерфейс, который облегчает конфигурирование, обновление и добавление плагинов; Низкая цена; Не привязана к конкретному вендору; Несколько вариантов развертывания включая физические сервера, компьютеры или виртуальные хосты. Стандартный набор функционала следующий: Межсетевой экран; Беспроводная точка доступа; Маршрутизатор; Точка доступа VPN; DHCP/DNS сервер; Балансировка нагрузки; Ограничение трафика (traffic shaping); Фильтрация веб контента. Установка pfSense pfSense сама по себе является операционной системой, и его нельзя установить поверх другой ОС. Нужно либо резервировать целиком физический компьютер, либо развертывать его как виртуальную машину в физической системе, такой как сервер. Виртуальное развертывание устраняет необходимость в дополнительном компьютере в сети. В этой статье мы покажем вам, как установить программное обеспечение pfSense на виртуальной машине на Ubuntu или CentOS. Для этого нужна машина, поддерживающая виртуализацию. Сначала мы создадим виртуальную машину, на которой потом установим pfSense. Можно использовать Virtual Box, Virtual Ware, KVM или любое другое совместимое ПО виртуализации. В этом руководстве мы будем работать с Virtual Box. Так как ПО устанавливается на Virtual Box, процесс установки pfSense одинаковый независимо от операционной системы хоста. Это означает, что вы будете выполнять те же действия на Ubuntu, CentOS и других дистрибутивах Linux, macOS или Windows. Установка pfSense on Ubuntu and CentOS через VirtualBox Предварительные требования: Физическая или виртуальная машина с установленной Ubuntu или CentOS; Пользователь с правом sudo; Программа виртуализации: Virtual Box, VM Ware, KVM, Virtuozzo, Xen и т.д. Две сетевые карты; Шаг 1: Скачиваем образ pfSense При создании и настройке виртуальной машины потребуется ISO образ pfSense, который рекомендуется загрузить с официального веб-сайта перед началом настройки виртуальной машины. Страница загрузки предлагает различные опции, и конкретный файл зависит от аппаратного обеспечения компьютера и процесса установки. Выберите архитектуру, тип файла установщика и соответствующее зеркало для загрузки; В нашем случае мы выберем архитектуру AMD64 (64 бит), установщик CD-образа (ISO) и зеркало в Нью-Йорке, США; Щелкните на Download и обратите внимание на расположение файла. Обычно файл бывает в формате gzip (gz), и его нужно будет разархивировать. Обратите внимание на путь к файлу, так как этот путь понадобится после настройки виртуального компьютера. Шаг 2: Создание и настройка виртуальной машины под pfSense На хостовой машине запустите Virtual Box (или любой другой гипервизор) и нажмите на New: Введите название ВМ, выберите тип ОС и версию. В этом руководстве выбрали следующие настройки: Название: pfsvm; Тип ОС: BSD; Версия: FreeBSD (64-бит); Нажимаем кнопку Next Далее нужно выбрать объем оперативной памяти. Чтобы выбрать рекомендуемый объем просто нажмите Next. Мы выбрали рекомендуемые 1Гб от доступных 4 Гб. Следующий шаг создание виртуального жесткого диска. Рекомендуется 16Гб, но это значение можно менять в зависимости от доступных ресурсов. Выбираем Create a virtual disk now, нажимаем Create. Тип файла виртуально диска выбираем VMDK и нажимаем Next. Выбираем Dynamically allocated storage и нажимаем Next. Задаем название виртуальному диску и размер. В нашем случае мы оставляем предлагаемое название и рекомендуемый размер и нажимаем Create. Далее программа создаст виртуальную машину и вернет нас на начальный экран гипервизора. Далее покажем, как настроить сеть, сетевые карты и выбор загрузочного диска. Для начала нужно создать виртуальную сеть. Шаг 3: Создание и настройка сети в VirtualBox В Virtual Box выбираем меню File пункт Preferences: Если уже имеется виртуальная сеть, как на скриншоте ниже, то можно использовать ее, в противном случае нужно создать новую сеть: Добавляем новую NAT сеть. Проверяем активна ли созданная сеть. Кнопка с шестерёнкой позволяет менять конфигурацию сети. Мы все оставим по умолчанию и нажимаем OK. Далее нужно создать внутреннюю сеть для виртуальной среды. Для этого в меню File выбираем Host Network Manager. Тут надо нажать на Create, а затем Properties чтобы задать IP адреса для внутренней локальной сети vboxnet0. Убедитесь, что DHCP включен и правильно настроен: Итак, мы создали нужные сети, теперь нужно настроить сетевые карты виртуальной машины. WAN адаптер будет подключен через NAT, LAN подключим к ранее созданному vboxnet0. Шаг 4: Настройка сетевых интерфейсов pfSense Откройте настройки виртуальной машины выбрав ее, а затем кликнув на шестеренку (Settings). Затем перейдите на Network. Убедитесь, что Adapter1 включен и из выпадающего списка Attached to: выберите NatNetwork. Так как у нас всего одна сеть, она установлена по умолчанию, но, если у вас таких сетей много, нужно выбрать ту, которую планировали использовать для pfSense. Adapter1 у нас будет интерфейсом, смотрящим в интернет. Затем настроим внутреннюю сеть. Для этого выбираем Adapter2, включаем его. Из выпадающего списка выбираем Host-only adapter и указываем название созданной сети: vboxnet0. Можно выбирать и другие опции в зависимости от ваших требований. Шаг 5: Настройка VM для загрузки с образа диска Для этого в Настройках виртуальной машины выбираем Storage. Щелкаем на иконке Empty CD. Кликнув на иконку диска со стрелочкой выбираем Choose Virtual Optical Disk File: Указываем путь к скачанному ранее образу pfSense и нажимаем OK: Шаг 6: Установка pfSense на виртуальную машину Выбираем созданную виртуальную машину и запускаем ее: Машина запуститься с образа диска. В этом руководстве все значения оставим по умолчанию их можно будет менять после установки. Принимаем условия лицензионного соглашения (как правило, не читая) Нажимаем OK для продолжения установки со значениями по умолчанию Выбираем раскладку клавиатуры. Нажимаем Enter для выбора значения по умолчанию (US) Выбираем метод разбиения диска. Оставляем рекомендуемое авто разбиение: Дождитесь конца установки: После завершения установки предложат изменить некоторые конфигурации вручную. Выбираем No: Установка завершена и для продолжения нужно перезагрузить систему. Но перед этим нужно извлечь диск. Для этого в меню Devices выбираем Remove disk from virtual drive. Щелкните Force Unmount: Затем, смело можно перезагружать машину. Шаг 7: Вход и настройка pfSense Если установка прошла успешно - после перезагрузки вы должны увидеть экран, как на скриншоте: Если так, уже можно приступать к настройке брандмауэра. Система дает три способа конфигурации: Через командную строку, выбирая номера пунктов настроек; Зайдя на веб-интерфейс с другого компьютера в той же сети; Зайдя на веб-интерфейс через интернет по WAN IP. Шаг 8: Вход на веб-интерфейс pfSense Настройка через графический веб-интерфейс обеспечивает наиболее простой способ. Для доступа к pfSense через веб-браузер необходим компьютер в той же сети. Откройте веб-браузер и введите IP-адрес, указанный при настройке локальной сети виртуальной среды. В нашем случае это 192.168.1.1 Введите имя пользователя admin и пароль pfSense и нажмите Sign in. Вы перейдете к мастеру, который поможет вам выполнить начальные настройки. Следуйте инструкциям и при необходимости измените их. Начальные настройки включают изменение пароля учетной записи администратора и конфигурации интерфейса LAN. После завершения нажмите кнопку Finish. После нажатия кнопки Finish необходимо принять соглашение некоммерческом использовании, после чего появится панель мониторинга состояния pfSense. После завершения начальной настройки можно получить доступ к меню и изменить почти все параметры, включая настройку интерфейсов, брандмауэр, VPN и другие функций.
img
В данной статье рассмотрим процесс установки графической оболочки на ОС CentOS 6, под названием Gnome. Главное, что нужно помнить - в погоне за различными свистелками и украшательствами GUI становятся всё тяжелее и тяжелее, на их обслуживание может уходить драгоценный ресурс процессора. Зачем может понадобится установка графического интерфейса, к примеру, на сервере вашей IP - АТС? Вариантов множество, к примеру – ради удобства (и привычки!), или же сервер с АТС у вас многофункционален и на нём требуется выполнять ещё какие-нибудь задачи, которые требуют графического интерфейса (к примеру, необходимость запуска софтфона). Почему мы выбрали Gnome, а не XFCE или Mate, к примеру? В первую очередь из-за относительной лёгкости установки, но на CentOS 7 точно будет предпочтительнее оболочка Mate. Процесс установки Подключаемся к серверу с помощью терминала, и первым шагом устанавливаем EPEL-репозиторий и затем устанавливаем групповой пакет X Window system, процесс установки займет некоторое время, групповой пакет достаточно «тяжёлый» - 81 Мб.: yum install epel-release - установка EPEL репозитория; yum groupinstall "X Window system" - установка группового пакета X Window System; В итоге вы должны увидеть список установленных пакетов и надпись Complete, как на скриншоте: Следующим шагом устанавливаем групповой пакет Desktop с помощью команды yum groupinstall -y "Desktop". Объем пакета – 83 Мб. В конце должна быть такая же надпись, как и в предыдущем шаге – Complete. Следующим шагом необходимо отредактировать файл /etc/inittab – в данном случае будем использовать Vim: vim /etc/inittab . Здесь параметр id:3:initdefault нужно поменять на id:5:initdefault: . Нужно сначала войти в режим редактирования с помощью нажатия на i, изменить нужный параметр, затем нажать Esc и ввести команду :x. Далее скачиваем шрифты с помощью команды yum groupinstall –y fonts . Запуск и переключение между режимами Далее можем запустить GUI с помощью команды startx - консоль может начать сыпать ошибками и предупреждениями, но рабочий стол должен успешно запуститься: Переключение между режимами: CTRL + ALT + F1 - переключение из командной строки в графический интерфейс ; CTRL + ALT + F1 - переключение из графического интерфейса в командную строку; Теперь вы сможете легко использовать обычные десктопные приложения на своём сервере, если такая необходимость возникнет :)
img
gRPC — это мощная платформа для работы с удаленными вызовами процедур (Remote Procedure Calls). RPC позволят писать код так, как будто он будет выполняться на локальном компьютере, даже если он может выполняться на другом компьютере. Что такое RPC? RPC — это форма взаимодействия клиент-сервер, в которой используется вызов функции, а не обычный вызов HTTP. Идея в том, что мы можем вызвать и выполнить функцию где-то на удаленной системе, как если бы это была локальная функция. Он использует IDL (Interface Definition Language - язык описания интерфейса) как форму контракта на вызываемые функции и тип данных. RPC — это протокол "запрос-ответ", т.е. он следует модели "клиент-сервер": Клиент делает запрос на выполнение процедуры на удаленном сервере. Как и при синхронном локальном вызове, клиент приостанавливается до тех пор, пока не будут возвращены результаты процедуры. Параметры процедуры передаются по сети на сторону сервера. Процедура выполняется на сервере и, наконец, результаты передаются обратно клиенту. gRPC воспроизводит этот архитектурный стиль взаимодействия клиент-сервер через вызовы функций. Таким образом, gRPC технически не является новой концепцией. Скорее, он был заимствован из этой старой техники и улучшен, что сделало ее очень популярной. Что такое gRPC? В 2015 году Google открыл исходный код своего проекта, который в конечном итоге получил название gRPC. Но что на самом деле означает буква «g» в gRPC? Многие люди могут предположить, что это для Google, потому что Google это сделал, но это не так. Google меняет значение «g» для каждой версии до такой степени, что они даже сделали README, чтобы перечислить все значения. С момента появления gRPC он приобрел довольно большую популярность, и многие компании используют его. Есть много причин, по которым gRPC так популярен: простая абстракция, он поддерживается во многих языках и он очень эффективный. И помимо всех вышеперечисленных причин, gRPC популярен потому, что очень популярны микросервисы и имеется большое количество взаимодействий между ними. Именно здесь gRPC помогает больше всего, предоставляя поддержку и возможности для решения типичных проблем, возникающих в таких ситуациях. А поскольку разные сервисы могут быть написаны на разных языках, gRPC поставляется с несколькими библиотеками для их поддержки. Архитектура gRPC Мы сказали что производительность gRPC очень высока, но что делает ее такой хорошей? Что делает gRPC намного лучше, чем RPC, если их дизайн очень похож? Вот несколько ключевых отличий, которые делают gRPC столь эффективным. HTTP/2 HTTP был с нами очень долго. Сейчас почти все серверные службы используют этот протокол. HTTP/1.1 долгое время оставался актуальным, затем в 2015 году, появился HTTP/2, который фактически заменил HTTP/1.1 как самый популярный транспортный протокол в Интернете. Если вы помните, что 2015 год был также годом выхода gRPC, и это было вовсе не совпадение. HTTP/2 также был создан Google для использования gRPC в его архитектуре. HTTP/2 — одна из важных причин, почему gRPC может работать так хорошо. И в следующем разделе вы поймете, почему. Мультиплексирование запроса/ответа В традиционном протоколе HTTP невозможно отправить несколько запросов или получить несколько ответов вместе в одном соединении. Для каждого из них необходимо создать новое соединение. Такой вид мультиплексирования запроса/ответа стал возможен в HTTP/2 благодаря введению нового уровня HTTP/2, называемого binary framing. Этот двоичный уровень инкапсулирует и кодирует данные. На этом уровне HTTP-запрос/ответ разбивается на кадры (они же фреймы). Фрейм заголовков (HEADERS frame) содержит типичную информацию заголовков HTTP, а фрейм данных (DATA frame) содержит полезные данные. Используя этот механизм, можно получить данные из нескольких запросов в одном соединении. Это позволяет получать полезные данные из нескольких запросов с одним и тем же заголовком, тем самым идентифицируя их как один запрос. Сжатие заголовка Вы могли столкнуться со многими случаями, когда заголовки HTTP даже больше, чем полезная нагрузка. И HTTP/2 имеет очень интересную стратегию под названием HPack для решения этой проблемы. Во-первых, все в HTTP/2 кодируется перед отправкой, включая заголовки. Это помогает повысить производительность, но это не самое важное в сжатии заголовков. HTTP/2 сопоставляет заголовок как на стороне клиента, так и на стороне сервера. Из этого HTTP/2 может узнать, содержит ли заголовок одно и то же значение, и отправляет значение заголовка только в том случае, если оно отличается от предыдущего заголовка. Как видно на картинке выше, запрос № 2 отправит только новый путь, так как другие значения точно такие же как и были. И да, это значительно сокращает размер полезной нагрузки и, в свою очередь, еще больше повышает производительность HTTP/2. Что такое Protocol Buffer (Protobuf)? Protobuf — это наиболее часто используемый IDL для gRPC. Здесь вы храните свои данные и функциональные контракты в виде так называемого прото-файла. По сути это протокол сериализации данных, такой как JSON или XML. Выглядит это так: message Person { required string name = 1; required int32 id = 2; optional string email = 3; } Так мы определили сообщение Person с полями name, id и email Поскольку это форма контракта то и клиент, и сервер должны иметь один и тот же прото-файл. Файл proto действует как промежуточный контракт для клиента, чтобы вызвать любые доступные функции с сервера. Protobuf также имеет собственные механизмы, в отличие от обычного REST API, который просто отправляет строки JSON в виде байтов. Эти механизмы позволяют значительно уменьшить полезную нагрузку и повысить производительность. Что еще может предложить gRPC? Метаданные Вместо обычного заголовка HTTP-запроса в gRPC есть то, что называется метаданными (Metadata). Метаданные — это тип данных «ключ-значение», которые можно установить как на стороне клиента, так и на стороне сервера. Заголовок может быть назначен со стороны клиента, в то время как серверы могут назначать заголовок и трейлеры, если они оба представлены в виде метаданных. Потоковая передача Потоковая передача (Streaming) — это одна из основных концепций gRPC, когда в одном запросе может выполняться несколько действий. Это стало возможным благодаря упомянутой ранее возможности мультиплексирования HTTP/2. Существует несколько видов потоковой передачи: Server Streaming RPC: когда клиент отправляет один запрос, а сервер может отправить несколько ответов. Например, когда клиент отправляет запрос на домашнюю страницу со списком из нескольких элементов, сервер может отправлять ответы по отдельности, позволяя клиенту использовать отложенную загрузку. Client Streaming RPC: когда клиент отправляет несколько запросов, а сервер отправляет обратно только один ответ. Например, zip/chunk, загруженный клиентом. Bidirectional Streaming RPC: клиент и сервер одновременно отправляют сообщения друг другу, не дожидаясь ответа. Перехватчики gRPC поддерживает использование перехватчиков для своего запроса/ответа. Они перехватывают сообщения и позволяют вам изменять их. Это звучит знакомо? Если вы работали с HTTP-процессами в REST API, перехватчики очень похожи на middleware (оно же промежуточное ПО). Библиотеки gRPC обычно поддерживают перехватчики и обеспечивают простую реализацию. Перехватчики обычно используются для: Изменения запроса/ответа перед передачей. Это можно использовать для предоставления обязательной информации перед отправкой на клиент/сервер. Позволяет вам манипулировать каждым вызовом функции, например, добавлять дополнительные логи для отслеживания времени отклика. Балансировки нагрузки Если вы еще не знакомы с балансировкой нагрузки, это механизм, который позволяет распределять клиентские запросы по нескольким серверам. Но балансировка нагрузки обычно делается на уровне прокси (например, nginx). Так причем это здесь? Дело в том, что gRPC поддерживает метод балансировки нагрузки клиентом. Он уже реализован в библиотеке Golang и может быть легко использован. Хотя это может показаться какой-то магией, это не так. Там есть что-то типа преобразователя DNS для получения списка IP-адресов и алгоритм балансировки нагрузки под капотом. Отмена вызова Клиенты gRPC могут отменить вызов gRPC, когда им больше не нужен ответ. Однако откат на стороне сервера невозможен. Эта функция особенно полезна для потоковой передачи на стороне сервера, когда может поступать несколько запросов к серверу. Библиотека gRPC оснащена шаблоном метода наблюдателя, чтобы узнать, отменен ли запрос, и позволить ей отменить несколько соответствующих запросов одновременно.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59