Инструкции

Установка сервера 1С на Ubuntu 22.04

Нужно открыть сайт: https://releases.1c.ru/total

Получение унифицированного дистрибутива «1С:Предприятия» для Linux облегчается, начиная с версии 8.3.20. В предыдущих выпусках все модули «1С» распространялись в виде пакетов .deb, и примеры установки более ранних версий «1С» рассмотрены в данном руководстве.

После того как дистрибутив загружен, с помощью утилиты WinSCP загрузите его на сервер. Убедитесь, что дистрибутив помещен в корневой каталог пользователя root.

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

Начните с установки библиотеки libenchant1c2a. Добавьте в файл /etc/apt/sources.list ссылку на репозиторий главной вселенной фокуса http://cz.archive.ubuntu.com/ubuntu.

Далее обновите список пакетов:

Переход в режим суперпользователя:

sudo -s

Обновить список пакетов:

sudo apt-get update

Установите libenchant1c2a:

apt install libenchant1c2a

Установите набор программ для чтения и редактирования:

sudo apt-get install imagemagick

Установите менеджер драйверов ODBC:

sudo apt-get install unixodbc

Установите набор шрифтов Microsoft:

sudo apt-get install ttf-mscorefonts-installer

sudo apt-get install libgsf-1-114

Распакуйте загруженный архив:

bash

tar -xzf server64_8_3_21_1484.tar.gz

Запустите установку дистрибутива:

bash

./setup-full-8.3.21.1484-x86_64.run —mode unattended —enable-components server,ws,server_admin

В данном сценарии мы устанавливаем кластер серверов 1С, сервер администрирования кластера и модули расширения веб-сервера в пакетном режиме.

Пакетный режим включается включением в командную строку программы установки команды —mode unattended. Команда —enable-components задает компоненты для установки, перечисленные через «,». Параметры этой команды могут включать:

Здесь приведены идентификаторы и описания различных компонентов в процессе установки:

additional_admin_functions: Установка утилиты административной консоли.

client_full: Установка толстого клиента и включение работы в конфигураторе.

client_thin: Установка тонкого клиента без возможности работы с файловым вариантом информационной базы.

client_thin_fib: Установить тонкий клиент, позволяющий работать с любым вариантом информационной базы.

config_storage_server: Установка сервера хранения конфигурации.

integrity_monitoring: Установка утилиты мониторинга целостности.

liberica_jre: Установить среду выполнения Liberica Java Runtime Environment (JRE).

server: Установить кластер серверов «1С:Предприятие».

server_admin: Установить сервер администрирования для кластера серверов «1С:Предприятие».

ws: Установить модули расширения веб-сервера.

Начиная с версии платформы 8.3.18, где на платформе Linux стала возможна установка нескольких версий одновременно, установщик больше не выполняет автоматическую регистрацию служб. Чтобы решить эту проблему, необходимо создать ссылки на сценарий запуска и файл конфигурации.

Начиная с версии 8.3.21, «1С» начала использовать подсистему systemd. В комплект поставки входит системный скрипт для запуска кластера серверов и сервера администрирования (ras), а также их конфигурационные файлы. Эти файлы обычно находятся в папке платформы, обычно по адресу /opt/1cv8/x86_64/platform_number.

Установите сервер 1С с помощью следующих команд:

Свяжите скрипт systemd:

bash

systemctl link /opt/1cv8/x86_64/8.3.21.1484/srv1cv8-8.3.21.1484@.service

Запустите сервер 1С:

bash

sudo systemctl start srv1cv8-8.3.21.1484@default.service

Добавить в автозапуск:

bash

sudo systemctl enable srv1cv8-8.3.21.1484@default.service

Проверить состояние сервера 1С:

bash

sudo systemctl status srv1cv8-8.3.21.1484@default.service

После этого установите PostgreSQL 14 или PostgreSQL 15 и приступайте к подключению лицензий и созданию баз данных 1С.

Для администрирования сервера используйте веб-консоль RUN, инструкция по установке и использованию которой доступна здесь. Установка сервера 1С выполняется следующими командами:

Подключите скрипт systemd:

bash

systemctl link /opt/1cv8/x86_64/8.3.21.1484/srv1cv8-8.3.21.1484@.service

Запустите сервер 1С:

bash

sudo systemctl start srv1cv8-8.3.21.1484@default.service

Добавить в автозапуск:

bash

sudo systemctl enable srv1cv8-8.3.21.1484@default.service

Проверить состояние сервера 1С:

bash

sudo systemctl status srv1cv8-8.3.21.1484@default.service

После этого установите PostgreSQL 14 или PostgreSQL 15 и приступайте к подключению лицензий и созданию баз данных 1С.

Для администрирования сервера используйте веб-консоль RUN, инструкции по установке и использованию которой доступны здесь.

Установка Apache на Ubuntu 22.04

Термин «Apache» обычно обозначает Apache HTTP Server, широко распространенный в мире сервер веб-приложений. Apache известен тем, что является бесплатным программным обеспечением с открытым исходным кодом.

Первоначально Apache HTTP Server был выпущен в 1995 году и разработан Робертом МакКулом в Университете штата Иллинойс (UIUC).

В этом руководстве мы рассмотрим процесс установки веб-сервера Apache на сервер Ubuntu 22.04 с помощью терминала командной строки.

Процесс установки Apache на Ubuntu 22.04

Прежде чем приступить к процессу установки, убедимся, что система находится в актуальном состоянии, выполнив следующую команду:

sudo apt update

Теперь приступим к установке пакета apache2:

sudo apt install apache2 -y

Убедитесь в правильности установки, проверив состояние службы Apache:

systemctl status apache2

Ожидаемый результат должен выглядеть следующим образом:

  • apache2.service — HTTP-сервер Apache

     Загружен: загружен (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)

     Активен: активен (работает) с Fri 2022-10-28 07:16:16 MSK; 9s ago

       Документы: https://httpd.apache.org/docs/2.4/

   Основной PID: 54163 (apache2)

      Задачи: 55 (лимит: 4580)

     Память: 4.8M

        CPU: 18 мс

     CGroup: /system.slice/apache2.service

             ├─54163 /usr/sbin/apache2 -k start

             ├─54165 /usr/sbin/apache2 -k start

             └─54166 /usr/sbin/apache2 -k start

Чтобы Apache2 запускался автоматически, добавьте его в автозагрузку:

sudo systemctl enable apache2

Настройка Firewall

Если UFW не установлен в системе, установите его с помощью команды:

sudo apt install ufw -y

Включите запуск UFW при загрузке:

sudo ufw enable

Учитывая, что Apache использует порты 80 (http) и 443 (https), необходимо обязательно предоставить доступ к этим портам. К счастью, Apache автоматически регистрирует несколько профилей во время установки, упрощая процесс настройки. Для подтверждения выполните следующую команду:

sudo ufw app list

В результате должны появиться следующие данные:

Доступные приложения:

Apache

Apache Full

Apache Secure

OpenSSH

Выберите профиль «Apache Full» и разрешите доступ:

sudo ufw allow ‘Apache Full’

Убедитесь, что правила брандмауэра действуют:

sudo ufw status

Ожидаемый результат:

Статус: активен

To Action From

— —— —-

Apache Full ALLOW Anywhere

Apache Full (v6) ALLOW Anywhere (v6)

Если UFW настроен правильно, то вы должны иметь возможность получить доступ к целевой странице Apache в своем веб-браузере, используя IP-адрес сервера:

http://your_server_ip

Как настроить VPN-сервер WireGuard на CentOS

WireGuard — это приложение, предназначенное для создания защищенной виртуальной частной сети (VPN) с удобным интерфейсом и простой настройкой. Используя надежные криптографические протоколы и алгоритмы, программа обеспечивает шифрование данных. Изначально разработанная для ядра Linux, программа WireGuard была расширена до совместимости с Windows, macOS, FreeBSD, iOS и Android.

Шаг 1. Установка сервера WireGuard на CentOS

Для начала получите последние обновления, выполнив следующие команды:

sudo yum update 

sudo dnf update

Для установки необходимых модулей ядра и инструментов WireGuard включите репозитории EPEL и Elrepo:

sudo dnf install epel-release elrepo-release -y

Убедитесь, что репозиторий PowerTools активен, поскольку пакеты EPEL могут полагаться на его компоненты:

sudo yum install ‘dnf-command(config-manager)’

sudo yum config-manager —set-enabled PowerTools

Перед установкой модуля ядра WireGuard активируйте его официальный репозиторий:

sudo yum copr enable jdoss/wireguard

Наконец, перейдите к установке WireGuard:

sudo yum install wireguard-dkms wireguard-tools

Шаг 2. Генерация закрытого и открытого ключей

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

Перед созданием пары ключей перейдите в каталог.

Перейдите в каталог WireGuard с помощью команды:

cd /etc/wireguard

Настройте разрешения для этого каталога:

umask 077

Для генерации пары ключей выполните следующую команду:

wg genkey | tee private.key | wg pubkey > public.key

Проверьте сгенерированные ключи с помощью команд:

ls -l privatekey publickey

sudo cat privatekey

sudo cat publickey

Запишите оба ключа, так как они потребуются в дальнейшем.

Шаг 3. Настройка серверной конфигурации

Для начала настройки сервера WireGuard перейдите в папку /etc/wireguard и создайте файл wg0.conf с помощью команды:

sudo nano /etc/wireguard/wg0.conf

Добавьте в конфигурационный файл последующие директивы, заполнив данные ключами, сгенерированными ранее:

[Interface]

PrivateKey = <contents-of-server-privatekey>

Address = 10.0.0.1/24

PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

ListenPort = 51820

[Peer]

PublicKey = <contents-of-client-publickey>

AllowedIPs = 10.0.0.0.2/32

Извлеките сгенерированный ранее закрытый ключ и вставьте его в поле PrivateKey.

Затем сгенерируйте пару ключей для клиента, скопируйте открытый ключ клиента и вставьте его в поле PublicKey. Для копирования значения ключа воспользуйтесь следующими командами:

sudo cat /etc/wireguard/public.key

sudo cat /etc/wireguard/private.key

Шаг 4. Настройка FireWall

По умолчанию брандмауэр ограничивает все соединения между внутренней сетью (wg0) и публичной сетью (eth0). Давайте изменим эту конфигурацию с помощью следующих команд:

sudo firewall-cmd —add-interface=wg0 —zone=internal

sudo firewall-cmd —permanent —zone=internal

Шаг 5. Запуск WireGuard и включение его при загрузке

Теперь сервер готов к запуску. Для запуска WireGuard воспользуйтесь командой wg-quick и укажите имя нового интерфейса:

wg-quick up wg0

Если конфигурация верна, то на экране появится следующее окно:

[WireGuard for CentOS — Screenshot].

Чтобы проверить состояние сервера WireGuard, введите:

wg show

Создание и удаление баз MySQL

В эпоху Больших Данных резко возросла потребность в эффективной работе с гетерогенными массивами данных, включающей такие задачи, как структурирование, хранение и использование информации. Хотя электронные таблицы и текстовые редакторы являются удобными инструментами, они зачастую не обеспечивают достаточной скорости выполнения задач и не обладают необходимой отказоустойчивостью для эффективного управления Большими Данными. В качестве решения для организации табличных данных появляется система управления базами данных (СУБД) MySQL, использующая декларативный подход к формированию запросов.

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

Создать или удалить

При работе с MySQL, особенно если он установлен как программа управления базами данных, а пользователь обладает правами администратора, первым шагом является получение доступа к системе MySQL. Это можно сделать, выполнив следующую команду:

mysql -u root -p -h localhost

Создайте базу данных командой ниже, затем нам нужно проверить, была ли она создана?

CREATE database product;

SHOW DATABASES;

Как видно, регистр букв может быть как прописным, так и строчным, хотя это различие относится только к синтаксическим командам. Создание нашей базы данных не представляет собой ничего сложного, как показано в таблице выше. Поясним синтаксис: «CREATE» служит командой для создания базы данных, «DATABASE» обозначает тип базы данных, а «product» — это просто метка для базы данных.

Для удаления нужная команда может быть выполнена следующим образом:

DROP DATABASE product;

SHOW DATABASES;

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

GRANT ALL on *.* to ‘your_user_name’@’domain_name’;

Вывод

В эпоху больших данных эффективная обработка, хранение, контроль, обновление и использование огромных наборов данных в режиме реального времени стали обязательными. Традиционным инструментам, таким как текстовые редакторы или базовые электронные таблицы, не хватает скорости и отказоустойчивости, необходимых для обработки обширных массивов данных. В ответ на эту проблему система управления базами данных MySQL (СУБД) стала надежным решением для управления таблицами.

MySQL использует декларативный подход к запросам данных, позволяя пользователям выражать свои требования на языке, напоминающем человеческую речь, чему способствует стандартизированный язык программирования SQL. Такой подход не только обеспечивает целостность и надежность данных, но также способствует удобству взаимодействия с обширными наборами данных и извлечения информации из них.

Настройка прокси-сервера

Прокси-сервер на Windows

Для конфигурации Windows начните процесс с поиска «Proxy» в строке поиска или перейдите в раздел Настройки → Сеть и Интернет → Proxy Server.

Для Linux

Чтобы настроить прокси-сервер в Linux, зайдите в раздел «Настройки» и выберите значок шестеренки рядом с пунктом «Сетевой прокси».

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

  1. Откройте файл /etc/environment для редактирования, выполнив команду sudo nano /etc/environment.
  2. Перейдите в конец файла и включите в него строки, аналогичные следующим:

Protocol_proxy name=»Protocol name://user:pass@proxy:port/».

  1. Для применения изменений перезагрузите систему.

Для MacOS

Чтобы настроить прокси-сервер на macOS, запустите Safari и перейдите в раздел «Параметры». После того, как вы открыли панель с выбором параметров конфигурации выберите Дополнения и начните изменение настроек.

Также можно получить доступ к настройкам прокси-сервера, нажав на значок Wi-Fi или Интернета, а затем выбрав пункт Настройки Wi-Fi.

Выберите текущую подключенную сеть и нажмите кнопку Подробности. Затем перейдите на вкладку Прокси-сервер. В этом разделе выберите нужный тип прокси-сервера и введите указанные IP-адрес и порт. При необходимости укажите учетные данные для входа в систему.

Настройка сервера прокси в браузере

Чтобы настроить прокси-сервера в браузере не нужно использовать иные методы. В Google Chrome -> Настройки, ввести в строке поиска «Proxy». Далее выбрать «Открыть настройки прокси-сервера для компьютера», после чего браузер направит вас к настройкам прокси для вашей операционной системы. 

В Mozilla Firefox в строке поиска в меню настроек введите «Настройки сети». Этот пункт откроет доступ к настройкам соединения.

Пользователи браузера Opera могут настроить параметры прокси-сервера, набрав в строке поиска «Proxy» и выбрав пункт «Открыть настройки прокси-сервера для компьютера». Для Microsoft Edge процесс аналогичен:

Аналогичный процесс и для браузера Microsoft Edge:

Настройка прокси-сервера для телефонов или планшетов на Android и iOS

Для начала вам необходимо получить доступ в панель управления настройками. После этого выберите пункт «Подключения»; название раздела может отличаться на Android в зависимости от оболочки, в то время как на iOS он обозначен как Wi-Fi. В ручном режиме установите настройки конфигурации прокси. 

Чтобы отключить прокси, просто выполните все действия в обратном порядке. Вернитесь либо к настройкам браузера, либо к системным настройкам. Если вы собираетесь настроить прокси на маршрутизаторе, то универсального решения не существует. Процесс будет зависеть от конкретной модели устройства, хотя общий алгоритм будет напоминать настройку на других системах.

Заключение

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

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

Как защитить корпоративную почту

RTP-запись для почтовых серверов

RTP/Pointer(англ. “указатель”) – ресурсная запись(или DNS-запись, с помощью которых можно внести служебную информацию о сервере), которая IP-адрес сервера связывает с доменом.

Оно защищает пользователей от спама. Почтовые службы проверяют, соответствует ли IP-адрес сервера настоящему домену компании. Все подозрительные письма отправляются в спам.

SPF-запись от фишинга

SPF(“Sender Policy Framework” с англ. “структура политики отправителя”) – ресурсная запись, которая находится внутри другой TXT-записи. Это код, точнее – список доверенных IP, с помощью которых можно отправлять письма от имени домена.

Злоумышленники могут создавать письма, которые кажутся отправленными от известных компаний и могут напоминать фирменные письма. Для создания видимости подлинности они могут использовать поддельные адреса электронной почты или логотипы компаний. Такие письма могут содержать ссылки, направляющие пользователей на поддельные сайты или автоматически заставляющие их загружать вредоносное ПО. Если пользователь переходит по этим ссылкам или загружает файлы, злоумышленник получает доступ к данным, которые затем может использовать в своих целях

Механизмы шифрования SMPT

SMPT(“Simple Mail Transfer Protocol” с англ. “простой протокол передачи почты”) – протокол, который отвечает за отправку писем.

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

Email-аутентификации DKIM

DKIM – цифровая подпись для писем. Благодаря ему можно снизить вероятность попадания письма вашей компании в спам и обезопасить себя от фишинга.

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

Технология DKIM использует ключи шифрования для обеспечения безопасности и подлинности электронных писем. Публичный ключ добавляется в DNS записи и известен всем серверам. Закрытый ключ известен только серверу отправителя. При отправке каждое письмо получает зашифрованную надпись с информацией о времени отправки и получателе. Эту информацию сервер получателя расшифровывает с помощью публичного ключа. Если ключи и цифровая подпись верные, письмо будет доставлено. Если обнаружена ошибка в ключе или подписи, письмо будет отмечено как спам.

Черные и белые списки адресов

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

Смена пароля раз в полгода

Каждый работник в компании должен иметь индивидуальный сложный пароль, который ему следует менять раз в полгода. Так риск получения злоумышленниками корпоративной почты станет меньше в несколько раз.

Отказ от бесплатных сервисов

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

  • Повышается доверие клиентов: наличие собственной почты положительно влияет на лояльность клиентов, увеличивает доверие и вероятность открытия письма.
  • Лучшая запоминаемость бренда: использование собственного домена в адресе электронной почты помогает лучше запомнить ваш бренд.
  • Снижается вероятность попадания в спам: отправка писем с собственной почты уменьшает шансы на то, что они будут отфильтрованы как спам.
  • Упрощение коммуникации с клиентами: вы можете настроить приветственные рассылки и полезные письма для знакомства с вашей компанией, что упрощает взаимодействие с клиентами.
  • Создание рабочей почтовой среды для сотрудников: использование собственной корпоративной почты позволяет сотрудникам разделять личную и рабочую переписку, что удобно и эффективно.

Обучение сотрудников правилам безопасности

Использование собственной корпоративной почты имеет множество преимуществ. Она повышает доверие клиентов, улучшает запоминаемость бренда и упрощает коммуникацию с клиентами. Кроме того, она уменьшает вероятность попадания в спам и создает рабочую почтовую среду для сотрудников. Однако, безопасность корпоративной почты зависит от каждого сотрудника. Поэтому важно проводить обучение и рассказывать о правилах безопасности, таких как не отвечать на подозрительные письма, не переходить по ссылкам внутри писем и не скачивать файлы из рассылок неизвестных отправителей, следить за обновлением антивируса, не использовать корпоративную почту на личных устройствах и не подключаться к публичным Wi-Fi-сетям при использовании корпоративной почты.

Установка NextCloud на Ubuntu 20.10

Nextcloud — это мощная платформа для синхронизации и обмена файлами. Ниже приводится пошаговое руководство по установке Nextcloud на Ubuntu 20.10.

Шаг 1: Обновление и модернизация системных пакетов

Перед началом работы убедитесь, что система обновлена:

sudo apt update

sudo apt upgrade

Шаг 2: Установка необходимых пакетов

Установите необходимые пакеты, включая Apache, MariaDB (или MySQL), PHP и другие необходимые инструменты:

sudo apt install apache2 mariadb-server libapache2-mod-php7.4 php7.4-gd php7.4-json php7.4-mysql php7.4-curl php7.4-mbstring php7.4-intl php7.4-imagick php7.4-xml php7.4-zip

Шаг 3: Настройка базы данных

Защитите установку MariaDB и установите пароль для пользователя root:

sudo mysql -u root -p

CREATE DATABASE nextcloud;

CREATE USER ‘nextclouduser’@’localhost’ IDENTIFIED BY ‘your_password’;

GRANT ALL PRIVILEGES ON nextcloud.* TO ‘nextclouduser’@’localhost’;

FLUSH PRIVILEGES;

EXIT;

Шаг 4: Загрузка и настройка Nextcloud

Загрузите последнюю версию Nextcloud с официального сайта:

cd /var/www/html

sudo wget https://download.nextcloud.com/server/releases/latest.zip

sudo unzip latest.zip

sudo chown -R www-data:www-data nextcloud

sudo rm latest.zip

Шаг 5: Настройка Apache

Создайте новый файл конфигурации виртуального хоста Apache для Nextcloud:

sudo nano /etc/apache2/sites-available/nextcloud.conf

Добавьте следующее содержимое:

<VirtualHost *:80>

    ServerAdmin admin@example.com

    DocumentRoot /var/www/html/nextcloud

    ServerName your_domain.com

    Alias /nextcloud «/var/www/html/nextcloud/»

    <Directory /var/www/html/nextcloud/>

        Options +FollowSymlinks

        AllowOverride All

        Require all granted

        <IfModule mod_dav.c>

            Dav off

        </IfModule>

        SetEnv HOME /var/www/html/nextcloud

        SetEnv HTTP_HOME /var/www/html/nextcloud

    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log

    CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined

</VirtualHost>

Включите виртуальный хост:

sudo a2ensite nextcloud.conf

Отключите сайт Apache по умолчанию:

sudo a2dissite 000-default.conf

Включите необходимые модули Apache:

sudo a2enmod rewrite headers env dir mime

Перезапустите Apache для применения изменений:

sudo systemctl restart apache2

Шаг 6: Завершение установки Nextcloud

Откройте веб-браузер и перейдите по адресу http://your_domain.com/nextcloud. Следуйте указаниям мастера установки:

  • Задайте имя пользователя и пароль администратора.
  • В качестве типа базы данных выберите MariaDB/MySQL.
  • В качестве пользователя базы данных используйте nextclouduser и пароль, заданный ранее.
  • В качестве хоста базы данных используйте localhost.

Шаг 7: Защита Nextcloud

Отредактируйте конфигурационный файл Nextcloud, чтобы добавить доверенный домен:

sudo nano /var/www/html/nextcloud/config/config.php

Добавьте свой домен в массив trusted_domains:

‘trusted_domains’ => 

  array (

    0 => ‘your_domain.com’,

  ),

Шаг 8: Завершение установки

Перейдите к настройкам Nextcloud, чтобы настроить уведомления по электронной почте, внешнее хранилище и другие параметры.

Как установить и настроить Active Directory 

Установка и настройка Active Directory (AD) предполагает создание централизованной системы аутентификации и управления для сетей на базе Windows. Здесь представлено полное пошаговое руководство по установке и настройке Active Directory.

Шаг 1: Подготовка среды

Убедитесь, что ваш сервер соответствует требованиям к аппаратному и программному обеспечению Windows Server, необходимому для работы AD. Установите статический IP-адрес для сервера, поскольку AD требует согласованной конфигурации сети.

Шаг 2: Установка доменных служб Active Directory

  1. Установите Windows Server на выбранную вами машину.
  2. После установки откройте Server Manager на панели задач.
  3. Нажмите на «Управление» в правом верхнем углу, затем выберите «Добавить роли и возможности».
  4. Пройдите через мастер, выбирая значения по умолчанию, пока не перейдете на страницу «Выбор ролей сервера».
  5. Отметьте «Active Directory Domain Services» и следуйте подсказкам для установки.

Шаг 3: Преобразование сервера в контроллер домена

  1. В диспетчере серверов нажмите «Перевести этот сервер в контроллер домена».
  2. Выберите «Добавить новый лес» и укажите имя корневого домена.
  3. Установите пароль режима восстановления служб каталогов (DSRM).
  4. Выберите функциональные уровни домена и леса.
  5. Настройте параметры DNS и следуйте подсказкам для завершения установки.

Шаг 4: Настройка параметров Active Directory

  1. Откройте «Active Directory Users and Computers» из Administrative Tools.
  2. Создайте организационные единицы (OU) для организации пользователей и компьютеров.
  3. Используйте «Active Directory Sites and Services» для настройки репликации и топологии сайтов.
  4. Откройте «Управление групповыми политиками» для создания и управления групповыми политиками.

Шаг 5: Дополнительная конфигурация

Убедитесь, что DNS правильно настроен, поскольку AD в значительной степени полагается на DNS для разрешения имен.

Установите Trust Relationships, если у вас несколько доменов или лесов.

Создайте план резервного копирования и восстановления Active Directory, включая резервное копирование состояния системы.

SSH туннель: как создать и использовать? 

SSH-туннель — это безопасный способ установления соединения между локальной и удаленной машинами, позволяющий направлять сетевой трафик по зашифрованному каналу. Это может быть полезно для безопасного доступа к удаленным службам, обхода сетевых ограничений или повышения уровня конфиденциальности. Ниже приводится пошаговое руководство по созданию и использованию туннеля SSH.

Шаг 1: Понимание туннелей SSH

Существует три типа туннелей SSH, которые можно использовать:

  1. Локальная переадресация портов. Перенаправляет трафик с локального порта на удаленный сервер через SSH-соединение. Применяется для доступа к службам удаленного сервера, которые в противном случае недоступны из-за ограничений брандмауэра или системы безопасности.
  2. Переадресация удаленного порта: Перенаправляет трафик с удаленного сервера на локальную машину через SSH-соединение. Применяется в тех случаях, когда необходимо открыть локальную службу для доступа к сети удаленного сервера.
  3. Динамическая переадресация портов (SSH SOCKS Proxy). Создает туннель динамической переадресации портов, позволяющий направлять весь сетевой трафик через удаленный сервер. Это может быть использовано для повышения уровня конфиденциальности или обхода сетевых ограничений.

Шаг 2: Создание туннеля SSH

Если у вас есть SSH-доступ к удаленному серверу, то вот как создать эти типы туннелей.

Локальная переадресация портов:

ssh -L local_port:remote_server:remote_port user@remote_server

Замените local_port, remote_server, remote_port и user на соответствующие значения.

Переадресация удаленного порта:

ssh -R remote_port:local_machine:local_port user@remote_server

Динамическая переадресация портов:

ssh -D local_port user@remote_server

Шаг 3: Использование туннеля SSH

После создания туннеля вы можете использовать его для безопасного доступа к удаленным сервисам или для маршрутизации сетевого трафика.

Локальная переадресация портов — откройте веб-браузер и перейдите по адресу http://localhost:local_port. Трафик будет безопасно туннелироваться на удаленный сервер и далее на указанный remote_port.

Переадресация удаленного порта — на удаленном сервере можно получить доступ к локальной службе, подключившись к http://localhost:remote_port.

Динамическая переадресация портов — настройте свои приложения (например, веб-браузеры) на использование SOCKS-прокси по адресу localhost:local_port. Это позволит направлять весь сетевой трафик через удаленный сервер.

Шаг 4: Закрытие SSH-туннеля

Чтобы закрыть SSH-туннель, просто прервите SSH-соединение, нажав Ctrl+C в терминале, в котором был создан туннель.

Создание и настройка .htaccess 

.htaccess — это конфигурационный файл, используемый веб-сервером Apache для управления различными настройками и поведением определенного каталога и его подкаталогов. Это мощный инструмент для настройки таких параметров, как переписывание URL, управление доступом и другими. Ниже приведено руководство по созданию и настройке файла .htaccess.

Шаг 1: Создание файла .htaccess

Откройте текстовый редактор, например Nano или Vim, или воспользуйтесь графическим редактором, например Gedit.

Создайте новый файл с именем .htaccess (обратите внимание на ведущую точку) в каталоге, где будут действовать его правила. Это может быть корневой каталог вашего сайта или любой подкаталог.

Шаг 2: Добавьте правила в .htaccess

Несколько распространенных вариантов использования файла .htaccess. 

  1. Включение переписывания URL:

Переписывание URL позволяет манипулировать URL-адресами и делать их более удобными для пользователей или SEO. Например, можно преобразовать example.com/page.php?id=123 в example.com/page/123.

Для включения функции перезаписи URL-адресов, необходимо включить модуль mod_rewrite в Apache и включить правила в файл .htaccess. Пример правила:

RewriteEngine On

RewriteRule ^page/([0-9]+)$ page.php?id=$1 [L]

  1. Блокировка доступа к файлам или каталогам:

С помощью .htaccess можно ограничить доступ к определенным файлам или каталогам. Например, чтобы запретить доступ к определенному файлу:

<Files «sensitive-file.txt»>

    Order allow,deny

    Deny from all

</Files>

  1. Настройка пользовательских страниц ошибок:

Вы можете создавать пользовательские страницы ошибок для различных кодов ошибок HTTP. Например, чтобы задать пользовательскую страницу ошибки 404 (Not Found):

ErrorDocument 404 /404.html

  1. Защита каталогов паролем:

С помощью .htaccess можно защитить каталоги паролем. Сначала создайте файл .htpasswd, содержащий комбинации имени пользователя и пароля. Затем добавьте в файл .htaccess следующее:

AuthType Basic

AuthName «Restricted Area»

AuthUserFile /path/to/.htpasswd

Require valid-user

Примечание: Обязательно замените /path/to/.htpasswd на реальный путь к файлу .htpasswd.

Шаг 3: Сохранить и протестировать

После добавления необходимых правил сохраните файл .htaccess. Убедитесь, что в имени файла нет дополнительных расширений.

Чтобы протестировать правила, зайдите на свой сайт и посмотрите, выполняется ли ожидаемое поведение. Если возникли ошибки, просмотрите файл .htaccess на предмет опечаток или неправильной конфигурации.

Установка Docker на Ubuntu 20.04 

Docker — это мощная платформа, позволяющая контейнеризировать приложения и последовательно развертывать их в различных средах. Приводим пошаговое руководство по установке Docker на Ubuntu 20.04.

Шаг 1: Обновление репозитория пакетов

Перед установкой Docker рекомендуется обновить репозиторий пакетов, чтобы убедиться в наличии актуальной информации о доступных пакетах. Откройте терминал на машине Ubuntu и выполните команды:

sudo apt update

Шаг 2: Установка необходимых зависимостей

Для работы Docker требуются некоторые предварительные компоненты, которые можно установить с помощью следующей команды:

sudo apt install apt-transport-https ca-certificates curl software-properties-common

Шаг 3: Добавление репозитория Docker

Docker предоставляет официальный репозиторий APT для Ubuntu. Чтобы добавить его, выполните команды:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg —dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo «deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable» | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Шаг 4: Установка Docker Engine

После добавления репозитория можно установить Docker:

sudo apt update

sudo apt install docker-ce

Шаг 5: Запуск и включение Docker

После установки Docker запустите службу Docker и включите ее запуск при загрузке:

sudo systemctl start docker

sudo systemctl enable docker

Шаг 6: Проверка установки Docker

Убедиться в успешной установке Docker можно, запустив простой контейнер hello-world:

sudo docker run hello-world

Если все настроено правильно, вы увидите вывод, свидетельствующий о корректной работе Docker.

Шаг 7: Управление Docker от имени не root-пользователя (необязательный пункт)

По умолчанию для работы Docker требуются привилегии root. Однако вы можете добавить своего пользователя в группу «docker», чтобы использовать Docker без sudo:

sudo usermod -aG docker $USER

Не забудьте выйти из системы и снова войти в нее или перезагрузить систему, чтобы изменения в группах вступили в силу.

Как настроить CDN

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

Зарегистрируйте учетную запись

Зарегистрируйте учетную запись у выбранного провайдера CDN. Укажите необходимую информацию и завершите процесс регистрации.

Настройте DNS

Для интеграции CDN с вашим сайтом необходимо настроить параметры DNS. Войдите в систему регистрации доменов или DNS-провайдера и создайте запись CNAME или псевдоним, указывающий на домен или конечную точку провайдера CDN.

Например, можно создать такую запись CNAME:

CNAME cdn.example.com YOUR_CDN_ENDPOINT

Замените cdn.example.com на желаемый поддомен CDN. Замените YOUR_CDN_ENDPOINT на домен или конечную точку CDN-провайдера.

Настройка SSL-сертификата (необязательно)

Если ваш сайт использует протокол HTTPS, вам необходимо установить SSL-сертификат для домена CDN. Многие провайдеры CDN предлагают интегрированные опции SSL. Следуйте инструкциям, предоставленным провайдером CDN, чтобы включить SSL для домена.

Настройка параметров CDN

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

Настройка сервера происхождения

Настройте сервер вашего сайта (исходный сервер) для работы с CDN. Обычно для этого необходимо разрешить доступ с IP-адресов провайдера CDN или настроить имя хоста сервера происхождения в настройках CDN. Инструкции по настройке CDN можно найти в документации или на ресурсах поддержки провайдера CDN.

Тестирование и мониторинг

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

Мониторинг и оптимизация

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

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

Как защититься от DDoS-атак

DDoS-атака — это попытка перегрузить целевой сервер или сетевую инфраструктуру путем направления на него огромного объема трафика или запросов. Подобный трафик генерируют большое количество ботнетов под управлением злоумышленников. Цель DDoS-атаки — нарушить работу атакуемого объекта и сделать его недоступным для пользователей.

Типы DDoS-атак

Объемные атаки направлены на насыщение пропускной способности сети цели за счет перегрузки ее большим объемом трафика.

TCP/IP-атаки используют уязвимости в стеке протоколов TCP/IP для исчерпания ресурсов сервера, таких как количество доступных соединений или вычислительная мощность.

Атаки на прикладном уровне направлены на конкретные приложения или сервисы, перегружая их легитимными запросами и истощая ресурсы сервера, такие как процессор или память.

Атаки на уровне протоколов используют слабые места в сетевых протоколах, таких как DNS, HTTP или NTP, чтобы нарушить работу служб объекта атаки.

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

Методы защиты

Чтобы защитить себя от DDoS-атак, реализуйте следующие меры.

Установите средства мониторинга сети для обнаружения аномальных моделей трафика и выявления потенциальных атак.

Используйте межсетевые экраны для фильтрации вредоносного трафика и блокировки подозрительных IP-адресов или диапазонов.

Разверните системы предотвращения вторжений (IPS), которые позволяют обнаруживать и предотвращать DDoS-атаки в режиме реального времени, анализируя сетевой трафик и его структуру.

Используйте службу CDN, которая позволяет распределять трафик по нескольким серверам для поглощения и смягчения последствий атак.

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

Настройте механизмы ограничения скорости, чтобы ограничить количество запросов в секунду с отдельных IP-адресов или подсетей.

Используйте маршрутизацию anycast для распределения входящего трафика между несколькими ЦОД или локациями — это затрудняет атаку на одну цель.

Рассмотрите услуги по защите от кибератак. Сторонние службы защиты, специализирующиеся на смягчении и поглощении DDoS-атак помогут до того, как они достигнут вашей инфраструктуры.

Что делать, если на сайт направлена DDoS-атака

Если вы обнаружили направленную на ваш сайт DDoS-атаку, выполните следующие действия:

  • Сохраняйте спокойствие — атаки направлены на нарушение работы сервисов, но, как правило, они не приводят к компрометации данных или систем.
  • Немедленно свяжитесь с хостинг-провайдером или сетевым администратором и сообщите им об атаке. Возможно, они смогут оказать помощь.
  • Задействуйте все имеющиеся у вас механизмы защиты от DDoS-атак.
  • Включите подробное протоколирование и мониторинг для сбора доказательств атаки. Эта информация может быть полезна при проведении расследования.
  • Если атака носит серьезный характер или является частью более масштабной киберпреступной кампании, следует привлечь местные правоохранительные органы.
  • Информируйте своих пользователей о ситуации, принимаемых мерах и возможном влиянии на работу сервисов. Регулярно обновляйте информацию по всем каналам связи.

Помните, что наиболее эффективная защита от DDoS-атак — наличие надежной и хорошо подготовленной стратегии защиты до начала атаки. Регулярно пересматривайте и обновляйте свои меры безопасности, чтобы опережать развивающиеся угрозы.

Traceroute — трассировка сети в Linux

Traceroute — это инструмент диагностики сети, используемый в Linux и других ОС для отслеживания маршрута прохождения сетевых пакетов от источника к месту назначения. Traceroute предоставляет информацию о промежуточных маршрутизаторах, через которые проходят пакеты, а также время прохождения в оба конца (RTT) для каждого маршрутизатора.

Как работает Traceroute? 

Traceroute работает путем отправки серии UDP- или ICMP-пакетов с постепенно увеличивающимся временем жизни (TTL). Каждому пакету намеренно присваивается низкое значение TTL, что приводит к истечению срока его действия в каждом маршрутизаторе на пути следования. Когда срок действия пакета истекает, маршрутизатор отправляет ответное сообщение ICMP Time Exceeded, что позволяет Traceroute определить IP-адрес маршрутизатора. 

Повторяя этот процесс с увеличивающимися значениями TTL, Traceroute постепенно строит карту сетевого маршрута и измеряет время прохождения маршрута (RTT) до каждого хопа.

Настройка Traceroute

Чтобы использовать Traceroute, откройте терминал и выполните следующую команду:

traceroute <destination>

Замените <destination> на IP-адрес или доменное имя цели, которую вы хотите отследить.

Полезные опции Traceroute:

-I: использовать пакеты ICMP Echo Request вместо UDP. Некоторые маршрутизаторы могут блокировать UDP-пакеты, поэтому ICMP может быть более надежным.

-T: использовать пакеты TCP SYN вместо UDP. Это может быть полезно для отслеживания пути к определенному TCP-порту.

-p <port>: указание пользовательского номера порта назначения.

-q <queries>: устанавливает количество запросов, отправляемых за один переход.

-m <max_hops>: устанавливает максимальное количество переходов для трассировки.

-w <timeout>: установка таймаута для каждого зонда.

-n: не преобразовывать имена хостов в IP-адреса.

-r: обходить обычные таблицы маршрутизации и отправлять пакеты непосредственно на целевой хост в локальной сети.

-4 или -6: Принудительное использование протокола IPv4 или IPv6 соответственно.

Дополнительные опции и подробности можно найти на странице руководства Traceroute, выполнив команду:

man traceroute

Traceroute в ОС Windows.

В операционной системе Windows инструмент, эквивалентный Traceroute, называется tracert. Он функционирует аналогичным образом, но синтаксис команды и доступные опции несколько отличаются. Чтобы воспользоваться tracert, откройте командную строку и выполните команду:

tracert <destination>

Замените <destination> на IP-адрес или доменное имя, которое вы хотите отследить.

Чтобы просмотреть доступные опции и синтаксис для tracert в Windows, выполните команду:

tracert /?

Теперь вы знаете, как использовать Traceroute для трассировки сети в Linux, включая установку, базовое использование и некоторые полезные опции.

Установка и использование OpenVAS (GVM) на Ubuntu 

OpenVAS (Open Vulnerability Assessment System) — это open-source инструмент сканирования, выявления и управления уязвимостями в компьютерных системах и сетях с открытым исходным кодом. OpenVAS помогает организациям оценить уровень защищенности своей ИТ-инфраструктуры и определить приоритетность мер по ее устранению.

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

Шаг 1: Обновление и модернизация.

Войдите на свой сервер Ubuntu, обновите списки пакетов и обновите существующие пакеты, выполнив следующие команды:

sudo apt update

sudo apt upgrade

Шаг 2: Установка необходимых зависимостей.

Установите необходимые зависимости для OpenVAS, выполнив следующую команду:

sudo apt install build-essential cmake pkg-config libglib2.0-dev libgpgme-dev libgnutls28-dev uuid-dev libssh-gcrypt-dev libhiredis-dev libxml2-dev libpcap-dev libunistring-dev

Шаг 3: Установка базы данных PostgreSQL.

Для хранения данных OpenVAS требуется база данных PostgreSQL. Команда для установки:

sudo apt install postgresql

В процессе установки вам будет предложено задать пароль для пользователя PostgreSQL `postgres`. Выберите надежный пароль и запомните его на будущее.

Шаг 4: Создание пользователя и базы данных PostgreSQL.

Переключитесь на пользователя `postgres` и откройте приглашение PostgreSQL, выполнив команду:

sudo -u postgres psql

Создайте нового пользователя для OpenVAS:

CREATE USER openvas WITH PASSWORD ‘your_password’;

Создайте новую базу данных для OpenVAS и предоставьте привилегии пользователю:

CREATE DATABASE openvas;

GRANT ALL PRIVILEGES ON DATABASE openvas TO openvas;

Выйдите из окна PostgreSQL:

\q

Шаг 5: Установка OpenVAS.

Добавьте репозиторий OpenVAS и обновите списки пакетов, выполнив следующие команды:

sudo add-apt-repository ppa:mrazavi/openvas

sudo apt update

Установите OpenVAS, выполнив команду:

sudo apt install gvm

В процессе установки вам будет предложено настроить OpenVAS. Выберите «да» в ответ на запрос о настройке сканера OpenVAS.

Шаг 6: Запуск OpenVAS.

Запустите службы OpenVAS, выполнив следующую команду:

sudo gvm-start

Шаг 7: Обновление каналов OpenVAS.

Обновите фиды OpenVAS, включая NVTs (тесты сетевых уязвимостей), выполнив команду:

sudo gvm-feed-update

Этот процесс может занять некоторое время, так как он загружает необходимые данные для сканирования уязвимостей.

Шаг 8: Доступ к веб-интерфейсу OpenVAS.

Откройте веб-браузер и введите следующий URL:

https://localhost:9392

Появится предупреждение о безопасности, поскольку SSL-сертификат по умолчанию является самоподписанным. Примите предупреждение и перейдите в веб-интерфейс.

Войдите в систему, используя стандартные учетные данные:

Имя пользователя: `admin`

Пароль: `admin`

Шаг 9: Изменение пароля администратора OpenVAS.

После входа в систему рекомендуется изменить стандартный пароль администратора. Перейдите в раздел «Администрирование» и выберите «Пользователи». Щелкните на значке карандаша рядом с пользователем «admin» и задайте новый пароль.

Теперь вы можете создавать цели, настраивать конфигурации сканирования, планировать сканирование и просматривать результаты сканирования с помощью веб-интерфейса OpenVAS.

Установка Nextcloud на дистрибутиве Ubuntu 22.04

В этой инструкции приведено пошаговое руководство по установке и настройке Nextcloud на Ubuntu 22.04, включая настройку MariaDB, Apache и обеспечение безопасности сервера с помощью SSL-сертификата.

Для установки и настройки Nextcloud на Ubuntu 22.04 вам понадобится:

  • сервер Ubuntu 22.04 с корневым доступом;
  • доменное имя, указывающее на IP-адрес вашего сервера;
  • базовые знания командной строки Linux.

Что такое Nextcloud? 

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

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

Шаг 1: Обновление и модернизация

Войдите на сервер Ubuntu, обновите списки пакетов и существующие пакеты, выполнив следующие команды:

sudo apt update

sudo apt upgrade

Шаг 2: Установка Apache

Установите веб-сервер Apache, выполнив следующую команду:

sudo apt install apache2

Шаг 3: Установить MariaDB

Установите систему управления реляционными базами данных MariaDB, выполнив следующую команду:

sudo apt install mariadb-server

В процессе установки вам будет предложено задать пароль root. Обязательно выберите надежный пароль и запомните его на будущее.

Шаг 4: Защита MariaDB

Для защиты установки MariaDB выполните следующую команду:

sudo mysql_secure_installation

Вам будет предложено ввести пароль root, заданный во время установки. Следуйте подсказкам на экране.

Шаг 5: Установка PHP и необходимых расширений.

Установите PHP и необходимые расширения для Nextcloud, выполнив команду:

sudo apt install php libapache2-mod-php php-mysql php-curl php-gd php-xml php-mbstring php-zip php-intl php-ldap php-apcu

Шаг 6: Настройка Apache.

Включите необходимые модули Apache и настройте параметры конфигурации:

sudo a2enmod rewrite

sudo a2enmod headers

sudo a2enmod env

sudo a2enmod dir

sudo a2enmod mime

sudo systemctl restart apache2

Шаг 7: Создание базы данных для Nextcloud.

Войдите в MariaDB от имени пользователя root:

sudo mysql -u root -p

Создайте новую базу данных для Nextcloud:

CREATE DATABASE nextcloud;

Создайте нового пользователя и предоставьте привилегии базе данных Nextcloud:

CREATE USER ‘nextclouduser’@’localhost’ IDENTIFIED BY ‘your_password’;

GRANT ALL PRIVILEGES ON nextcloud.* TO ‘nextclouduser’@’localhost’;

FLUSH PRIVILEGES;

EXIT;

Обязательно замените “your_password” на надежный пароль.

Шаг 8: Загрузка и установка Nextcloud.

Перейдите в корневой каталог веб-сервера Apache:

cd /var/www/html

Загрузите последнюю стабильную версию Nextcloud с помощью `wget`:

sudo wget https://download.nextcloud.com/server/releases/latest.tar.bz2

Распакуйте загруженный архив:

sudo tar -xvf latest.tar.bz2

Смените права собственности на извлеченные файлы на права пользователя Apache:

sudo chown -R www-data:www-data nextcloud

Шаг 9: Настройка виртуального хоста Apache.

Создайте новый конфигурационный файл Apache для Nextcloud:

sudo nano /etc/apache2/sites-available/nextcloud.conf

Добавьте в файл следующее содержимое:

<VirtualHost *:80>

    ServerAdmin admin@example.com

    DocumentRoot /var/www/html/nextcloud/

    ServerName your_domain

    Alias /nextcloud «/var/www/html/nextcloud/»

    <Directory /var/www/html/nextcloud/>

        Options +FollowSymlinks

        AllowOverride All

        Require all granted

        Satisfy Any

    </Directory>

    <IfModule mod_headers.c>

       Заголовок всегда устанавливается Strict-Transport-Security «max-age=15552000; includeSubDomains»

    </IfModule>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Замените “admin@example.com” на ваш адрес электронной почты, “your_domain” — на ваше реальное доменное имя.

Включите виртуальный хост:

sudo a2ensite nextcloud.conf

Отключите виртуальный хост Apache по умолчанию:

sudo a2dissite 000-default.conf

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

sudo systemctl restart apache2

Шаг 10: Доступ к Nextcloud и завершение установки.

Откройте веб-браузер и введите доменное имя вашего сервера (например, `http://your_domain/nextcloud`). Должна появиться страница установки Nextcloud.

Следуйте инструкциям на экране для завершения установки. При появлении запроса введите данные базы данных MariaDB:

Пользователь базы данных: `nextclouduser`.

Пароль базы данных, заданный на шаге 7.

Имя базы данных: `nextcloud`

Хост базы данных: `localhost`.

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

Как отключить SELinux на CentOS

Чтобы отключить SELinux в CentOS, вы можете выполнить следующие шаги:

  1. Откройте терминал на вашей системе CentOS.
  2. Отредактируйте файл конфигурации SELinux с помощью текстового редактора, например, nano или vi. Выполните следующую команду:

sudo nano /etc/selinux/config

  1. В конфигурационном файле найдите строку, определяющую параметр `SELINUX`. Она должна выглядеть следующим образом:

SELINUX=enforcing

  1. Измените значение параметра `SELINUX` на `disabled`:

SELINUX=disabled

  1. Сохраните изменения и выйдите из текстового редактора.
  2. Перезагрузите систему CentOS, чтобы изменения вступили в силу. Вы можете сделать это, выполнив следующую команду:

sudo reboot

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

Установка и запуск Nginx в Docker-контейнере на Ubuntu

Чтобы установить и запустить Nginx в контейнере Docker на Ubuntu, вы можете выполнить следующие шаги:

  1. Установите Docker на вашу систему Ubuntu. Откройте терминал и выполните следующие команды:

sudo apt update

sudo apt install docker.io

  1. Извлеките официальный образ Nginx из Docker Hub, выполнив следующую команду:

sudo docker pull nginx

  1. После загрузки образа вы можете запустить контейнер Docker с помощью следующей команды:

sudo docker run -d -p 80:80 nginx

Эта команда запускает контейнер в отсоединенном режиме (`-d`), сопоставляет порт 80 контейнера с портом 80 хоста (`-p 80:80`) и использует образ Nginx.

  1. Получите доступ к Nginx: После запуска контейнера вы можете получить доступ к Nginx, открыв веб-браузер и введя `http://localhost` или IP-адрес вашей системы Ubuntu. Если вы хотите обслуживать файлы из определенного каталога на вашей системе Ubuntu, вы можете назначить том с хоста на контейнер. Например, если файлы вашего сайта расположены в директории `/path/to/website`, вы можете изменить команду `docker run` следующим образом:

sudo docker run -d -p 80:80 -v /path/to/website:/usr/share/nginx/html nginx

Эта команда монтирует каталог `/path/to/website` на хосте в каталог `/usr/share/nginx/html` внутри контейнера, позволяя Nginx обслуживать файлы из этого места.

Теперь у вас есть Nginx, запущенный в контейнере Docker на Ubuntu. Не забывайте корректировать команды и пути в зависимости от ваших конкретных настроек и требований.

Как запустить веб-приложение на Nginx в Docker

Чтобы запустить веб-приложение на Nginx в Docker, необходимо выполнить следующие общие шаги:

  1. Убедитесь, что ваше веб-приложение готово и имеет все необходимые файлы и зависимости.
  2. Создайте Dockerfile в корневом каталоге вашего веб-приложения. Dockerfile содержит инструкции по созданию образа Docker.

# Use a base image

FROM nginx:latest

# Copy the application files to the container

COPY . /usr/share/nginx/html

# Expose the container port

EXPOSE 80

  1. Соберите образ Docker — откройте терминал, перейдите в каталог с Dockerfile и выполните команду для сборки образа Docker. Эта команда создаст образ с именем «my-webapp» на основе Dockerfile.

docker build -t my-webapp .

  1. Запустите контейнер Docker: После того как образ собран, вы можете запустить контейнер из него с помощью следующей команды.

docker run -d -p 80:80 my-webapp

Эта команда запускает контейнер в отсоединенном режиме (`-d`), сопоставляя порт 80 контейнера с портом 80 хоста (`-p 80:80`) и используя образ «my-webapp».

  1. Получите доступ к веб-приложению: После запуска контейнера вы можете получить доступ к вашему веб-приложению, открыв веб-браузер и введя `http://localhost` или соответствующий IP-адрес вашего хоста Docker.

Эти шаги предполагают, что ваше веб-приложение совместимо с Nginx и может обслуживаться как статические файлы. Не забудьте адаптировать шаги в соответствии с конкретными требованиями вашего веб-приложения.

OpenVPN vs WireGuard: какой VPN лучше?

OpenVPN и WireGuard — популярные протоколы VPN, у которых есть несколько ключевых различий. Решение о том, какой из них лучше, зависит от ваших конкретных потребностей и предпочтений.

OpenVPN

OpenVPN известен своими сильными функциями безопасности. Он использует библиотеку OpenSSL и поддерживает различные алгоритмы шифрования, включая AES, Blowfish и Camellia.

OpenVPN широко поддерживается и может использоваться на различных операционных системах, включая Windows, macOS, Linux и мобильные платформы. Он также хорошо работает с брандмауэрами и трансляцией сетевых адресов (NAT).

OpenVPN обладает высокой конфигурируемостью, позволяя вам настраивать параметры в соответствии с вашими требованиями. Он поддерживает как UDP (User Datagram Protocol), так и TCP (Transmission Control Protocol) для связи.

WireGuard

WireGuard — легкий и простой в использовании протокол. Он имеет более простую кодовую базу по сравнению с OpenVPN, что делает его более легким для аудита и потенциально более безопасным.

WireGuard разработан для обеспечения высокой эффективности и предлагает более высокую скорость по сравнению с OpenVPN. В нем используются современные криптографические протоколы, такие как ChaCha20 для шифрования и Curve25519 для обмена ключами, что обеспечивает преимущество в скорости.

WireGuard устанавливает соединения быстрее, что делает его подходящим для сценариев, где требуется частое установление соединения, например, при переключении между сетевыми интерфейсами.

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

Заключение

OpenVPN известен своей надежной безопасностью, совместимостью и гибкостью, в то время как WireGuard ставит во главу угла простоту, производительность и поддержку мобильных устройств. Если вам требуется проверенное решение с широкими возможностями конфигурирования, OpenVPN — это надежный выбор. С другой стороны, если вы отдаете предпочтение скорости, простоте и эффективному мобильному использованию, WireGuard может оказаться более предпочтительным вариантом.

Повышение безопасности контейнеров Docker

Контейнеры Docker — эффективное и масштабируемое решение для разработки и развертывания ПО. Обеспечение безопасности контейнерных приложений важно для защиты конфиденциальных данных и предотвращения несанкционированного доступа. Рассмотрим несколько основных методов повышения безопасности контейнеров Docker, которые позволят вам создавать надежные и безопасные контейнерные среды.

Используйте официальные образы и проверенные репозитории

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

Регулярно обновляйте образы контейнеров

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

Используйте сканирование уязвимостей образов контейнеров

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

Используйте безопасные базовые образы

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

Реализуйте принцип наименьших привилегий

При настройке разрешений контейнеров следуйте принципу наименьших привилегий. Убедитесь, что контейнеры имеют только необходимые разрешения и права доступа, необходимые для нормального функционирования. Ограничьте выполнение контейнеров от имени root и предоставляйте определенные привилегии только в случае крайней необходимости. Минимизировав привилегии своих контейнеров, вы сможете уменьшить потенциальное воздействие компрометации.

Включите Docker Content Trust

Docker Content Trust служит для обеспечения целостности и подлинности образа. DCT использует криптографические подписи для проверки подлинности образов и предотвращения выполнения измененных или поддельных образов. Включив DCT, вы можете гарантировать, что в вашей среде будут развернуты только подписанные и проверенные образы, что снижает риск вредоносного внедрения образов.

Изолируйте контейнеры с помощью правильной конфигурации сети

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

Используйте безопасный контейнерный хост

Поддержание безопасности узла контейнера и базовой среды имеет решающее значение для общей безопасности контейнера. Регулярно устанавливайте заплатки и обновляйте хост-систему для устранения любых уязвимостей безопасности. Для защиты хост-системы внедрите надежные средства контроля доступа, включая аутентификацию и авторизацию пользователей. Кроме того, рассмотрите возможность использования решений безопасности на уровне хоста, такие как системы обнаружения вторжений и контроля целостности файлов, для укрепления безопасности всей среды.

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

Как настроить VPN IPsec

Виртуальная частная сеть (VPN) часто используется для создания безопасного туннеля передачи данных между локальным компьютером и удаленным сервером. Существуют различные протоколы туннелирования VPN, и в этой статье мы сосредоточимся на настройке L2TP через IPSec для Windows.

L2TP, или Layer 2 Tunneling Protocol, сам по себе не обеспечивает надежного шифрования. Именно здесь в игру вступает IPSec, поскольку он обеспечивает надежное шифрование данных, которыми обмениваются удаленный сервер и локальная машина. Комбинируя L2TP и IPSec, можно создать безопасное и зашифрованное VPN-соединение, обеспечивающее конфиденциальность и целостность передаваемых данных.

Введение

Технология IPsec VPN позволяет создать туннель для передачи трафика из частных сетей через публичный интернет. Это достигается путем шифрования данных для обеспечения их безопасности. VPN на базе IPsec обычно используются для соединений site-to-site, соединяющих две географически разделенные сети, например, различные центры обработки данных, когда выделенные каналы связи нецелесообразны.

В этой статье мы продемонстрируем, как запустить виртуальную машину с IPsec VPN для маршрутизации трафика из облачной сети в удаленную точку подключения. В качестве примера мы будем использовать демон strongSwan. Во второй части мы рассмотрим пример схемы обхода отказа с двумя виртуальными машинами IPsec VPN, обеспечивая избыточность и высокую доступность.

Исходные данные 

  • виртуальная машина с Ubuntu 20.04
  • 1 порт имеет подключение к публичной сети (как default route)
  • 2 порт подключается к частной сети, в которой необходимо настроить маршрутизацию

Схема адресации

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

На стороне *** ваша виртуальная машина оснащена двумя портами, настроенными на IPsec. Первый порт имеет адрес 188.68.206.154 и подключен к публичной сети. Второй порт имеет адрес 192.168.10.10 и подключен к частной сети.

Настройка VPN с одним инстансом

Подключитесь к виртуальной машине по SSH и начните настройку. Первое, что нужно сделать, это установить демон strongSwan и включить его в автозагрузке:

sudo apt update

sudo apt install -y strongswan

sudo systemctl enable strongswan-starter

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

sudo cat << EOF > /etc/sysctl.d/99-vpn-ipsec.conf

net.ipv4.ip_forward = 1

net.ipv6.conf.all.forwarding = 1

net.ipv4.conf.all.accept_redirects = 0

net.ipv4.conf.all.send_redirects = 0

EOF

sudo sysctl -p /etc/sysctl.d/99-vpn-ipsec.conf

Создайте файл конфигурации IPsec для strongSwan:

sudo cat << EOF > /etc/ipsec.conf

config setup

        charondebug=»all»

        uniqueids=yes

        strictcrlpolicy=no

conn site-to-site-vpn

        type=tunnel

        authby=secret

        left=%defaultroute

        leftid=188.68.206.154

        leftsubnet=192.168.10.0/24

        right=51.250.46.166

        rightsubnet=192.168.20.0/24

        ike=aes256-sha2_256-modp1024!

        esp=aes256-sha2_256!

        keyingtries=0

        ikelifetime=1h

        lifetime=8h

        dpddelay=30

        dpdtimeout=120

        dpdaction=restart

        auto=start

EOF

Существуют важные параметры, которые требуют настройки в зависимости от конкретной среды и используемых адресов:

  • leftid: Это публичный IP-адрес самой виртуальной машины IPsec. В вашем случае это 188.68.206.154. Однако в другой среде этот адрес будет другим.
  • leftsubnet: Это относится к частной сети, созданной в облаке Selectel для других виртуальных машин. Это сеть, из которой вам нужен доступ к виртуальным машинам в другом облаке.
  • right: Это публичный IP-адрес удаленной виртуальной машины. В вашем случае это 51.250.46.166.
  • rightsubnet: Это удаленная частная сеть. Это сеть, созданная в другом облаке и используемая для виртуальных машин.

Для получения более подробной информации о других опциях рекомендуется обратиться к официальной документации, поскольку могут существовать дополнительные опции, специфичные для вашей установки.

Создайте файл, который будет содержать ключ для подключения:

sudo cat << EOF > /etc/ipsec.secrets

188.68.206.154 51.250.46.166 : PSK «<SECRET>»

EOF

SECRET — пароль, указанный с обеих сторон тоннеля, то есть на обеих виртуальных машинах VPN IPsec.

Перезагружаем IPsec демон и проверяем статус подключения:

sudo systemctl restart strongswan-starter
ipsec status

Настройка отказоустойчивой схемы

В отличие от предыдущей схемы, в этой конфигурации используются VIP-адреса в качестве IP-адреса шлюза в приватной сети и основного адреса для VPN-туннеля. Перемещение VIP-адресов между виртуальными машинами осуществляется при помощи протокола VRRP.

Для настройки отказоустойчивой схемы необходимо добавить еще одну виртуальную машину для VPN. Она будет называться vpn2, а первая виртуальная машина — vpn1.

Настройки по умолчанию установите также на 2 ВМ:

sudo apt update
sudo apt install -y strongswan
sudo systemctl enable strongswan-starter
sudo cat << EOF > /etc/sysctl.d/99-vpn-ipsec.conf
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
EOF
sudo sysctl -p /etc/sysctl.d/99-vpn-ipsec.conf

Прежде чем настраивать IPsec, требуется установить и сконфигурировать демон keepalived для использования протокола VRRP. Следуйте инструкциям ниже для установки этой службы:

sudo apt install -y keepalived

Для достижения требуемой VRRP-конфигурации:

  1. Убедитесь, что оба VIP-адреса находятся в одной группе и перемещаются одновременно между виртуальными машинами. Это гарантирует, что обе виртуальные машины могут выступать в качестве MASTER и BACKUP для обслуживания запросов.
  2. Когда статус инстанса изменяется с MASTER на BACKUP и обратно, необходимо включать и отключать IPsec соответственно. Это обеспечит построение VPN-туннеля только с одной виртуальной машины в определенный момент времени.

Теперь перейдем к настройке VRRP на виртуальной машине vpn2:

sudo cat << EOF > /usr/local/sbin/notify-ipsec.sh

#!/bin/bash

TYPE=\$1

NAME=\$2

STATE=\$3

case \$STATE in

        «MASTER») /usr/sbin/ipsec restart

                  ;;

        «BACKUP») /usr/sbin/ipsec stop

                  ;;

        «FAULT»)  /usr/sbin/ipsec stop

                  exit 0

                  ;;

        *)        /usr/bin/logger «ipsec unknown state»

                  exit 1

                  ;;

esac

EOF

sudo chmod a+x /usr/local/sbin/notify-ipsec.sh

sudo cat << EOF > /etc/keepalived/keepalived.conf

vrrp_sync_group G1 {

    group {

        EXT

        INT

    }

    notify «/usr/local/sbin/notify-ipsec.sh»

}

vrrp_instance INT {

    state BACKUP

    interface eth1

    virtual_router_id 11

    priority 25

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass <SECRET>

    }

    virtual_ipaddress {

        192.168.120.100/24

    }

    nopreempt

    garp_master_delay 1

}

vrrp_instance EXT {

    state BACKUP

    interface eth0

    virtual_router_id 22

    priority 25

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass <SECRET>

    }

    virtual_ipaddress {

        188.68.206.158/29

    }

    nopreempt

    garp_master_delay 1

}

EOF

Следующие команды выполняют две задачи:

  1. Создают файл /usr/local/sbin/notify-ipsec.sh, который представляет собой скрипт, вызываемый при изменении статуса VRRP. Этот скрипт будет отвечать за выключение и включение IPsec соответствующим образом.
  2. Создают файл конфигурации /etc/keepalived/keepalived.conf, который будет использоваться keepalived для настройки двух групп.

После создания этих файлов необходимо перезагрузить keepalived и включить его автоматически при запуске системы.

sudo systemctl restart keepalived

sudo systemctl enable keepalived

После выполнения этих шагов можно приступить к настройке IPsec на виртуальной машине vpn2. Новая конфигурация файла будет отличаться, так как теперь туннель должен быть установлен с использованием VIP-адреса, а не адреса, связанного с интерфейсом.

sudo cat << EOF > /etc/ipsec.conf

config setup

        charondebug=»all»

        uniqueids=yes

        strictcrlpolicy=no

conn site-to-site-vpn

        type=tunnel

        authby=secret

        left=%defaultroute

        leftid=188.68.206.158

        leftsubnet=192.168.10.0/24

        right=51.250.46.166

        rightsubnet=192.168.20.0/24

        ike=aes256-sha2_256-modp1024!

        esp=aes256-sha2_256!

        keyingtries=0

        ikelifetime=1h

        lifetime=8h

        dpddelay=30

        dpdtimeout=120

        dpdaction=restart

        auto=start

EOF

После завершения настройки vpn2 мы переходим к настройке vpn1. На первой виртуальной машине также необходимо запустить VRRP и внести некоторые изменения в конфигурацию IPsec.

Поскольку данная схема разработана для обеспечения отказоустойчивости, большинство конфигурационных файлов будут идентичны настройкам vpn2. Единственное отличие заключается в том, что роль VRRP на этом инстансе будет MASTER. Сначала устанавливаем keepalived, затем создаем конфигурацию и скрипт для контроля IPsec:

sudo apt install -y keepalived

sudo cat << EOF > /usr/local/sbin/notify-ipsec.sh

#!/bin/bash

TYPE=\$1

NAME=\$2

STATE=\$3

case \$STATE in

        «MASTER») /usr/sbin/ipsec restart

                  ;;

        «BACKUP») /usr/sbin/ipsec stop

                  ;;

        «FAULT»)  /usr/sbin/ipsec stop

                  exit 0

                  ;;

        *)        /usr/bin/logger «ipsec unknown state»

                  exit 1

                  ;;

esac

EOF

sudo chmod a+x /usr/local/sbin/notify-ipsec.sh

sudo cat << EOF > /etc/keepalived/keepalived.conf

vrrp_sync_group G1 {

    group {

        EXT

        INT

    }

    notify «/usr/local/sbin/notify-ipsec.sh»

}

vrrp_instance INT {

    state MASTER

    interface eth1

    virtual_router_id 11

    priority 25

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass <SECRET>

    }

    virtual_ipaddress {

        192.168.120.100/24

    }

    nopreempt

    garp_master_delay 1

}

vrrp_instance EXT {

    state MASTER

    interface eth0

    virtual_router_id 22

    priority 25

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass <SECRET>

    }

    virtual_ipaddress {

        188.68.206.158/29

    }

    nopreempt

    garp_master_delay 1

}

EOF

sudo systemctl enable keepalived

Важно, чтобы пароль <SECRET>, указанный в конфигурации, был одинаковым на обеих виртуальных машинах VPN.

Далее необходимо обновить конфигурацию IPsec и конфигурацию секрета IPsec. В этих конфигурационных файлах необходимо изменить основной адрес на VIP-адрес. Таким образом, конфигурация IPsec и конфигурация секрета будут идентичными на vpn1 и vpn2.

sudo cat << EOF > /etc/ipsec.conf

config setup

        charondebug=»all»

        uniqueids=yes

        strictcrlpolicy=no

conn site-to-site-vpn

        type=tunnel

        authby=secret

        left=%defaultroute

        leftid=188.68.206.158

        leftsubnet=192.168.10.0/24

        right=51.250.46.166

        rightsubnet=192.168.20.0/24

        ike=aes256-sha2_256-modp1024!

        esp=aes256-sha2_256!

        keyingtries=0

        ikelifetime=1h

        lifetime=8h

        dpddelay=30

        dpdtimeout=120

        dpdaction=restart

        auto=start

EOF

sudo cat << EOF > /etc/ipsec.secrets

188.68.206.158 51.250.46.166 : PSK «<SECRET>»

EOF

После внесения изменений необходимо перезагрузить keepalived и проверить статус IPsec:

sudo systemctl restart keepalived

ipsec status

Сброс пароля root в MySQL

Если вы забыли пароль корня базы данных MySQL или хотите повысить безопасность, изменив его, вы можете сбросить пароль. В данном руководстве мы объясним, как это сделать с помощью командной строки Windows.

Остановите сервер MySQL

  1. Для начала убедитесь, что вы вошли в операционную систему Windows с правами администратора.
  2. Одновременно нажмите клавишу Windows (Win) и клавишу R на клавиатуре, чтобы открыть окно «Выполнить».
  3. В открывшемся поле введите «services.msc», а затем нажмите кнопку OK.
  4. Перейдите по списку служб и найдите запись для MySQL. Щелкните на ней правой кнопкой мыши и выберите «Остановить» из появившихся вариантов.
  5. Помните, что эти инструкции предназначены для операционных систем Windows. Если вы используете другую операционную систему, шаги могут отличаться.

Чтобы изменить пароль с помощью текстового редактора:

  1. Чтобы открыть Блокнот, вы можете найти его в меню или воспользоваться следующим путем: Меню Пуск > Аксессуары Windows > Блокнот.
  2. Открыв Блокнот, создайте новый текстовый документ.
  3. В текстовом редакторе введите следующую строку: ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘NewPassword’;
  4. Убедитесь, что вы точно указали кавычки и точку с запятой. Замените ‘NewPassword’ на желаемый новый пароль.
  5. Чтобы сохранить файл, перейдите в меню ‘Файл’ и выберите ‘Сохранить как’. Выберите осмысленное имя для файла и сохраните его в корневом каталоге жесткого диска (C:).
  6. Обратите внимание, что изменять учетные данные пользователя следует с осторожностью, и для защиты вашей системы необходимо следовать надлежащим правилам безопасности.

Примечание: Если вы собираетесь менять пароль по сети, замените ‘localhost’ на соответствующее имя хоста.

Выполнив эти шаги и выполнив команду SQL, вы сможете изменить пароль, связанный с пользователем ‘root’ в MySQL.

Чтобы открыть командную строку от имени администратора:

  1. Чтобы запустить диспетчер задач, нажмите одновременно клавиши Ctrl+Shift+Esc.
  2. После появления окна диспетчера задач нажмите на пункт «Файл», расположенный в меню.
  3. Среди доступных вариантов выберите «Начать новую задачу».
  4. В диалоговом окне «Создание новой задачи» введите «cmd.exe» в предоставленное текстовое поле.
  5. Чтобы запустить командную строку с привилегиями администратора, убедитесь, что установлен флажок «Создать эту задачу с привилегиями администратора».
  6. Наконец, нажмите на кнопку «OK», чтобы запустить командную строку с повышенными привилегиями.

Чтобы перезапустить сервер MySQL с обновленным файлом конфигурации, выполните следующие действия:

  1. Используя командную строку, перейдите в каталог, где установлен MySQL. Это можно сделать, выполнив следующую команду:
  2. cd «C:\Program Files\MySQL\MySQL Server 8.0\bin».
  3. Затем введите следующую команду:
  4. mysqld —init-file=C:\FILE_Name.txt
  5. Эта команда инициализирует MySQL, используя указанный файл инициализации (замените «FILE_Name» на реальное имя вашего файла, расположенного по адресу C:).
  6. Теперь вы можете войти на ваш сервер MySQL как пользователь root, используя новый пароль, который вы установили. Чтобы убедиться, что все работает правильно, войдите на сервер MySQL еще раз с обновленным паролем. Если у вас есть какие-либо специфические параметры конфигурации, например, запуск MySQL с флагом «-defaults-file», обязательно включите их, если это необходимо.
  7. После того, как вы запустили MySQL и подтвердили смену пароля, вы можете смело удалить файл, расположенный по адресу C:\FILE_Name.txt.

Поздравляем! Вы успешно сбросили пароль root для базы данных MySQL.

Как создавать таблицы в MySQL

Существует два широко используемых типа баз данных: реляционные и нереляционные. Нереляционные базы данных имеют гибкую модель хранения, которая соответствует конкретным требованиям хранимых данных. Они могут хранить данные в различных форматах, таких как пары ключ-значение, файлы JSON или графы.

Реляционные базы данных, с другой стороны, структурированы вокруг таблиц с предопределенными отношениями между данными. Информация хранится в строках и столбцах, где каждая строка представляет определенный объект или сущность. Известными примерами реляционных баз данных являются Oracle DB, PostgreSQL, MySQL и другие.

  • USE database_name;

После того как вы указали базу данных, вы можете использовать оператор CREATE TABLE в MySQL для создания новой таблицы. Этот оператор позволяет определить различные атрибуты таблицы, такие как имена столбцов, типы данных, описания и ограничения. Синтаксис для создания таблицы следующий:

CREATE TABLE table_name (

column_name_one column_type_one,

column_name_two column_type_two,

…,

column_name_X column_type_X

);

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

Если вы хотите создать новую таблицу путем копирования структуры и данных из существующей таблицы, вы можете использовать оператор CREATE TABLE с предложением SELECT. Вот пример:

CREATE TABLE new_table_name [AS] SELECT * FROM original_table_name;

Этот оператор создает новую таблицу с именем new_table_name на основе структуры и данных original_table_name.

Чтобы переименовать существующую таблицу, можно воспользоваться командой RENAME TABLE. Вот пример:

RENAME TABLE old_table_name TO new_table_name;

Выполнив эту команду, вы переименуете таблицу с old_table_name на new_table_name.

Не забудьте при выполнении этих команд заменить имена базы данных database_name, table_name, column_name, column_type, new_table_name и old_table_name на ваши конкретные значения.

Надеюсь, это объяснение поможет вам понять процесс эффективного создания, копирования и переименования таблиц MySQL.

Дополнительная параметры таблиц

При описании таблицы базы данных иногда необходимо включать определенные параметры:

PRIMARY KEY

Этот параметр используется для определения столбца или набора столбцов в качестве первичного ключа. Первичный ключ служит для уникальной идентификации каждой записи в таблице.

AUTO_INCREMENT

При указании этого параметра для столбца значение этого столбца автоматически увеличивается с каждой новой записью, вставленной в таблицу. Только один столбец в таблице может быть обозначен как AUTO_INCREMENT.

UNIQUE

Этот параметр гарантирует, что все значения в столбце должны быть уникальными для всех записей. Он ограничивает наличие дубликатов значений в указанном столбце.

NOT NULL

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

DEFAULT

Этот параметр позволяет установить значение по умолчанию для столбца. Если новая запись будет вставлена без явного указания значения для столбца, будет использовано значение по умолчанию. Важно отметить, что этот параметр нельзя применять к некоторым типам данных, таким как BLOB, TEXT, GEOMETRY и JSON.

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

Названия таблиц и столбцов

При создании базы данных присвоение таблицам и столбцам осмысленных имен является важнейшим аспектом. Использование значимых имен гарантирует, что вы и другие разработчики сможете понять назначение и содержание каждого элемента даже по прошествии значительного количества времени. Рекомендуется избегать использования транслитераций или общих имен, таких как «table1» или «table2». Вместо этого выбирайте описательные и логичные имена, такие как «Пользователи», «Продажи» или «Звонки», которые точно передают характер данных, хранящихся в таблице.

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

Типы данных в MySQL 

Числа

MySQL предоставляет различные числовые типы данных для хранения различных видов чисел. Вот некоторые часто используемые числовые типы данных в MySQL:

  • INT:Этот тип представляет знаковые целые числа в диапазоне от -2147483648 до 2147483647. Он занимает 4 байта памяти.
  • DECIMAL: DECIMAL используется для хранения точных десятичных чисел, и количество занимаемых им байт зависит от выбранной точности. Он может принимать два параметра: DECIMAL(точность, масштаб). Этот тип рекомендуется для работы с валютными значениями и координатами.
  • TINYINT: TINYINT используется для хранения небольших целых чисел в диапазоне от -127 до 128. Он занимает 1 байт памяти. Атрибут UNSIGNED может быть добавлен, чтобы запретить отрицательные значения.
  • BOOL: BOOL используется для хранения одного двоичного значения 0 или 1, представляющего «ложь» или «истину» соответственно. Это также синоним BOOLEAN
  • FLOAT: FLOAT используется для хранения чисел с плавающей запятой и десятичной точкой. Он может содержать до 24 цифр после десятичной точки и занимает 4 байта памяти.

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

Время

В MySQL существуют различные временные типы данных:

DATE .

Тип данных DATE используется для хранения только дат в формате ‘YYYY-MM-DD’. Он позволяет хранить значения между 1000-01-01 и 9999-12-31. DATE обычно используется для хранения дат рождения, исторических дат и других дат, начиная с 11 века и далее. Он занимает 3 байта памяти.

TIME

Тип данных TIME используется для хранения только времени в формате ‘hh:mm:ss’. Он может хранить значения от ‘-838:59:59.00’ до ‘838:59:59.00’. TIME позволяет представлять время с точностью до секунды. Он также занимает 3 байта памяти.

DATETIME

Тип данных DATETIME объединяет дату и время. Он позволяет хранить значения от 1001 года до 9999 лет в формате ‘YYYY-ММ-DD чч:мм:сс’. DATETIME не зависит от часового пояса и может представлять время с точностью до секунды. Этот тип данных занимает 8 байт памяти.

TIMESTAMP

Тип данных TIMESTAMP служит для хранения информации о дате и времени в базе данных. Он представляет собой интервал времени между ‘1970-01-01 00:00:01’ и ‘2038-01-19 03:14:07’ и хранится как количество секунд (включая микросекунды). Фактическое значение TIMESTAMP зависит от настроек часового пояса сервера базы данных. Для хранения этого типа данных обычно требуется 4 байта памяти.

Бинарные типы данных

В MySQL существуют бинарные типы данных, которые позволяют хранить информацию в двоичном формате:

BLOB (Binary Large Object)

Тип данных BLOB используется для хранения больших объемов двоичных данных, таких как файлы, фотографии, документы, аудио- и видеоконтент. Он предназначен для хранения данных размером до 65 КБ.

LONGBLOB (длинный двоичный большой объект)

Тип данных LONGBLOB является эффективным выбором для хранения значительных объемов двоичных данных в базе данных. Он позволяет хранить данные размером до 4 ГБ. Обычно LONGBLOB используется для хранения больших файлов, фотографий, документов, а также аудио- и видеоматериалов.

Изменение структуры таблицы

Оператор ALTER TABLE предлагает удобный и эффективный подход к быстрому введению новых столбцов в таблицу. Он дает возможность добавлять несколько столбцов одновременно, каждый из которых имеет свои собственные типы данных.

ALTER TABLE Table_name

ADD COLUMN email VARCHAR(50),

ADD COLUMN age INT,

ADD COLUMN has_family BOOLEAN;

Эта команда ALTER TABLE эффективно модифицирует указанную таблицу, добавляя столбец email с максимальной длиной 50 символов, столбец age целочисленного типа и столбец has_family булевского типа для представления семейного положения сотрудников.

Удаление таблиц

Оператор DROP TABLE используется для удаления таблицы из базы данных. Это действие навсегда удаляет все данные, индексы, триггеры, ограничения и разрешения, связанные с указанной таблицей. Вот пример команды MySQL, которая может быть использована для удаления таблицы:

DROP TABLE Table_name;

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

Установка Hyper-V на Windows Server 2012

Введение

При развертывании облачных серверов под управлением Windows Server 2012 и попытке установить Hyper-V вы можете столкнуться с ошибкой, указывающей на то, что Hyper-V уже запущен. Эта ошибка возникает потому, что сам сервер развернут как виртуальная машина. Однако у этой проблемы есть решение: вы можете установить Hyper-V через консоль.

Зайдя в консоль виртуальной машины, вы можете перейти к ролям и функциям сервера и продолжить установку Hyper-V. Это позволит вам использовать возможности виртуализации внутри виртуальной машины, обеспечивая развертывание и управление дополнительными виртуальными машинами внутри нее.

Используя консоль, вы можете применить обходное решение для устранения ошибки и задействовать виртуализацию на облачном сервере Windows Server 2012 путем установки Hyper-V.

Установка Hyper-V с помощью консоли представляет собой эффективное решение для устранения ошибки и позволяет использовать возможности виртуализации на облачном сервере Windows Server 2012.

Установка Hyper-V в консоли

  1. Откройте консоль PowerShell.
  2. Включите Hyper-V с помощью команды:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

Установите инструменты администратора RSAT:

  • Install-WindowsFeature RSAT-Hyper-V-Tools -IncludeAllSubFeature

Далее установите службу кластера для поддержки кластера в Hyper-V:

  • Install-WindowsFeature RSAT-Clustering –IncludeAllSubFeature

Установите Multipath I/O, чтобы включить несколько путей к хранилищу:

  • Install-WindowsFeature Multipath-IO

Теперь сервер можно перезапустить. Введите команду:

Restart-Computer

Как правильно делать бэкапы

Как часто делать бэкапы

Конечно, идеальным вариантом является создание резервных копий как можно чаще. Однако важно понимать, что различные типы данных имеют разную степень обновляемости. Например, архив, в котором раз в месяц хранятся устаревшие документы, может не требовать ежедневного резервного копирования. С другой стороны, база данных крупного розничного магазина постоянно обновляется несколько раз в час. Следовательно, потеря информации даже за один день может иметь критические последствия.

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

Как делать бэкапы 

Автоматизировать процесс резервного копирования действительно рекомендуется. Существует множество программ, доступных для загрузки с надежных сайтов в Интернете. Эти программы позволяют настраивать параметры резервного копирования, в том числе параметры копирования, частоту резервного копирования и место хранения файлов резервных копий.

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

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

Типичные ошибки

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

  • В организациях, где резервное копирование выполняется вручную, полагаться на одного специалиста может быть рискованно. Если этот человек забудет выполнить своевременное копирование данных или покинет компанию без надлежащей документации, то найти и восстановить резервные копии в случае необходимости будет непросто.
  • Использование старых жестких дисков или устаревших систем резервного копирования может показаться экономически выгодным, особенно если резервные копии создаются нечасто. Однако при возникновении критических ситуаций, таких как аппаратные сбои, использование устаревших технологий может привести к потере данных или простою системы.
  • Некоторые владельцы бизнеса предпочитают держать свою инфраструктуру внутри компании, полагая, что она более безопасна. Однако облачные решения обеспечивают надежную защиту от внешних угроз, сбоев оборудования и других проблем. Облачные провайдеры обеспечивают своевременное резервное копирование и предлагают варианты восстановления системы в случае сбоев.
  • Хотя некоторые считают, что еженедельного резервного копирования достаточно, компаниям, регулярно генерирующим новые важные данные, может потребоваться более частое резервное копирование. В зависимости от потребностей бизнеса, для минимизации потери данных может потребоваться даже ежедневное резервное копирование.
  • Простого создания резервных копий недостаточно. Очень важно периодически тестировать процесс восстановления, чтобы убедиться в работоспособности резервных копий и возможности успешного восстановления данных в случае необходимости.

Правильно выполненное резервное копирование может уберечь компанию от значительных потерь. Если самостоятельное резервное копирование вызывает опасения, то делегирование этой задачи надежному облачному провайдеру может стать мудрым решением. Облачные сервисы, такие как Obit Cloud, предлагают безопасные резервные копии, хранящиеся в надежных центрах обработки данных TIER III, обеспечивая возможность полного восстановления данных в случае аварии.

Настройка NTP на сервере

Программа NTP (Network Time Protocol), как правило, уже присутствует в дистрибутивах Linux. Чтобы установить ее, вам понадобятся права root. Процесс установки NTP может немного отличаться в зависимости от используемого дистрибутива Linux:

  • sudo apt-get install ntp
  • sudo yum install ntp
  • sudo dnf install ntp

Для настройки NTP используется конфигурационный файл ntp.conf, который обычно находится в каталоге /etc/. Однако, при необходимости, файл можно расположить и в другом месте, указав путь к нему через параметр командной строки «ntpd -c». При запуске демон NTP читает этот файл для получения настроек. Демон может выполнять как роль сервера, так и роль клиента в сети. Чтобы внесенные изменения в файле конфигурации вступили в силу, необходимо перезапустить демона NTP. Конфигурационный файл ntp.conf соответствует стандартному формату и может быть изменен с помощью любого текстового редактора.

NTP использует эталонные серверы или одноранговые узлы для синхронизации локальных системных часов. В файл конфигурации можно добавить один или несколько одноранговых узлов с помощью параметра «server» и указать их адресы (доменные имена или IP-адреса).

При добавлении одноранговых узлов важно учитывать параметр «prefer», который указывает на предпочтительный узел. В случае, когда узлы равнозначны, предпочтительный узел будет выбран из списка. Обычно указывается только один предпочтительный узел.

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

Добавление файла «дрифта»

Для хранения информации о смещении частоты локального тактового генератора NTP использует файл «дрифта». В этом файле записывается значение смещения в миллионных долях (PPM). Служба NTP обновляет файл «дрифта» каждый час. Рекомендуется указать путь к файлу «дрифта», так как это позволяет NTP быстрее синхронизировать локальные часы при запуске системы. Обычно файл «дрифта» определяется следующим образом:

driftfile /var/lib/ntp/ntp.drift.

Таким образом, указывая путь к файлу «дрифта» в конфигурационном файле ntp.conf, вы позволяете NTP эффективнее корректировать и синхронизировать локальные системные часы при каждом запуске.

Указание файла статистики

Для указания каталога, в котором будут храниться файлы статистики, вы можете использовать команду «statsdir» в файле конфигурации NTP. Эти файлы статистики полезны для отслеживания производительности локальной синхронизации часов.

Чтобы задать путь к каталогу, где будут сохраняться файлы статистики, просто добавьте следующую строку в файле конфигурации ntp.conf:

statsdir <путь_каталога>

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

Включение и запуск службы NTP

Для включения и запуска NTP в системе Linux можно использовать команду systemctl, предоставляемую с правами root:

Чтобы включить службу NTP, выполните команду:

sudo systemctl enable ntpd

Для запуска службы NTP, используйте команду:

sudo systemctl start ntpd

Чтобы применить изменения в конфигурации NTP, требуется перезапустить службу. Вы можете сделать это с помощью команды:

sudo systemctl restart ntpd

Если вам потребуется остановить или отключить службу NTP, можно воспользоваться следующими командами:

sudo systemctl disable ntpd

sudo systemctl stop ntpd

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

Rclone — настройка и установка

Особенности системы

Прежде чем приступить к установке, позвольте мне познакомить вас с основными функциями и возможностями этого приложения. Программа абсолютно бесплатна, мультиплатформенная и имеет открытый исходный код. Одной из ее ключевых особенностей является возможность монтирования различных типов файловых систем, таких как внутренние, облачные или виртуальные. Кроме того, она позволяет обслуживать внутренние или удаленные файлы по таким протоколам, как SFTP, HTTP, FTP и другим. Является аналогом Rsync в области облачных технологий.

Rclone также обеспечивает безопасность и надежность ваших данных. Перед передачей файлов в облако они шифруются, а при восстановлении — расшифровываются. Программа выполняет синхронизацию данных локального облачного хранилища с удаленным или двумя разными облачными сервисами. Более того, она не копирует одинаковые файлы и не использует локальное дисковое пространство в процессе передачи данных между провайдерами. Он может перемещать файлы внутри облака и удалять локальные файлы после завершения проверки.

Если вы столкнулись с трудностями при загрузке больших файлов, программа предлагает возможность сжать их или разделить на более мелкие части. Кроме того, она проверяет целостность сохраненных данных, гарантируя, что ваши файлы останутся нетронутыми и не поврежденными. Наконец, программа поддерживает те же команды, что и Linux/Unix, что делает ее простой в использовании для тех, кто знаком с этими системами.

Установка Rclone в Linux

Если вы хотите установить Rclone на систему Linux или Unix, есть несколько вариантов. Вы можете использовать официальный сценарий установки, менеджер пакетов или установить из исходных текстов. Ниже приведены шаги для каждого метода:

Использование сценария установки

Сценарий установки можно использовать для установки как стандартной, так и бета-версии Rclone. Чтобы воспользоваться скриптом, откройте терминал и введите следующую команду:

  • $ curl https://rclone.org/install.sh | sudo bash

Сценарий проверит, установлен ли уже Rclone в системе. Если он установлен, скрипт завершит работу без его переустановки. Чтобы установить бета-версию, выполните следующую команду:

  • $ curl https://rclone.org/install.sh | sudo bash -s beta

Использование менеджера пакетов

Большинство дистрибутивов Linux включают Rclone в свои репозитории по умолчанию. Чтобы установить Rclone с помощью менеджера пакетов, используйте соответствующую команду для вашей системы:

  •     Arch Linux, EndeavourOS и Manjaro Linux: sudo pacman -S rclone
  •     Alpine Linux: sudo apk add rclone
  •     Debian, Ubuntu, Linux Mint, Pop OS: sudo apt install rclone
  •     Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux: sudo dnf install rclone

Для RHEL и подобных систем может потребоваться сначала включить репозиторий [EPEL] с помощью следующей команды:

  • $ sudo dnf install epel-release

Для OpenSUSE используйте следующую команду:

  • $ sudo zypper install rclone

Установка

Чтобы установить Rclone сначала убедитесь, что у вас установлен Go версии 1.4 или более поздней. Следуйте руководству по установке Go в Linux, затем введите следующую команду:

  • $ go get github.com/rclone/rclone

Чтобы установить бета-версию, используйте следующую команду:

  • $ go get github.com/rclone/rclone@master

Установка пакета моментальных снимков Rclone

Чтобы установить пакет моментальных снимков Rclone, выполните следующую команду:

  • $ sudo snap install rclone —classic

Проверка версии Rclone

После установки Rclone вы можете проверить установленную версию с помощью команды:

  • $ rclone version

В результате будет показан номер версии и некоторая информация о системе, такая как операционная система, версия ядра и версия Go.

Обращение за помощью

Чтобы получить помощь по работе с Rclone, используйте одну из следующих команд:

  • $ rclone help
  • $ rclone -h

Эти команды отобразят список доступных команд и краткое описание каждой из них. Чтобы получить справку по конкретной команде, добавьте название команды в конец команды, как показано ниже:

  • $ rclone mount help

Это выведет справку по команде «mount».

Создание и настройка шаблонов в Zabbix

Шаблоны в Zabbix позволяют вам синхронизировать мониторинг группы хостов.

Создание шаблонов

Найдите вкладку “Конфигурация” — “Шаблоны”. Кликните на “Создать шаблон”. Установите имя для шаблона. Установите группу хостов для работы с этим шаблоном.

Настройка содержимого шаблона

Перейдите во вкладку “Шаблоны”, чтобы провести более гибкую настройку группы. 

Для добавления какого-либо элемента, найдите его и отметьте галочкой, после кликните “Copy”. 

Определите место копирования.

Назначение шаблонов для узлов сети

После создания шаблона, вы можете установить его для единственного хоста или для группы. “Конфигурация” — “Хосты”, найдите устройство, которому вы хотите назначить шаблон. Кликните на имя. 

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

Настройка и создание триггеров в Zabbix

Триггер — абстрактная метка, с помощью которой происходит отслеживание определенных событий и метрик в системах. У триггера в программной системе Zabbix существуют несколько состояний:

  • ок — система (элемент системы) в норме 
  • проблема (возникает, когда триггер следит за изменениями метрики, срабатывает при превышении или понижении установленного порогового значения)
  • неизвестная внештатная ситуация — что-то произошло, система мониторинга не может классифицировать возникшую проблему

Инициализация триггеров

Найдите пункт “Конфигурация”, перейдите во вкладку “Хосты”, определите наблюдаемый узел, создайте триггер через вкладку “Триггер”. Заполните поля наиболее детальным и понятным образом, чтобы понимать релевантность триггера.

Поле “Выражение проблемы” отвечает за установку конкретного значения, которое впоследствии будет являться порогом изменения состояния триггера. Чтобы составить условие, функцию обработки события, откройте конструктор выражений. Выберите наблюдаемый элемент.

Нормальное состояние (ОК) означает стабильную работу элемента (или системы), без обработки триггеров. Вы можете принудительно отменить автоматическое изменения триггера в состояние OK, для этого выберите значение “Нет”.

У вас также есть возможность настроить режим генерации событий. Вы можете настроить оповещение о проблеме 1 раз или при каждом изменении состояния.

Опция “Ручное закрытие” позволит вам в ручном режиме управлять состояниями триггера. После того, как вы добавили триггер, перейдите в меню “Конфигурации”, после найдите пункт “Узлы сети”, далее “Триггеры”.

Установка Zabbix (Ubuntu 20.04 Vers.)

Zabbix — это программная система, предназначенная для мониторинга различных ИТ-инфраструктур, включая облачные сервисы, обычные сети и виртуальные частные серверы (VPS). Это решение с открытым исходным кодом является бесплатным и может использоваться для мониторинга широкого спектра параметров, таких как загрузка процессора, доступное место на жестком диске, ping, доступность хоста и загрузка сети. Оно также способно генерировать графики и отправлять предупреждения по результатам мониторинга.

Мониторинг Zabbix может быть реализован различными методами, включая использование программы-агента или задействование существующих ресурсов системы или устройства, таких как ICMP ping или SNMP. Это универсальная система, которая может отслеживать широкий спектр параметров, включая загрузку процессора, пространство на жестком диске, загрузку сети и доступность хоста. Zabbix также может строить графики данных и отправлять предупреждения для уведомления администраторов о потенциальных проблемах.

В настоящее время Zabbix обычно развертывается с использованием MySQL в качестве базы данных и Nginx в качестве веб-сервера на Ubuntu версии 20.04. Однако существуют и альтернативные варианты базы данных и веб-сервера, в зависимости от конкретных потребностей и предпочтений пользователя.

Подготовка 

Для установки и настройки мониторинга Zabbix вам понадобится сервер под управлением Ubuntu 20.04 с доступом root. Многие команды в процессе установки требуют root-доступа, поэтому убедитесь, что вы вошли в систему как root или используете sudo. Хотя Zabbix включен в стандартные репозитории Ubuntu, это не самая последняя версия. К счастью, у Zabbix есть собственный репозиторий, который можно подключить с помощью одной команды:

wget dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb

dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb

Установите также следующий пакет программ:

apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts

База данных

Скачайте MySQL:

apt install mysql-server

Запустите:

systemctl start mysql.service

Войдите как суперпользователь:

  • mysql -uroot -p

Добавьте базу, установите пароль:

  • create database zabbix character set utf8mb4 collate utf8mb4_bin;

Создайте аккаунт для работы с базой данных:

  • create user zabbix@localhost identified by ‘password’;

Инициализируйте права доступа, чтобы соединить Zabbix и БД:

  • grant all privileges on zabbix.* to zabbix@localhost;

Разрешите подстановку шаблона базы данных:

  • set global log_bin_trust_function_creators = 1;
  • quit;

Далее, скачайте шаблон конфигурации, введите пароль, который установили ранее

  • zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql —default-character-set=utf8mb4 -uzabbix -p zabbix

Отключите режим логирования:

  • mysql -uroot -p
  • set global log_bin_trust_function_creators = 0;
  • quit;

Необходимо отредактировать содержимое файла конфигурации:

  • nano /etc/zabbix/zabbix_server.conf

Раскомментируйте “DBPassword=”, установите свой пароль. Чтобы быстро найти нужную строку, воспользуйтесь комбинацией Ctrl + W. Сохраните изменения.

Web-сервер: настройка

Измените файл /etc/zabbix/nginx.conf. Раскомментируйте строки с listen и server_name. listen 8080 — управляющий порт с интерфейсом Zabbix, его изменять не стоит, строку с server_name модифицируйте, впишите IP-адрес сервера на место с example.com.

Команда, позволяющая использовать интерфейс локали:

  • locale -a

Откройте файл по пути /etc/locale.gen, раскомментируйте строку с ru_RU.UTF8

sudo nano */etc/locale.gen*

Сохраните ваши изменения, обновите локали:

  • sudo locale-gen

Перезагрузите Zabbix

  • systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm

Установите автозапуск:

  • systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm

Проверь состояние системы

Время и имя выберите любое удобное

Перепроверьте состояние системы

Осуществите вход, используя установленные данные учетной записи:

Username: Admin

Password: zabbix

Как защитить сервер: 6 практических методов

Для обеспечения безопасности сервера всегда требуется сочетание различных мер. Эти меры можно условно разделить на следующие категории:

  • Защита каналов связи, используемых для администрирования и использования системы.
  • Реализация нескольких уровней безопасности для системы.
  • Контроль доступа и разделение ресурсов для инфраструктуры.
  • Мониторинг и аудит систем.
  • Регулярное резервное копирование.
  • Своевременное обновление (или откат) программного обеспечения и антивирусной защиты для серверов.

Давайте теперь рассмотрим 6 практических методов, которые помогут достичь высокого уровня защиты от потенциального злоумышленника.

Управление доступом

Управление доступом — процесс, требующий ответственного отношения. Главный принцип заключается в распределении информации между группами пользователей таким образом, чтобы информация была доступна только в соответствии с необходимостью получить доступ к этой информации.

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

Для работы в unix-системах рекомендуется использование sudo. Ниже приведены две полезные отметки по умолчанию, которые помогут отслеживать, кто и что делает через sudo.

В базовом случае в журнал записывается в syslog. Следующая настройка (в файле /etc/sudoers) для удобства накапливает записи в отдельном файле:

  • По умолчанию log_host, log_year, logfile=»/var/log/sudo.log».

Этот параметр указывает sudo записывать текст сессии (журналы команд, сообщения stdin, stderr, stdout и tty/pty) в каталог /var/log/sudo-io:

  • По умолчанию log_host, log_year, logfile=»/var/log/sudo.log».

Более подробная информация о работе с файлом sudoers представлена в отдельной статье.

Доступ на основе мандатов 

Следующий совет относится к системам Linux. Администраторы систем Linux полагаются исключительно на внешние механизмы контроля доступа, которые являются базовыми и всегда активными. Однако многие дистрибутивы (такие как AppArmor в Ubuntu и SELinux в системах на базе RHEL) имеют обязательные механизмы контроля доступа. У системного администратора возникают сложности управления внутренними опциями безопасности, потому что порой для этого требуются многочисленные службы ОС и инициализация сложных демон-процессов.

Удаленное управление операционной системой

При удаленном администрировании ОС приоритетная задача — интегрирования и использование безопасных протоколов. В ОС Windows используется RDP, в Linux — SSH, данные протоколы обеспечивают вполне безопасное соединение в сети. Для создания безопасности в условиях корпоративной инфраструктуры этого недостаточно.

Устанавливайте соединение по RDP с паролем. Это можно сделать через «Локальные политики безопасности» и «Учетные записи: Разрешить удаленные подключения к этому компьютеру». Транспортный протокол TLS поможет вам поддержать конфиденциальность соединения, если вы не работаете в частной сети (VPN).

Для SSH соединения по классике необходим пароль. Чтобы аутентифицировать соединение, вы вводите пароль, подтверждающий доверенность. Лучше использовать ассиметричное шифрование (пары ключей). Чтобы инициализировать соединения с помощью ключей:

Сгенерируйте пару ключей на локальной машине:

  • ssh-keygen -t rsa

Поместите ключи на удаленную машину:

  • ssh-copy-id username@address

Если вы предпочитаете не использовать ключи, подумайте об использовании Fail2ban, программы, которая ограничивает количество попыток ввода пароля и блокирует IP-адреса. Также рекомендуется изменить порты по умолчанию, например, 22/tcp для SSH и 3389/tcp для RDP.

Управление файрволом

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

Брандмауэр, также известный как система защиты периметра, контролирует доступ к компонентам инфраструктуры на основе заранее определенных правил. Он пропускает только тот трафик, который соответствует этим правилам, и блокирует весь остальной трафик. В Linux брандмауэр является частью ядра (netfilter), но для его работы в пространстве пользователя необходимо установить внешний модуль, такой как nftables, iptables, ufw или firewalld.

Основная задача при настройке брандмауэра — закрыть неиспользуемые порты и открыть только те, которые требуют внешнего доступа, например, порты 80 (http) и 443 (https) для веб-сервера. Хотя открытый порт сам по себе не представляет угрозы безопасности, он может стать уязвимым местом, если на нем работает уязвимое программное обеспечение. Поэтому лучше удалить ненужные порты.

Брандмауэры также помогают сегментировать инфраструктуру и контролировать трафик между сегментами. Если вы используете публичные сервисы, рекомендуется изолировать их от внутренних ресурсов в DMZ. Кроме того, следует обратить внимание на системы обнаружения и предотвращения вторжений (IDS/IPS), которые блокируют угрозы безопасности и пропускают весь остальной трафик.

TLS и инфраструктура открытых ключей

Протоколы передачи данных, такие как HTTP, FTP и SMTP, были разработаны во времена, когда сети использовались в основном для передачи информации между военными и научными учреждениями. Эти протоколы представляют данные в формате обычного текста, что не обеспечивает достаточной безопасности при передаче конфиденциальной информации.

Для обеспечения безопасности веб-сайтов, внутренних панелей управления и электронной почты рекомендуется использовать протокол Transport Layer Security (TLS). Этот протокол был разработан для защиты передачи данных по незащищенным сетям.

TLS обеспечивает конфиденциальность, целостность и аутентификацию передаваемых данных. Аутентификация достигается с помощью цифровых подписей и инфраструктуры открытых ключей (PKI).

Для аутентификации сервера TLS использует SSL-сертификат, подписанный центром сертификации (ЦС). Сертификаты ЦС, в свою очередь, подписываются ЦС более высокого уровня и так далее. Сертификаты корневого ЦС являются самоподписанными, что означает, что по умолчанию они считаются доверенными.

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

VPN

В современную цифровую эпоху VPN становятся все более популярными среди пользователей Интернета. VPN создает защищенный логический сетевой уровень, который накладывается на другую сеть, например Интернет, обеспечивая безопасное соединение между филиальными сетями организаций с помощью криптографических методов. Таким образом, безопасность VPN-соединения не зависит от безопасности базовой сети.

Существует множество протоколов VPN, каждый из которых подходит для организаций разного размера, их сетей и требуемого уровня безопасности. Например, протокол PPTP подходит для небольшой компании или домашней локальной сети, хотя в нем используются устаревшие методы шифрования. Для обеспечения более высокого уровня безопасности наиболее подходящими являются протоколы IPsec, OpenVPN и WireGuard, в зависимости от типа соединений, которые требуется установить.

Важно помнить, что настройка специфических протоколов, таких как IPsec, OpenVPN и WireGuard, может потребовать дополнительных знаний и навыков. Поэтому при настройке этих протоколов рекомендуется обращаться за помощью к знающим специалистам.

Угрозы безопасности

Угрозы информационной безопасности можно разделить на несколько типов, каждый из которых имеет свои особенности и степень опасности.

Первый тип 

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

Второй тип

Другой тип атак направлен на вывод системы из строя, и хотя он не связан с утечкой данных, все же может нанести значительный ущерб предприятию. Например, атаки Denial-of-Service (DoS) и Distributed Denial-of-Service (DDoS) подразумевают отправку огромного количества запросов на серверы, перегружая их и вызывая отказ в обслуживании. В таких случаях пользователи не могут получить доступ к ресурсам и услугам, что приводит к значительному финансовому и репутационному ущербу.

Итог

Результатом успешных атак могут быть утечки данных, финансовые потери и ущерб репутации компании. Поэтому при проектировании и настройке IT-инфраструктуры необходимо уделять должное внимание обеспечению безопасности и минимизации возможных угроз.

iSCSI-протокол: как работает, для чего используется и как подключить

Принцип работы

Для того чтобы понять принцип работы iSCSI, необходимо более подробно изучить его структуру. Основными компонентами здесь являются инициаторы и цели. Инициаторами называются хосты, которые устанавливают соединение по iSCSI, а цели (также используется термин «таргеты» от англ. «target») — это хосты, которые принимают это соединение. Целями являются хранилища данных, с которыми взаимодействуют хосты-инициаторы.

Связь между инициатором и целью устанавливается через TCP/IP, а iSCSI занимается обработкой команд SCSI и сбором данных, формируя пакеты. Затем эти пакеты передаются через двухточечное соединение между локальным и удаленным хостами. iSCSI разбирает полученные пакеты и разделяет команды SCSI. Такая работа протокола приводит к тому, что операционная система видит хранилище как локальное устройство и имеет возможность стандартного его форматирования.

Аутентификация и передача данных 

iSCSI использует специальные имена, называемые IQN (iSCSI Qualified Names) и EUI (Extended Unique Identifiers, 64-битные идентификаторы, используемые в IPv6) для идентификации инициаторов и целей.

  • Примером IQN является «iqn.2003-02.com.site.iscsi:name23». Цифры «2003-02» после «iqn» означают год и месяц, когда было зарегистрировано доменное имя «site.com». Доменные имена в IQN записаны в обратном порядке. Наконец, «name23» — это имя, присвоенное узлу iSCSI.
  • Примером EUI является «eui.fe9947fff075cee0». Это шестнадцатеричное значение в формате IEEE. Верхние 24 бита EUI идентифицируют конкретную сеть или компанию (например, провайдера), а остальные 40 бит идентифицируют конкретный хост в этой сети и являются уникальными.

Каждый сеанс в iSCSI состоит из двух этапов. Первый этап — это аутентификация с TCP. Если аутентификация прошла успешно, начинается второй этап – обмен данными между хостом-инициатором и целевым хранилищем по одному соединению, что устраняет необходимость параллельного мониторинга запросов. После завершения передачи данных соединение закрывается с помощью инструкции iSCSI logout.

Обработка ошибок, безопасность

iSCSI обеспечивает восстановление утерянных сегментов данных, используя  повторную передачу пакетов PDU, восстановление соединения и перезапуск сессии с отменой, попутно отменяя все незавершенные процессы. Для обеспечения безопасности передаваемых данных iSCSI использует CHAP-протокол, который основан на трансмиссии конфиденциальных данных, путем сопоставления хеш-значения. Все пакеты шифруются и проверяются на целостность с помощью протоколов IPsec. Это обеспечивает надежность и безопасность передачи данных между хостами-инициаторами и хранилищами-целями.

Преимущество использования 

Протокол iSCSI —  удобное решение для хранения данных в сети с улучшенной производительностью и рядом других преимуществ. В частности, он облегчает работу с сетевым хранилищем, используя уже существующую инфраструктуру сети, основанную на устройствах Gigabit Ethernet. Это значит, что отсутствует необходимость подготавливать устройства к использованию, следовательно вы экономите ресурсы.

iSCSI использует принципы,схожие с TCP/IP, что упрощает процесс настройки и использования систем хранения данных для технического персонала и снижает затраты на обучение.

Подключение

Для оптимальной работы протокола iSCSI рекомендуем использовать неблокирующий коммутатор Gigabit Ethernet корпоративного уровня, который обеспечит высокую скорость соединения. Подключение iSCSI не сложно, однако процедура может отличаться в Windows и Linux-подобных системах. Наша компания предоставляет готовые инструкции для обеих ОС:

  • В этом руководстве вы найдете подробные инструкции по подключению iSCSI-диска с описанием различий между ОС Ubuntu/Debian и CentOS.
  • Здесь мы подробно рассказываем, как подключить iSCSI-диск в Windows (на примере Windows Server 2016).

Мы также предлагаем услугу заказа сетевого iSCSI-диска объемом от 0,25 до 30 Тб. Подробности об услуге можно найти на нашей странице.

Для обеспечения мультисерверного соединения с хранилищем рекомендуем использовать MPIO-технологию (многопутевой ввод-вывод), которая помогает реализовать отказоустойчивость сети и ее избыточность.

Сравнение iSCSI/Fibre Channel

При сравнении двух протоколов передачи данных iSCSI и Fibre Channel (FC) часто ставится вопрос о конкуренции между ними. Однако, следует отметить, что нет абсолютно идеальных решений. Протоколы содержат некоторые преимущества и недостатки, которые могут варьироваться в зависимости от задачи. 

iSCSI SAN — выгоднее с точки зрения экономики и холодного старта для использования. Это связано с тем, что для построения iSCSI SAN можно использовать существующее сетевое оборудование без необходимости дополнительных затрат на приобретение дорогостоящего оборудования. 

При этом, iSCSI значительно улучшает передачу трафика, управление очень большими данными и оптимизацию хранения.

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

Таким образом, при выборе между iSCSI и FC необходимо учитывать не только финансовые аспекты, но и требования к производительности и возможные затраты на оборудование.

Чтобы было проще сравнивать эти два протокола, мы составили таблицу их ключевых различий:

FeatureiSCSI SANFibre Channel SAN
Can be used in existing networkYesNo
Data transfer speed1-100 Gbps2-32 Gbps
Can be built on existing equipmentYesNo
Data transfer flow controlNo protection against packet retransmissionReliable
Network isolationNoYes

Заключение 

Сравнительная таблица подчеркивает уникальные особенности каждого протокола, подчеркивая важность выбора правильного протокола для ваших потребностей в хранении данных. Одним словом, выбор iSCSI в качестве основного метода организации хранилища полностью оправдан, если вам необходимо оптимизировать затраты и обеспечить простоту настройки и использования протокола. С другой стороны, FC может предложить низкую задержку, удобную масштабируемость и лучше подходит для организации разветвленной сети хранения.

Установка, настройка и примеры синхронизации Rsync

Rsync — инструмент, используемый для создания бэкапов и восстановления данных при возникновении внештатных аварийных ситуаций. Утилита может быть установлена на тех узлах, развертка которых происходила в ручном режиме. Например, если пользователь оплатил доступ к физическому серверу у такого провайдера, как Obit, и самостоятельно развернул виртуальную машину и другие сервисы.

Дистрибутив Rsync для Linux CentOS 8 доступен в официальном репозитории операционной системы и может быть установлен с помощью следующей команды:

  • dnf -y install rsync rsync-daemon

Это автоматически установит клиентский и серверный компоненты утилиты, включая демон-процесс Rsync, позволяющий в омниканально управлять потоком данных. 

Чтобы открыть файл конфигурации для редактирования, например, с помощью редактора nano, выполните следующую команду:

  • nano /etc/rsyncd.conf

Файл содержит следующие переменные:

  • pid файл — файл, в котором система будет хранить идентификаторы процессов демона;7
  • lock file — файл, созданный для предотвращения дублирования запусков программы Rsync;
  • log файл — журнал, используемый для записи происходящих событий;
  • path — ссылка на каталог, который необходимо синхронизировать;
  • hosts allow — белый список удаленных машин, к которым разрешено подключение;
  • hosts deny — черный список хостов, которым запрещено передавать данные;
  • list — флаги для разрешения или запрета доступа к указанному каталогу;
  • uid — логин учетной записи, используемой для синхронизации;
  • gid — группа пользователей, имеющих разрешение на выполнение резервного копирования;
  • только чтение — флаг, защищающий данные от удаления или изменения;
  • комментарий — описание конфигурации.

Дополнительную информацию можно найти в документации.

В строках uid и gid рекомендуется использовать непривилегированные учетные записи (учетные записи пользователей для специализированных задач). Такой подход упрощает контроль доступа к функционалу для сотрудника и позволяет сохранить настройки при изменении обычными пользователями. После сохранения изменений в конфигурационном файле утилита готова к запуску, для чего необходимо создать указанный каталог:

  • mkdir /tmp/share

Запустить программу можно с помощью следующей команды:

  • systemctl enable —now rsyncd

Перед использованием рекомендуется настроить политики безопасности. В противном случае при обращении утилиты к хосту может возникнуть блокировка на межсетевого экрана или службы SELinux. Этого можно добиться с помощью следующей последовательности команд:

  • setsebool -P rsync_full_access on
  • firewall-cmd —add-service=rsyncd —permanent
  • firewall-cmd -reload

Текущее состояние Rsync можно проверить с помощью следующей команды:

  • systemctl status rsyncd

Синтаксис 

Общий синтаксис для Rsync следующий:

  • rsync -options <source> <destination>.

Параметры — это показатели для запуска программы, источник –- это ресурс, который является источником для синхронизации, а место назначения — это каталог-получатель, куда будут реплицированы синхронизированные файлы и каталоги.

Список опций Rsync:

  • -v, -verbose — отображает процесс синхронизации на экране.
  • -q, -quiet — подавляет вывод сообщений об ошибках.
  • -c, -checksum — сравнивает контрольную сумму файлов вместо даты, времени и размера как индикаторов изменений файлов.
  • -a, -archive — активирует поддержку архивирования данных.
  • -r, -recursive — использует рекурсивный режим для копирования каталогов.
  • -b, -backup — обновление исходных файлов и создание резервной копии.
  • -backup-dir=<каталог> — указывает место хранения резервных копий.
  • -suffix=SUFFIX — добавляет дополнительный символ к файлам резервных копий.
  • -u, -update — пропускает файлы с более поздней датой модификации.
  • -l, -links — сохраняет символические ссылки.
  • -H, hard-links — сохраняет жесткие ссылки.
  • -p, -perms — сохраняет права доступа к файлам или каталогам.
  • -E, -исполнимость — сохраняет разрешения на выполнение для файлов.
  • -chmod=<разрешения> — изменяет разрешения на указанные после копирования объекта.
  • -o, owner — сохраняет информацию о владельце исходного файла или каталога.
  • -g, group — сохраняет информацию о владельце группы исходного файла или каталога.
  • -S, -sparse — дефрагментировать данные при копировании.
  • -n, -dry-run — тестирует только канал резервного копирования.
  • -W, -whole-file — всегда копирует файлы целиком, а не только их измененные части.
  • -delete — считает файлы, отсутствующие в источнике, старыми и удаляет их.
  • -delete-before — полностью очищает принимающий каталог перед синхронизацией.
  • -max-delete=<число файлов> — ограничивает максимальное число удаляемых файлов.
  • -max-size=<размер файла> — ограничивает максимальный размер копируемых файлов.
  • -min-size=<размер файла> — ограничивает минимальный размер копируемых файлов.
  • -z, -compress — сжимать файлы при передаче на удаленный сервер.
  • -compress-level=<число> — устанавливает уровень сжатия.
  • -exclude=<имена файлов> — передает указанные файлы без архивации.
  • -exclude-from=<имя файла> — исключает список файлов из синхронизации.
  • -include=<имена файлов> — принудительная синхронизация указанных файлов.
  • -include-from=<имя файла> — синхронизирует то, что перечислено в файле.
  • -port=<порт> — выбирает порт, используемый для подключения к удаленному хосту.
  • -progress — отображает индикатор выполнения, показывающий процент завершения.
  • -log-file=<файл> — указывает местоположение файла журнала.
  • -password-file=<file> — автоматизирует доступ к системе по паролю.
  • -list-only — эмулирует синхронизацию путем отображения имен файлов.
  • -bwlimit=<число> — ограничивает скорость передачи данных (в Кбит/с).
  • -4, ipv4 — устанавливает приоритет протокола IPv4.
  • -6, ipv6 — приоритет протокола IPv6.
  • -version — отображает текущую версию утилиты Rsync.

Примеры использования

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

Копирование файлов

Рассмотрим в качестве примера локальное применение утилиты Rsync. В этом случае источник и приемник (речь идет о каталогах) будут принадлежать одному диску:

  • rsync -avzhHl /path/of/source/folder /path/to/destination/folder

Если вы планируете работать с удаленным узлом, то к команде необходимо добавить логин пользователя и IP-адрес (имя узла):

  • rsync -avzhHl /path/of/source/folder root@192.168.43.10:/path/to/destination/folder.

Во втором случае необходимо предварительно настроить доступ к ключу.

Синхронизация по SSH и демон Rsync

По умолчанию программа использует протокол безопасной передачи данных SSH (Rsync over SSH). Для его активации не требуется никаких дополнительных параметров. Благодаря этой функции можно получить прямой доступ к демону Rsync без использования сторонних утилит. Пример обращения:

  • rsync -avz /tmp/share rsync://192.168.43.121:/tmp/share

Просмотр хода выполнения операции

Большие объемы данных лучше передавать с визуальным контролем прогресса. Это позволит убедиться, что все файлы и каталоги действительно были синхронизированы. Пример команды для включения Rsync Progress:

  • rsync -avzhHl —progress /path/of/source/folder

root@192.168.43.10:/path/to/destination/folder

Удаление файлов во время синхронизации

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

  • rsync -avzhHl —delete /path/of/source/folder

root@192.168.56.1:/path/to/destination/folder

Ограничение скорости передачи данных

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

  • rsync -avzhHl —bwlimit=’100′ /path/of/source/folder

root@192.168.56.1:/path/to/destination/folder

Иногда выгоднее отказаться от резервного копирования больших файлов. Такой подход актуален, если они носят в основном временный характер, когда на удаленный хост передаются только результаты просчитанных проектов. Пример команды:

  • rsync -avzhHl —max-size=’100M’ /path/of/source/folder

root@192.168.43.10:/path/to/destination/folder

Использование опций include и exclude

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

  • rsync -avzhHl —include=’.txt’ —exclude=» /path/of/source/folder \

root@192.168.56.1:/path/to/destination/folder

Установка NTP на сервере: пошаговая инструкция

Часть 1. Установка NTP-сервера

В этой инструкции мы рассмотрим семь простых шагов для установки и настройки NTP-сервера в Ubuntu. Мы будем работать в командной строке и использовать редактор nano, а также терминал, который открывается по нажатию Ctrl+Alt+T.

Шаг 1: Индекс репозитория 

Обновление индекса репозитория Перед установкой NTP-сервера необходимо обновить индекс репозитория. Для этого выполните следующую команду:

sudo apt-get update

Шаг 2: Сервер

Установка сервера Установка сервера начинается с выполнения следующей команды:

sudo apt-get install ntp

Перед выполнением этой команды убедитесь, что у вас есть права суперпользователя. Чтобы разрешить установку всех необходимых компонентов, введите Y (Yes). После того, как вы установили сервер, приступим к его настройке.

Шаг 3: проверяем установку

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

sntp —version

Если установка прошла успешно, то вы увидите номер версии и точное время установки. 

Шаг 4: поиск пула

По умолчанию серверная машина должна получать корректное время, но для большей надежности лучше переключиться к ближайшей группе серверов. Для этого нужно отредактировать конфигурационный файл ntp.conf, который находится по пути /etc/ntp.conf. Откройте его при помощи nano (у вас должны быть права sudo), для этого выполните команду:

sudo nano /etc/ntp.conf

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

Эти строки являются стандартными пулами, которые мы заменим на российские пулы, представленные на этой странице. Замените их, после сохраните изменения в ntp.conf, нажав Ctrl+O, а затем выйдите из файла, нажав Ctrl+X.

Шаг 5: перезагрузка

Перезапустите сервер.

sudo service ntp restart

Шаг 6: проверка и отладка

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

sudo service ntp status

Шаг 7: настройка брандмауэра 

Чтобы ваши клиенты могли выполнять вход на сервер, откройте им доступ с помощью изменения параметра UFW, прокинув UDP-порт 123 следующей инструкцией:

  • sudo ufw allow from any to any port 123 proto udp

Часть 2. Настраиваем синхронизацию NTP-клиентов

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

Шаг 1: Проверка соединения 

Чтобы проверить настройки сети NTP нужно ввести следующую команду в терминале:

  • sudo apt-get install ntpdate

Шаг 2: Указание IP и хоста 

Чтобы указать IP и хост, необходимо отредактировать файл hosts, который находится по пути /etc/hosts, используя следующую команду:

  • sudo nano /etc/hosts

Затем, в третьей строке сверху, добавьте актуальные данные (адрес добавлен просто для примера, введите реальный IP своего NTP-сервера):

  • 192.168.154.142 ntp-server

После этого следует нажать Ctrl+X и сохранить изменения, нажав Y. Обратите внимание, что эту процедуру можно выполнить и на DNS-сервере, если он у вас есть.

Шаг 3: Проверка синхронизации клиента с сервером 

Чтобы проверить синхронизацию между системами сервера и клиента нужно ввести следующую команду:

  • sudo ntpdate ntp-server

Значение, которое будет выведено на экран — смещение времени. Погрешность в несколько миллисекунд считается нормальным, поэтому на такие цифры не стоит акцентировать внимание. 

Шаг 4. Отключите службу timesyncd

Служба timesyncd синхронизирует локальное системное время, но в нашей установке она не нужна, поскольку клиенты будут синхронизироваться через NTP-сервер. Поэтому мы вводим:

  • sudo timedatectl set-ntp off

Шаг 5: Установите NTP на клиентской системе

Это делается с помощью инструкции:

  • sudo apt-get install ntp

Шаг 6: Сделайте наш NTP-сервер источником ссылок

Мы хотим, чтобы клиенты синхронизировались именно с нашим NTP-сервером, поэтому открываем знакомый нам конфигурационный файл ntp.conf и добавляем инструкцию следующего вида:

  • server NTP-server-host prefer iburst

Prefer добавляется для того, чтобы указать предпочтение (в данном случае, для сервера). В свою очередь, iburst позволяет отправлять несколько запросов на сервер, что повышает точность синхронизации. Теперь снова нажимаем Ctrl+X и сохраняем изменения, нажав y.

Шаг 7: Перезапустите сервер

Эта инструкция также проста и не требует объяснений:

  • sudo service ntp restart

Шаг 8: Проверьте очередь синхронизации

Почти завершили, осталось ввести инструкцию:

  • ntpq -ps

Она понадобится нам для проверки NTP-сервера, который указан в качестве источника в очереди синхронизации времени.

Часть 3. Продвинутые возможности синхронизации

В третьей части мы рассмотрим расширенные опции синхронизации в NTP. После установки и настройки NTP сервера и синхронизации клиентских машин с ним, мы можем более тонко настроить процесс синхронизации с помощью дополнительных параметров в файле ntp.conf, расположенном по адресу /etc/ntp.conf.

Предпочитаемый сервер

Отметка «prefer» используется для указания сервера или пула серверов, которые считаются наиболее надежными. Например:

  • server 1.ru.pool.ntp.org prefer

Отметка «server» используется для указания сервера, а директива «pool» – для указания пула серверов. Кроме того, строка «server 127.127.1.0» в конце списка пулов используется для получения системного времени при отсутствии соединения.

Настройки безопасности

Одна из команд «restrict default» устанавливает значения по умолчанию для всех команд «restrict», применяясь ко всем ограничениям. «kod» используется для отправки «поцелуя смерти» серверам, которые посылают слишком много запросов.

Другие команды, такие как «notrap», «nomodify», «nopeer» и «noquery», устанавливают ограничения на реализацию команд управления, изменения состояния, синхронизацию с определенными хостами. 

Пример использования некоторых из описанных выше команд для синхронизации узлов в сети и ограничения доступа к изменению состояния и командам управления представлен в следующей строке: restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap

Также в конфигурационном файле присутствуют ограничения, позволяющие серверу общаться с самим собой, используя адреса 127.0.0.1 и ::1.

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

Проверяем корректность работы NTP

Чтобы проверить, правильно ли настроен NTP-сервер в системе Linux, можно воспользоваться командой «ntpq -p». Если настройки верны, результатом будет таблица со столбцами, выглядящая примерно так:

В первом столбце указан адрес сервера синхронизации, за ним следует восходящий сервер, level (столбец st) и nup (столбец t). Следующие три столбца показывают информацию о последней проверке серверов, периоде синхронизации и их надежности (значение 377 означает 8 успешных синхронизаций с сервером). Последние два столбца показывают разницу между синхронизированным временем и временем главного (эталонного) сервера, а также смещение времени.

Кроме того, обратите внимание на символы в первом столбце, которые появляются перед IP-адресом. Лучшим символом является «+», который указывает на надежность сервера для синхронизации. Соответственно, «-» указывает на обратное, а «*» — на текущий сервер, выбранный для синхронизации. Иногда встречается символ «x», который означает, что сервер недоступен.

Чтобы проверить, правильно ли сервер предоставляет время, необходимо использовать команду «ntpdate» на другой системе, указав IP-адрес проверяемого сервера. Вывод:

  • adjust time server (IP address) offset 0.012319 sec

Число здесь указывает на расхождение по времени. В данном случае все в норме, и разница составляет всего около 0,01 секунды, или, точнее, 12 миллисекунд, что вполне приемлемо.

Теперь давайте рассмотрим, как настроить протокол NTP в Windows.

Настройка NTP сервера Windows Server

Чтобы настроить NTP (Network Time Protocol) на компьютере, нужно выполнить несколько команд для изменения реестровой политики. Прежде чем приступить к изменению конфигурации, необходимо запустить службу. Это делается путем изменения следующей записи в реестре:

  • HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpServer

В этой ветке найдите «Enabled» и установите его в значение 1, чтобы запись в колонке Data выглядела так:

  • 0x00000001 (1)

Откройте терминал и введите команду, необходимую для перезапуска протокола:

  • net stop w32time && net start w32time

Обратите внимание, что вводить команду нужно из папки C:\Users\Administrator. Вы можете проверить, включен ли NTP, с помощью следующей команды:

  • w32tm /query /configuration

Появится длинная запись, в которой следует обратить внимание на блок NtpServer <Local>: значение Enabled в строке должно быть равно 1. Теперь откройте брандмауэр для UDP-порта 123, чтобы правильно обслуживать клиентов, а затем переходите к конфигурации.

Вернитесь в реестр и найдите запись:

  • HKLM\System\CurrentControlSet\services\W32Time\Parameters

В этой ветке довольно много параметров, но основным является «Type», который принимает одно из 4 значений:

  • NoSync — без синхронизации;
  • NTP — синхронизация с внешними серверами, указанными в NtpServer в реестре (устанавливается по умолчанию для отдельной машины);
  • NT5DS — синхронизация в соответствии с иерархией домена (устанавливается по умолчанию для машины в домене);
  • AllSync — синхронизация со всеми доступными серверами.

Теперь снова обратитесь к реестру и установите значения в ветке NtpServer. Скорее всего, там указан только сервер Microsoft. Вы можете добавить другие, обращая внимание на флаг в конце:

  • 0x1, SpecialInterval, стандартный режим, рекомендованный Microsoft;
  • 0x2, UseAsFallbackOnly, для использования сервера в качестве резервного;
  • 0x4, SymmetricActive, этот режим является основным для NTP-серверов;
  • 0x8, Client, в случае проблем с синхронизацией.

И, наконец, что вам нужно сделать, это установить интервал синхронизации в ветке:

  • W32Time\TimeProviders\NtpClient

Это контролируется параметром «SpecialPollInterval», где необходимо установить требуемое значение (указывается в секундах). По умолчанию значение установлено на неделю. Если вы хотите синхронизироваться чаще, установите 86400 для 1 дня, 21600 для четверти дня (6 часов) и 3600 для часа. Последнее значение является оптимальным с точки зрения соотношения нагрузки на систему и приемлемой точности там, где требуется частая синхронизация времени.

Настройка NTP сервера Cisco

Корректное настройка времени на устройствах Cisco является важным аспектом обеспечения безопасности и эффективной работы сети. Неправильно настроенное время может привести к ошибкам в журналах событий и синхронизации сетевых служб, что может повлиять на работоспособность приложений, работающих в сети.

Шаги по настройке времени на устройствах Cisco довольно просты и легко выполнимы даже для непрофессионалов. 

  1. Для начала необходимо войти в режим конфигурирования, используя команду «conf t».
  2. Следующий шаг заключается в установке часового пояса с помощью команды «clock timezone». Настройка часового пояса позволяет устройству корректно отображать локальное время. Если, например, время московское, установите «MSK 3».
  3. Затем, необходимо указать источник NTP с помощью команды «ntp source». NTP (Network Time Protocol) является протоколом сетевого времени, который синхронизирует время на устройствах в сети. Если вы хотите сделать это устройство основным NTP-сервером для других машин в сети, установите значение в команде «ntp master» равным 2 или выше.
  4. Для обновления времени используйте команду «ntp update-calendar». Эта команда применяется для сохранения текущего времени в часах устройства, которые могут быть использованы при перезагрузке устройства.
  5. Затем, необходимо указать имена или IP-адреса серверов NTP. Для этого используйте команду «ntp server».
  6. Для проверки проблем и устранения неполадок, можно использовать команду «show». С помощью команды «show clock» можно отобразить текущее время устройства, а команда «show ntp status» покажет состояние NTP. Команда «show ntp associations» отобразит ассоциации, т.е. устройства, с которыми устройство взаимодействует для синхронизации времени.

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

Настройка NTP-сервера на роутерах MikroTik

Давайте настроим SNTP: Для настройки времени на устройствах с операционной системой MikroTik RouterOS необходимо выполнить несколько шагов.

  1. Сначала перейдите в раздел System — SNTP Client в программе Winbox. Затем найдите опцию SNTP Client и установите флажок Enabled, чтобы включить клиент SNTP.
  2. Далее, введите IP-адреса эталонных серверов в поле Server DNS Names. Это позволит вашему устройству получать точное время от выбранных серверов.
  3. Для проверки правильности настройки перейдите в раздел Система — Часы. В этом разделе можно установить часовой пояс, выбрав его из выпадающего списка, либо включив опцию Time Zone Autodetect, чтобы часовой пояс определялся автоматически.
  4. Для определения интервала синхронизации с эталонными серверами можно посмотреть значение в поле Poll Interval в меню SNTP Client. Этот интервал позволяет определять частоту обновления времени на вашем устройстве.
  5. Наконец, чтобы убедиться, что все работает правильно, можно проверить время последней синхронизации в поле Last Update в разделе SNTP Client. Если эта информация актуальна, значит ваше устройство получает время от выбранных серверов и корректно синхронизируется с ними.

Теперь вы знаете, как настроить NTP в распространенных операционных системах и на отдельных устройствах.

Как исправить ошибку аутентификации SSH

Проверка ключей и пароля — основополагающие элементы аутентификации с использованием SSH. Использование дополнительных проверок ключей доступа обеспечивает должный уровень безопасности, но иногда возникают неожиданные проблемы, например ошибка authentication failed. В данном материале рассмотрим способы устранения этой проблемы, проанализируем причины сбоев.

Ошибки: базовый случай

Если в терминале появилось сообщение «authentication failed», это означает, что процесс проверки подлинности пользователя не удался. Аутентификация — это процедура, которая требуется для подтверждения личности пользователя и предоставления доступа к системе. Например, для удаленного подключения к серверу по адресу может быть настроено SSH-соединение, которое требует прохождения аутентификации.

В файле конфигурации SSH определяется метод аутентификации. По умолчанию используется парольный метод, но можно также использовать аутентификацию с помощью ключевой пары SSH. В этом случае закрытая часть ключа хранится на компьютере пользователя, а открытая на сервере. Если при попытке установления соединения ключи совпадают, то доступ предоставляется. В противном случае появляется сообщение об ошибке, например, «authentication failed».

Однако причиной ошибки может быть не только несовпадение ключей, но и поврежденные файлы конфигурации или недостаточные права доступа.

Ошибки: использование пароля

«Authentication failed» сообщает о неудачной попытке проверки подлинности пользователя, необходимой для получения доступа к системе. Часто аутентификация требуется для удаленного подключения к серверу через SSH-соединение. Метод аутентификации, используемый по умолчанию, — парольный, но можно настроить аутентификацию с помощью ключевой пары SSH. При этом закрытая часть ключа хранится на компьютере пользователя, а открытая на сервере. Если ключи совпадают, то пользователь получает доступ, в противном случае появляется сообщение об ошибке, например, «authentication failed». Однако, несовпадение ключей не является единственной причиной ошибки — ее причинами также могут быть поврежденные файлы конфигурации или недостаточные права доступа.

Ошибки: ключи

При использовании SSH-подключений часто возникают проблемы, связанные с идентификационными ключами. Например, может возникнуть путаница при использовании нескольких ключей для подключения к разным хостам. Чтобы избежать таких проблем, следует использовать понятные имена файлов аутентификации.

Также возможна ошибка «Too many authentication failures for user», которая возникает, когда клиент SSH пытается подключиться к хосту со всеми доступными ключами, превышая максимальное количество разрешенных попыток. Чтобы исправить это, можно использовать опции IdentitiesOnly и IdentityFile.

Если при использовании ключей SSH возникает ошибка «Permission denied (publickey, password)», то это может быть связано с неправильно введенной парольной фразой. Если парольная фраза была потеряна, ее нельзя восстановить, и потребуется сгенерировать новую пару значений для Secure Shell.

Для более удобного использования опций IdentitiesOnly и IdentityFile можно установить их в конфигурационном файле SSH ~/.ssh/config. Это позволит SSH использовать только указанные идентификаторы при подключении к хостам.

Восстановление публичного ключа

Если вы потеряли открытую часть из пары ключей, не волнуйтесь, так как ее можно легко восстановить с помощью стандартных инструментов OpenSSH.

Для этого вы можете воспользоваться утилитой ssh-keygen. Просто откройте терминал и выполните следующую команду:

  • ssh-keygen -y -f ~/.ssh/id_rsa

В этой команде замените ~/.ssh/id_rsa на путь к файлу вашего закрытого ключа. В результате вы получите открытую часть вашего ключа, которую затем можно добавить на сервер.

Если вы используете среду Windows, вы можете достичь того же результата с помощью утилиты PuTTYgen, которая входит в пакет PuTTY. Просто загрузите свой закрытый ключ в утилиту с помощью кнопки Load, а затем скопируйте открытый ключ, отображаемый в поле Public key for… (Открытый ключ для…).

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

Ошибки конфигурации клиента

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

Конфликт конфигурационного файла

Убедитесь, что настройки в файле /etc/ssh/sshd_config не противоречат друг другу. Например, если аутентификация по паролю отключена или вход root запрещен, могут возникнуть конфликты.

Обычный пример конфликта — когда параметр PasswordAuthentication установлен в yes, а параметр PermitRootLogin установлен в no или without-password. Это может привести к тому, что сервер не сможет аутентифицировать пользователей, и установит запрет на  доступ всем.

Права доступа

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

На стороне сервера должны быть установлены следующие разрешения:

  •     Каталог ~/.ssh должен иметь разрешение 700.
  •     Директория ~/.ssh должна принадлежать текущему пользователю.
  •     Файл ~/.ssh/authorized_keys должен иметь разрешение 600.
  •     Файл ~/.ssh/authorized_keys должен принадлежать текущему пользователю.

Аналогично, на стороне клиента необходимо проверить следующие разрешения:

  •     Файл ~/.ssh/config должен иметь разрешение 600.
  •     Файлы ~/.ssh/id_* должны иметь разрешение 600.

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

Кроме того, OpenSSH больше не поддерживает использование старых типов ключей, основанных на алгоритме цифровой подписи (DSA), для безопасных серверных соединений. Ключи, использующие алгоритм ssh-dss, считаются слишком слабыми для обеспечения надежной защиты.

Для пользователей со старыми ключами оптимальным решением является генерация и добавление новых ключей на основе более безопасных алгоритмов. Однако в качестве альтернативы можно изменить файл /etc/ssh/sshd_config и установить параметр PubkeyAcceptedKeyTypes на «+ssh-dss», чтобы продолжать использовать ключи на основе DSA. Этот подход несет свои риски.

Дополнительные параметры могут потребоваться на SSH-клиенте при подключении к устаревшим серверам, которые давно не обновлялись. Например, для подключения к хостам CentOS 6, поддержка которых закончилась в конце 2020 года, пользователи должны добавить параметр «-oHostKeyAlgorithms=+ssh-dss», чтобы решить любые проблемы.

Сторонние сервисы

Проблемы аутентификации могут возникать и при использовании сторонних сервисов. Например, при подключении к API возникает сообщение user authorization failed invalid session. Устранение такого сбоя в частном порядке невозможно, стоит написать в техническую поддержку.

Настройка SSL для почты

Для почтового сервера сертификат будет самоподписанным.

ISPmanager 6 

В подменю выберите пункт «Почта», после «Почтовые домены». Найдите SSL-сертификаты.

В новом окне измените приватный ключ, сертификат на ваши, после пропишите цепочку.

CentOS 

Подготовка файла конфигурации:

vi /etc/exim/exim.conf

# TLS/SSL

tls_advertise_hosts = *

tls_certificate = /etc/exim/ssl/domain.ru.crt

tls_privatekey = /etc/exim/ssl/domain.ru.key

daemon_smtp_ports = 25 : 465 : 587

tls_on_connect_ports = 465

Поместите сертификат с цепочкой в  /etc/exim/ssl/domain.ru.crt. Ключи разместите по следующему пути: /etc/exim/ssl/domain.ru.key. 

Установите права на файлы сертификата:

chmod 444 /etc/exim/ssl/domain.ru.crt

chmod 400 /etc/exim/ssl/domain.ru.key

chown exim:exim  /etc/exim/ssl/domain.ru.crt

chown exim:exim  /etc/exim/ssl/domain.ru.key

Перезапустите exim:

systemctl restart exim

dovecot

vi /etc/dovecot/conf.d/10-ssl.conf
ssl = yes
ssl_cert = </etc/exim/ssl/domain.ru.crt
ssl_key = </etc/exim/ssl/domain.ru.key

Перезапустите dovecot:

systemctl restart dovecot

Debian/Ubuntu 

exim

vi /etc/exim4/exim4.conf.template
tls_certificate = /etc/exim4/ssl/domain.ru.crt
tls_privatekey = /etc/exim4/ssl/domain.ru.key

/etc/exim4/ssl/domain.ru.crt —  файл сертификата и цепочки

/etc/exim4/ssl/domain.ru.key — ключ

chown Debian-exim:Debian-exim /etc/exim4/ssl/domain.ru.crt

chmod 444 /etc/exim4/ssl/domain.ru.crt

chown Debian-exim:Debian-exim /etc/exim4/ssl/domain.ru.key
chmod 400 /etc/exim4/ssl/domain.ru.key

Перезапустите dovecot:

systemctl restart dovecot

Установка SSL от Let’s Encrypt на сервер (без панели)

Сертификаты — важный инструмент безопасности. Сертификат обеспечивает шифрование конфиденциальных данных пользователей (например пароли, банковские данные). Проекты, которые только набирают обороты, тоже нуждаются в защите, но для создателя в таком случае нецелесообразно сразу приобретать лучшую криптографическую защиту. Let’s Encrypt — решение, подходящее на старте. 

Let’s Encrypt — это центр сертификации, который предоставляет бесплатные криптографические сертификаты X.509.

Certbot

Подключитесь к серверу через SSH. Установите certbot.

Centos — yum install -y certbot

Debian/Ubuntu — apt install -y certbot

Сертификат WWW

certbot certonly —expand -d lamp.fvds.ru -d www.lamp.fvds.ru -w /var/www/html —webroot —email webmaster@lamp.fvds.ru —agree-tos —dry-run

В случае, если данная команда завершилась успешно — приступите к выпуску сертификата. 

certbot certonly —expand -d lamp.fvds.ru -d www.lamp.fvds.ru -w /var/www/html —webroot —email webmaster@lamp.fvds.ru —agree-tos -n

lamp.fvds.ru — заменить на своё

www.lamp.fvds.ru — заменить на своё

Когда вы закончите выпуск сертификата, перед вами появится сообщение:

IMPORTANT NOTES:

 — Congratulations! Your certificate and chain have been saved at:

   /etc/letsencrypt/live/lamp.fvds.ru-0001/fullchain.pem

   Your key file has been saved at:

   /etc/letsencrypt/live/lamp.fvds.ru-0001/privkey.pem

   Your certificate will expire on 2022-04-15. To obtain a new or

   tweaked version of this certificate in the future, simply run

   certbot again. To non-interactively renew *all* of your

   certificates, run «certbot renew«

 — If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let’s Encrypt:   https://letsencrypt.org/donate

   Donating to EFF:                https://eff.org/donate-le

Путь до сертификата: /etc/letsencrypt/live

Wildcard сертификата

Wildcard защищает домен + все связанные с ним доменные имена (поддомены). 

Чтобы установить Wildcard, нужно настроить DNS. Настройка заключается в добавлении дополнительных записей TXT.

Команда:

certbot —manual —agree-tos —manual-public-ip-logging-ok —preferred-challenges dns certonly —server https://acme-v02.api.letsencrypt.org/directory -d *.lamp.fvds.ru -d lamp.fvds.ru

Вместо значений с * необходимо поставить свои (доменные имена). 

После запуска, появится сообщение:

Please deploy a DNS TXT record under the name
_acme-challenge.lamp.fvds.ru with the following value:

RYHdWpSmMuVjdJFZT9JGBs7zuQOFgN78f1Azt1fwNcc
Before continuing, verify the record is deployed.

Необходимо создать новую запись TXT для имени домена в DNS-реестре.

После того, как вы создали запись, возвращайтесь в терминал и нажмите «Enter» для того, чтобы продолжить инициализацию. Certbot запросит создание второй TXT записи. Чтобы её создать, повторите действия, приведенные ранее.

Установка SSL-сертификата на домен

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

Использование ISPmanager 6

Авторизируйтесь в качестве пользователя, который владеет необходимым доменом. Чтобы это сделать, войдите в систему с правами суперпользователя (root), после найдите в меню пункт «Пользователи«, выберите «Войти под пользователем».

Важно: вам необходимо подключить возможность использования SSL. В пункте «Пользователи», в настройках определенного пользователя найдите «Может использовать SSL», отметьте этот пункт.

В подменю «SSL-сертификаты« — «Добавить сертификат».

Тип сертификата — существующий.

Параметры:

Имя сертификата — имя формируется в зависимости от информации, которая содержится в сертификате + «_customX» Если у ваша версия панели < 6.19, то вам необходимо вручную установить имя сертификата. SSL-Сертификат — поле, для загрузки файла .crt. Ключ сертификата — содержимое приватного ключа (файл .key). Также вам необходимо представить в панель файл (.ca/.ctrca). Это цепочка сертификатов (сертификат, которым подписан ваш исходный). Содержимое сертификатов просто скопируйте из файлов и вставьте в подходящие поля.

Например: цепочка сертификатов от GlobalSign 

Вы получаете архив с файлами (файл .p7b сертификат и цепочка сертификата, файл с именем домена + открытый ключ + сертификат, корневой ключ цепочки сертификата, промежуточный ключ .crt).

Чтобы создать цепочки сертификата поместите в один файл .txt корневой ключ сертификата, после за ним, начиная с новой строки, промежуточный ключ и установите для него название GlobalSign.ca. Откройте файлы с ключами цепочки через любой текстовый редактор. Скопируйте содержимое, обязательно проверьте целостность скопированного кода.

Когда вы добавили сертификат, переходите на страницу «Сайты», запустите сервер. Вы увидите установленный сертификат. Но если настройки сайта будут меняться, то файлы конфигурации будут перезаписаны автоматически.

Изменения в файлах, которые вы вносили руками, могут не сохраниться. В случае возникновения подобной ситуации вам нужно перейти в /var/www/httpd-cert/ИМЯ_ПОЛЬЗОВАТЕЛЯ/ИМЯ_СЕРТИФИКАТА и повторно внести нужные изменения.

Проверка сертификата

Используйте ресурс: https://www.ssllabs.com/ssltest/analyze.html

Для проверки валидности работы установленного сертификата: https://www.sslshopper.com/ssl-checker.html

Установка SSL-сертификата без использования внешних панелей

В первую очередь, подключитесь к серверу по SSH. 

Проверьте порт 443 — (netstat -napt | grep 443 или ss -tlpn | grep 443 или sockstat | grep 443 для FreeBSD). 

Образец вывода: root      httpd      83299 19 tcp4   188.120.225.20:443    *:*

Установка с использованием файла конфигурации веб-сервера

Apache

Путь для установки сертификата:

UBUNTU/DEBIAN — /etc/apache2/apache2.conf

Centos — /etc/httpd/conf/httpd.conf

FreeBSD — /usr/local/etc/apache22/httpd.conf

Создайте <VirtualHost>, чтобы осуществить SSL-соединение:

<VirtualHost 10.0.0.1:443>

  DocumentRoot /var/www/user/data/www/domain.com

  ServerName domain.com

  SSLEngine on

  SSLCertificateFile /path/to/domain.crt

  SSLCertificateKeyFile /path/to/domain.key

  SSLCACertificateFile /path/to/ca.crt

</VirtualHost>

Где:

  • domain.com — доменное имя вашего домена
  • 10.0.0.1 — IP адрес домена
  • /var/www/user/data/www/domain.com — путь до домашней директории, где расположен ваш домен
  • /path/to/domain.crt — файл с сертификатом
  • /path/to/domain.key — файл с ключом для сертификата
  • /path/to/ca.crt — файл, содержащий корневой сертификат

После установки изменений, используйте команду:

apachectl -t

Если получено сообщение — Syntax OK, то можете перезапустить сервер — systemctl restart apache2 или systemctl restart httpd или apachectl restart

NGINX

Откройте файл конфигурации сервера. Путь: /etc/nginx/nginx.conf

Инициализируйте модуль SSL:

server {

        listen 10.0.0.1:443;

 

        server_name domain.com;

        ssl                  on;

        ssl_certificate     /path/to/domain.crt;

        ssl_certificate_key  /path/to/domain.key ;

  }

domain.com — доменное имя
10.0.0.1 — IP, который принадлежит домену
путь — /path/to/domain.crt (сертификат)
/path/to/domain.key — ключ сервера (путь)

Цепочка сертификата добавляется в файл с самим сертификатом.

После того, как вы изменили файл конфигурации, проверьте наличие ошибок в синтаксисе, а также ваши вставленные данные.

nginx -t — проверка конфигурации

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

Если вы увидели подобный вывод, то SSL настроен корректно

systemctl restart nginx — перезапуск сервера

SSL-сертификаты (несколько) на едином IP

Браузер получит сертификат сервера, выставленный по умолчанию. Это не зависит от недостаточной настройки, так работает SSL. Чтобы разрешить работы нескольких сертификатов на одном IP, необходимо воспользоваться расширением SNI протокола TLS. Ссылка на документацию (https://tools.ietf.org/html/rfc6066). Данный модуль позволит установить SSL-handshake, во время которого сервер определит необходимый сертификат для использования. Большинство современных браузеров поддерживает это решение, но стоит обратить внимание также на версию библиотеки OpenSSL, она должна быть > 0.9.8f.

Полезные команды Openssl

  • Создание ключа для SSL-сертификата:

openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key

  • Сгенерировать CSR-запрос:

openssl req -new -key cert.key -out cert.csr

  • Сделать ключ без пароля:

openssl rsa -in cert.key -out cert.key

  •  CSR данные:

openssl req -noout -text -in cert.csr

  • Данные сертификата (проверить кем выдан, например):

openssl x509 -noout -text -in cert.crt

  • Проверить, что ключ соответствует сертификату:

openssl x509 -noout -modulus -in cert.crt | openssl md5

openssl rsa -noout -modulus -in cert.key | openssl md5

Два последних значения должны совпадать, в нашем случае это md5.

  • Узнать длину запроса:

echo ‘(‘ `openssl req -noout -modulus -in cert.csr | cut -d’=’ -f2 | wc -c` ‘-1)*4’ | bc

  • Проверить HTTPS:

openssl s_client -host  ulanovka.ru -port 443

Установка SSL-сертификата Windows Server

Процесс разделен на этапы, чтобы разобрать каждый этап отдельно.

Добавление сертификата на сервер

Чтобы вы смогли произвести установку сертификата на ваш сервер, перейдите в «Диспетчер серверов». Цепочка кнопок: Пуск — Администрирование — Диспетчер Серверов.

После как вы перешли в данное меню, найдите «Диспетчер служб IIS». В подменю выберите «Сертификаты сервера».

Ваши дальнейшие действия зависят от места, где был сгенерирован CSR.

Способ генерации CSR: самостоятельно с помощью личного кабинета

Если у вас уже есть ключ в вашем личном кабинете, то совершите экспорт этого ключа в формате .pfx файла. Для импорта ключа на сервер, найдите пункт «Действия» в меню, после выберите «Импортировать».

По прохождению данного этапа система оповестит вас о том, что сертификат стал доступным. Посмотреть подробную информацию можно в меню «Сертификаты сервера».

Подключение SSL-сертификата на домен

Перейдите в меню настройки конфигурации сайта. Найдите пункт «Подключения», выберите нужный сайт и нажмите на кнопку «Привязки».

В новом окне введите данные (кнопка «Добавить»). Образец следующий:

  • ТИП — https 
  • ПОРТ — 443
  • Имя узла — имя домена 
  • IP — IP сайта 

После заполнения всех полей, нажмите «ОК». Перезагрузите сервер. Чтобы проверить успешность установки сертификата на веб-ресурс, достаточно взглянуть на URL. Если сайт стал доступен по https — установка прошла успешно.

Как пользоваться SSH

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

SSH (Secure Shell) — это протокол, позволяющий осуществлять удаленный доступ к устройствам с операционной системой Linux, таким как компьютеры, серверы, телефоны и др. Это набор правил, который позволяет установить безопасное соединение с устройством, расположенным в любой точке мира.

Название протокола содержит слово «secure», что означает, что обмен данными между устройствами происходит в зашифрованном виде. Это позволяет работать с чувствительной информацией, такой как пароли, коды доступа и другие конфиденциальные данные.

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

  1. Вход по паролю. При этом между клиентом и сервером создается общий секретный ключ, который используется для шифрования трафика.
  2. Вход с помощью пары ключей. Пользователь генерирует два ключа — открытый и закрытый, которые хранятся на удаленном и локальном устройствах соответственно. Эти ключи используются для аутентификации при соединении.

Вход в систему с помощью ключей

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

Самый безопасный способ входа в систему — использование пары ключей RSA.

Сначала ключи необходимо создать на локальном компьютере с помощью команды:

  • ssh-keygen -t rsa

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

Далее открытый ключ необходимо отправить на сервер. Открытый ключ обозначается суффиксом .pub и должен иметь права на чтение для всех пользователей:

  • ssh-copy-id -p 222 -i ~/.ssh/id_rsa.pub remote@example.com

Эта команда создаст сеанс SSH. После ввода пароля открытый ключ будет скопирован в файл авторизованных ключей, и повторно вводить пароль не потребуется.

Вы можете еще больше повысить безопасность, полностью отключив парольный доступ. Для этого отредактируйте файл /etc/ssh/sshd_config и установите следующие директивы:

  • PasswordAuthentication no — отключает вход по паролю.
  • PubkeyAuthentication yes — разрешает аутентификацию по ключу SSH.
  • ChallengeResponseAuthentication no — отключает аутентификацию PAM.

После обновления файла перезагрузите демон SSH:

  • sudo systemctl перезагрузить ssh

Настройка SSH

Для установления соединения на удаленном устройстве должен быть запущен сервер sshd, который запускается в Ubuntu с помощью диспетчера systemd:

  • sudo systemctl запустить ssh

Конфигурацию сервера sshd можно найти в файле /etc/ssh/sshd_config.

Порт. По умолчанию sshd прослушивает изменения на порту 22. Хакеры часто пытаются получить доступ к вашему устройству путем подбора паролей суперпользователя, таких как root, admin и т. д. Вы можете сделать это более сложным, изменив порт по умолчанию на любой другой с помощью директивы Port. Однако это не гарантирует полной безопасности, так как существуют скрипты, сканирующие порты устройства. Они обнаружат порт, который прослушивает демон sshd, и попытаются получить доступ. Для большей безопасности рекомендуется закрыть доступ по SSH для пользователя root.

Доступ суперпользователя. Поскольку SSH в основном используется для администрирования удаленных серверов Linux, удаленный доступ для суперпользователя root разрешен по умолчанию во всех современных системах. Однако это очень небезопасно, так как хакеры могут попытаться подобрать пароль и, если им удастся проникнуть в систему, получить полный контроль над устройством. Чтобы избежать таких сценариев, используйте директиву PermitRootLogin со значением «нет».

Протокол. SSH может работать с использованием двух версий протокола — 1 и 2. Вторая поддерживает больше методов шифрования и методов аутентификации. Если вы хотите использовать только одну из версий, используйте директиву Protocol: Protocol 2.

Доступ для конкретных пользователей. Для дальнейшего повышения безопасности вы можете разрешить удаленный доступ только для определенных пользователей и групп, используя директивы AllowUsers и AllowGroups соответственно. Например, вы можете запретить доступ к серверу всем, кроме администраторов:

Вы также можете запретить доступ определенным пользователям, используя DenyUsers и DenyGroups.

Протоколирование ошибок. Вы можете установить уровень ведения журнала с помощью директивы LogLevel, которая отвечает за уровень содержимого в системном журнале, т. е. насколько подробно sshd будет сохранять сообщения, которые он регистрирует. По умолчанию используется INFO, но в целях отладки вы можете установить для него значение VERBOSE или полностью отключить ведение журнала с помощью QUIET.

Доступ по паролю. Директива PasswordAuthentication отвечает за возможность доступа к удаленному устройству с помощью пароля со значением по умолчанию «да».

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

  • sudo systemctl перезагрузить ssh

SSH клиенты

Удобно использовать клиенты-приложения, потому что есть возможность более гибким образом администрировать SSH-подключения. Популярные вариации: 

  1. PuTTY
  2. WinSCP
  3. Termius
  4. FileZilla — для передачи данных по SFTP
  5. MobaXterm

Синтаксис

Для удаленного подключения к серверу необходимо использовать команду SSH, указав IP-адрес или доменное имя сервера:

  • ssh example.com

Однако, если имена пользователей на локальной и удаленной системах отличаются, нужно явно указать имя пользователя при подключении:

  • ssh remote@example.com

Сеанс можно завершить с помощью команды exit.

Если во время настройки удаленного сервера был задан порт, отличный от 22, то для подключения к серверу с локального устройства необходимо указать этот порт с помощью флага -p:

Передача файлов

Если на удаленном сервере настроен демон sshd, то можно использовать другие утилиты, работающие на основе протокола SSH. Одна из таких утилит — scp, которая использует протокол RCP для передачи файлов.

Для передачи файла filename.txt на удаленное устройство с адресом example.com и размещения его в каталоге ~/trash/txt, нужно использовать следующую команду:

  • scp filename.txt remote@example.com:~/trash/txt

Если поменять местами локальный путь и сервер, то можно скачать файлы с удаленного сервера на локальное устройство.

Для передачи всего каталога следует добавить флаг -r. При указании пути к каталогу, в который нужно скопировать данные, он должен заканчиваться косой чертой.

Допустим, нужно скопировать каталог images с сервера на локальный компьютер в папку documents:

  • scp -r remote@example.com:~/images ~/documents/

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

SSH-туннелирование

SSH туннели позволяют установить безопасный удалённый доступ и передачу файлов по защищенной сети. Они обычно применяются в случаях, когда необходимо получить доступ к приватной сети или создать зашифрованный канал.

Для установки порт-туннеля через удаленный сервер используйте флаг -L. Рассмотрим пример использования, когда необходимо получить доступ к удаленной базе данных MySQL, которая доступна только на локальном порту 3306.

Для создания туннеля выполните следующую команду:

  • ssh -N -L 53306:127.0.0.1:3306 remote@example.com

В данной команде флаг -N указывает, что на удаленном сервере не нужно выполнять команды. 53306 — это локальный порт, который вы выбираете, и который будет использоваться для доступа к удаленному порту 3306. Адрес 127.0.0.1:3306 указывает на то, что MySQL работает на удаленном сервере на локальном адресе 127.0.0.1 (localhost) и на порту 3306.

Теперь, когда туннель установлен, можно установить безопасное соединение с базой данных MySQL на удаленном сервере, используя локальный порт 53306.

SFTP

SFTP (Secure File Transfer Protocol) — это протокол передачи файлов, который работает по защищенному каналу и является частью OpenSSH, поэтому, если ваш демон SSH работает правильно, вы можете использовать SFTP без какой-либо дополнительной настройки. Основное различие между SFTP и стандартным FTP заключается в том, что SFTP шифрует всю информацию.

Для создания сеанса SFTP используйте те же учетные данные — логин и пароль или ключ — что и для SSH. Кроме того, вы можете указать порт, если вы изменили его с 22 по умолчанию на какой-либо другой порт. Для этого используйте следующую команду:

  • sftp -oPort=222 remote@example.com

После успешной аутентификации вы окажетесь на удаленном сервере и сможете работать с файлами.

Удаление образов, контейнеров, томов и сети Docker

Docker — инструмент для создания приложений с использованием контейнеров. При инициализации Docker появляются расходные файлы и объекты, которые необходимо очищать.

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

Удаление контейнеров

Перейдите во вкладку «Containers/Apps» (веб Docker Desktop). Укажите, что нужно сделать с элементами и примените:

Также, способ, использую консоль. Команда для удаления — docker container rm. Синтаксис:

  • docker container rm [параметры удаления] [ID объектов]

Параметры — (—force/-f — удаление контейнера в принудительном порядке), (—link/-l — удалить связь между элементами), (—volume/-v — удалить неопределенные тома, которые связаны с контейнером). ID получите с помощью команды — docker ps.

Параметры:

  • —-all или -a: выводим все работающие контейнеры
  • —filter или -f: фильтрация флагов
  • —format: формат вывода
  • —last или -n: вывод информации о последних n контейнерах
  • —latest или -l: вывод информации о последнем контейнере
  • —no-trunc: полный вывод
  • —quiet или -q: отдельный вывод идентификационного номера
  • —size или -s: вывод размера

С этими параметрами можно гибко взаимодействовать с группой контейнеров или отдельными единицами. Например, чтобы создать списки контейнеров на удаление — docker ps -a -f status=created -f status=exited, чтобы удалить — docker container  rm $(docker ps -a -f status=created -f status=exited -q). Перед удалением лучше остановить предполагаемые контейнеры. Чтобы удалить все контейнеры:

  • docker stop $(docker ps -a -q)
  • docker container  rm $(docker ps -a -q)

Удаление образов

Перейдите во вкладку «Images».

Чтобы удалить, найдите «Clean up…», выберите образы для удаления. Если образ в работе, просто удалить его не получится.

Через командную строку

docker rmi [параметры удаления] [ID образов]

Параметры:

  • —force или -f: удалить образ в принудительном порядке 
  • —no-prune: не удалять непомеченные 

Узнать ID образа:

  • docker images [параметры] [REPOSITORY:[TAG]]

Параметры:

  • —all или -a: выводим все образы. По умолчанию промежуточные будут скрыты;
  • —digests: выводим дайджесты;
  • —filter или -f: фильтр по флагам;
  • —format: формат вывода;
  • —no-trunc: не обрезать вывод;
  • —quiet или -q: выводим только идентификаторы;

Запросите нужный список образов и используйте его как параметр для команды docker rmi. В качестве примера избавимся от образов, не привязанных к контейнерам. Для этого воспользуемся флагом dangling=true — docker images –filter dangling=true. Чтобы удалить список — docker rmi $(docker images –filter dangling=true -q). Чтобы удалить неработающие образы — команда docker image prune.

Удаление томов

Том — это файловая система, которая находится вне контейнеров, размещенная на хост-машине. Если вы хотите освободить пространство на диске от них, перейдите в раздел «Volumes», в правом верхнем углу выберите:

Чтобы удалить тома: docker volume rm [параметры] [имена томов]

Параметров у этой команды довольно мало, возможно принудительное удаление тома. Удалить можно только те тома, что не связаны с работающими контейнерами.

docker volume ls [параметры] — команда для определения имени тома. Параметры:

  • —filter или -f: фильтр по флагам
  • —format: формат вывода
  • —quiet или -q: выводим только имена

Чтобы стереть тома, несвязанные с контейнерами — docker volume ls -f dangling=true. Команда для запуска удаления — docker volume rm $(docker volume ls -f dangling=true -q). Но можно обойтись и другой командой для удаления таких томов: docker volume prune.

Удалить сети

Чтобы удалить сети в Docker, используйте команду «docker network rm» со следующим синтаксисом:

docker network rm [Сетевые имена/идентификаторы]

Эта команда не имеет параметров. Вы можете передавать как имена, так и идентификаторы. Чтобы узнать имена и идентификаторы сетей, используйте «docker network ls»:

docker network ls [параметры]

Есть 4 параметра:

  • —filter или -f: фильтровать по флагам
  • —format: выходной формат
  • —no-trunc: не обрезать вывод
  • —quiet или -q: показать только идентификаторы

Перед удалением сети необходимо удалить объекты, которые ее используют. Чтобы узнать, какие контейнеры используют конкретную сеть, используйте следующую команду:

docker ps -f network=[ID сети]

После этого можно приступать к удалению сети. Например, чтобы удалить сети со значением driver=bridge:

docker network ls -f driver=bridge

docker network rm $(docker network ls -f driver=bridge -q)

Очистка Docker от всех объектов

Сначала остановить и удалить все контейнеры:

  • docker stop $(docker ps -a -q)
  • docker rm $(docker ps -a -q)

Удалить все образы:

  • docker rmi $(docker images -a -q)

Удалить все тома:

  • docker volume rm $(docker volume ls -a -q)

Удалить все сети:

  • docker network rm $(docker network ls -a -q)

Как установить Docker на Ubuntu 22.04

Docker — программное обеспечение с открытым исходным кодом. Docker используют для создания контейнеров (виртуализация). Контейнеры меньше расходуют вычислительные ресурсы, в отличии виртуальных машин.

Системные требования

Docker может быть запущен совместно с большим количеством системных архитектур. Требования к аппаратной оболочке зависят от задач, которые будут выполнятся. Поэтому, настоятельно рекомендуем перед использованием Docker провести анализ, чтобы выявить необходимость развертки контейнеров.

Установка Docker на Ubuntu 22.04

Обновите пакеты

  • sudo apt update

Установите специальные пакеты

  • curl 
  • software-properties-common
  • ca-certificates
  • apt-transport-https

Команда для установки — sudo apt install curl software-properties-common ca-certificates apt-transport-https -y

Команда автоматически примет все необходимые соглашения

Импорт GPG

  • curl -f -s -S -L https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add —

Ключ GPG используется для подписи программного обеспечения.

Добавление Docker

Выполните команду в терминале:

  • sudo add-apt-repository «deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable»

Обновите пакеты

  • sudo apt update

Проверьте репозиторий

  • apt-cache policy docker-ce

Проконтролируйте, установка зависимостей должна происходить в подготовленной среде (репозитории).

Установите Docker

  • sudo apt install docker-ce -y

Проверьте успешность установки:

  • sudo systemctl status docker

Если успешно — статус Active(Running)

Docker Compose — Ubuntu 22.04

Docker Compose — инструмент Docker. С помощью него возможно управлять множеством контейнеров. Оркестрация позволяет образовать большое количество контейнеров в единую инфраструктуру. Диспетчеризация (управление) производится через YAML-файл, содержащий параметры для контейнеров и программных оболочек.

Установка через Git 

  • sudo apt-get install git

Узнать версию Git 

  • git —version

Чтобы перенести репозиторий, перейдите на веб-страницу Docker Compose на GitHub и скопируйте выделенную на картинке ссылку:

С помощью git clone:

git clone https://github.com/docker/compose.git

Установка вручную

На GitHub найдите последний релиз и загрузите:

Команда для загрузки:

  • sudo curl -L «https://github.com/docker/compose/releases/download/v2.12.2/docker-compose$(uname -s)-$(uname -m)» -o /usr/local/bin/docker-compose

Как только файлы загрузятся, установите права на использование:

  • sudo chmod +x /usr/local/bin/docker-compose

Apt-get установка

Используя встроенный пакетный менеджер, установить Docker Compose можете через команду: 

  • sudo apt-get install docker-compose

Установка Terraform: пошаговая инструкция

Terraform — программное обеспечение, предназначенное для гибкого управления системами Hashicorp.  Является системой управления для облачных решений. Главные плюсы использования — наличие автоматизации.

Принципы работы

Инструмент использует файлы конфигураций HCL, чтобы предоставить вам конструктор будущей инфраструктуры. Использовать можно по-разному, например, для того, что инициализировать новые связи между компонентами. Помимо общей структуры, пользователь также может задать параметры для ресурсов.  Terraform учитывает зависимости между компонентами, поэтому запуск осуществляется после полной проверки и изучения темплейтов. При редактировании конфигурации, изменения вносятся автоматически.

Terraform и Windows

Два способа:

  • менеджер пакетов 
  • установка вручную

Chocolatey

Пакетный менеджер Windows.

choco install <package_name>

Имя пакета —- <package_name>

Запустите командную строку с правами администратора, установите terraform:

choco install terraform

Чтобы удостовериться в установке, введите команду:

C:\Windows\system32>terraform -v

Установка вручную

  1. https://www.terraform.io/downloads.html — скачайте файл 
  2. Распакуйте архив

Далее, настроим PATH:

  1. Панель Управления — Система и безопасность 
  2. Система — Изменение системных переменных среды
  3. Свойства Системы — Дополнительно 
  4. Редактировать PATH 
  5. Выберите путь до Terraform 
  6. OK

Перепроверьте командой terraform -v

Terraform Ubuntu

  1. sudo apt update
  2. sudo apt install wget unzip
  3. cd ~
  4. загрузка инструмента —- wget https://releases.hashicorp.com/terraform/0.x.x/terraform_0.x.x_linux_amd64.zip
  5. переместите файл в  /usr/local/bin — sudo mv terraform /usr/local/bin/
  6. проверка версии —- terraform -v

Terraform: мощный инструмент для администрирования

Программное обеспечение позволяет значительно упростить процесс администрирования комплексных систем. Оптимизация и автоматизация — главные плюсы. 

SSH-туннели: примеры и функции

SSH-туннелирование необходимо для обеспечения безопасности канала передачи данных посредством шифрования. Обычно, каналы устанавливаются между локальным хостом и удаленным сервером.

Структура туннелей

SSH — (secure shell) протокол, предназначенный для обеспечение удаленного управления системами. Главная особенность — наличие шифрования. Туннелирование Secure Shell (SSH) — это метод, используемый для установления безопасного соединения с удаленным компьютером. Он включает переадресацию портов SSH для передачи TCP-пакетов и преобразование заголовков IP для безопасной связи. В отличие от VPN, который позволяет передавать информацию в любом направлении, туннелирование SSH имеет определенную точку входа и выхода для связи. Поэтому важно понимать разницу между SSH и VPN при сравнении двух технологий.

Создание туннеля

Используются два ключа (приватный и открытый). На сервере хранится публичный ключ, на локальном хосте — приватный.

Ubuntu и другие дистрибутивы Linux/macOS

Терминал:

ssh-keygen -t rsa

Вывод:

Enter file in which to save the key (/home/user/.ssh/id_rsa):

По умолчанию закрытый ключ истории хранится в папке .ssh в файле id_rsa. Однако у вас есть возможность указать другое местоположение и имя файла.

Затем система предложит вам установить пароль для дополнительной защиты ключа. Это важно для предотвращения несанкционированного доступа лиц, имеющих доступ к машине. Это особенно полезно, когда несколько человек используют один и тот же компьютер. Если вам не требуется пароль, просто оставьте поле пустым и нажмите Enter.

Enter passphrase (empty for no passphrase):

После успешного создания пары ключей в терминале появится такая запись:

Your identification has been saved in /home/user/.ssh/id_rsa.

Your public key has been saved in /home/user/.ssh/id_rsa.pub.

The key fingerprint is:

476:b2:a8:7f:08:b4:c0:af:81:25:7e:21:48:01:0e:98 user@localhost

Теперь нужно скопировать публичный ключ и добавить его на удалённую машину. Можно открыть файл /home/user/.ssh/id_rsa.pub через любой текстовый редактор или вывести его содержимое в терминале:

cat ~/.ssh/id_rsa.pub

Скопируйте ключ и добавьте его на сервер. Убедитесь, что в нём нет пробелов и переносов.

Можно скопировать открытый ключ автоматически, используя команду:

ssh-copy-id user@remoteserver

Вместо использования параметра HOST соединение с сервером будет установлено с использованием его общедоступного IP-адреса. Если вы не установили пароль для дополнительной защиты закрытого ключа, вводить дополнительную информацию не требуется. Безопасность системы поддерживается за счет использования как открытых, так и закрытых ключей, которые сопоставляются для установления безопасного соединения при обнаружении.

При первом подключении вы получите предупреждение о неизвестном хосте. Система спросит, доверяете ли вы ей. Чтобы продолжить, введите «да» и нажмите клавишу ввода.

Для максимальной безопасности рекомендуется не использовать учетную запись суперпользователя для этого подключения. Кроме того, связь между терминалом локального компьютера и удаленным сервером можно сделать более безопасным, указав в команде параметр -N. Пример команды показан ниже:

ssh -N -L -g 3389:192.168.0.105:3389 user@rt.example.com

Windows

Существуют 2 способа установить туннелирование в Windows (консоль и PuTTygen).

Команда для PowerShell:

ssh-keygen -t rsa

У вас есть возможность либо защитить закрытый ключ паролем, либо оставить поле пустым и нажать Enter.

Открытый ключ по умолчанию хранится в файле ~/.ssh/id_rsa.pub, а закрытый ключ с именем id_rsa находится в том же каталоге. Вы можете получить доступ к файлу открытого ключа через текстовый редактор или с помощью команды Cat в PowerShell.

cat ~/.ssh/id_rsa.pub

Скопируйте открытый ключ, перенесите его на сервер. Выполните соединение:

ssh root@HOST

Вместо использования параметра HOST соединение с удаленным сервером будет установлено с использованием его общедоступного IP-адреса. Если вы не установили пароль для дополнительной защиты закрытого ключа, вводить дополнительную информацию не требуется. Система проверит открытый и закрытый ключи, и если они совпадут, в Windows будет установлен SSH-туннель.

При первом подключении может появиться предупреждение о неизвестном хосте. Система предложит вам подтвердить, доверяете ли вы ей. Чтобы продолжить, введите «да» и нажмите Enter.

Чтобы сгенерировать пароль с помощью PuTTygen:

  1. Нажмите кнопку Generate.
  2. Подвигайте курсором в любом направлении до тех пор, пока строка прогресса не заполнится.
  3. Сохраните публичный и приватный ключи.
  4. Откройте файл с публичным ключом. 
  5. Скопируйте публичный ключ и добавьте его на удаленный сервер.

Для подключения также можете использовать PuTTy. Запустите программу, введите исходные данные для подключения.

SSH Proxy

SSH-tunnel Proxy — инструмент для обеспечения безопасного доступа к системе. Приложения должны использовать SOCKS-proxy. Например, сотрудник, находясь в удаленной точки мира от офиса, осуществляет подключение в корпоративную сеть, используя зашифрованный туннель, чтобы никто не смог получить поток конфиденциальных данных.

Туннелирование:

ssh -D 8888 user@remoteserver

Команда запускает прокси, порт 8888 (служба работает на localhost).

google-chrome —proxy-server=»socks5://192.168.1.10:8888″

В этом случае, вы прослушиваете входящий трафик Wi-Fi/Ethernet.  

Динамический туннель

Сокет TCP на локальном хосте позволяет открыть динамический туннель SSH. Этот тип туннелирования используется в случае, если необходимо создать приватное соединение, но такой возможности нет.

Однократный выход в сеть:

ssh -D 1080 user@vps.example.com

Прокси SOCKS функционирует на порте 1080. Через динамический туннель невозможно открыть порты во внешний периметр. Чтобы настроить туннелирование в PuTTy (Connection — SSH — Tunnels).

Форвардинг портов

Открывается порт на хосте, после также открывается порт на сервере.

ssh  -L 9999:127.0.0.1:80 user@remoteserver

Перенаправление происходит через 80 порт.

Reverse-tunnel

ssh -v -R 0.0.0.0:1999:127.0.0.1:902 192.168.1.100 user@remoteserver

Перенаправление в обратном порядке (1999 порт — 902 порт). 

Удаленное выполнение команд

ssh remoteserver «cat /var/log/nginx/access.log» | grep badstuff.php

выполнение grep

Rsync

tar -cvj /datafolder | ssh remoteserver «tar -xj -C /datafolder»

Создание резервной копии, распаковка копий на другом оборудовании 

Команда для регулярного создания копий:

rsync -az /home/testuser/data proglibserver:backup/

Rsync перед изготовлением копии просматривает историю бэкапов, чтобы избежать повторения.

Запуск приложений

ssh -X remoteserver vmware

Пример команды, запускается vmware. 

Прыжки по хостам

При наличии сегментированности в сети, нужно проложить туннель через все пункты, чтобы обезопасить канал передачи данных. Параметр -J поможет установить цепочку переадресаций:

ssh -J host1,host2,host3 user@host4.internal

Локальная папка на удаленной машине

sshfs user@proglibserver:/media/data ~/data/

sshfs свяжет каталог с сервером

Установка OpenVPN сервера на Linux и настройка клиента для подключения к нему

Требование к оборудованию

Виртуализация — KVM. Сервер — VPS/VDS на Linux.

Установка OpenVPN

С помощью Docker

  • apt install curl docker.io
  • yum install docker curl 
  • docker run —name dockovpn —cap-add=NET_ADMIN \

     -p 1194:1194/udp -p 80:8080/tcp \

   -e HOST_ADDR=$(curl -s https://api.ipify.org) \

 alekslitvinenk/openvpn

Когда ваша конфигурацию подготовиться, скачайте ее по ссылке — http://ваш IP/

С помощью скрипта

Скачайте скрипт: 

  • curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh

Права для файла:

  • chmod +x openvpn-install.sh

Запуск скрипта:

  • ./openvpn-install.sh

Перед запуском VPN, укажите во время исполнения скрипта IP-адрес. Шлюз лучше не указывать, чтобы избежать ошибок исполнения.

Вы можете добавить пароль на подключение. Чтобы не инициализировать ключ для подключения, введите цифру 1.

Client name: openvpn

Do you want to protect the configuration file with a password?

(e.g. encrypt the private key with a password)

  1) Add a passwordless client

  2) Use a password for the client

Select an option [1-2]: 1

Создан файл, располагающийся в /root/client.ovpn

  • client — имя пользователя

Чтобы скачать файл конфигурации, проведите аналогичную процедуру (ваш IP). При повторном запуске скрипта, вы можете:

  • удалить пользователя OpenVPN
  • удалить OpenVPN
  • добавить пользователя OpenVPN

Ручная установка OpenVPN

Установка сервера

  • apt install -y openvpn

Разархивируйте ключи: 

mkdir /src; cd /src && wget https://github.com/OpenVPN/easy-rsa/archive/master.zip

unzip master.zip

cd easy-rsa-master/easyrsa3

./easyrsa init-pki

Создайте центр сертификации. Пароль, который будет необходим для завершения сохраните:

./easyrsa build-ca

Вывод:

./pki/ca.crt

./pki/private/ca.key

Сгенерируйте запрос, чтобы создать сертификат, позволяющий осуществлять подключение к серверу, не используя пароль:

./easyrsa gen-req server nopass

Подпишите запрос. Для этого используйте пароль, который установили при создании центра сертификации:

./easyrsa sign-req server server

Вывод:

./pki/issued/server.crt

Сгенерируйте ключи для клиента:

./easyrsa gen-req client nopass

./easyrsa sign-req client client

Вывод (два файла):

./pki/private/client.key

./pki/issued/client.crt

Сгенерируйте файл с параметрами Диффи-Хеллмана:

./easyrsa gen-dh

Вывод:

./pki/dh.pem

Перенесите файлы:

mv ./pki/dh.pem /etc/openvpn/dh1024.pem

mv ./pki/private/client.key /etc/openvpn/

mv ./pki/private/server.key /etc/openvpn/

mv ./pki/ca.crt /etc/openvpn/

mv ./pki/issued/client.crt /etc/openvpn/

mv ./pki/issued/server.crt /etc/openvpn/

client.crt, client.key, ca.crt переместите на устройство (компьютер) пользователя, который инициирует подключение к серверу OpenVPN:

cd /etc/openvpn

mkdir ovpn-client

cp -rp  client.crt client.key ca.crt ./ovpn-client/

zip ovpn-client.zip ./ovpn-client/*

Настройка файла конфигурации

Расположение файла — /etc/openvpn. Имя файла — server.conf. Пример конфигурации:

port 1194

proto tcp

dev tun

ca ca.crt

cert server.crt

key server.key  # This file should be kept secret

dh dh1024.pem

server 10.8.0.0 255.255.255.0

ifconfig-pool-persist ipp.txt

keepalive 10 120

comp-lzo

persist-key

persist-tun

status openvpn-status.log

log         openvpn.log

log-append  openvpn.log

verb 3

push «redirect-gateway def1»

push «dhcp-option DNS 8.8.8.8»

В  конфигурационном файле в опциях ca, cert, key, dh можно использовать абсолютные пути до файлов или пути относительно директории /etc/openvpn.

Абсолютные пути:

ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt

cert /etc/openvpn/easy-rsa/2.0/keys/server.crt

key /etc/openvpn/easy-rsa/2.0/keys/server.key

dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem

Сохранение файла, настройка маршрутизации для OpenVPN server:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

echo 1 > /proc/sys/net/ipv4/ip_forward

Запуск OpenVPN:

systemctl start openvpn

Настройка OpenVPN

Если сервер был установлен при помощи скрипта или с использованием Docker, то конфигурационный файл openvpn.conf генерируется автоматически, его необходимо импортировать в ваш OpenVPN клиент. Если настройка производилась вручную, то и файл конфигурации для клиента необходимо корректировать вручную. Далее о том, как это сделать.

Windows

Клиент для Windows: https://openvpn.net/

Скрипт или контейнер

Импортируйте конфигурацию:

Выберите необходимый файл:

Конфигурация успешно импортирована:

Чтобы подключиться:

Подключение после ручной корректировки

Перейдите в директорию, где расположена программа (например, C:\Program and Files\OpenVPN\sample-config).

Откройте в текстовом редакторе файл client.ovpn, внесите дополнение:

remote my-server-1 1194

Скачивайте данные файлы (скачать нужно в ту директорию, где проводили корректировки):

/etc/openvpn/easy-rsa/keys/ca.crt

/etc/openvpn/easy-rsa/keys/client.crt

/etc/openvpn/easy-rsa/keys/client.key

Выберите Start OpenVPN on this config file. Сообщение в случае успешного соединения:

Linux

Установка клиента:

Centos 7 (yum install -y openvpn)

Debian/Ubuntu (apt install -y openvpn)

Скрипт или контейнер

Разместите файл .conf в /etc/openvpn/client.conf, выполните подключение:

 openvpn —config /etc/openvpn/openvpn.conf

Загрузите 3 файла, созданных на сервере в директорию /etc/openvpn/:

client1.key

client1.crt

ca.crt

Вы получите файл с кодом:

remote <IP.вашего.сервера> 1194

push «redirect-gateway def1»

tls-client

remote-cert-tls server

nobind

proto tcp-client

dev tun0

pull

resolv-retry infinite

comp-lzo

ca ca.crt

cert client1.crt

key client1.key

persist-tun

persist-key

verb 3

route-method exe

route-delay 2

Подключение после ручной корректировки

openvpn —config /etc/openvpn/openvpn.conf

Команды OpenSSL

Создать ключ для SSL-сертификата:

  • openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key

Если вы потеряли инициализированный пароль или файл-ключ, то единственное решение — перевыпуск сертификата

Генерация запроса CSR:

  • openssl req -new -key cert.key -out cert.csr

Доменное имя (цель запроса) пропишите в Common Name — example.com. Далее нажмите Enter

Единая команда для одновременного создания запроса и ключа:

  • openssl req -batch -new -newkey rsa:2048 -nodes -keyout cert.key -subj ‘/C=RU/ST=Moscow/L=Moscow/O=Jingel Inc/OU=Research team/emailAddress=root@example.com/CN=example.com’ -out cert.csr

Единая команда для одновременного создания ключа и самоподписанного сертификата:

  • openssl req -newkey rsa:1024 -nodes -keyout server.key -out server.crt -x509 -days 3650 -subj \»/C=XX/ST=XX/L=XX/O=XX/OU=XX/CN=example.com/emailAddress=»root@example.com

Уничтожить пароль для ключа (в случае, если сертификат ставится в ручном режиме для конфигурации Apache, иначе пароль не снимется):

  • openssl rsa -in cert.key -out cert.key

после введите новый пароль

Мониторинг данных CSR:

  • openssl req -noout -text -in cert.csr

Мониторинг данных сертификата:

  • openssl x509 -noout -text -in cert.crt

Проверка на соответствие ключа и сертификата:

  • openssl x509 -noout -modulus -in cert.crt | openssl md5
  • openssl rsa -noout -modulus -in cert.key | openssl md5

Полученные значения в результате исполнения команд должны быть идентичными

Узнаем длину запроса:

  • echo ‘(‘ `openssl req -noout -modulus -in cert.csr | cut -d’=’ -f2 | wc -c` ‘-1)*4’ | bc

Проверка выдачи HTTPS:

  • openssl s_client -connect localhost:443 -state -debug 
  • GET / HTTP/1.0

Для почты:

  • openssl s_client -connect localhost:993 -showcerts

PFX-контейнер, создание из файлов ключа и сертификата:

  • openssl pkcs12 -export -in certificate.crt -inkey certificate.key -out certificate.pfx

Изменение SSL-сертификата:

  • openssl req -new -newkey rsa:1024 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 5000 -out /etc/pki/tls/certs/localhost.crt

Для чего использовать OpenVPN

Что такое OpenVPN

OpenVPN — это популярная реализация технологии VPN. Используется для создания виртуальных корпоративных сетей. Более стабильный и надежный, чем SSTP, Wireguard, SoftEther. OpenVPN — кроссплатформенный open-source продукт. Может работать со многими маршрутизаторами. Новые реализации работают быстрее OpenVPN, но возможно компенсировать потерю скорости, заменив TCP-порт на UDP.

*TCP & UDP -протоколы транспортного уровня, отвечающие за логическую маршрутизацию данных в сети.

Конфиденциальность данных в OpenVPN обеспечена с помощью OpenSSL, 256-битный ключей-шифрования и сложных алгоритмов шифрования. Проект развивается динамично, новые обновления выходят, баги и уязвимости исправляются.

Как работает OpenVPN

Инициализируется защищенное соединение между VPN-клиентом и сервером. OpenVPN применяется повсеместно. Например, при организации удаленной работы для сотрудника (ов). VPN также является инструментом защиты данных при взаимодействии с публичными точками доступа. VPN часто находит применение как инструмент обхода интернет-блокировок. 

OpenVPN — реализация VPN, позволяющая гибко настраивать VPN-соединение, используя дополнительные опции (например, улучшение авторизации/аутентификации). 

Одна из привлекательных для пользователей возможностей — организация туннелирования (два хоста в связке через безопасное соединение). Хосты друг друга идентифицируют через специальные сгенерированные ключи, адреса не задействуются. OpenVPN удобно использовать для организации соединения “site-to-site”.

Начало работы с OpenVPN

В настройках сетевых соединений найдите пункт Предустановленно ПО, выберите OpenVPN. Про настройку OpenVPN — link

Как подключиться к серверу по SSH?

SSH — протокол, предназначенный для обеспечения дистанционного управления ОС. Удаленное подключение возможно осуществить к любой серверной машине, на которая управляется ОС из группы Linux. В Windows существует аналогичная возможность, используется другой протокол — RDP. 

Доступ к серверу

Чтобы подключиться по SSH, необходимо знать IP и данные учетной записи администратора. Эти данные вы можете найти на электронной почте, которую использовали для активации VDS.

Подключение SSH с устройства Windows

Используем puTTY. 

  1. Скачайте утилиту (https://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
  2. Откройте putty.exe

Порт должен быть 22, Тип Соединения — SSH. Host Name установите IP-адрес сервера. Нажмите Open.

Приложение предупредит вас о подключении к новому серверу. Выберите Да.

Осуществите подключение к серверу в режиме администратора (root — логин).

Далее вам необходимо ввести пароль. Пароль вводится в слепом (безопасном режиме), поэтому не обращайте внимание на отсутствие символов. В случае, если вы ошиблись, увидите сообщение Access denied. После успешного входа, вы увидите символику терминала в консоли:

Как подключиться к серверу по SSH с компьютера на Linux/MacOS

Найдите в Spotlight Терминал.

Подключение по SSH:

  • ssh username@ip_adress

username замените на логин пользователя в вашем случае, ip-address — IP сервера, к которому необходимо подключиться. Команда для нестандартного порта:

  • ssh username@ip_adress -p 22

Далее, введите пароль, подтвердите подключение. Нажмите Enter, если все в порядке, перед вами появится символика терминала виртуального сервера.

Veeam Backup и копирование на хранилище (S3)

Необходимость в резервных версиях

Поломка системы может произойти совершенно неожиданным образом. И понять, что стало причиной краха, внешние факторы или некомпетентность сотрудников, бывает не всегда возможно. Помимо поломок, специалист, работающий с данными сервера, может совершить ошибку и, например, удалить важные данные. Резервное сохранение — верный способ обезопасить себя от случившихся, или пока еще нет, обстоятельств. 

Готовим данные к бэкапу

Вам понадобятся привилегированные права на управление сервером, данные и версии которого необходимо зарезервировать, сервер на Windows Server, на котором будет установлена утилита Veeam Backup и контейнер-хранилище для копий. Грамотно выстроенная система управления версиями — фундамент, на котором базируются бесперебойность и гибкость рабочей системы.   

Конфигурация бэкапа

Первым делом осуществите подключение к серверу, объекту бэкапа, по RDP, и скачайте S3-Browser. Затем создайте аккаунт и заполните поля ввода.

Нажмите на New Bucket и откройте новое хранилище S3:

Необходимо установить и инициализировать утилиту для развертывания хранилищ S3, которую можно скачать по ссылке. Далее, после установки, перезагрузите сервер, откройте TNT Drive, выберите создание нового аккаунта и введите учетные данные.

Drives — Add new drive, определите развертывание виртуального хранилища, как локального диска.

На главной странице удостоверьтесь в наличии подготовленного контейнера:

Пришло время открыть Veeam Backup. В разделе Backup Infrastructure добавьте новое место хранения. Точку сохранения лучше привязать к папке, где подключен S3.

Для доступности лучше удалить папку, созданную при установке мест хранения.

Откройте вкладку Home, задайте работу по бэкапу версий компьютера на LINUX.

Mode работы зависит от потребностей в контексте задачи. Удаленные сервера лучше использовать в связке с агентом, который будет развернут на сервере-источнике.

Выберите название работы и установите данные, необходимые для соединения с сервером.

Выберите объект резервации и место сохранения копий.

Выберите частоту резерваций, после сохраните настройки кнопкой Apply.

Установка Seafile на Windows

Облачные сервисы — тренд в информационных технологиях. Это обусловлено тем, что на смену классическим технологиям приходят сквозные, более гибкие и более масштабируемые. 

Готовим необходимые компоненты

В основе Seafile используется Python, проверьте, что у вас установлена актуальная версия языка или скачайте на официальном сайте и разверните Python.

Для дальнейших настроек необходимы права администратора. Настройте виртуальное окружение.

Выберите опцию «Переменные среды».

В новом окне отметьте в качестве системной среды Path, выберите «Изменить».

Укажите путь, который вы использовали во время установки Python.

Работа  с Seafile 

Скачайте инструмент с сайта https://www.seafile.com/en/download/

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

Перейдите в директорию Seafile, запустите run.bat. 

Перед вами откроется панель, при помощи которой происходит инициализация. 

Как только процесс установки завершился, правой кнопкой мыши вызовите меню, отметьте пункт:

После вам необходимо ввести учетные данные для получения доступа к Seafile-серверу.

Следующая задача — изменить конфигурацию рабочей области.

Перейдите в каталог, где лежат файлы сервера, откройте файл ccnet.conf для редактирования, в файле отыщите Service_url, измените значение:

SERVICE_URL = http://192.168.1.10:8000

IP измените на IP предполагаемого сервера для использования. Осуществите перезапуск серверной части, через контекстное меню:

Подключитесь

Откройте браузер, в поисковую строку вставьте адрес, указанный ранее в файле ccnet.conf.

В случае, если вы выполнили инструкцию последовательно и правильно, вас встретит страница Seafile, на которой необходимо авторизоваться, чтобы начать настройку работы с хранилищем. 

Zabbix — Windows

Софт, предназначенный для контроля локальных ресурсов и приложений в сетевых системах. Может быть установлен на Windows & *nix. Для установки вам необходим сервер Zabbix и узел на базе OS Windows.

Инициализация

Скачайте Zabbix-оболочку: https://www.zabbix.com/ru/download_agents

Начните установку.

Примите пользовательское соглашение:

В главных настройках необходимо указать IP или хост Zabbix-сервера. При необходимости управления с мастер-сервером, укажите это в настройках (галкой).

Укажите путь установки:

Завершите установку:

Делегирование домена

Делегирование домена возможно только в том случае, если домен 2 уровня. Найдите на сайте Server Space пункт в меню DNS, подпункт «Добавить домен».

Добавьте ваш домен. После чего, у вас есть несколько вариантов, как провести перенос:

  • укажите IP сервера или выберите виртуальный сервер (с виртуальным сервером необходимо самостоятельно указать записи DNS)
  • установить автоматический перенос записей DNS

В панели администрирования записями DNS измените параметры записи NS переносимого домена на адреса конечных NS серверов.

Когда вы установили настройки делегирования, вам необходимо подождать некоторое время (от 6 до 24 часов). Как только процесс завершится успешно, вы сможете управлять записями домена.

 

Перенос 1С в облачное пространство

В погоне за аутсорсингом ПО,  многие инструменты переживали миграцию в облако. Облачные решения удобны в использовании, довольно экономически выгодные. Облачная версия 1С позволяет тратить намного меньше ресурсов на приобретение и организацию  программного обеспечения. Облачная 1С исключает ИТС. Гибкое масштабирование. Аренда 1С позволяет организовывать базы данных без численного ограничения. Во время случайных инцидентов риск потерять информацию снижается. Информация хранится не на рабочей станции, а в дата-центре. Также, файлы и корпоративные документы могут быть перенесены в общий пул доступа. Доступ к данным может осуществляться независимо от времени, 24/7.

1С в облаке:

  • арендная плата 
  • интернет 

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

Доступ к облаку 1C

RemoteApp — мультиплатформенное приложение. Устанавливает соединение посредством SSL. RDP — виртуальное соединение через SSL. Проще говоря, удаленный рабочий стол. Все вычисления происходят на стороне сервера, утилита является лишь туннелем для подключения.

Переход в облако 1С

Первоначально, выберите туннель для подключения в зависимости от поставленной задачи. Создайте профиль в системе 1С, закажите конфигурацию. На почту, которую вы указали при регистрации, отправятся данные для входа.Начните переносить БД самостоятельно или обратитесь к специалистам из технической поддержки.

У вас уже есть лицензия 1С

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

Протокол S3: подключение

Чтобы подключиться по S3 к хранилищу, установите программу S3Browser. После инсталляции, откройте утилиту, найдите в меню пункт Accounts, перейдите во вкладку Add new account

В поле Account Name введите любое осмысленное название. В поле Account Type выберите S3 Compatible Storage. В пункте REST Endpoint добавьте адрес EndPoint (содержится в панели управления хранилищем). Введите данные в поля Access Key ID и Secret Access Key в соответствии с установленными ключами хранилища.

В Use secure transfer добавьте галочку. Перепроверьте все настройки и создайте новый аккаунт. Чтобы осуществить соединение, в пункте Accounts найдите подпункт для установки подключения.

Установка Netcat на Linux/Windows

Netcat — утилита, предназначенная для мониторинга сети. Является частью очень популярной Nmap.

Windows

Первоначально, вам необходимо подключиться к серверу с правами администратора. После этого, загрузите файл-инсталлятор nmap. Откройте его, отметьте необходимые пункты. Когда перед вами появится страница выбора компонентов, отметьте ncat, начните установку (скриншот ниже).

Откройте cmd, определите версию установленной утилиты ncat:

ncat -v

Работа с Netcat

Откройте два экземпляра cmd. В первом запустите ncat -l <port>. Во втором введите команду:

ncat -C localhost <port>

Nmap Linux

Войдите с правами администратора.

Для начала, обновите все системные файлы и пакеты:

apt-get update; apt install -y netcat

По аналогии с Windows, команды те же, проверьте версию и начните использование утилиты.

Работа с DNS

Система доменных имен относится к распределенным системам контроля информации о доменных зонах. DNS соотносит IP и символьной представление адресов. Это нужно, чтобы адаптировать устройство сети для наглядного понимания. Помимо отображения адресов DNS может регулировать нагрузку, обеспечивать редиректы, позволяет интегрировать иные сервисы (почты, телефония) вместе с доменом.

DNS — фундаментальная технология современной интернет-среды. Главный принцип IP-адресации заключается в том, что адреса должны быть уникальными. Но при этом, сеть динамична. IP могут быстро меняться, запросы могут быть нелинейными, это намного усложняет процесс анализа. DNS разработана в 1983 году.

Главные характеристики:

  • Кэш данных. DNS может хранить определенное количество информации о доменах, с которыми взаимодействует/не взаимодействует 
  • DNS может быть организована по принципу иерархического дерева. Главный узле контролирует зону и DNS-сервера, поддерживающие данную доменную зону
  • Возможность хранить и обрабатывать информацию, которая физически или логически изолирована
  • Возможность гибко настраивать управление узлами

Управление доменными именами

Домен — абстрактный элемент, входящий в древо имен узлов (1 уровень домен — .com, 2 уровень домен — подчиненные узлы (example.com), 3 уровень — (mail.example.com).

Уровни — указатель положения домена в системе, чем ниже уровень, тем выше домен стоит в системе.

  • . — 0 уровень
  • .ru — 1 уровень
  • example.com — 2 уровень
  • mail.example.com — 3 уровень 

Домен . — корневой домен. Он по умолчанию обрабатывается браузерной машиной, не показывается пользователю. Имя домена, не содержащее указатель нулевого уровня, называется относительным.  FQDN — Fully Qualified Domain Name). Доменная зона — сегмент древа имен, который находится под контролем конкретного DNS-сервера, с целью передачи иным лицам ответственности за домены в подчинении. DNS-сервер — хостовая машина, служащая узлом контроля за адресами. Также, сервер DNS может передавать (делегировать) запросы (функция распределителя). DNS-клиент — совокупность инструментов и утилит для работы с DNS. 

Ресурсные записи DNS:

  • A — связывание доменных имен и IPv4
  • AAAA — связывание доменных имен и IPv6 
  • CNAME — перенаправление на иное имя домена 
  • MX — указанный почтовый сервер, обслуживающий домен 
  • NS — ссылка на домен, который является ответственным за данный домен
  • TXT — описание домена
  • PTR — указатель связи IP хоста и домена

Рекурсивные/нерекурсивные запросы DNS

При рекурсивном запросе сервер ищет информацию полностью о доменах независимо от принадлежности и приоритетности. Нерекурсивный запрос — целевой запрос, к конкретному узлу. Не всегда полезно использовать только рекурсивные запросы, потому что иногда стоит ограничивать главный DNS сервер. 

Установка SSL-сертификата на Apache

После того как вы заказали сертификат и сгенерировали запрос на валидацию, нужно установить полученные пакеты .crt/.ca на сервер. 

.ca - файл сертификатов 
.crt - файл, сконфигурированный для сайта

Загрузка необходимых файлов на сервер

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

Переносим файлы с Linux/Mac OS

Опция SCP встроена в терминал системы. Положите .ca/.crt на локальный ПК. После, запустите терминал и найдите директорию, в которую сохранили файлы сертификатов. С помощью SCP перенесите файлы на сервер:

scp crt.crt ca.crt user@1.22.33.444:/etc/ssl
  • scp — копирование файлов
  • mydomain.ru_crt.crt — сертификат веб-сайте
  • mydomain.ru_ca.crt — сертификат Центра Авторизации
  • user — root или иное имя пользователя, установленное для подключения к серверу по SSH
  • 1.22.33.444 — IP сервера
  • /etc/ssl — путь до папки, которую вы сохраните файлы

Переносим файлы сертификатов с Windows

Вам необходимо инсталлировать WinSCP. Ссылка: https://winscp.net/download/WinSCP-5.9.1-Setup.exe 

Запустите программу. Заполните строки валидными параметрами для соединения по SSH. Левая часть интерфейса инструмента — список файлов на локальном ПК, правая — список файлов, которые находятся на сервере. Перетащите сертификаты из левого поля в правое. 

Через терминал это делается следующим образом:

cp /home/root/private.key /<span style="font-size: 12.6px;">etc</span>/ssl/private.key
  • cp — копирование
  • /home/root/ — путь до ключа
  • private.key — файл ключа
  • /etc/ssl/private.key — путь, для копирования файла ключа

Чтобы удалить старый ненужный файл конфигурации:

rm /home/root/private.key

Встраиваем SSL-сертификат в Apache

Вы получили заказанные сертификаты. Теперь вам необходимо подогнать настройки вашего сервера под интеграцию с SSL. Произведите подключение к веб-серверу по SSH с правами администратора и выполните следующее: 

  1. включите поддержку SSL на сервере — a2enmod ssl (Ubuntu)
yum install mod_ssl (Cent OS)
  1. отредактируйте конфигурационный файл сервера, на котором будут развернуты сертификаты с помощью утилиты nano. Вставьте в файл следующий код:
SSLEngine on
SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt

SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt

SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key

Где:

  • /etc/ssl/mydomain.ru_crt.crt — путь к сертификату 
  • /etc/ssl/mydomain.ru_ca.crt — путь до файла цепочки сертификатов Центра Сертификации (CA)
  • /etc/ssl/mydomain.ru_key.key — путь к закрытому ключу

Примечание: если вам необходимо, чтобы после инсталляции SSL ваш сайт был доступен только по защищенному протоколу https, измените его конфигурационный файл (добавьте код):

<strong><VirtualHost *:443></strong>         # The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.mydomain.ru
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
<strong> SSLEngine on
SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt
SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt
SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key</strong>
</VirtualHost>

При использовании HTTPS + HTTP

<strong><VirtualHost *:443></strong>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.mydomain.ru
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only

# after it has been globally disabled with "a2disconf".

#Include conf-available/serve-cgi-bin.conf

<strong>        SSLEngine on

SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt

SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt

SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key</strong>

</VirtualHost>

<VirtualHost *:80>

# The ServerName directive sets the request scheme, hostname and port that

# the server uses to identify itself. This is used when creating

# redirection URLs. In the context of virtual hosts, the ServerName

# specifies what hostname must appear in the request's Host: header to

# match this virtual host. For the default virtual host (this file) this

# value is not decisive as it is used as a last resort host regardless.

# However, you must set it for any further virtual host explicitly.

#ServerName www.mydomain.ru

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,

# error, crit, alert, emerg.

# It is also possible to configure the loglevel for particular

# modules, e.g.

#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are

# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

После модификации файла конфигурации, вам необходимо перезагрузить APACHE:

/etc/init.d/apache2 restart (Ubuntu)
apachectl restart (Cent OS)

В случае, если сервер использует межсетевой экран IPTABLES, вам необходимо разрешить внешнее подключение по https:

ufw allow 443/tcp

Проверка настроек

Для проверки валидности конфигурации откройте откройте ваш-веб сайт в браузере по протоколу HTTPS (например, https://mydomain.ru). Если сертификат установлен корректно, в адресной строке вашего браузера вы увидите иконку замка. 

Валидация SSL-certificate

Низший уровень доверия — валидация домена. Для подтверждения владения доменом существует несколько сценариев.

Используя электронный почтовый ящик

Администратору доменного объекта нужно организовать почтовый ящик, на который поступит сообщение от центра сертификации. Возможные варианты имён:

admin@<доменное имя>
administrator@<доменное имя>
webmaster@<доменное имя>
hostmaster@<доменное имя>
postmaster@<доменное имя>

В письме будет специальный код + ссылка для подтверждения. Перейдите по этой ссылке, скопируйте в соответствующую строку код.

DNS-записи

Вы сгенерировали подпись сертификата. У вас появится хеш, который необходимо использовать в настройках доменной зоны, а конкретно в записи CNAME:

_<MD5 hash value from CSR>.<доменное имя>. CNAME <SHA-256 hash value from CSR>.[<uniqueValue>.]comodoca.com.

Запись является валидной при условии, если после доменного имени стоит “.”. CNAME не требует указывать www при любых условиях. Мультидомены должны быть распределены по отдельным записям:

_09f7e02f1975bf211da707a341f153b3.subdomain0.mydomain.com. CNAME 3d874ab7b199418a9014258369048163.9eb1f1472f4da5aa1ab5bcca1b0df53.comodoca.com.

Для домена www:

_81f9e13a1855bf221da717a341f153b3.mydomain.com. CNAME 3d874ab7bacd5f2e3a9e1f2b3a3cc163.1ae0cbd19f4da5aa1ab5bcca1aedf64.comodoca.com.

HTTPS

Вы получили хеш (код). Чтобы подтвердить подлинность, создайте файл .txt и разверните его в соответствии с шаблоном:

http://<mydomain>/.well-known/pki-validation/<хеш-значение MD5 в верхнем регистре>.txt

Файл должен содержать в себе 2 строки: на первой хэш-код, на второй comodoca.com

Обращаем внимание, что если вы используете редиректы — валидация не пройдёт успешно, поэтому перепроверьте заранее организованные каталоги, указанные в пути к файлу, наименование текстового файла должно быть указано в верхнем регистре, содержимая информация в файле не нуждается в разделении “.”, в конце “.” также не ставится.

К примеру, есть url —

http://mydomain.com/.well-known/pki-validation/81F9E13A1855BF221DA717A341F153B3.txt

, текстовый файл (последний элемент в пути) содержит

3d874ab7bacd5f2e3a9e1f2b3a3cc1631ae0cbd19f4da5aa1ab5bcca1aedf64 и comodoca.com

Валидация организации

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

Валидация расширенного уровня

Вам будет необходимо заполнить специальную форму. После пройти валидацию организации, потом валидацию домена. Завершающим этапом является звонок из центра сертификации. Если все данные совпадают и являются валидными, сертификат будет выпущен и подписан. 

Выгрузка и загрузка баз 1С

Как сделать выгрузку базы 1С

Откройте программу 1С Предприятие и выберите нужную базу из списка.

Запустите 1С в режиме «Конфигуратор»

Выберите пользователя имеющего права администратора в базе, введите пароль, если требуется.

Нажмите «Администрирование», затем «Выгрузить информационную базу».

Выберите папку на диске, куда будет выгружена база, укажите имя файла и нажмите «Сохранить». Выгруженная база будет сохранена в формате *.dt

Как загрузить базу из файла

Вам понадобится существующая выгрузка базы в формате *.dt
Запустите программу 1С в режиме «Конфигуратор» под пользователем с правами администратора (см. инструкцию выше).

Нажмите «Администрирование», затем «Загрузить информационную базу».

Выберите файл выгрузки в формате .dt и нажмите «Открыть».

В появившемся окне с предупреждением нажмите «Да».

После завершения загрузки в появившимся окне нажмите «Нет». Если вам необходимо вернуться в конфигуратор, то нажмите «Да».

Готово. Вы получили восстановленную базу из ранее выгруженной.

Docker — установка и использование

Введение 

Docker — инструмент управления процессами приложений в контейнерах. Контейнеры позволяют запускать приложения в изолированной среде и схожи с виртуальными машинами, но изолированные среды контейнеров более мобильные. Также, контейнеры более зависимые от действий оператора хоста. 

Для установки и использования Docker вам понадобятся:

  • Настроенный сервер Ubuntu 20.04
  • Учетная запись в Docker Hub, если вы хотите передавать созданные образы

Шаг 1 

Установите Docker из официального репозитория Ubuntu. Чтобы установить последнюю версию, добавьте ключ GPG из Docker, потом установите пакет.

sudo apt update 
sudo apt install apt-transport-https ca-certificates curl software-properties-common

Эти команды обновят все библиотеки и установят необходимые компоненты для работы с протоколом HTTPS

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Первая команда добавит ключ GPG из официального репозитория Docker, вторая команда добавляет Docker в источники APT.

apt-cache policy docker-ce

Данная команда помогает убедиться в актуальности и подлинности версии Docker.

Установка Docker:

sudo apt install docker-ce 

Теперь Docker установлен, проверьте работу:

sudo systemctl status docker

Если всё в порядке, то увидите следующее сообщение:

Output
docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-19 17:00:41 UTC; 17s ago
TriggeredBy: docker.socket
Docs: https://docs.docker.com
Main PID: 24321 (dockerd)
Tasks: 8
Memory: 46.4M
CGroup: /system.slice/docker.service
   └─24321 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Шаг 2 

По умолчанию команда docker может быть запущена только пользователем root или пользователем в группе docker, которая автоматически создается в процессе установки Docker.Если вы попытаетесь запустить команду docker без префикса sudo или не находясь в группе docker, вы получите такой вывод:

Output
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.

Если вы не хотите вводить sudo при каждом запуске команды docker, добавьте свое имя пользователя в группу docker:

sudo usermod -aG docker ${USER}

Чтобы применить новую конфигурацию в группе, выйдите из сервера и снова войдите или введите следующее:

su - ${USER}

Вам будет предложено ввести пароль пользователя, чтобы продолжить.

Подтвердите, что ваш пользователь теперь добавлен в группу докеров, набрав:

groups

Если вам нужно добавить пользователя в группу docker, под которым вы не вошли в систему, объявите это имя пользователя самостоятельно, используя:

sudo usermod -aG docker username

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

Далее давайте рассмотрим команду docker.

Шаг 3 

Использование докера заключается в передаче ему цепочки параметров и команд, за которыми следуют аргументы. Синтаксис принимает такую форму:

docker [option] [command] [arguments]

Чтобы увидеть весь список команд:

docker
Output
  attach      Attach local standard input, output, and error streams to a running container
  build       Build an image from a Dockerfile
  commit      Create a new image from a container's changes
  cp          Copy files/folders between a container and the local filesystem
  create      Create a new container
  diff        Inspect changes to files or directories on a container's filesystem
  events      Get real time events from the server
  exec        Run a command in a running container
  export      Export a container's filesystem as a tar archive
  history     Show the history of an image
  images      List images
  import      Import the contents from a tarball to create a filesystem image
  info        Display system-wide information
  inspect     Return low-level information on Docker objects
  kill        Kill one or more running containers
  load        Load an image from a tar archive or STDIN
  login       Log in to a Docker registry
  logout      Log out from a Docker registry
  logs        Fetch the logs of a container
  pause       Pause all processes within one or more containers
  port        List port mappings or a specific mapping for the container
  ps          List containers
  pull        Pull an image or a repository from a registry
  push        Push an image or a repository to a registry
  rename      Rename a container
  restart     Restart one or more containers
  rm          Remove one or more containers
  rmi         Remove one or more images
  run         Run a command in a new container
  save        Save one or more images to a tar archive (streamed to STDOUT by default)
  search      Search the Docker Hub for images
  start       Start one or more stopped containers
  stats       Display a live stream of container(s) resource usage statistics
  stop        Stop one or more running containers
  tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
  top         Display the running processes of a container
  unpause     Unpause all processes within one or more containers
  update      Update configuration of one or more containers
  version     Show the Docker version information
  wait        Block until one or more containers stop, then print their exit codes

Шаг 4

Контейнеры Docker создаются из образов Docker. По умолчанию Docker извлекает эти образы из Docker Hub, реестра Docker, которым управляет Docker, компания, стоящая за проектом Docker. Любой может разместить свои образы Docker на Docker Hub, поэтому образы большинства приложений и дистрибутивов Linux, которые вам понадобятся, будут размещены там.

Чтобы проверить, можете ли вы получить доступ и загрузить образы из Docker Hub, введите:

docker run hello-world
Output
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

Первоначально Docker не смог найти образ hello-world локально, поэтому он загрузил образ из Docker Hub, который является репозиторием по умолчанию. После загрузки образа Docker создал контейнер из образа, и приложение внутри контейнера запустилось, отобразив сообщение. В официальном столбце OK указывает на образ, созданный и поддерживаемый компанией, стоящей за проектом. После того, как вы определили образ, который хотите использовать, вы можете загрузить его на свой компьютер с помощью подкоманды pull.

Выполните следующую команду, чтобы загрузить официальный образ Ubuntu на свой компьютер:

docker pull ubuntu

После загрузки образа вы можете запустить контейнер, используя загруженный образ с помощью подкоманды run. Как вы видели в примере с hello-world, если образ не был загружен, когда docker выполняется с командой run, клиент Docker сначала загружает образ, а затем запускает контейнер, используя его. 

Шаг 5 

Контейнер hello-world, который вы запустили на предыдущем шаге, является примером контейнера, который запускается и завершает работу после отправки тестового сообщения. Контейнеры могут быть гораздо полезнее, и они могут быть интерактивными. Ведь они похожи на виртуальные машины, только более ресурсоемкие.

В качестве примера давайте запустим контейнер, используя последний образ Ubuntu. Комбинация ключей -i и -t обеспечивает интерактивный доступ оболочки к контейнеру:

docker run -it ubuntu

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

Теперь вы можете запустить любую команду внутри контейнера. Например, давайте обновим базу данных пакетов внутри контейнера. Вам не нужно ставить перед какой-либо командой префикс sudo, потому что вы работаете внутри контейнера как пользователь root:

apt update
apt install nodejs
node -v

Шаг 6 

После некоторого использования Docker у вас будет много активных (работающих) и неактивных контейнеров на вашем компьютере. Для просмотра активных используйте:

docker ps

В этом руководстве вы запустили два контейнера; один из образа hello-world, а другой из образа ubuntu. Оба контейнера больше не работают, но они все еще существуют в вашей системе.

Чтобы просмотреть все контейнеры — активные и неактивные, запустите docker ps с ключом -a:

docker ps -a

Вы увидите вывод, похожий на этот:

1c08a7a0d0e4        ubuntu              "/bin/bash"         2 minutes ago       Exited (0) 8 seconds ago                       quizzical_mcnulty
a707221a5f6c        hello-world         "/hello"            6 minutes ago       Exited (0) 6 minutes ago                       youthful_curie

Чтобы просмотреть последний созданный вами контейнер, передайте ему ключ -l:

docker ps -l
Вывод:
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
1c08a7a0d0e4        ubuntu              "/bin/bash"         2 minutes ago       Exited (0) 40 seconds ago                       quizzical_mcnulty

Чтобы запустить остановленный контейнер, используйте docker start, за которым следует идентификатор контейнера или имя контейнера. Запустим контейнер на основе Ubuntu с идентификатором 1c08a7a0d0e4:

docker start 1c08a7a0d0e4
Output
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
1c08a7a0d0e4        ubuntu              "/bin/bash"         3 minutes ago       Up 5 seconds

Чтобы остановить работающий контейнер, используйте docker stop, а затем идентификатор или имя контейнера. На этот раз мы будем использовать имя, которое Docker присвоил контейнеру, — quizzical_mcnulty:

docker stop quizzical_mcnulty

Как только вы решили, что вам больше не нужен контейнер, удалите его с помощью команды docker rm, снова используя либо идентификатор контейнера, либо имя. Используйте команду docker ps -a, чтобы найти идентификатор или имя контейнера, связанного с образом hello-world, и удалить его.

docker rm youthful_curie

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

Шаг 7 

Когда вы запускаете образ Docker, вы можете создавать, изменять и удалять файлы так же, как на виртуальной машине. Вносимые вами изменения будут применяться только к этому контейнеру. Вы можете запускать и останавливать его, но как только вы уничтожите его с помощью команды docker rm, изменения будут потеряны навсегда. После установки Node.js внутри контейнера Ubuntu у вас теперь есть контейнер, работающий на основе образа, но контейнер отличается от образа, который вы использовали для его создания. Но вы, возможно, захотите повторно использовать этот контейнер Node.js в качестве основы для новых образов позже.

Затем зафиксируйте изменения в новом экземпляре образа Docker с помощью следующей команды:

docker commit -m "What you did to the image" -a "Author Name" container_id repository/new_image_name

Переключатель -m предназначен для сообщения фиксации, которое помогает вам и другим узнать, какие изменения вы внесли, а -a используется для указания автора. container_id — это тот, который вы отметили ранее в руководстве, когда запускали интерактивный сеанс Docker. Если вы не создали дополнительные репозитории в Docker Hub, репозиторий обычно является вашим именем пользователя Docker Hub.

Например, для пользователя sammy с идентификатором контейнера d9b100f2f636 команда будет выглядеть так:

docker commit -m "added Node.js" -a "sammy" d9b100f2f636 sammy/ubuntu-nodejs

Когда вы фиксируете изображение, новое изображение сохраняется локально на вашем компьютере. Позже в этом руководстве вы узнаете, как отправить образ в реестр Docker, например Docker Hub, чтобы другие могли получить к нему доступ.

Повторный просмотр образов Docker покажет новый образ, а также старый, из которого он был получен:

docker images
Output
REPOSITORY               TAG         IMAGE ID          CREATED        SIZE
sammy/ubuntu-nodejs     latest     7c1f35226ca6     7 seconds ago     179MB
...

В этом примере ubuntu-nodejs — это новый образ, созданный на основе существующего образа ubuntu из Docker Hub. Разница в размерах отражает внесенные изменения. И в этом примере изменение заключалось в том, что был установлен NodeJS. Поэтому в следующий раз, когда вам понадобится запустить контейнер с помощью Ubuntu с предустановленным NodeJS, вы можете просто использовать новый образ.

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

Шаг 8

Следующий логический шаг после создания нового образа из существующего — поделиться им с несколькими избранными друзьями, со всем миром в Docker Hub или в другом реестре Docker, к которому у вас есть доступ. Чтобы отправить образ в Docker Hub или любой другой реестр Docker, у вас должна быть там учетная запись.

В этом разделе показано, как отправить образ Docker в Docker Hub. Чтобы узнать, как создать собственный частный реестр Docker, ознакомьтесь со статьей Как настроить частный реестр Docker в Ubuntu 18.04.

Чтобы отправить образ, сначала войдите в Docker Hub:

docker login -u docker-registry-username

Затем вы можете отправить свой собственный образ, используя:

docker push docker-registry-username/docker-image-name

Чтобы отправить образ ubuntu-nodejs в репозиторий sammy, команда будет выглядеть так:

docker push sammy/ubuntu-nodejs

После отправки образа в реестр он должен быть указан на панели управления вашей учетной записи, как показано на изображении ниже:

Войдите в систему Docker. Затем убедитесь, что образ существует на странице репозитория Docker Hub.
Теперь вы можете использовать docker pull sammy/ubuntu-nodejs, чтобы перетащить образ на новую машину и использовать его для запуска нового контейнера.

Установка Wireguard VPN на VPS

Данное руководство поможет последовательно установить, настроить и отладить WireGuard VPN. Для работы вам понадобится виртуальный сервер под управлением OS Linux. В нашем случае, был выбран Ubuntu 20 с минимальными расширениями. Редактирование файлов будет происходить в программе VIM.

Удалённый сервер

С помощью авторизации по SSH произведите подключение к серверу, на котором будет развернут VPN.

  1. обновление репозиториев apt — sudo apt update -y 
  2. установка WG — sudo apt install -y wireguard
  3. переход в папку с VPN — cd/etc/wireguard/
  4. генерация ключей для соединения с VPN — wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey.Команда tee сохраняет ключи в файл, далее скрипт создает публичный ключ на основе секретного, передает в директорию, полученный файл, сохраняет изменения. 
  5. Командой cat проверьте существование ключей в файлах:
cat publickey
cat privatekey

Следующим шагом в VIM создайте файл конфигурации VPN-сервера. Вставляем:

[Interface]
PrivateKey = <privatekey> # Приватный ключ из файла privatekey.
Address = 10.0.0.1/24 #Адрес VPN-сервера в частной сети.
ListenPort = 51830  #Порт, который будет слушать VPN-сервер.
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  #Команды, который будут выполнять при поднятии сервера
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE  #Команды, который будут выполнять при выключении сервера.

Вместе privatekey вставьте приватный ключ. 

Настройте форвардинг (прохождение трафика через VPN) — 

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf

Включите автоматический запуск VPN после выключения, а также перезагрузки виртуального сервера — systemctl enable wg-quick@wg0.service. Команда вернет сообщение:

Created symlink /etc/systemd/system/multi-user.target.wants/wg-quick@wg0.service → /lib/systemd/system/wg-quick@.service.

Произведите запуск WG — systemctl start wg-quick@wg0.service. Обязательно, уточните статус сервера VPN — systemctl status wg-quick@wg0.service. Настройка сервера завершена. 

Подключение к WG

Создайте пары ключей для клиента — wg genkey | tee /etc/WireGuard/katkov_privatekey | wg pubkey | tee /etc/WireGuard/katkov_publickey

Папка сервера содержит файлы:
.
├── katkov_privatekey — частный ключ клиента
├── katkov_publickey — публичный ключ клиента
├── privatekey — частный ключ WG сервера
├── publickey — публичный ключ WG сервера
└── wg0.conf — конфигурационный файл WG сервера

Откройте файл — vim /etc/WireGuard/wg0.conf

Добавьте в конец файла строки ниже:
[Peer]
PublicKey = <katkov_publickey> #Публичный ключ клиента
AllowedIPs = 10.0.0.2/32 #IP-адрес в час

Добавили, теперь перезагрузите сервер и проверьте статус:

systemctl restart wg-quick@wg0
systemctl status wg-quick@wg0

Вывод:

Настраиваем машину клиента

Мы показываем процесс на примере Windows 11, но любая версия Windows настраивается таким же образом. Не закрывайте сессию SSH на удаленном сервере, потому что нам необходимы ключи из директории /etc/WireGuard/

  1. скачайте WG — https://www.wireguard.com/install/
  2. создайте текстовый документ, файл конфигурации для соединения к серверу WG, местоположение значения не имеет.
    В созданный wgvpn_connect.conf вставьте:

    [Interface] 
    PrivateKey = <CLIENT-PRIVATE-KEY> #Клиентский приватный ключ. В нашем случае katkov_privetkey. 
    Address = 10.0.0.2/32 #IP-адрес клиента, который настроен на WG сервере 
    DNS = 8.8.8.8 #DNS, который будет использовать при подключении 
    [Peer] 
    PublicKey = <SERVER-PUBKEY> #Публичный ключ сервера 
    Endpoint = <SERVER-IP>:51830 #IP адрес удаленного сервера и порт прослушивания 
    AllowedIPs = 0.0.0.0/0 #Если указаны все нули — весь трафик клиента будет проходить через WG сервер 
    PersistentKeepalive = 20 #Интервал проверки соединения между клиентом и сервером (сек).

    Чтобы узнать IP сервера, воспользуйтесь панелью управления или введите команду — curl ifconfig.me

  3. Подготовленный файл загрузите в клиент WG:
  4. Когда будет совершено подключение, индикатор загорится зеленым, трафик будет увеличиваться
  5. ifconfig.me — для проверки IP 

Вы настроили WG VPN-сеть. Чтобы подключать новых пользователей (новые устройства), генерируйте новые ключи и не забывайте давать им осмысленные названия. Также, следите за файлами конфигурации, они тоже должны присутствовать на каждом устройстве в сети. 

 

Создание SSH-ключа, чтобы авторизироваться на сервере

В этом руководстве мы рассмотрим процесс создания ключа SSH в OS Linux и Windows. Этот ключ необходим для подключения к виртуальному серверу на базе Linux OS.

Как работает?
При соединении с каким-либо элементом веб-инфраструктуры обычно используются стандартные ключи — пароли. Авторизация с помощью SSH-keys проходит без введения пароля. Дело в том, что пароли чаще поддаются компрометированию, а ключи почти неуязвимы к краже.

Генерируется не один ключ, а пара — закрытый и открытый. Закрытый ключ хранится на элементе инфраструктуры, к которому производится подключение, а открытый ключ — у вас. В итоге, при соединении ключи совпадают по хэш-сумме. Защита обеспечивается посредством обработки ключей тем способом, который неизвестен третьему лицу.

Генерируем ключи OS Linux
Первым делом сгенерируйте пару зашифрованных ключей на машине, которая будет осуществлять подключение. 

ssh-keygen -t rsa 

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

На скриншоте видно, что ключи записались в директории. 

Генерируем ключи OS Windows
Установите программу PuttyGen. 

Выберите тип ключей «RSA». Значение Number of bits in generated key — 2048. Сгенерируйте (Generate). Key passphrase — кодовая фраза. Двухфакторная авторизация нужна для обеспечения конфиденциальности ключей. Но при этом, каждое подключение требует повторного ввода сид-фразы. Повторите кодовую фразу и сохраните ключи. 

Ключи и панель управления
В настройках есть пункт SSH-ключи, выберите «Добавить SSH-ключ». Затем установите имя для пары ключей и вы увидите поле, подписанное как «Код ключа». 

SSH соединение
При настройке сервера не забудьте включить опцию «Подключение с SSH-ключом»

 

WordPress + LAMP

WordPress — востребованный open-source движок для создания блогов и веб-сайтов. Многие веб-сайты используют специализированные системы управления. 

Данное руководство поможет настроить WordPress на облачном сервере с помощью командной строки. Развёртывание через команды сложнее, чем простое скачивание готовой конфигурации, но при этом командная строка позволяет произвести более гибкую настройку и эффективное администрирование. 

Платформа WordPress требует наличия облачной инфраструктуры и доменного имени. Это руководство показывает способ установки WordPress на стеке LAMP. Расшифровывается как LINUX APACHE MYSQL PHP. Стек — серверная установка (совокупность необходимых инструментов для поддержки веб приложения). 

Требования

Для начала работы вам потребуется доступ к серверу Linux Ubuntu 20.0. А затем нужно выполнить следующие действия:

  • Настройте ваш сервис и проверьте, чтобы был задан пользователя sudo без прав администратора (root).
  • Разверните и проведите отладку стека LAMP
  • Защита для сайта — важный элемент, требующий отдельного внимания. Данные пользователя всегда будут главной добычей для злоумышленников, поэтому настройте шифрование трафика, с помощью технологии TLS/SSL. Здесь есть два варианта: 
  1. Если доменное имя уже готово к использованию, то подключите LETS ENCRYPT. Модуль предоставляет бесплатные подлинные сертификаты. 
  2. В случае, если домен не подобран, то воспользуйтесь самоподписанным сертификатом

Зайдите на сервер пользователем sudo и начните настройку системы по следующему алгоритму: 

ШАГ 1 — База данных

Войдите в учетную запись с правами администратора MYSQL

mysql -u root -p

При этом профиль пользователя не меняется !
Пройдите авторизацию, введите данные учетной записи. Если забыли старый пароль, создайте новый с помощью команды:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

Удобно, можно контролировать базы данных MYSQL через WordPress. 

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Команда создаст базу для WordPress, которая нужна для администрирования. 

Чтобы привязать базы данных, используйте команду:

CREATE USER 'wordpressuser'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

В wordpressuser разрешите абсолютный доступ к ранее созданной базе MYSQL:

GRANT ALL ON wordpress.* TO 'wordpressuser'@'%';
mysql> EXIT; - выйдите из программы

ШАГ 2 — PHP расширение для сервера

PHP реализует коммуникацию всех модулей веб-сайта. Команды, приведенные ниже устанавливают актуальные расширения PHP:

sudo apt update
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Лучше почитать документацию расширений для того, чтобы установить необходимые инструменты. 

Перезагрузите APACHE. Новые расширения автоматически загрузятся, будут готовы к использованию. 

sudo systemctl restart apache2

ШАГ 3 — Конфигурация Apache для переопределения и перезаписи .htaccess

Измените настройки Apache. Предварительно, файл для сайта должен находиться по адресу /etc/apache2/sites-available

Также, мы будем использовать /var/www/wordpress​​​ в качестве корневой директории для нашей установки WordPress. Вы должны использовать корневой веб-узел, указанный в вашей собственной конфигурации. Если вы следовали указаниям нашего руководства по LAMP, вы можете использовать ваше доменное имя вместо wordpress в обоих случаях. После определения пути, перейдите к работе с .htaccess, потому что APACHE нужно обрабатывать изменения настроек в разных директориях. До настройки файлы .htaccess не работают. 

sudo nano /etc/apache2/sites-available/wordpress.conf .Эта команда открывает файл с надстройками Apache. Внутри файла будет закрытый блок Directory. Адрес рядом с первым тегом обозначает корневую папку документа. Вставьте данный кусок кода в блок файла надстроек VirtualHost, перед этим проверьте корректность адреса корневой директории. 

<Directory /var/www/wordpress/>
AllowOverride All
</Directory>

В редакторе nano нажмите сочетание клавиш CTRL и X, затем Y, затем ENTER.

Активация перезаписи mod_rewrite используется для настройки постоянных ссылок WP. Постоянные ссылки упрощают навигацию по веб-сайту для пользователя, а также структурируют вашу разработку. 

sudo a2enmod rewrite
http://example.com/2012/post-name/
http://example.com/2012/12/30/post-name

Активация изменений 

Команда sudo apache2ctl configtest тестирует работу сервера. Проделайте это, чтобы убедиться в отсутствии ошибок при редактировании конфигурационных файлов. 

ШАГ 4 — Выгрузка WordPress

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

cd /tmp
curl -O https://wordpress.org/latest.tar.gz

Эти команды скачивают систему 

Извлечь файлы:

tar xzvf latest.tar.gz

Далее необходимо перенести файлы в корневую папку, создать файл .htaccess 

touch /tmp/wordpress/.htaccess

Можно создать директорию, отвечающую за обновления в автоматическом режиме

mkdir /tmp/wordpress/wp-content/upgrade

Перемещаем все файлы в корневую директорию. 

sudo cp -a /tmp/wordpress/. /var/www/wordpress*

Не забывайте, у вас может быть другая директория (отличная от /wordpress).

ШАГ 5 — Настройка главной папки WordPress

Очень важно установить привязку к корневой директории. 

sudo chown -R www-data:www-data /var/www/wordpress*

Группа команд, которые устанавливают необходимые разрешения

sudo find /var/www/wordpress/ -type d -exec chmod 750 {} \;
sudo find /var/www/wordpress/ -type f -exec chmod 640 {} \;

Сгенерируйте секретный ключ безопасности, который обеспечивает приватность и конфиденциальность использования. 

curl -s https://api.wordpress.org/secret-key/1.1/salt/

Вставьте полученные значения в файл настроек, скопировав вывод скрипта

sudo nano /var/www/wordpress*/wp-config.php

В кавычки вместо ‘put your un…’ вставьте сгенерированные ключи

Поскольку мы предоставили веб-серверу разрешение на запись там, где ему потребуется, мы можем прямо установить метод файловой системы «direct». Если бы мы не внесли это изменение в текущие настройки, это привело бы к тому, что при выполнении некоторых действий WordPress будет запрашивать данные учетной записи для FTP.

ШАГ 6 — Завершение установки с помощью графического интерфейса

После детальной настройки сервера, завершить установку системы через специальный интерфейс. 

Введите в браузер адрес домена или публичный адрес вашего сервера:

https://server_domain_or_IP

Установите язык:

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

Перейдите на следующую страницу:

Совершите авторизацию в учетной записи WordPress:

 Готово! Веб-страница ждёт заполнения и развития. 

Дополнительно 

Выставьте постоянные ссылки для постов (Настройки — Permalinks(Постоянные ссылки)). Можно изменить тему интерфейса (Внешний вид — Темы). Также, есть возможность добавлять пользователей, которые могут редактировать наполнение веб-сайта (Пользователи — Добавить нового +). 

Изменение ключа доступа к учетной записи администратора

Изменять пароль по умолчанию необходимо, чтобы усложнить задачу для злоумышленника. Дефолтные пароли — серьезная брешь в безопасности. Изменить пароль админа на виртуальном сервере OS Linux не так сложно. 

Зайдите на сервер через систему управления, откройте консоль и установите соединение с серверной машиной, используя программу PUTTY.

Откроется командная строка. Вам необходимо ввести данные учетной записи — логин и пароль администратора. 

После успешной авторизации, введите команду passwd. Скрипт автоматически запустит модуль, который отвечает за замену пароля. Придумайте новый ключ доступа, не забудьте его записать или поместить в защищенное место. Повторите новый пароль. Вы увидели сообщение «passwd: password updated successfully», значит пароль успешно изменен.

 

Добавление нового диска и создание разделов на виртуальных серверах под управлением ОС Linux

Проблему с нехваткой места на жестком диске можно решить удалением ненужных файлов, кэша и программ. Однако рано или поздно возможности для удаления исчерпаются и перед пользователем встанет вопрос о монтаже нового носителя в систему. Мы расскажем, как добавить новый диск на Virtual Private Server, Virtual Dedicated Server и Standalone Server.

Предварительная подготовка

Прежде всего нужно проверить наличие жесткого диска в системе, так как его наличие в BIOS не всегда бывает достаточным. Чтобы увидеть в системе все накопители, которые доступны в настоящее время, нужна команда:

sudo fdisk -l

На изображении видно, что в системе есть два диска — sda и sdb, объем каждого из них составляет 10 Гб. Поскольку первый диск системный, вся работа будет вестись с диском sdb. 

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

Разметка диска

Вторым шагом нужно запустить компьютерную программу fdisk и прописать путь до диска:

fdisk /dev/sdb

Ввод “m” с нажатием клавиши Enter вызовет страницу команд, которые доступны пользователю:

Для создания простого раздела можно задействовать весь объем жесткого диска. Для этого нужно нажать клавишу “n” и подтвердить ввод клавишей Enter.

В ответ появится вопрос от системы о том, какой тип раздела требуется создать. Нужно выбрать p (primary) и 1, что будет означать первичный раздел номер 1.

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

После того как все нужные опции выбраны, нужно нажать “w”, чтобы сохранить изменения и подтвердить выбор нажатием Enter.

Форматирование диска

После предыдущих действий в системе на виртуальном сервере появится устройство /dev/sdb1, который и является разделом. Следующим шагом нужно будет форматировать диск.

У Linux есть несколько разных видов файловых систем. Чтобы создать одну из них, нужно ввести команду mkfs и указать ключи или выполнить одну из программ:

Команда для форматирования диска выглядит следующим образом:

sudo mkfs.ext4 /dev/sdb1

Теперь осталось смонтировать диск, чтобы он был полностью готов к работе.

Монтирование диска

В операционной системе Linux можно монтировать диск или другое устройство в любую из свободных директорий.

Для начала нужно создать каталог в директории /mnt:

sudo mkdir /mnt/1

Следующим шагом нужно нужно настроить права, разрешающие доступ к каталогу только root-пользователям и только для чтения и записи

sudo chmod -R 660 /mnt/1

После этого нужно ввести команду для монтирования диска:

sudo mount /dev/sdb1 /mnt/1

Если нужно сделать так, чтобы диск монтировался автоматически при загрузке системы, потребуется отредактировать файл /etc/fstab. Для этого нужно открыть его любым текстовым редактором. В этом примере используется редактор nano:

sudo nano /etc/fstab

Останется добавить в конец файла следующую строку и сохранить файл:

/dev/sdb1 /mnt/1 ext4 defaults 0 0

 

Как копировать файлы и запускать команды через SSH

Управлять *nix серверами можно через подключение с помощью протокола безопасного входа SSH (Secure Shell). Его используют, когда нужно загрузить или выгрузить файл на удаленном сервере. Популярность SSH-подключения обусловлена тем, что действия с файлами через защищенное соединение  полностью безопасно и не вызывает сложностей. Это одна из базовых функций SSH, которая реализуется или через команду scp в Linux-системах или с помощью pscp.exe в составе SSH-клиента Putty для Windows.

Как копировать файлы на удаленном сервере через протокол SSH 

Работа с файлами на ОС семейства Linux

Для работы с файлами необходимо использовать команды такого формата:

scp [модификатор] [источник] [место назначения]

Если для работы используется удаленный сервер, применяют формат параметра, в котором прописываются пользователь и путь к файлу:

[пользователь]@[сервер]:[путь_к_файлу]

Пароль от аккаунта на удаленном сервере вводят уже после того, как команда будет запущена.

Следующая команда позволяет скопировать локальный файл /home/user/file.tgz в домашний каталог на удаленном сервере. Перед вводом нужно заменить 123.123.123.123 на реальный IP-адрес сервера.

scp /home/user/file.tgz root@123.123.123.123:/root

Для того, чтобы скачать файл с удаленного сервера, нужно ввести следующую команду:

scp root@123.123.123.123:/root/file.tgz /home/user

Не обязательно скачивать файлы по одному. В качестве источника можно указывать несколько файлов, разделив их пробелом. В конце нужно указать параметр, который укажет место для скачивания. В этом случае все указанные файлы копируются за один шаг. Например, загрузка файлов file1.tgz и file2.tgz из локального каталога на удаленный сервер вызывается следующей командой:

scp file1.tgz file2.tgz root@123.123.123.123:/root

Скопировать весь каталог, включая все файлы и подкаталоги, можно с помощью модификаторов команды –r.  При этом файлы рекурсивно перенесутся из источника в место назначения. Вот пример команды, с помощью которой можно скопировать локальный каталог /home/user/dir на удаленный сервер:

scp –r /home/user/dir root@123.123.123.123:/root

Для SSH-серверов, использующих нестандартные порты, нужно использовать опцию –P. Вот так будет выглядеть команда для подключения к удаленному серверу через порт 10022:

scp –P 10022 /home/user/file.tgz root@123.123.123.123:/root

Если запустить scp без указания параметров, появится справка о том, какие еще модификаторы поддерживает команда. 

 

Работа с файлами на ОС семейства Windows

Пользователи операционной системы Windows и клиента для работы с сетевыми протоколами удаленного доступа Putty могут использовать те же форматы команды, что и пользователи Linux. Единственное отличие — в названии исполняемого файла и в необходимости использовать синтаксис указания путей к файлам и каталогам Windows. 

После запуска командной строки (cmd.exe) или PowerShell нужно перейти в каталог, в котором находится файл pscp.exe. Здесь нужно ввести следующую команду:

pscp.exe C:Tempfile.tgz root@123.123.123.123:/root

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

“C:Program FilesPuttypscp.exe” C:Tempfile.tgz root@123.123.123.123:/root

Как и в запуске на Linux, для получения информации о синтаксисе команды и поддерживаемых модификаторах необходимо запустить pscp.exe без указания параметров. 

 

Как запускать команды на удаленном сервере через протокол SSH

Протокол SSH может не только выполнять работу в интерактивном режиме, но и поддерживать единичный запуск команд на удаленном сервере. Разберем, как это делается на Linux и Windows.

Запуск команд через SSH на ОС семейства Linux

При работе будут использоваться команды следующего формата:

ssh [пользователь]@[сервер] ‘[команда]’

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

ssh root@123.123.123.123 ‘uname -a’

За один сеанс можно запустить несколько команд. Для этого нужно разделить разные команды с помощью символа “;” в качестве разделителя. Так будет выглядеть проверка сетевых настроек и активных подключений на удаленном сервере:

ssh  root@123.123.123.123 ‘ifconfig; netstat -anp tcp’

Запустить на удаленном сервере не отдельную команду, а локальный файл сценария можно с помощью командного интерпретатора. Для этого нужно вызвать его в SSH в режиме исполнения сценария, а затем передать ему файл сценария. Вот как это будет выглядеть:

ssh  root@123.123.123.123 ‘bash -s’ < /home/user/myscript.sh

После введения этой команды на удаленном сервере запустится локальный файл /home/user/myscript.sh.

Как и при работе с файлами, справка о синтаксисе и перечень модификаторов для расширения функциональности команды вызывается при запуске команды SSH без параметров.

Запуск через SSH на ОС семейства Windows

Подключение к удаленному серверу с устройства под управлением операционной системы Windows происходит с помощью клиента Putty. В его состав входит файл plink.exe, с которым можно работать прямо из командной строки (cmd.exe) или через кроссплатформенное средство автоматизации от Microsoft PowerShell.

 

Чтобы запустить команду на удаленном сервере нужно ввести:

plink.exe [сервер] -ssh -l [пользователь] “[команда]”

Конфигурацию сетевых интерфейсов можно проверить с помощью команды:

plink.exe 123.123.123.123 -ssh -l root “ifconfig”

При одновременном запуске нескольких команд через plink.exe, как и в Linux для их разделения используют “;”:

plink.exe 123.123.123.123 -ssh -l root “ifconfig; netstat -anp tcp”

При этом команды из локального файла можно запустить с помощью дополнительного ключа -m:

plink.exe 123.123.123.123 -ssh -l root -m “C:Tempmyscript.sh”

Теперь останется запустить команду plink.exe без параметров, чтобы посмотреть информацию о синтаксисе и дополнительные модификаторе команды.

 

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

 

Настройка DNS-сервера на Windows Server 2012 и старше

Необходимые понятия:

DNS – часть сетевой инфраструктуры, реализующая механизм преобразования IP-адреса в доменное имя

DNS сервер – специальная служба в сети, поддерживающая работу протокола DNS

 Алгоритм настройки DNS-сервера:

  1.   Подготовка адаптера сети для DNS-сервера
  2.   Определение роли DNS-сервера
  3.   Реализация зоны прямого просмотра
  4.   Реализация зоны обратного просмотра
  5.   А-запись
  6.   Новые функции Domain Name System

Подготовка адаптера сети для DNS-сервера

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

Network 3 – подключенная сеть. Далее, правой кнопкой нажмите на кнопку меню «пуск», выберите пункт «сетевые подключения». Нажмите на нужный адаптер и посмотрите свойства. В новом окне найдите строку IPv4, также откройте свойства. Заполните поля необходимыми значениями.

Мастер добавления ролей и компонентов необходимо найти в Диспетчере сервера. Верхняя панель, меню управлении, выберите пункт «добавить роли и компоненты». 

Окно, которое открылось – окно мастера. Убедитесь в том, что профиль администратора (учётная запись) надёжно защищен сильным паролем, все параметры настроены, новые обновления установлены и отлажены. Нажмите далее — далее

Перед вами появился пул серверов, выберите нужный и продолжите настройку командой «далее»

Окно выбор ролей. В нём найдите «DNS Server» и отметьте галочкой.

Перепроверьте компоненты для установки

Ещё раз сверьте желаемые настройки и подтвердите

Зоны прямого и обратного просмотров

Доменная зона – группа имён в пределах определённого домена

Зона прямого просмотра необходима для сопоставления доменного имени с IP

Зона обратного просмотра сопоставляет IP с доменным именем

Распоряжение зонами, их гибкое управление реализуется с помощью «Диспетчер DNS» (правая верхняя часть панели – Средства – DNS). 

Открытие зоны прямого просмотра

Для этого нужно выделить папку зоны прямого просмотра, запустить мастер создания новой зоны кнопкой «Новая зона».

Необходимо выбрать основный тип зоны

Назначьте имя для зоны

Если нужно, измените имя будущего файла конфигурации зоны

Отключите опцию динамического обновления, ибо это делает систему более уязвимой

Проверьте установленную конфигурацию и завершите создание зоны прямого просмотра

Открытие зоны обратного просмотра

Найдите в диспетчере DNS папку с названием  «обратная зона», также запустите менеджер по созданию новой зоны.

Тип зоны также основной

Выберите IPv4:

Необходимо указать ID Network (первые три цифры сетевого адреса)

Отключите опцию динамического обновления, ибо это делает систему более уязвимой

Проверьте установленную конфигурацию и завершите создание зоны прямого просмотра

А-запись

Ресурсная запись — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными.

Запись A — запись, позволяющая по доменному имени узнать IP-адрес.

Запись PTR — запись, обратная A записи.

Увидите окно для создания нового узла, заполните все необходимые поля. Нажмите галочку для того, чтобы создать RTF запись.

Если оставить поле IP пустым, то адрес будет связан с именем доменной зоны. Дополнительно, можно создавать записи для других серверов.

Запустите командную строку, командой nslookup проверьте состояние DNS

Отправьте несколько запросов по домену и IP, чтобы убедиться в корректности работы настроенных зон.

Возможна отправка запроса на какой-нибудь внешний ресурс:

DNS Windows Server 2016

Политика DNS-серверов

Теперь доступно управление трафиком на основе гео

DNS отправляет более интеллектуальные ответы, собирая информацию в зависимости от времени суток

Гибкая фильтрация DNS запросов

Сбалансированное распределение нагрузки

Проще говоря, сервер сможет рационально распределить ресурсы, чтобы работать эффективнее.

ГЕО управление трафиком

Разрешение первичным и вторичным DNS-серверам отвечать на запросы DNS-клиентов на основе географического положения

Возможность настройки сортировки клиентов (внешние или внутренние) по областям зоны

Новые возможности позволяют защищать систему от вредоносных клиентов. Защита воспроизводится с помощью перенаправления потенциальных злоумышленников на несуществующий адрес.

Ограничение скорости отклика PRL

Теперь возможна настройка PRL. Это нужно, чтобы обезвредить атаки типа DOS. Ограничитель можно поставить на кол-во ответов в секунду, кол-во ошибок в секунду, окно между запросами, скорость утечки, максимум откликов, белые домен, белые подсети.

DANE

Алгоритм, решающий довольно весомую проблему – опасность фиктивной выдачи сертификатов CA. Вероятность атаки MITM сводится к минимальному значению.

Неизвестные записи

Гибкость обработки информации. Записи нестандартных неизвестных типов могут быть обработаны.

Подсказки IPv6

Запросы имен в Интернете теперь могут использовать корневые серверы IPv6 для разрешения имен.

Доработанный PowerShell

Список новых команд:

Add-DnsServerRecursionScope — Этот командлет создает новую область рекурсии на DNS-сервере. Области рекурсии используются политиками DNS для указания списка серверов пересылки, которые будут использоваться в запросе DNS.

Remove-DnsServerRecursionScope — Этот командлет удаляет существующие области рекурсии.

Set-DnsServerRecursionScope — Этот командлет изменяет параметры существующей области рекурсии.

Get-DnsServerRecursionScope — Этот командлет извлекает информацию о существующих областях рекурсии.

Add-DnsServerClientSubnet — Этот командлет удаляет существующие подсети DNS-клиентов.

Set-DnsServerClientSubnet — Этот командлет изменяет параметры существующей подсети DNS-клиента.

Get-DnsServerClientSubnet — Этот командлет извлекает информацию о существующих подсетях DNS-клиентов.

Add-DnsServerQueryResolutionPolicy — Этот командлет создает новую политику разрешения запросов DNS. Политики разрешения запросов DNS используются для указания того, как и следует ли отвечать на запрос на основе различных критериев.

Remove-DnsServerQueryResolutionPolicy — Этот командлет удаляет существующие политики DNS.

Set-DnsServerQueryResolutionPolicy — Этот командлет изменяет параметры существующей политики DNS.

Get-DnsServerQueryResolutionPolicy — Этот командлет извлекает информацию о существующих политиках DNS.

Enable-DnsServerPolicy — Этот командлет включает существующие политики DNS.

Disable-DnsServerPolicy — Этот командлет отключает существующие политики DNS.

Add-DnsServerZoneTransferPolicy — Этот командлет создает новую политику передачи зоны DNS-сервера. Политики передачи зоны DNS определяют, следует ли отклонять или игнорировать передачу зоны на основе различных критериев.

Remove-DnsServerZoneTransferPolicy — Этот командлет удаляет существующие политики передачи зон DNS-сервера.

Set-DnsServerZoneTransferPolicy. — Этот командлет изменяет параметры существующей политики переноса зоны DNS-сервера.

Get-DnsServerResponseRateLimiting — Этот командлет извлекает параметры RRL.

Set-DnsServerResponseRateLimiting — Этот командлет изменяет настройки RRL.

Add-DnsServerResponseRateLimitingExceptionlist — Этот командлет создает список исключений RRL на DNS-сервере.

Get-DnsServerResponseRateLimitingExceptionlist — Этот командлет извлекает списки исключений RRL.

Remove-DnsServerResponseRateLimitingExceptionlist — Этот командлет удаляет существующий список исключений RRL.

Set-DnsServerResponseRateLimitingExceptionlist — Этот командлет изменяет списки исключений RRL.

Add-DnsServerResourceRecord — Этот командлет был обновлен для поддержки неизвестного типа записи.

Get-DnsServerResourceRecord — Этот командлет был обновлен для поддержки неизвестного типа записи.

Remove-DnsServerResourceRecord — Этот командлет был обновлен для поддержки неизвестного типа записи.

Set-DnsServerResourceRecord — Этот командлет был обновлен для поддержки неизвестного типа записи.

 

DNS-сервер не отвечает. Что делать?

Вы, обычный пользователь, решили в очередной раз «посёрфить» в интернете, но что-то пошло не так. Открыв нужный сайт, вам встретилась ошибка «DNS сервер не отвечает». Что делать? Для того чтобы заняться решением данной проблемы, необходимо изучить механизм работы сети интернет на примере простого взаимодействия между браузером и пользователем. У любого сайта есть неповторимый адрес. Этот адрес является фактическим названием чего-либо, например (avito.ru). Не будем забывать, мировая сеть намного больше, поэтому было принято решение использовать цифровые обозначения – IP. DNS сервер выполняет функцию переноса IP в символьное представление адреса и обратно.  Следовательно, ошибка на сайте возникла из-за неполадок, связанных с транслированием адреса.

Природа возникновения ошибки «DNS-сервер не отвечает»:

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

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

Решение проблемы

Выясните, на какой конкретно стороне проблема. Для этого, подключите другие устройства к роутеру, попробуйте зайти на сайт. Если на другом устройстве возникла та же проблема, делаем вывод, что неполадка у провайдера. Но если доступа нет у конкретного устройства, компьютера, тогда решение проблемы кроется в перенастройке вашего оборудования. Проверьте роутер: отключите питание, подождите 3 минуты, включите роутер. Начните проверять доступ к ресурсам. Следующим шагом проверьте корректность настроек роутера. Откройте панель администрирования вашего сетевого оборудования, выставьте надстройки, требуемые провайдером. Дополнительно, обновите программное обеспечение маршрутизатора, иногда помогает. Обязательно, после изменений настроек или установок обновлений перезагружайте оборудование.

В случае если проблема в компьютере, потенциальным решением является смена DNS-сервера. Нажмите win + R, появится скрипт-исполнитель, в строку которого введите ncpa.cpl. Появится панель сетевых подключений. Правой кнопкой мыши нажмите по текущему подключению и выберите «Свойства».

Открылась очередная панель, найдите в списке «IP версии 4», вновь выберите свойства

Отобразится информация о состоянии (значении) IP и DNS

Строки, отвечающие за значения DNS, должны быть заполнены соответствующим образом (как на картинке). Данные значения взяты из официального источника GOOGLE. У вас есть возможность выбрать иного провайдера, например Yandex. Альтернативный сервер необходим, чтобы заменить основной во внештатных ситуациях. Отличным решением будет установить в качестве альтернативного адреса адрес иного провайдера. Если у Google будут проблемы, другие компании смогут предоставить вам доступ в глобальную сеть. Кроме этого, проверьте состояние службы DNS на компьютере. Для этого зажимаем Win + R, запускаем команду services.msc.

Перед вами появился список служб, которые в данный момент отрабатывают на вашем устройстве. Найдите DNS-клиент, правой кнопкой активизируйте команду «Перезапустить».

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

В окно терминала последовательно забивайте команды:

ipconfig /flushdns
ipconfig /registerdns
ipconfig /renew
ipconfig /release 

Перезагрузите оборудование, совершите проверку раннее недоступного сайта. Антивирусы способны блокировать некоторые DNS. Это не связано с неисправностью системы безопасности, отнюдь, антивирус слишком ответственно сверяет базы, блокируя подозрительные ресурсы. Отключите межсетевой экран или настройте белый список адресов. Интернет-провайдер оповестит вас, если проблема с доступ вызвана обслуживанием сети, поэтому простой звонок поставщику интернет услуг поможет оказаться ближе к разрешению неполадок.

 

Настройка OpenVPN в Ubuntu

*VPN — инструмент, реализующий технологию виртуальной частной сети. Главной задачей *VPN является обеспечение должного уровня безопасности сети, состоящей из нескольких кластеров локальных сетей или между отдельными клиентами (звеньями) в сетевой инфраструктуре. Конфиденциальность и цельность передаваемых данных поддерживаются с помощью туннелей шифрования.

Механизм работы:

В первую очередь необходимо настроить и запустить север. После запуска сервер сможет принимать и перенаправлять запросы/ответы через защищенные SSL-туннели, передавая информацию на сетевой адаптер. Также, возможна настройка proxy сети, так как инструмент позволяет производить гибкую маршрутизацию трафика.

Требования к ОС

Перед развёрткой *VPN проверьте правильность базовых параметров сервера. У сервера должен быть статический белый IP адрес, если нужен динамический, необходимо интегрировать динамический DNS. В настройках должна быть разрешена установка файлов конфигурации из директорий официальных источников. cat /etc/apt/sources.list — команда проверки директорий (проверяйте наличие комментариев, обычно комментарии содержат полную ссылку на файл конфигурации с официальным поставщиком ОС). Внимательно проверьте валидность параметров сети ( DNS-hosts, hostname).

Установка ПО

  1.  Производим обновление файлов директории и системы
apt-get update
apt-get upgrade
  1.  Устанавливаем *VPN

git clone …

  1.  Необходимо установить easy-rsa, разместить скрипты в нужную директорию, подготовить ключи шифрования
apt-get install easy-rsa
cd /etc/*vpn/ && make-cadir easy-rsa
  1.  Перейти в директорию:
cd /etc/*vpn/easy-rsa
  1.  Создание симлинка файла, отвечающего за настройки *vpn

ln -s *vpn… *vpn.cnf

  1.  Активация скрипта vars

source ./vars

  1.  Провести очистку дефолтных ключей

./clean-all

  1.  Развертывание сертификации

./build-ca

Скрипт запросит подтверждение некоторых данных, можно поставить предустановленные

  1.  Создание ключа сервера

./build-key-server server

  1.  Сгенерируйте специальной командой клиентскую пару ключей

./build-key-pass client1

Скрипт потребует установить сид-фразу по соображениям безопасности

Имена ключей должны быть уникальными в случае, если существуют несколько пользователей. Иногда, требуется повторная процедура создания сертификатов. Тогда, снова активизируйте vars, подготовьте ключи.

    cd /etc/*vpn/easy-rsa
    source ./vars
    ./build-key client3

Приватный канал сообщения

Ключи Диффи-Хеллмана — надежный способ установления конфиденциальной связи в сети. Генерируется пара ключей, один из них — секретный.

./build-dh

После выполнения, в директории /etc/*vpn/easy-rsa/keys/ появится файл dh2048.pem

Командой захватываем необходимые файлы для сервера

cp ca.crt ca.key dh2048.pem server.crt server.key /etc/*vpn

Ключи храните надежно, иначе злоумышленники, совершив подмену или компрометацию секретных данных, нанесут весомый ущерб.

Клиенты

Клиенту понадобится всего 3 файла ca.crt, client1.crt, client1.key. Каждому клиенту необходимо отдавать только его ключи. Данные файлы можно разместить в директории /etc/*vpn на оборудовании клиента, если оно под управлением ОС группы Linux.

В ОС Windows их следует разместить в пользовательский каталог.

Отладка клиента и сервера

*VPN содержит sample файлы. В данных файлах содержатся варианты настроек (шаблоны).

gunzip -c /usr/share/doc/*vpn/examples/sample-config-files/server.conf.gz > /etc/*vpn/server.conf

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

Для начала, проверяем какие файлы оказались в директории /etc/*vpn:

ls /etc/*vpn
nano /etc/*vpn/server.conf

Проверяем соответствуют ли файлы конфигурации с файлами в каталоге. Главное, чтобы ключи и сертификаты были валидными.

Запуск сервера

/etc/init.d/*vpn start

Чтобы определить статус сервера

/etc/init.d/*vpn status

 Копируем файлы настроек клиента и ключи, заранее сгенерированные в /root

cp /usr/share/doc/*vpn/examples/sample-config-files/client.conf /root - настройки
cd /etc/openvpn/easy-rsa/keys - взять ключи
cp client1.key client1.crt ca.crt /root - скопировать в директорию root

Немного измените конфигурационный файл клиента

nano /root/client.conf

Находим строки “# The hostname/IP and port of the server”. Для remote изменяем my-server-1 на IP сервера или его домен. Далее, редактируем ключи в графе ssl/tls. Переносим файлы на устройство, которое будет клиентом.

*vpn *vpn.conf

На этом этапе настройка пока не завершена. Можно заметить, что машина не имеет доступ в интернет во время подключения к *VPN, потому что виртуальный адаптер и сервер существуют как шлюз.

Настройте маршрутизацию трафика

Для этого отредактируйте файл server на сервере

nano /etc/*vpn/server.conf    

Из строки push «redirect-gateway def1 bypass-dhcp» удалите (;). В файле sysctl.conf добавьте net.ipv4.ip_forward=1. Эта команда позволяет ОС осуществлять движение трафика между интерфейсами(форвардинг). Чтобы редактирование вступило в силу — перезагрузите оборудование. Мы прекрасно понимаем, что постоянная перезагрузка ни к чему. Командой echo 1 > /proc/sys/net/ipv4/ip_forward разрешить перенаправлять данные без перезагрузок серверной машины.

Список команд для настройки NAT сети

iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
iptables -A FORWARD -j REJECT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A INPUT -i tap+ -j ACCEPT
iptables -A FORWARD -i tap+ -j ACCEPT

В завершающий этап отладки сервера входит настройка форвардинга DNS. Для этого установите dnsmaq — apt-get install dnsmasq. Отредактируйте файл конфигурации dnsmaq — nano /etc/dnsmasq.conf, добавив listen-address=10.8.0.1 и bind-interfaces. Также измените файл настроек сети — nano /etc/network/interfaces. Укажите соответствующий секциям настроек адаптера адрес DNS серверов —  dns-nameservers 8.8.8.8 8.8.4.4

На аварийный случай учитывайте возможность перезагрузки соединения с DNS.

/etc/init.d/dnsmasq restart

Поставьте разрешение клиентам *VPN на использование настроенного DNS. Для этого снимите комментарии в строке

push "dhcp-option DNS 10.8.0.1"

Перезагрузите сервер, чтобы обновить соединение и загруженные надстройки.

reboot

Выполните подключение к серверу. Откройте  сайт, проверяющий адрес устройства в сети(IP). Сайт должен показать IP адрес сервера.

 

Как создавать собственные шаблоны

Чтобы создавать серверы с нужной конфигурацией под потребности и задачи, можно создавать собственные шаблоны виртуальных серверов.

Для создания собственного шаблона выполните следующие действия:

  1. Перейдите во вкладку Шаблоны серверов в вертикальном меню слева и нажмите Создать шаблон
  2. Введите название шаблона и сокращенное техническое название
  3. Выберите сервер, из выпадающего списка, на основе которого необходимо создать шаблон. Нажмите Создать шаблон
    Примечание: для успешного создания шаблона должны быть выполнены следующие условия:
    • сервер находится в выключенном состоянии
    • сервер не подключен к частным сетям
    • сервер не имеет активных снапшотов
    • сервер не имеет подключенных дополнительных дисков

    В результате у вас отобразится созданный шаблон.

  1. Выбирайте в списке Ваши шаблоны и создавайте серверы на собственном шаблоне

Как подключиться к виртуальному серверу

Мы предоставляем два семейства операционных систем:

  • UNIX (Ubuntu, Debian, BSD, PFSense, CentOS, VyOS)
  • Windows

Чтобы подключиться к виртуальному серверу нужно использовать разные протоколы:

  • UNIX (Ubuntu, Debian, BSD, PFSense, CentOS, VyOS) — протокол SSH
  • Windows — протокол RDP

Для подключения к серверам Linux и BSD выполните следующие действия:

  1. Установите на ваш компьютер программу PuTTY (ссылка https://www.putty.org/) и запустите
  1. Введите Логин администратора в окне консоли
  2. Введите Пароль администратора ввод которого будет скрыт

Примечание: если все данные введены корректно, то вы будете подключены к виртуальному серверу

Для подключения к серверам семейства Windows выполните следующие действия:

  1. Скачайте RDP-файл и двойным щелчком левой кнопкой мыши запустите его
  1. Введите Пароль администратора в открывшемся окне из панели управления

Примечание: если все данные введены корректно, то вы будете подключены к рабочему столу виртуального сервера по протоколу RDP

Как осуществить миграцию виртуальной машины VMware

Для осуществления миграции виртуальной машины VMware выполните следующие действия:

Сконвертируйте ваш виртуальный сервер в файл формата OVF или OVA

  • OVF (Open Virtualization Format) — стандарт для хранения и распространения виртуальных машин
  • OVA является TAR архивом каталога с пакетом OVF

Требования к ova/ovf файлам:

  • — Тип дисков scsi
  • — Hardware version не выше 13

VMware Workstation

  1. Убедитесь, что виртуальная машина не зашифрована. Вы не можете экспортировать зашифрованную виртуальную машину в формат OVF
  2. Убедитесь, что виртуальная машина выключена
  3. Выберете виртуальную машину и далее File > Export to OVF
  4. Введите имя для ovf-файла и выберите директорию для сохранения файла
  5. Нажмите Save для начала процесса экспорта в OVF

Процесс может занять несколько минут. Строка состояния показывает ход процесса экспорта.

VMware Fusion

  1. Убедитесь, что виртуальная машина не зашифрована. Вы не можете экспортировать зашифрованную виртуальную машину в формат OVF
  2. Убедитесь, что виртуальная машина выключена
  3. Выберете виртуальную машину и далее File > Export to OVF
  4. Введите имя для ovf-файла и выберите директорию для сохранения файла
  5. Нажмите Save для начала процесса экспорта в OVF

Процесс может занять несколько минут. Строка состояния показывает ход процесса экспорта

vSphere Client

  1. Выберете виртуальную машину и далее File > Export > Export OVF Template
  2. Введите имя шаблона диалоговом окне Export OVF Template

Примечание: при экспорте шаблона OVF с именем, которое содержит звездочки (*), эти символы превращаются в символы подчеркивания (_)

  1. Выберите директорию для сохранения файла шаблона, или кликните “…” для выбора местоположения
  2. Выберите тип OVF или OVA в поле Format

OVF — выберете данный формат, чтобы сохранить шаблон в виде набора файлов (.ovf, .vmdk и .mf). Этот формат является оптимальным, если вы планируете опубликовать файлы на веб-сервере или в хранилище дисков. Пакет можно импортировать, например, в клиенте vSphere путем публикации URL в .ovf файл

OVA — выберете данный формат для более удобного распространения пакета OVF в виде отдельного файла, если его нужно явно загрузить с веб-сайта или перемещены с помощью USB. Фактически является архивом формата OVF

  1. Введите описание виртуальной машины в поле По умолчанию текст из панели Notes с вкладки Обзор виртуальной машины появится в этом текстовом поле
  2. Установите флажок, если вы хотите включить графические файлы, прикрепленные к floppy и CD / DVD-устройств в пакет OVF.

Примечание: этот флажок виден только если к виртуальной машине подключен файл ISO или к дисководу подключен образ

  1. Нажмите OK

Строка состояния показывает ход процесса экспорта

VMware OVF Tool

VMware OVF Tool — решение для импорта и экспорта OVF пакетов из продуктов VMware. Мы будем использовать данную утилиту для конвертации файла vmx в файл формата ovf, т.к. она позволяет создавать виртуальные модули из виртуальных машин.

  1. Загрузите установщик VMware OVF Tool (https://www.vmware.com/support/developer/ovf/ ) на сайте компании Vmware
  2. Выберете необходимую версию
  1. Перейдите в папку Downloads и запустите на исполнение скачанный файл
  2. Откройте Windows PowerShell после установки. Для конвертации нужен файл ovftool.exe, который находится по указанному при установке пути. Например:

C:Program FilesVMwareVMware OVF Toolovftool.exe

  1. Перейдите в каталог «VMware OVF Tool» с помощью команды cd:

cd ‘C:Program FilesVMwareVMware OVF Tool’

  1. Введите в командной строке:

.ovftool.exe <путь до файла vmx> <путь до файла ovf> (Пример: .ovftool.exe «C:VMVM-exampleVM-example.vmx» «C:VMVM-exampleVM-example.ovf»)

После завершения конвертации у вас появится ovf файл с вашей виртуальной машиной

Как изменить конфигурацию своих серверов

Чтобы изменить конфигурацию своих серверов под текущие потребности нагрузки вам необходимо выполнить следующие действия:

  1. Откройте Настройки в панели управления для изменения конфигурации сервера.

Вкладка Конфигурация

  1. Перейдите во вкладку Конфигурация. Измените настройки под текущие потребности:
  • Изменить название своего сервера
  • Добавить или уменьшить количество ядер CPU и объем RAM с помощью ползунков, при этом потребуется перезагрузка сервера
  • Увеличить размер диска без простоя сервера, при этом самостоятельно на уровне операционной системе разметить добавленную область
  • Изменить тип основного диска без простоя и перезагрузки
  • Мигрировать сервер из базового пула в высокопроизводительный и обратно.
  • После внесения изменений нажмите кнопку Изменить.

Вкладка Сети

  1. Перейдите во вкладку Сети для управления сетевыми подключениями вашего сервера.
    Примечание: вы можете уменьшать или увеличивать ширину каналов связи и добавлять дополнительный IPv4 и IPv6 адреса. При подключении сервера к новой сети на вашем сервере появится новый сетевой адаптер, который необходимо настроить на уровне операционной системы. После внесения изменений нажмите кнопку Сохранить.

Вкладка Firewall

  1. Перейдите во вкладку Firewall для управления правилами брандмауэра сервера. Запретите или разрешате необходимые подключения или трафик
  2. Нажмите кнопку Добавить для создания правил.
  3. После внесения изменений нажмите кнопку Сохранить.

Вкладка Диски

  1. Откройте вкладку Диски для добавления дополнительного диска
  2. Выберете тип диска и его объем, укажите название диска
    Примечание: к одному серверу можно подключить диски разного типа
  1. Подтвердите и сохраните изменения

Вкладка Лицензии

  1. Подключите дополнительные лицензии во вкладке Лицензии
  2. После добавления лицензий нажмите кнопку Заказать

 

Как создать сервер

Для создания виртуального сервера выполните следующие действия:
1. Зарегистрируйтесь в Панели управления

2. Перейдите во вкладку Серверы, в вертикальном меню слева, нажмите Создать сервер

3. Выберите шаблон виртуального сервера. Шаблон — это своеобразная копия виртуальной машины, включающая операционную систему со стартовыми настройками и популярными серверными операционными системами семейства Linux, Windows и FreeBSD

4. Укажите параметры будущего виртуального сервера:

Центр обработки данных (ЦОД) — специализированное место, где размещено серверное и сетевое оборудование, на котором будет развернута ваша виртуальная машина. На выбор есть ЦОДы в Минске и Москве. Стоимость аренды ресурсов зависит от выбора ЦОД.

Панель управления хостингом — доступна только для серверов с операционной системой семейства Linux, на данный момент можно подключить ISPmanager 5 Lite и ISPmanager 5 Business. Если панель управления хостингом вам не нужна, выберите значение “не подключать”.

Производительность оборудования — доступна базовая и высокая производительность. Высокопроизводительное оборудование имеет большие вычислительные возможности.

Резервное копирование сервера — резервное копирование выполняется 1 раз в сутки на территориально удаленный дисковый массив. Параметр Глубина хранения определяет сколько будут храниться резервные копии (1, 2,3 или 4 недели).

5. Выберите конфигурацию виртуального сервера:

• количество ядер процессора (CPU, шт)
• объем оперативной памяти (RAM, Gb)
• тип и объем дискового подпространства (Storage, GB, SSD/SAS)
• ширину канала связи (гарантированное значение, ниже которого показатель не может опускаться, Mbit/s)
Или выберите одну из трех популярных конфигураций: Low, Medium или High.

При создании сервера ему будет присвоен 1 IPv4 адрес бесплатно. После создания вы
можете подключить дополнительные IPv4 и IPv6 адреса, на коммерческой основе.

Для Linux-серверов выберете способ подключения — через пару логин/пароль или по SSH
ключу. Логин и пароль будут сгенерированы автоматически и выданы после создания
сервера, SSH-ключ необходимо сгенерировать с помощью ssh-keygen или добавить
существующий.
6. Выберите какое количество серверов с выбранной конфигурацией вы хотите создать.
7. Укажите названия серверов или оставьте их по умолчанию
Примечание: название может содержать только буквы, цифры, дефисы и точки
Для создания виртуального сервера требуется не больше 2 минут. Данные для подключения сервера станут вам доступны сразу после его создания.

Как установить облачное хранилище ownCloud на Linux

Для установки облачного хранилища ownCloud на Linux выполните следующие действия:

  1. Проверьте стоит ли пакет LAMP на серверной платформе. Если его нет, то ведите:
    sudo apt-get install tasksel
    sudo tasksel install lamp-serverПримечание: в репозиториях Linux систем присутствует готовый пакет LAMP
  1. Загрузите актуальный релиз с официального сайта, используя утилиту Wget. Для начала переместим дистрибутив в директорию временного репозитория, чтобы установить доверенный сертификат:
    wget -nv https://download.owncloud.org/download/repositories/production/Ubuntu_16.04/Release.key -O Release.key
    sudo apt-key add - < Release.key
  1. Пропишите в официальном перечне обновляемого ПО Ubuntu сайт ownCloud, а затем установите:
    sudo echo 'deb
    http://download.owncloud.org/download/repositories/production/Ubuntu_16.04/' > /etc/apt/sources.list.d/owncloud.list
    sudo apt-get update
    sudo apt-get install owncloud-files

    Далее переходите к настройке серверной части
  1. Отредактируйте шаблон owncloud.conf через vi или nano. Добавьте строки:
    Alias /owncloud "/var/www/owncloud/"
    <Directory /var/www/owncloud/>
    Options +FollowSymlinks
    AllowOverride All
    <IfModule mod_dav.c>
    Dav off
    </IfModule>
    SetEnv HOME /var/www/owncloud
    SetEnv HTTP_HOME /var/www/owncloud
    </Directory>
  1. Создайте ссылку используя команду ln:
    ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf
  1. Добавьте уровень –R, скорректировав права доступа к папке ownCloud
  1. Перезагрузите Apache

Как подключиться к хранилищу

  1. Откройте браузер. В адресной строке пропишите IP-адрес виртуального сервера, на котором установлено облако. В конце добавьте «/owncloud»
  2. Создайте администраторскую учетную запись на странице входа. Используйте имя Admin, а пароль придумайте самостоятельно.

    Примечание: обязательно укажите путь к рабочей папке (Data Folder)
  1. Добавьте новых клиентов при необходимости. Опция доступна в разделе «Пользователи».
  2. Для подключения к облаку также можно использовать протокол WebDAV. Рассмотрим на примере программы CyberDuck (ссылка https://cyberduck.io/download/)
  3. Установите утилиту и заходите в раздел «Настройки»
  4. Выберите новое соединение и пропишите следующие параметры:

    В строке «сервер»: IP-адрес нашего сервера с добавлением «/owncloud».
    Пользователь и пароль —учетное имя и ключ, которые зарегистрированы в ownCloud.

Как настроить Firewall

Что такое Firewall?

Межсетевой экран (Firewall) — программный или программно-аппаратный элемент компьютерной сети, осуществляющий контроль и фильтрацию проходящего через него сетевого трафика в соответствии с заданными правилами. С помощью межсетевого экрана прямо из панели управления можно управлять доступом к публичной сети серверов, входящими и исходящими пакетами данных. Данная опция отдельно не тарифицируется и входит в стоимость сети.

Как настроить Firewall?

Для избежания конфликта правил межсетевого экрана и его правильной настройки необходимо понимать порядок действия существующих брандмауэров. Во-первых, вы можете настроить брандмауэр для частной сети. Во-вторых, для сервера через панель управления. В-третьих, вы можете настроить внутренний брандмауэр, например, для Linux через iptables, для Windows — встроенный.

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

Конфигурация брандмауэра доступна для сетей и находится в настройках сети в разделе Firewall.

Важно:

— порядок правил имеет значение, чем меньше порядковый номер правила (чем выше он в списке), тем выше его приоритет. Изменять последовательность правил можно с помощью Drag and Drop, перетащив правило левой кнопкой мыши на нужную позицию;

— в состоянии выключен — все пакеты данных, как входящие, так и исходящие проходят через маршрутизатор;

Пакеты не попадающие ни под одно правило можно разрешить или запретить, по умолчанию они разрешены.

Для настройки правил межсетевого экрана выполните следующие шаги:

  1. Для создания правила в панели управления в разделе «Firewall» нажмите кнопку «Добавить».
  2. Перед вами откроется окно добавления правила. Необходимо заполнить следующие поля:
  • Name — понятное для пользователя название (не более 50 символов), как правило кратко описывает назначение правила;
  • Action — действие, которое необходимо применить, принимает одно из двух значений: Allow или Deny. Allow — разрешение пересылки пакетов данных, Deny — запрет пересылки;
  • Source/Destination — нужно указать IP-адрес сервера или одно из значений: IP-адрес, CIDR, диапазон IP-адресов, any, internal и external;
  • SourcePort/DestinationPort — при выборе протокола TCP, UDP или TCP and UDP возможно либо указать порт или диапазон портов, либо any;
  • Protocol — тип протокола, доступно ANY, TCP, UDP, TCP and UDP и ICMP.

Для создания правила нажмите «Сохранить».

  1. Чтобы созданное правило вступило в силу необходимо сохранить изменения с помощью кнопки «Сохранить». Вы можете создать несколько правил и затем сохранить все разом:

Чем меньше порядковый номер правила (чем выше оно в списке), тем выше его приоритет. Например, после того как было создано запрещающее правило для входящих Tcp пакетов на определенный диапазон адресов, создадим правило разрешающее получать входящие пакеты по 443 порту протокола Tcp с исходящего 443 порта. После сохранения изменений при такой конфигурации данный порт все также будет недоступен, в связи с тем, что запрещающее правило имеет более высокий приоритет.

Для изменения приоритета правил перетащите с помощью левой кнопки мыши разрешающее правило на первое место и сохраните изменения.

Как выбрать SSL?

Что это такое?

SSL-сертификат — это цифровая подпись, которая обеспечивает шифрование данных между сайтом и пользователем по защищенному протоколу HTTPS. Все персональные данные, которые пользователь оставляет на защищенном сайте, в том числе пароли и данные банковских карт, надежно зашифрованы и недоступны посторонним. Браузеры распознают защищенные сайты автоматически и отображают рядом с их названием в адресной строке (URL) маленький замок зеленого или черного цвета.

Какой SSL выбрать?

Для выбора подходящего SSL сертификата необходимо понимать:

  • сколько доменов вы хотите защитить
  • необходима ли защита поддоменов
  • будет ли на сайте происходить оплата
  • необходимо ли наличие зеленой строки

Подбор SSL-сертификата по типу деятельности:

  • Если вам необходимо защитить лишь один домен, то самый простой и лёгкий в получении сертификат это Comodo PositiveSSL. Он поддерживает домены с www и без а также кириллические домены.
  • Если у вас есть оплата на сайте, то лучше использовать сертификат с проверкой организации, например, Comodo InstantSSL. Проверка организации как правило происходит около 5 дней, и довольно непростая. Все необходимые документы и этапы проверки описаны в нашей статье.
  • Для защиты домена с большим числом поддоменов обычно используют wildcard-сертификат, например, Comodo PositiveSSL Wildcard. Данный сертификат защищает основной указанный домен и следующие по уровню. Например, при заказе сертификата для домена example.com будут защищаться только домены вида: example.com, test1.example.com, test3.example.com. Домены вида mail.test.example.com в данном случае защищаться не будут.
  • Для одновременной защиты нескольких доменов удобно использовать мультидоменный сертификат, например, Comodo PositiveSSL Multi-Domain. С помощью всего лишь одного сертификата вы защитите разные доменные имена, например, example.com, test.org и mail.example.edu.
  • Если необходимо защитить неограниченное количество доменов и поддоменов, используйте сертификат Comodo PositiveSSL Multi-Domain Wildcard (2 SAN). Например, у вас будут защищены mail.example.com, news.example.com, mail.test.com, images.yest.com. Это уникальный сертификат, который поддерживает и SAN и Wildcard.
  • Если вам необходима самая высокая степень доверия со стороны конечных потребителей, используйте сертификат с зеленой строкой, например, Comodo Extended Validation SSL. Сертификаты с зеленой строкой имеют расширенную проверку, которая длится около 2 недель и включает в себя проверку организации и обратный звонок от сертифицирующего центра.

Как подключить метрики

Что это такое?

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

Для подключения метрик выполните следующие действия:

  1. Выберите раздел «Метрики» в рамках услуги Мониторинг и нажмите на поле «Создать метрику».
    Созданная метрика, ее статус, тип и отметка времени последней проверки отобразятся в списке метрик
  2. В открывшемся окне введите имя метрики, выберете нужный протокол и при необходимости заполните дополнительные поля.
  3. Поле «Ожидаемый ответ»можно оставить пустым, в этом случае любой полученный ответ будет считаться ожидаемым, также здесь можно ввести требуемый специфический код. Все метрики наследуют точки проверок хоста.
  4. При необходимости имеется возможность также включить уведомления на почту об изменении статуса метрики, поставив галочку в соответствующем поле.
  5. Нажмите «Создать».

Созданная метрика, ее статус, тип и отметка времени последней проверки отобразятся в списке метрик.

Для удаления метрики нажмите справа на крестик.

Каждая метрика имеет статус. Обозначение красным кружочком означает то, что метрика не отвечает.

ИконкаСтатус метрики
Метрика отвечает
Метрика не отвечает

Просмотр истории

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

Описание услуги Мониторинг

Что это такое?

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

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

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

Как подключить хост/домен

Что это такое?

Услуга позволит отслеживать статус вашего хоста/домена в режиме реального времени.

Для подключения метрик выполните следующие действия:

  1. Для подключения хоста или домена к услуге мониторинга необходимо в панели управления в вертикальном меню выбрать Мониторинг.
  2. В открывшемся окне с помощью кнопки Добавить хост добавьте сервер или домен для мониторинга.
  • Введите ip-адрес машины или доменное имя, которое необходимо отслеживать. Хост может любой, не обязательно арендуемый в нашем сервисе.
  • Выберите Правило проверки в выпадающем списке, например, PING.
  • Укажите Время ожидания отклика — время, в течении которого ожидается отклик. Если за это время отклик не получен, то считаем, что хост/домен недоступен.
  • Укажите Периодичность запросов — время, через которое необходимо опять выполнить проверку доступности.
  • Выберите Точки проверки — географические объекты, из ЦОДов которых будут отправляться запросы. Точка может быть как одна, так и несколько, по умолчанию выбраны все доступные.
  1. Далее заполните условие для проверки доступности:
    При необходимости вы можете включить уведомления на почту об изменении статуса хоста, поставив галочку в соответствующем поле.
  2. После заполнения условия нажмите кнопку Добавить.

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

Для изменения условия проверки перейдите в настройки хоста щелчком левой кнопкой мыши по ip-адресу или доменному имени. При внесении изменений не забудьте их сохранить.

Статусы хоста

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

ИконкаСтатус хоста
Хост доступен, условие проверки выполняется, и все метрики отвечают
Хост недоступен, условие проверки не выполняется, метрики могут как отвечать, так и не отвечать
Хост доступен, условие проверки выполняется, но некоторые метрики не отвечают

Как подключиться к облачному хранилищу по Swift API

Для подключения к облачному хранилищу по Swift API выполните следующие действия:

  1. Установите и запустите программу Cyberduck (ссылка https://cyberduck.io/)
  1. Выберите Новое подключение в горизонтальном меню
  2. Выберите пункт OpenStack Swift (Keystone 3) в выпадающем списке
    Если у вас отсутствует данный профиль подключения, загрузите его отдельно. Загруженный профиль можно открыть с помощью двойного клика.

В качестве сервера укажите адрес Endpoint из панели управления и порт HTTPS 443.

В поле Project:Domain:Username введите Project, Domain и Username в следующем формате: Project:Domain:Username.

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

 

Как активировать Объектное хранилище

Для активации Объектного хранилища выполните следующие действия:

  1. Перейдите в панель управления и в вертикальном меню выберете услугу Хранилище
  2. Нажмите кнопку Активировать в новом окне

Активация занимает несколько секунд. После активации, перед вами появится интерфейс для работы с хранилищем из панели управления. Работать с Объектным хранилищем можно по протоколам S3, Swift API, FTP и сторонние приложения

Как перенести данные с локального компьютера на виртуальный сервер

Чтобы перенести данные с локального компьютера на виртуальный сервер (VPS), их не нужно копировать по-отдельности. Можно синхронизировать папки или перенаправить диски с локального устройства на виртуальный сервер (VPS), используя при этом RDP-клиент.

Примечание: синхронизировать несколько директорий можно посредством BitTorrent.

Для настройки RDP-клиента выполните следующие действия:

  1. Зайдите в параметры RDP-файла и включите возможность проброса локальных данных к виртуальному серверу (VPS) с помощью контекстного меню в строке Изменить.
  2. Откройте вкладку Локальные ресурсы и нажмите кнопку Подробнее.
  3. Разверните полностью графу Диски. В появившемся списке отметьте галочками разделы и носители, предназначенные для переноса на виртуальный сервер (VPS).
  4. Проверьте изменения в разделе Мой компьютер, расположенные на виртуальном сервере (VPS).

 

Как настроить сетевой адаптер в Ubuntu, Debian

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

Для настройки сетевого адаптера в Ubuntu, Debian выполните следующие действия:

  1. Подключитесь к виртуальному серверу с правами суперпользователя и выполните команду: ifconfig -aВ результате отобразится список подключенных интерфейсов:ens160    Link encap: Ethernet HWaddr 00:00:00:00:00:00
    inet addr:xxx.xxx.xxx.xxx  Bcast:xxx.xxx.xxx.xxx  Mask:255.255.255.0
    inet6 addr: yyyy::yyy:yyy:yyyy:yyy/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
    RX packets:7011 errors:0 dropped:0 overruns:0 frame:0
    TX packets:2862 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:6661547 (6.6 MB)  TX bytes:234861 (234.8 KB)
    ens192    Link encap: Ethernet  HWaddr 00:50:56:01:2e:ca
    BROADCAST MULTICAST  MTU:1500  Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
    lo        Link encap: Local Loopback
    inet addr:127.0.0.1  Mask:255.0.0.0
    inet6 addr: ::1/128 Scope:Host
    UP LOOPBACK RUNNING  MTU:65536  Metric:1
    RX packets:160 errors:0 dropped:0 overruns:0 frame:0
    TX packets:160 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1
    RX bytes:11840 (11.8 KB)  TX bytes:11840 (11.8 KB)
  2. Найдите поле MAC со значением параметра HWaddr из вывода списка сетевых интерфейсов в настройках сети. В данном случае это ens192.
  3. Запомните название интерфейса.
    Примечание: до настройки адаптера в операционной системе обратите внимание на то, активирована ли в панели управления опция DHCP для вашей сети. Это можно посмотреть в параметрах сети.
  4. Откройте файл /etc/network/interfaces для изменения настроек сетевого интерфейса: nano /etc/network/interfaces

DHCP активирована

Если при создании частной сети вы активировали опцию DHCP, то в настройках сетевого адаптера Ubuntu/Debian укажите параметр автоматического получения сетевых настроек:

auto ens192
iface ens192 inet dhcp

DHCP отключена

Если функция DHCP отключена, то укажите параметры интерфейса вручную, как показано в примере ниже, локальный адрес маску подсети можно найти в настройках сети в панели управления:

auto ens192
iface ens192 inet static
address 10.0.1.2
netmask 255.255.255.0

После сохранения изменений и выхода из текстового редактора, необходимо перезапустить сетевую службу, где ens192 — это имя адаптера, которое вы запомнили:

ifdown ens192 && ifup ens192

Для проверки корректности настроек сетевого адаптера выполните команду ping на адрес шлюза, указанный в панели управления, например:

ping 10.0.1.1

Рекомендуем также настроить: FirewallVPN и NAT

Как загрузить OVA или OVF

Если у вас есть настроенный физический или виртуальный сервер, то вы можете мигрировать его образ в нашу инфраструктуру с помощью OVF или OVA файлов.

Для загрузки OVA или OVF выполните следующие действия:

  1. Сконвертируйте образ сервера в формат OVA/OVF, при этом должны быть соблюдены следующие требования:
  • В конфигурации отсутствуют какие-либо сетевые устройства или адаптеры
  • Тип дисков scsi
  • HW Version не выше 13 версии.
  1. Создайте обращение в службу технической поддержки для миграции в нашу инфраструктуру, прикрепив во вложение файл образа.

Как настроить правила NAT

Что это такое?

NAT (от англ. Network Address Translation — «преобразование сетевых адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Чаще всего NAT используется, чтобы заменить IP-адрес внутренней сети во внешний IP-адрес. Когда другие компьютеры в Интернете пытаются получить доступ к компьютерам в локальной сети, они видят только адрес маршрутизатора. Это дополнительный уровень безопасности, поскольку маршрутизатор можно настроить как брандмауэр, который позволяет только авторизованным системам получать доступ к компьютерам в локальной сети.

Для настройки правила NAT выполните следующие действия:

  1. Создайте маршрутизируемую (routed) сеть в панели управления и подключите к ней виртуальные серверы. В одну сеть можно объединить только серверы из одного центра обработки данных.
  2. Откройте вкладку NAT и нажмите кнопку ДобавитьПримечание: пользователь может создавать два типа правил — SNAT или DNAT.

SNAT

SNAT (Source) изменяет исходный IP-адрес сетевого пакета с данными на другой IP-адрес. Сценарий использования: маскировка и сокрытие локальных (частных) IP-адресов устройств для повышения конфиденциальности и безопасности.

При создании правила типа в выпадающем списке NAT Type необходимо выбрать SNAT и заполнить следующие поля:

Description — удобное для пользователя название;

OriginalIp — локальный (частный) адрес сервера, будет преобразован;

TranslatedIp — внешний адрес маршрутизатора в сети, это значение вводится автоматически и не может быть изменено.

С помощью флага Enable можно включать или отключать правило.

DNAT

DNAT (Destination) используется для преобразования целевого IP-адреса сетевого пакета в другой IP-адрес. Сценарий использования: маскировка внутренних IP-адресов и их дальнейшая замена другими IP-адресами.

При создании правила типа в выпадающем списке NAT Type необходимо выбрать DNAT и заполнить следующие поля:

Description — удобное для пользователя название;

OriginalIp — внешний адрес маршрутизатора в сети, это значение вводится автоматически и не может быть изменено;

TranslatedIp — локальный (частный) адрес сервера, для которого нужно выполнить преобразование;

Protocol — из доступного списка протоколов выберете необходимый;

OriginalPort — порт маршрутизатора, на который поступают пакеты данных;

TranslatedPort — порт локального сервера, к которому нужно выполнить изменение.

С помощью флага Enable можно включать или отключать правило.

Редактирование NAT правил

Ранее созданные правила NAT можно отредактировать. Для этого кликните левой кнопкой мыши на поле NAT type. После внесения изменения их необходимо сохранить.

Примечание: с помощью флага Enable можно включать или отключать правило.

Удаление NAT правил

  1. Выполните удаление можно с помощью Крестика. Действие по удалению правила необходимо подтвердить во всплывающем окне и нажать кнопку Подтвердить.

Как создать снапшот (snapshots)

Что это такое?

Снапшот — моментальный снимок, копия всей файловой системы сервера. В отличии от резервного копирования снапшот создается оперативно и только по непосредственной команде пользователя.

Для создания снапшота выполните следующие действия:

  1. Выберете в горизонтальном меню нужный сервер для создания снимка сервера.
  2. Перейдите на вкладку Снимки → Сделать снимок.
  3. Введите имя снимка в пустое поле.
  4. Нажмите Сделать снимок.

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

Как восстановить сервер из снимка

  1. Перейдите в меню Снимки → Восстановить из снимка. На снимке будет указано его название и временной штамп.
  2. Нажмите на кнопку Восстановить.
  3. Удалить созданный снапшот можно с помощью кнопки Удалить.

Как подключить резервное копирование

Что это такое?

Резервное копирование  — процесс создания копии данных на носителе (жёстком диске), предназначенном для восстановления данных в оригинальном или новом месте их расположения в случае их повреждения или разрушения.

Для подключения услуги резервное копирование выполните следующие действия:

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

Примечание: резервное копирование выполняется 1 раз в сутки на географически удаленный дисковый массив. Параметр Глубина хранения определяет сколько будут храниться резервные копии (1, 2, 3 или 4 недели). Копии старше выбранного срока автоматически удаляются.

Как восстановить сервер из резервной копии

  1. Выберете вкладку Backup → Восстановить из копии
  2. Выберете способ восстановления сервера: Рядом или Поверх

Примечание:

При выборе Рядом будет создан дубликат сервера.

При выборе Поверх на основном сервере будет восстановлена выбранная копия.

 

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

Как отключить услугу резервное копирование

  1. Выберете вкладку Backup → Расписание и нажмите кнопку Выключено.
  2. Подтвердите свои действия с помощью кнопки Изменить.

Как создать публичную сеть

Вы можете объединить только серверы, расположенные в одном ЦОДе.

Для создания публичной сети выполните следующие действия:

  1. Выберете раздел Сети в вертикальном меню слева и нажмите кнопку Добавить сеть.
  2. Выберете центр обработки данных, в котором будет создана сеть.
  3. Выберете тип сети Публичная сеть
  4. Выберете емкость сети и укажите ширину канала, нажмите кнопку Создать сеть.
  5. Вашей сети будет выдан публичный шлюз и маска, и указана емкость сети. Для подключения сервера к сети переведите тумблер Подключить в активное состояние и нажмите Сохранить.

Примечание:

При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы. Публичные адреса будут доступны в панели управления.

Рекомендуем также настроить: Firewall, VPN.

 

Как настроить маршрутизируемую Routed-сеть

Что это такое?

Маршрутизируемая (Routed) сеть — это частная сеть, к которой уже подключен маршрутизатор с публичным интерфейсом. Все виртуальные серверы в такой сети могут выходить в Интернет через маршрутизатор и принимать входящие подключения, используя NAT.

Для создания сети выполните следующие действия:

  1. Выберите раздел Сети в вертикальном меню слева и нажмите кнопку Добавить сеть.
  2. Выберите Маршрутизируемая.
  3. Выберите центр обработки данных, в котором будет создана сеть.

Примечание: при необходимости укажите использование DHCP — в этом случае сетевые настройки будут получены автоматически.

  1. Далее с помощью ползунка укажите необходимую ширину канала связи.
  2. Выберете диапазон
  3. Укажите адрес сети в CIDR формате.

Примечание: введенный адрес должен принадлежать одному из указанных диапазонов: 10.0.0.0 — 10.255.255.0, 100.64.0.0 — 100.127.255.0, 172.16.0.0 — 172.31.255.0, 192.168.0.0 — 192.168.255.0.

  1. Ведите удобное название и нажмите Создать.

Для подключения сервера к сети переведите тумблер Подключить в активное состояние и нажмите Сохранить. Можно подключить только серверы расположенные в ЦОДе, в котором эта сеть находится. При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы.

  1. Для удаления сети во вкладке Удалить подтвердите удаление и нажмите соответствующую кнопку. Также, можно удалить сеть из списка сетей, нажав на крестик.

Стоимость маршрутизируемой (Routed) сети складывается из 1 внешнего IP-адреса маршрутизатора и ширины канала связи.

Рекомендуем также настроить: FirewallVPNNAT.

Как создать частную сеть?

Частная сеть — сеть, которая не использует подключение к интернету или использует его вместе с преобразованием сетевых адресов (NAT), чтобы внутренние IP-адреса такой сети не выходили в интернет. При этом частная сеть позволяет пользователю присоединяться к другим компьютерам в этой сети. Вы можете объединить только серверы расположенные в одном ЦОДе.

Для создания частной сети выполните следующие действия:

  1. Выберете раздел Сети в вертикальном меню слева и нажмите кнопку Добавить сеть.
  2. Выберете центр обработки данных, в котором будет создана сеть, тип сети Частная сеть и название, нажмите кнопку Создать сеть.

Примечание:

  • При необходимости вы можете использовать DHCP.
  • Вашей сети будет выдан шлюз и маска, емкость сети 256 адресов. Для подключения сервера к сети переведите тумблер Подключить в активное состояние и нажмите Сохранить.
  • При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы. Если ваша сеть без DHCP, то локальные адреса будут доступны в панели управления.

 

Как настроить VPN

Что это такое?

VPN (англ. Virtual Private Network «виртуальная частная сеть») — обобщённое название технологий, позволяющих обеспечить одно или несколько сетевых соединений (логическую сеть) поверх другой сети (например Интернет). Несмотря на то, что коммуникации осуществляются по сетям с меньшим или неизвестным уровнем доверия (например по публичным сетям) уровень доверия к построенной логической сети не зависит от уровня доверия к базовым сетям благодаря использованию средств криптографии (шифрования, аутентификации, инфраструктуры открытых ключей, средств для защиты от повторов и изменений передаваемых по логической сети сообщений).

В зависимости от применяемых протоколов и назначения, VPN может обеспечивать соединения трёх видов:

  • узел-узел
  • узел-сеть
  • сеть-сеть

Для создания VPN-тоннеля выполните следующие действия:

  1. Выберете вкладку VPN в настройках выбранной сети и нажмите кнопку Добавить.
  2. Заполните поля в открывшемся окне:
  • Name — удобное и понятное название VPN-соединения.
  • Local Network — адрес выбранной сети в панели управления, значение устанавливается автоматически.
  • Peer Networks — адрес удаленной локальной сети, с которой устанавливается VPN-соединение.
  • Local End Point — локальная точка тоннелирования, значение выбирается автоматически.
  • Peer Ip — это внешний IP-адрес устройства (Firewall или VPN-коннектор удаленной сети), с которым необходимо установить связь по VPN-тоннелю.
  • Peer Id — это как правило внешний IP-адрес устройства (Firewall или VPN-коннектор удаленной сети), с которым необходимо установить связь по VPN-тоннелю.
  • Peer Id и Peer IP совпадают, если на удаленной сети не используется NAT-устройство. При использовании NAT это может быть частный IP-адрес.
  • Encryption protocol — выберете тип протокола шифрования, доступны AES256, AES, 3DES.
  • Shared key — ключ шифрования. Введенная строка должна содержать от 32 до 128 символов, иметь одну заглавную букву, одну букву в нижнем регистре и хотя бы одну цифру. Рекомендуем пользоваться публичными генераторами ключей.
  • MTU — размер полезного блока данных одного пакета, возможный диапазон — от 60 до 9000 байт.
  1. Установите галочку VPN включен, сохраните изменения и управляйте состоянием тоннеля.

Примечание:

  • Если на обеих сторонах все настроено правильно, то в панели отобразится статус OK.
  • Существует два статуса соединения по VPN-тоннелю — ОК (зеленая галочка) и Critical (красный крестик). Обновление статуса происходит при перезагрузке страницы в браузере и при открытой странице — каждые 15 секунд.
  1. Для удаления VPN-тоннеля нажмите серый крестик в столбце действия и выполните подтверждение.

Как расширить канал Интернет

Если вам необходимо увеличить скорость соединения с сетью Интернет, вы можете самостоятельно управлять в настройках сервера в панели управления во вкладке Сети.

Примечание:

  1. Расширить канал до 100 Мбит/с самостоятельно.
  2. Расширить канал свыше 100 Мбит/с при обращении к вашему персональному менеджеру ОБИТ.

Для расширения канал Интернет выполните следующие действия:

 

  1. Выберете раздел Серверы в вертикальном меню слева и нажмите кнопку Добавить сеть.
  2. Вкладка Создание сервера, раздел Параметры → Выбор конфигурации сервера.
  3. Выберете необходимый объем трафика с помощью ползунка Ширина канала связи. Трафик не ограничен. (Mbit/sec).
  4. Нажмите Сохранить.

Примечание:

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