# Serverspace.by Knowledge Base https://serverspace.by/support/help/podkluchenie-k-s3-sovmestnomy-hranilishu-cherez-amazon-s3-api-na-ubuntu.md Настройка подключения к S3-совместимому хранилищу на Ubuntu через Amazon S3 API с использованием Python. Полный разбор процесса: установка необходимых инструментов, конфигурация, отправка и получение файлов. В данной статье мы разберем, как подключиться к S3-совместимому облачному хранилищу, используя API Amazon S3 в среде Ubuntu. Рассмотрим установку необходимых инструментов, настройку Python-скрипта для работы с хранилищем, а также выполним основные операции: просмотр списка бакетов, загрузку и скачивание файлов. Все шаги подробно описаны, чтобы даже начинающий пользователь смог успешно настроить подключение. ### Установка Python и pip Сначала обновляем систему и устанавливаем Python 3 вместе с менеджером пакетов pip: ```bash sudo apt update sudo apt install python3 python3-pip python3 -m pip install —upgrade pip ``` ### Установка библиотеки boto3 Для взаимодействия с S3 используем библиотеку **boto3**, устанавливаем её следующим образом: ``` pip3 install boto3 ``` ### Написание Python-скрипта Перед этим шагом обозначим, что такое **бакет**: **Бакет (bucket)** — это контейнер для хранения файлов в S3-совместимом хранилище. Он выполняет роль каталога, в котором можно организовывать и управлять объектами (файлами). Создаем новый файл **s3_client.py** в текстовом редакторе: ``` nano s3_client.py ``` Вставляем код, заменяя **ВАШ_КЛЮЧ_ДОСТУПА**,**ВАШ_СЕКРЕТНЫЙ_КЛЮЧ** и** https://ваш.endpoint.url** на ваши реальные данные: ```xml import boto3 from botocore.client import Config # Данные для подключения access_key = 'ВАШ_КЛЮЧ_ДОСТУПА' secret_key = 'ВАШ_СЕКРЕТНЫЙ_КЛЮЧ' endpoint_url = 'https://ваш.endpoint.url' # Создание клиента S3 s3_client = boto3.client( 's3′, aws_access_key_id=access_key, aws_secret_access_key=secret_key, endpoint_url=endpoint_url, config=Config(signature_version='s3') ) # Получение списка бакетов try: response = s3_client.list_buckets() print("Список бакетов:") for bucket in response['Buckets']: print(f" — {bucket['Name']}") except Exception as e: print(f"Ошибка: {e}") ``` Сохраняем файл и закрываем редактор (Ctrl + X, затем Y и Enter). ### Запуск скрипта Для проверки подключения запускаем скрипт: ``` python3 s3_client.py ``` Если всё настроено правильно, появится список доступных бакетов. ### Дополнительные операции с хранилищем Создание тестового файла Перед загрузкой файла создадим его: ``` echo "Тестовый контент" > local_file.txt ``` Загрузка файла в хранилище Добавляем в скрипт следующий код: ``` s3_client.upload_file('local_file.txt', 'bucket_name', 'remote_file.txt') ``` Где: - **local_file.txt** — локальный файл, - **bucket_name** — имя бакета, - **remote_file.txt** — имя файла в хранилище. Скачивание файла Для скачивания файла используем: ``` s3_client.download_file('bucket_name', 'remote_file.txt', 'local_file.txt') ``` Где: - **bucket_name** — имя бакета, - **remote_file.txt**— имя файла в облаке, - **local_file.txt**— путь для сохранения загруженного файла. ### Проверка зависимостей При возникновении ошибок стоит проверить зависимости. Например, можно обновить **botocore**>: ``` pip3 install —upgrade botocore ``` ### Примечания - Если у вас нет настроенного S3-совместимого хранилища, уточните у провайдера параметры **endpoint_url**, ключи доступа и настройки бакетов. - Вы можете использовать любой удобный текстовый редактор вместо nano. - Убедитесь, что ваш аккаунт обладает достаточными правами для работы с объектами S3. ### FAQ (Часто задаваемые вопросы) **Как исправить ошибку «Access Denied» при подключении к S3?** Проверьте правильность введённых ключей доступа и убедитесь, что у пользователя есть разрешения на чтение/запись объектов в хранилище. **Что делать, если не удаётся установить boto3?** Убедитесь, что у вас установлены последние версии **pip** и **setuptools**, а также попробуйте запустить команду: ``` python3 -m pip install —upgrade pip setuptools ``` **Можно ли использовать этот скрипт для Amazon S3?** Да, если указать** endpoint_url=’https://s3.amazonaws.com’**, скрипт будет работать с официальным сервисом Amazon S3. https://serverspace.by/support/help/ustanovka-softether-vpn-client.md Установка SoftEther VPN Client — пошаговая инструкция по настройке программного обеспечения для безопасного подключения к виртуальной частной сети! В данном материале рассмотрим основные аспекты развертывания клиентского решения VPN и установки соединения с сервером для SoftEther VPN Client! Для начала предустановим все необходимые пакеты, для этого перейдем на [официальный сайт SoftEther](https://www.softether.org/5-download) и загрузим последнюю версию VPN-клиента. Выбирайте подходящий дистрибутив, под вашу ОС и архитектуру. ## Инсталяция клиента VPN После запустите установочный файл и следуйте инструкциям на экране, чтобы завершить установку. Скриншот №1 — Инсталляция Скриншот №2 — Выбор типа клиента Скриншот №3 — Соглашение Скриншот №4 — Политики Скриншот №5 — Локация файлов Скриншот №6 — Завершение установки После установки откройте SoftEther VPN Client и перейдите к настройке подключения: Скриншот №7 — Создание адаптера Для создания нового соединения Нажмите на кнопку «Add VPN Connection» (Добавить VPN соединение). Введите имя для вашего соединения в поле «Name» (Имя). Укажите адрес сервера (IP-адрес или доменное имя) в поле «Host Name» (Имя хоста). Если необходимо, измените порт (по умолчанию используется 443). Перейдем к выбору метода аутентификации. Классическим и самым простым является вход по логину и паролю, поэтому выберем его. Введите свои учетные данные (логин и пароль) в соответствующие поля. Скриншот №8 — Настройка подключения Нажмите «OK», чтобы сохранить созданное соединение. ## Подключение к VPN В главном окне SoftEther VPN Client выберите созданное вами соединение. Нажмите кнопку «Connect» (Подключиться). После успешного подключения вы увидите статус «Connected» (Подключено). Скриншот №9 — Публичный адрес Теперь вы можете использовать интернет через VPN. ## Отключение от VPN Чтобы отключиться от VPN, выберите текущее подключение и нажмите кнопку «Disconnect», что отключит созданный нами ранее виртуальный адаптер. Трафик пойдет через классические маршруты! https://serverspace.by/support/help/kak-razvernut-n8n-u-sebya.md Узнайте, как развернуть n8n у себя: локальная установка, Docker, облачные серверы. Пошаговая инструкция для настройки автоматизации. Каждого просто сьедают повторящиеся и однотипные задачи, особенно, если зачастую они сводяться к "скопировать" и "вставить". Операционных процесссов в бизнесе, которые можно оптимизировать полно, одним из решений стали CRM системы, однако, и их вскоре стало мало. Крупные компании разрабатывали собственные решения по автоматизации, но для этого у них были люди и средства, что явно недоступно обывателям для решения своих задач. Поэтому группа разработчиков реализовала open-source проект n8n, который в формате low-code позволяет автоматизировать операционные цепочки. В данном материале рассмотрим, как быстро развернуть self-hosted решение для автоматизации задач! ## Что такое n8n и как его установить? **n8n**— это **сервер приложений, который содержит множество коннекторов** или нод, которые знают, как коммуницировать с внешними решениями по API и передают информацию между друг другом для построения цепочки обработки. Есть триггер или событие, которое запускает весь процесс и остальные ноды обработки, в том числе AI-агенты, каждый из которых выполняет свои функции. Для установки будем использовать Docker-образ с лицензией сервера Community Edition. Установим все зависимости перед началом работы для этого введите строку, в зависимости от вашего пакетного менеджера команды могут изменяться. Если у вас нет собственных мощностей или статического белого адреса, необходимого для работы, то вы можете воспользоваться VPS от Serverspace: ```bash apt install docker.io docker-compose -y ``` После создадим временную директорию и сконфигурируем сервис n8n через файл Docker Compose: ```xml version: '3' services: n8n: image: n8nio/n8n restart: unless-stopped ports: — "2002:2002" environment: — N8N_BASIC_AUTH_ACTIVE=true — N8N_BASIC_AUTH_USER= — N8N_BASIC_AUTH_PASSWORD=! — N8N_HOST= — N8N_PORT= — N8N_PROTOCOL=http — N8N_WEBHOOK_URL=http:// — N8N_SECURE_COOKIE=false volumes: — n8n_data:/home/node/.n8n networks: — n8n_network volumes: n8n_data: networks: n8n_network: driver: bridge ``` За конфигурацию образа отвечают переменные среды, которые передаются в контейнер, на скриншоте выше представлен базовый набор для настройки. Вам необходимо вписать свой логин, пароль IP-адрес устройства, по которому он будет доступен. А так же порт и url, в нем нужно указать IP/Доменное имя с URL-схемой. Если вы планируете использовать без SSL оставьте http. После запустим образ командой: ```bash docker-compose run -d ``` Образ загрузиться на устройство и примет все переменные среды, после чего можно будет подключиться до него по URL. Зарегистрируйте аккаунт по форме: После можно получить ключ для активации на почту и ввести его в настройках. Отлично, платформа установлена и готова к использованию. ## Как работать с n8n? Важно понять, что это сервер-приложений, который формирует/обрабатывает API-запросы к внешним решениям, а затем каждое поле полученного пакета закладывает в переменную, которую после можно использовать следующими модулями. К примеру, у нас есть GPT модель Microsoft Phi-4, которая может проанализировать любой ваш поток данных. Самая простая схема выглядит так: Где триггером является чат, в котором мы сможем общатсья с моделью. После сама модель представляет собой модуль, который формирует API-запрос, передавая на ноду фильтрации вывода результат. Саму схему вы можете импортировать [из нашего файла](https://disk.yandex.ru/d/6_LXZtEGK-YoGw), просто выберете три точки справа, сверху и нажмите импортировать через файл. Вам достаточно зайти в нашу [панель и создать API-ключ](https://serverspace.by/services/serverspace-gpt-api.md), после чего скопировать его: Откройте ноду Phi-4 и в поле Value от заголовка Authorization вставьте свой ключ целиком: Затем зайдите в чат и напишите любой запрос, как классическому GPT-боту: Теперь вы сможете подключить к нему любой триггер или иной блок, будто сообщения Telegram от вашего бота или отзывы с маркетплейса на товар, главное помнит про модель данных Input и Output! Просмотрите на скриншот выше и обратите внимание, что мы используем переменную chatInput для формирования запроса по API, а затем в Output передается JSON! В следующих материалах мы рассмотрим уже, как строить более сложные цепочки по аналитике с обзором большого количества нод, чтобы каждый смог сформировать свои цепи! https://serverspace.by/about/news/skorost-vyshe-propusknaya-sposobnost-dlya-vstack-serverov-v-kazahstane-uvelichena-do-200-mbit-s.md Скорость выше: пропускная способность для vStack-серверов в Казахстане увеличена до 200 Мбит/с [В панели управления Serverspace](https://panel.serverspace.by/) доступно обновление для пользователей, размещающих виртуальные серверы на базе vStack [в казахстанском дата-центре](https://serverspace.by/infrastructure/datacenter-almaty.md). Теперь максимальная пропускная способность интернет-канала увеличена с 100 до 200 Мбит/с. Это значит, что проекты, развернутые в казахстанском ЦОДе, смогут работать с удвоенной скоростью обмена данными, что особенно важно для ресурсоемких задач: - хостинга нагруженных сайтов и онлайн-сервисов, - передачи и обработки больших объёмов данных, - работы корпоративных приложений, требующих стабильного канала связи. ### Что это дает пользователям: - **Быстрее отклик и загрузка сайтов** — для локальных клиентов в Казахстане и Центральной Азии. - **Стабильная работа приложений в пиковые часы** — меньше задержек и таймаутов. - **Улучшенная производительность при работе с базами данных, RDP, 1С и другими корпоративными системами**. - **Гибкость для масштабируемых проектов** — теперь можно запускать приложения с повышенными требованиями к скорости соединения. ### Как создать сервер с быстрой сетью: - Перейдите в [панель управления Serverspace](https://panel.serverspace.by/) и нажмите "Создать сервер" в разделе vStack Cloud; - В списке локаций выберите Алматы, Казахстан; - Настройте параметры конфигурации: количество vCPU, объем RAM и размер SSD-диска. - В поле "Сетевые подключения" установите значение до 200 Мбит/с. - Завершите создание сервера и начните работу с увеличенной скоростью доступа. ### Для текущих владельцев серверов в Казахстане Если вы уже используете vStack-сервер в казахстанском дата-центре, вы можете в любой момент изменить конфигурацию своего сервера и увеличить пропускную способность до 200 Мбит/с Это делается буквально за пару секунд: - Зайдите в настройки вашего сервера в панели управления; - Перейдите в раздел "Подключенные сети"‎; - Выберите пункт "Изменить пропускную способность"; - Установите новое значение пропускной способности; - Сохраните изменения — и скорость будет увеличена автоматически. Поддержка скорости до 200 Мбит/с доступна для всех конфигураций — при этом стоимость за мегабайт остаётся прежней, без изменений в текущих тарифах на сетевой трафик. Продолжаем делать облако Serverspace ещё быстрее и удобнее — следите за нашими обновлениями! [Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform. https://serverspace.by/about/news/pozdravlyaem-s-dnyom-sistemnogo-administratora-nastoyashhego-geroya-it.md Сегодня можно не спасать прод - просто расслабьтесь и отдохните. А чтобы не заскучать - пройдите наш тест “Какой вы сисадмин?” [https://serverspace.by/wp-content/uploads/2025/07/novost.svg](https://serverspace.by/wp-content/uploads/2025/07/novost.svg) В этот день мы хотим сказать спасибо тем, кто остаётся за кадром, но делает возможной работу всей IT-инфраструктуры. Это люди, которые остаются спокойными даже в разгар падения сервиса, закрывают бреши в безопасности, восстанавливают бэкапы посреди ночи и знают, где находится единственно правильная версия конфигурационного файла. В Serverspace мы знаем, что значит следить за аптаймом, срочно ставить патчи, разруливать алерты и держать систему в тонусе. Поэтому наша платформа построена с учётом нужд админов: быстрый запуск, полный root-доступ, удобный контроль и прозрачная инфраструктура. Мы знаем, что вы заслужили паузу. Сегодня можно не спасать прод — просто расслабьтесь и отдохните. Пусть алерты сами разбираются со своими проблемами. А чтобы не заскучать — пройдите наш тест ["Какой вы сисадмин?"](https://serverspace.by/sysadmin_day_2025.md) и узнайте, кто вы: снайпер по логам или маг бэкапов. С Днём системного администратора — от самого сердца команды Serverspace! [Serverspace](https://serverspace.by/index.md) — облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform. https://serverspace.by/about/news/novogodnee-koleso-fortuny-serverspace.md Крути и выигрывай облачные призы - бонусы, бесплатный год и даже сет роллов. Праздничное время — отличный повод добавить в повседневность немного приятной случайности. В этом году мы встречаем 2026-й с Колесом фортуны Serverspace — праздничной мини-игрой, в которой у каждого нового пользователя есть шанс на приз: от кэшбэка и промокодов до целого года бесплатного VPS. Раскрутите колесо и посмотрите, с какого бонуса начнётся ваш 2026 год. ## Как это работает - Ищите колесо фортуны на сайте — найти его совсем не сложно! - Укажите свой e-mail в форме рядом с кнопкой. - Нажмите "Крутить колесо" и узнайте, какой лот вам достался. - Загляните в почту — письмо с подробностями по призу уже отправлено. ## Условия участия в акции - Колесо фортуны доступно только новым пользователям, которые впервые зарегистрировали аккаунт в период проведения акции. - Акция проходит с 15.12.25 по 30.12.25. - Промокоды действуют только в период проведения акции. - Для призов с бонусными рублями: бонусные средства начисляются при пополнении баланса от 30Br и выше. - Бонусный баланс начисляется только на один проект, который автоматически создаётся при регистрации. **А для тех, кто с нами давно, подарки уже готовы** — они доступны в [панели управления](https://panel.serverspace.by/). Авторизуйтесь в аккаунте, чтобы посмотреть актуальные предложения и условия их получения. Желаем вам счастливых праздников и удачного старта в 2026 году. С самыми тёплыми пожеланиями, Команда Serverspace _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/minimalnye-zaderzhki-maksimum-kachestva-live-streaming-ot-serverspace.md Новый сервис Live Streaming в Serverspace: прямые эфиры с минимальной задержкой, глобальная CDN в 8 странах и подключение за несколько минут. В панели управления Serverspace стала доступна новая услуга — [Live Streaming](https://serverspace.by/services/cdn-dlya-striminga-v-belarusi.md). Это решение для организации прямых эфиров любого формата: от онлайн-мероприятий и новостных включений до обучающих вебинаров и live-продаж. Платформа позволяет запускать трансляции без сложной инфраструктуры и дополнительных сервисов. Пользователь отправляет видеопоток один раз, а дальше система самостоятельно распределяет его через глобальную сеть CDN. В результате зрители получают стабильное видео с минимальной задержкой — независимо от своего местоположения. Serverspace обеспечивает быструю доставку сигнала, а управление контентом полностью остаётся за вами: собственный плеер, сценарии монетизации, аналитика и взаимодействие с аудиторией. ## **Принцип работы сервиса** - **Передача видеопотока. **Трансляция запускается через привычные инструменты — OBS (Open Broadcaster Software), камеру или другое ПО. Поддерживаются современные протоколы LLHLS и WebRTC. - **Обработка и подготовка к вещанию. **После приёма поток автоматически конвертируется в оптимальные кодеки (H.264, AAC, Opus), что гарантирует корректное воспроизведение на различных устройствах. - **Глобальная доставка контента. **Видео распределяется через сеть CDN Serverspace, охватывающую 8 стран. Это обеспечивает минимальные задержки и стабильный просмотр на сайте, в мобильном приложении или в социальных сетях. ## **Ключевые преимущества** - **Полный контроль над трансляцией**. Нет навязанного видеоплеера или рекламной модели — вы самостоятельно определяете формат показа и способы монетизации. - **Быстрое подключение**. Сервис активируется за несколько минут через панель управления без сложной технической настройки. - **Независимость и гибкость**. Контент и инфраструктура находятся под вашим управлением — без ограничений сторонних платформ. ## **Кому подойдёт Live Streaming** - СМИ и информационным площадкам — для прямых включений и репортажей без риска потери сигнала. - Организаторам спортивных и деловых мероприятий — для одновременного показа на нескольких площадках. - Корпоративному сектору — для защищённых внутренних трансляций и онлайн-обучения сотрудников. - Владельцам систем видеонаблюдения и робототехники — для передачи видео даже при нестабильных каналах связи через LLHLS. - Онлайн-ритейлу и брендам — для проведения live-шоппингов и презентаций. **Как подключить** - Откройте [панель управления](https://auth.serverspace.by/) Serverspace и перейдите в раздел "[Стриминг](https://serverspace.by/services/cdn-dlya-striminga-v-belarusi.md)". - Создайте новую трансляцию, указав её параметры: протокол и разрешение видео. - Получите ссылку для отправки потока и начните эфир. Live Streaming уже доступен для подключения в [панели управления](https://auth.serverspace.by/)! _[Serverspace](https://serverspace.by/index.md) — облачный провайдер с автоматическим развёртыванием виртуальной инфраструктуры на базе Linux, Windows и российских операционных систем менее чем за одну минуту. Для интеграции доступны API, CLI и Terraform._ https://serverspace.by/about/news/novyj-data-czentr-serverspace-v-uzbekistane-tashkent.md Запущен ЦОД East Telecom YA DC в Ташкенте. Серверы Intel Xeon, резервное питание и охлаждение, круглосуточный мониторинг. Разверните инфраструктуру в Центральной Азии Компания [Serverspace](https://serverspace.by/index.md) расширила географию своей облачной платформы и запустила новую локацию в панели управления. Теперь пользователи могут разворачивать VPS-инстансы в дата-центре **East Telecom YA DC** в Ташкенте, Узбекистан. Этот новый регион предназначен для проектов, работающих в Центральной Азии и на ближайших рынках, где особенно важны низкая задержка и размещение инфраструктуры ближе к конечным пользователям. **Дата-центр East Telecom YA DC** соответствует международным стандартам надежности и был спроектирован в соответствии с архитектурными рекомендациями Tier III института Uptime Institute. Объект построен с учетом отказоустойчивости ключевых инженерных систем, что обеспечивает стабильную и предсказуемую производительность облачных сервисов. **Инфраструктура и платформа** Новая локация работает на серверах на базе процессоров Intel Xeon Scalable второго поколения. Она поддерживает развертывание виртуализированных сред на базе VMware и vStack, что делает ее подходящей как для стандартных облачных сценариев использования, так и для корпоративных нагрузок. **Особенности безопасности:** - Резервированное электропитание и системы охлаждения, включая ИБП и дизель-генераторы; - Архитектура охлаждения N+1 для обеспечения непрерывной работы оборудования; - Система газового пожаротушения FM-200; - Круглосуточный мониторинг и присутствие инженерного персонала на площадке. Новая локация уже доступна в панели управления и подходит как для тестовых сред, так и для промышленных нагрузок, где важны стабильность, отказоустойчивость и предсказуемое поведение инфраструктуры. Для компаний, расширяющихся на восточные рынки, ташкентская локация также помогает снизить задержки для пользователей и сервисов в регионе, что облегчает масштабирование бизнеса на восток без потерь в производительности, связанных с удаленной инфраструктурой. **Как развернуть VPS-сервер в Узбекистане** - Откройте панель управления и перейдите в раздел создания сервера; - Выберите вашу операционную систему и укажите дата-центр — Ташкент, Узбекистан; - Задайте конфигурацию сервера: CPU, RAM, SSD-диск и сетевые настройки; - Нажмите кнопку "Создать". С запуском East Telecom YA DC пользователи теперь могут размещать инфраструктуру в 10 дата-центрах по всему миру. Провайдер также планирует продолжать расширение своей геораспределенной сети и добавить новые локации в ближайшем будущем. https://serverspace.by/about/news/newyear2025.md Поздравляем вас с наступающим Новым 2025 годом! [https://serverspace.by/wp-content/uploads/2024/12/ny-by-25-1.svg](https://serverspace.by/wp-content/uploads/2024/12/ny-by-25-1.svg) **Дорогие пользователи Serverspace!** 2024 год стал для нас годом масштабных изменений, и все это стало возможным благодаря вам. Мы гордимся, что в этом году Serverspace расширил свою зону присутствия до 9 стран, добавив мощности в центры обработки данных Бразилии и ОАЭ. Были запущены новые функции, которые сделали наши сервисы еще удобнее и мощнее: - Video on Demand – мгновенная передача контента в реальном времени (уже доступна в панели управления). - GPT API – инструменты внедрения искусственного интеллекта для разработчиков, которые меняют правила игры(для получения GPT API, оставьте [обращение в службу поддержки](https://panel.serverspace.by/support/create-request)). - Серверы с GPU – обработка графики для воспроизведения плавного потокового контента (для получения сервера с GPU, оставьте [обращение в службу поддержки](https://panel.serverspace.by/support/create-request)). и многое другое!. **Спасибо за то, что вы выбираете Serverspace!** Ваше доверие вдохновляет нас двигаться вперед, улучшать сервис и разрабатывать новые решения для ваших задач. В 2025 году мы обещаем еще больше инноваций, скорости и возможностей для роста вашего бизнеса! Пусть Новый год принесет вам успех, стабильность и только положительные изменения. До встречи в новом году, команда Serverspace???? _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/serverspace-2024-itogi-goda.md Serverspace 2024 – Итоги года 2025 год набирает обороты, и мы уже готовы к его новым вызовам. Команда Serverspace не останавливается на достигнутом и продолжает работать над улучшением сервисов. А пока самое время подвести большие итоги 2024 года – новые услуги и дата-центры, расширение географии локальных представительств, коллаборация с международным GameDev-проектом и не только. Делимся главными событиями минувшего года. ## Новые услуги – уникальные возможности В прошлом году мы внедрили новые важные услуги: подключение GPT через API и VoD. **[Доступ к LLM через API](https://serverspace.by/services/api.md)** предоставляет клиентам возможность быстро и эффективно интегрировать искусственный интеллект в свои приложения для автоматизации бизнес-процессов. От чат-ботов и мгновенного перевода текстов до генерации креативного контента — технологии AI открывают новые горизонты, позволяют значительно повысить производительность и улучшить пользовательский опыт. А как правильно использовать искусственный интеллект во благо мы рассказали в нашей статье [по ссылке](https://www.iksmedia.ru/articles/6025746-Top5-vrednyx-sovetov-po-ispolzovani.html). Также мы расширили возможности **[СDN](https://serverspace.by/services/cdn.md)** специально для работы с видео-контентом. В условиях высокой конкуренции быстрая загрузка видео становится обязательным требованием для успешного бизнеса. Чтобы помочь нашим пользователям соответствовать этим стандартам, мы внедрили услугу **[Video on Demand (Видео по запросу)](https://serverspace.by/services/video-on-demand-vod.md)**, которая обеспечивает мгновенную доставку видеоматериалов с высокой скоростью. Видеофайлы, загруженные пользователями, распространяются через глобальную сеть серверов и всегда находятся максимально близко к пользователю. ## Расширение инфраструктуры: доступ ближе, чем когда-либо В 2024 году в панели управления стали доступны сразу две новых локаций для развертывания виртуальных серверов — Бразилия (Сан-Паулу) и ОАЭ (Дубай). **[Дата-центр SP3 Equinix](https://serverspace.by/infrastructure/czod-san-paulu.md)** в Сан-Паулу является ведущим центром обработки данных в Бразилии. ЦОД соответствует международным стандартам качества, а также обладает полным набором сертификатов Tier III от Uptime Institute и золотым – Operational Sustainability (сертификация операционной устойчивости). В SP3 установлены серверы vStack SL201-25RE, оснащенные передовыми 16-ядерными процессорами Intel Xeon Gold 6226R с архитектурой Cascade Lake и частотой 2,70 ГГц. Еще один новый доступный ЦОД —** [Equinix DX1 в Дубае](https://serverspace.by/infrastructure/data-centr-dubai.md)**. ДЦ спроектирован в соответствии с международными стандартами Tier III и имеет сертификаты качества, такие как ISO 27001, ISO 9001 и PCI DSS. В кластере установлены серверы vStack-R-SL201-25RE оснащенные 16-ядерными CPU Intel Xeon Gold с базовой частотой 3.0 GHz. Доступ к дата-центрам в Бразилии и ОАЭ позволяет пользователям Serverspace быстро и эффективно выйти на рынки Южной Америки и Ближнего Востока. Новые локации обеспечивают минимальные задержки, соответствие локальным законам о данных и доступ к современному оборудованию для максимальной производительности. ## Облака Serverspace над всеми континентами Минувший год ознаменовался значимыми достижениями в международной экспансии нашего проекта. Serverspace запустил локальное представительство сразу в 3 странах: Бразилия, Канада и ОАЭ. Эти регионы стремительно развиваются в сфере IT и демонстрируют высокий спрос на облачные технологии и цифровые решения. Для пользователей Бразилии действует сайт [serverspace.com.br](http://serverspace.com.br), а для клиентов из Канады — [serverspace.ca](http://serverspace.ca). Особенно примечателен запуск [falconcloud.ae](http://falconcloud.ae) в ОАЭ — компании, работающей на базе технологий Serverspace. Каждый из проектов предлагает широкий спектр облачных сервисов, от виртуальных серверов VStack до инструментов для разработки, которые соответствуют всем стандартам качества Serverspace. Локальные дата-центры обеспечивает минимальную задержку и высокую надежность для бизнеса в регионах. Также на всех площадках доступны бесплатная панель управления на английском и испанском языках, оплата в местных валютах и круглосуточная тех.поддержка. ## Новая операционная система: Rocky Linux В этом году мы также добавили поддержку новой операционной системы — **Rocky Linux**, Rocky Linux — это открытая и стабильная ОС, созданная в качестве замены CentOS после изменений в его модели поддержки. Основные преимущества новой ОС: - **Надежность и стабильность:** Rocky Linux обеспечивает долгосрочную поддержку и стабильные обновления, что делает его идеальным выбором для серверов в корпоративной среде. - **Совместимость:** ОС полностью совместима с RHEL (Red Hat Enterprise Linux), что позволяет легко мигрировать существующие проекты без изменений в инфраструктуре. - **Сообщество и открытость:** Управляемое сообществом развитие гарантирует прозрачность и отсутствие коммерческих ограничений, что особенно ценно для бизнеса. ## Serverspace X Sumo Tatami В 2024 году мы начали сотрудничество с международным GameDev-проектом **[Sumo Tatami](https://store.steampowered.com/app/1707170/Sumo_Tatami_Prologue/)**. Создатели игры использовали платформу Serverspace для размещения своих серверных мощностей. Виртуальные серверы Serverspace помогли Sumo Tatami справиться с пиковыми нагрузками, гарантировали минимальные задержки и обеспечили пользователям захватывающий игровой процесс без сбоев. Также благодаря гибкой инфраструктуре проект смог масштабироваться и поддерживать высокий пинг на фоне стремительного роста аудитории по всему миру. Подробности читайте **[по ссылке](https://serverspace.by/about/blog/sumo-tatami-x-serverspace.md).** ## Работа с комьюнити Мы также продолжили развивать наш [блог на Хабре.](https://habr.com/ru/companies/serverspace/profile/) В этом году аудитория особо оценила статьи: - ["Курсор": редкий советский компьютер с газоразрядным дисплеем](https://habr.com/ru/companies/serverspace/articles/861144/) - [Советский одноплатник. Уникальная ЭВМ "Электроника С5"](https://habr.com/ru/companies/serverspace/articles/865260/) - [Геймдизайн и мотивация: как создать захватывающий игровой опыт](https://habr.com/ru/companies/serverspace/articles/859454/) ## Планы В следующем году мы планируем сделать ряд важных шагов в развитии Serverspace. Среди них: - Открытие нового представительства и VPS-локации в Узбекистане; - Обновление реферальной программы, которая станет еще более выгодной для наших клиентов и партнеров; - Расширение возможностей для облачных серверов VStack – создание бэкапов в панели управления; - Добавление новых локаций для VPS; - Внедрение дополнительных ОС для серверов; - Запуск новых услуг и фичей. Мы продолжим совершенствовать сервисы, повышать стабильность и производительность всех наших решений. Следите за нашими апдейтами в [ченджлоге](https://serverspace.ru/changelog/), новостной рассылке, в [Telegram-канале](https://t.me/serverspace) и [сообществе ВКонтакте](https://vk.com/serverspace) — впереди много интересного! https://serverspace.by/about/news/obnovlenie-tarifov-serverspace-novye-czeny-na-oblachnye-uslugi.md Обновление тарифов Serverspace: новые цены на облачные услуги Serverspace ценит пользователей, предлагая передовые решения, адаптированные к потребностям проектов любой сложности и масштаба. Новые планы предоставляют еще больше возможностей для масштабирования, управления инфраструктурой и оптимизации затрат. **Спасибо вам за доверие! Нам приятно быть частью вашего успеха.** Актуальные цены на облачные услуги Serverspace будут размещены в панели управления и на сайте в ближайшее время. _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/novyj-servis-dostup-k-llm-cherez-api-iz-paneli-upravleniya.md Запуск нового сервиса, предоставляющего доступ LLM через API. Интегрируйте возможности искусственного интеллекта в свои приложения прямо из панели управления Serverspace. Serverspace запустил [новый сервис](https://serverspace.by/services/serverspace-gpt-api.md), предоставляющий доступ к большим языковым моделям (LLM) через API. Этот сервис позволит интегрировать передовые возможности искусственного интеллекта в свои приложения прямо из панели управления Serverspace. Сервисы на базе больших языковых моделей (LLM) становятся все более важными инструментами в различных отраслях. По данным исследований, использование LLM позволяет сократить время на создание контента до 70% и повысить точность ответов на запросы клиентов до 85%. Более 40% компаний уже внедрили ИИ-технологии в свои бизнес-процессы, а рынок ИИ к 2027 году достигнет 407 миллиардов долларов. ### Примеры использования LLM - **Автоматизация поддержки клиентов:** Быстрые и точные ответы на запросы. - **Создание контента:** Генерация статей, описаний продуктов и рекламных материалов. - **Перевод языков:** Мгновенный перевод текстов и документов. - **Разработка чат-ботов:** Создание интеллектуальных виртуальных ассистентов. ### Кому подходит Serverspace LLM API - **Разработчикам:** Для интеграции ИИ в приложения и автоматизации процессов. - **Бизнесу:** Для улучшения взаимодействия с клиентами и повышения эффективности операций. - **Маркетологам:** Для генерации уникального контента и проведения аналитики данных. В реализации проекта принимает участие Ainergy, интегратор решений для бизнеса на основе ИИ. Это сотрудничество позволит расширить возможности Serverspace и предложить клиентам новые инструменты для интеграции ИИ. На текущий момент для использования доступны Openchat-3.5-0106 и Microsoft Phi-4. - Openchat-3.5-0106 – модель языка с открытым исходным кодом настроена с использованием C-RLFT и превосходит Grok-1 и ChatGPT (версия 3.5 от марта 2023 года) по популярным бенчмаркам. - Microsoft Phi-4 – передовая языковая модель, обученная на синтетических данных и современных методах машинного обучения. Phi-4 превосходит популярные Open-Source модели, включая GPT-3.5, и демонстрирует лучшие результаты, чем ChatGPT-4o, в решении задач, требующих точности, логики и математического обоснования. Модель обеспечивает высокое качество ответов и отлично подходит для аналитики, технических текстов и сложных вычислений. В дальнейшем библиотека моделей будет расширяться, и в панель управления Serverspace будет интегрировано большинство доступных open-source моделей LLM. _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/dobavili-6-novyh-shablonov-os-v-serverspace.md Разверните виртуальные машины и другие облачные сервисы на новейших версиях популярных дистрибутивов. AlmaLinux 9.5, Kali Linux 2024.4 и др. Мы расширили ассортимент доступных шаблонов ОС для развертывания в облаке Serverspace! Теперь вы можете развернуть виртуальные машины и другие облачные сервисы на новейших версиях популярных дистрибутивов. В список добавленных ОС вошли: - AlmaLinux 9.5 - FreeBSD 14.2 - Kali Linux 2024.4 - Oracle Enterprise Linux (OEL) 9.5 - Rocky Linux 9.5 - Ubuntu 24.04.2 ## Что нового в этих версиях? AlmaLinux 9.5 Свободный и стабильный форк CentOS продолжает улучшаться. В этой версии: - Улучшена производительность ядра Linux 5.14. - Обновлены пакеты безопасности. - Оптимизирована поддержка контейнеров и виртуализации. FreeBSD 14.2 Операционная система с высокой надежностью и производительностью, идеально подходящая для серверов. В новой версии: - Улучшена поддержка современных процессоров AMD и Intel. - Улучшена файловая система ZFS. - Обновлены драйверы и сетевые стеки для лучшей работы в облаке. Kali Linux 2024.4 Любимый инструмент специалистов по кибербезопасности обновился: - Добавлены новые инструменты для тестирования на проникновение. - Улучшена совместимость с виртуальными средами. - Добавлена поддержка последних версий Metasploit, Nmap и других ключевых утилит. OEL 9.5 (Oracle Enterprise Linux) Корпоративный дистрибутив с долгосрочной поддержкой, идеален для бизнес-приложений. В этой версии: - Улучшена производительность Btrfs. - Расширены возможности контейнеризации (Podman, CRI-O). - Оптимизирована работа с Oracle Cloud и другими облачными платформами. Rocky Linux 9.5 Продолжение наследия CentOS с максимальной совместимостью с RHEL: - Расширена поддержка новых архитектур. - Улучшено управление безопасностью и обновлениями. - Добавлена поддержка новых инструментов для DevOps и контейнеров. Ubuntu 24.04.2 Популярный выбор для облачных серверов получил важные обновления: - Улучшена поддержка последних процессоров AMD и Intel. - Оптимизирована работы с контейнерами (Docker, LXC). - Расширены возможности для AI/ML разработок. ## Готовы развернуть сервер? Создайте VPS, облачную инфраструктуру или специализированный сервер с одной из этих операционных систем всего за несколько минут в удобной [панели управления Serverspace](https://auth.serverspace.by/). _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/dobavili-tri-novye-modeli-llm-v-panel-upravleniya-gpt-api.md В панели управления уже доступны GPT-4o, Claude 3.5 Haiku и Claude 3.7 Sonnet, каждая из которых предлагает уникальные преимущества. Подробности внутри. Теперь в [панели управления GPT](https://panel.serverspace.by/gpt) API от Serverspace доступно сразу пять мощных языковых моделей — мы добавили три новых варианта, расширяя возможности пользователей. К уже доступным моделям присоединились GPT-4o, Claude 3.5 Haiku и Claude 3.7 Sonnet, каждая из которых предлагает уникальные преимущества: - **GPT-4o** – флагманская модель OpenAI, обладающая высокой скоростью работы, улучшенным пониманием контекста и возможностью обработки текста, изображений и аудио в реальном времени. Она идеально подходит для сложных интеллектуальных задач, анализа данных и генерации высококачественного контента. - **Claude 3.5 Haiku** – самая быстрая модель от Anthropic с минимальной задержкой. Оптимизирована для живого общения и динамических диалогов, что делает её отличным выбором для чат-ботов, поддержки пользователей и быстрого генеративного контента. - **Claude 3.7 Sonnet** – продвинутая модель с улучшенной логикой и глубиной понимания. Отличается высокой точностью в аналитике и вычислениях, что делает её особенно полезной для сложных задач, требующих детального анализа и интерпретации данных. Теперь разработчики, аналитики и бизнес-команды могут гибко выбирать LLM в зависимости от своих потребностей — будь то обработка естественного языка, автоматизация клиентской поддержки, генерация контента, проведение сложных вычислений или анализ больших массивов данных. _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/support/help/instrukcziya-dlya-yuridicheskih-licz.md Инструкция для юридических лиц Serverspace дает возможность работать с облачной инфраструктурой как физическим, так и юридическим лицам. В первом случае пользователи могут зарегистрироваться в Serverspace и оплачивать сервисы картой или другим доступным способом. Для юрлиц в панели создана отдельная вкладка для удобства пользования. ## Данные юрлица Чтобы открыть данные юрлица, вам необходимо перейти в **Настройки** -> **Настройки проекта** -> **Данные юрлица**, данные вкладки показаны на скриншоте: После чего вам нужно заполнить данные юрлица: ## Как изменить данные юрлица Чтобы изменить данные юрлица, необходимо зайти в **Настройки проекта** -> **Данные юрлица**, как показано на скриншоте: ## Виды документов в панели управления ### Счета Для каждой юрисдикции доступна возможность периодической отправки финансовых документов и автоматической отправки счетов на оплату. Счета выставляются автоматически каждый месяц. Если вы хотите настроить выставление счетов — воспользуйтесь нашей инструкцией ["Как выставить счет в панели управления Serverspace"](https://serverspace.by/support/help/kak-vystavit-schyot-v-serverspace/) : ### Акты Акт это документ, который подписывают исполнитель и заказчик. Акт подтверждает, что услуги оказаны или работы выполнены, а у заказчика нет претензий по их качеству. Акты в панели управления формируются за отчетный период — _1 календарный месяц_. Просмотреть акты можно в разделе **Финансы** -> **Акты **Акты также могут быть отправлены через ЭДО. ### Акты сверки Акты сверки используются для того, чтобы найти и зафиксировать расхождения по использованию и/или пополнению средств. Акт сверки можно сгенерировать в разделе **Финансы** -> **Акты сверки**. Они отображают подробную финансовую информацию за выбранный отчетный период ### ЭДО Также у нас есть, ЭДО — сервис электронного документооборота. Serverspace работает с популярными сервисами документооборота: [Контур.Диадок](https://www.diadoc.ru/) и [СБИС](https://sbis.ru/). Также у нас есть статьи: **["Как выставить счет"](https://serverspace.by/support/help/kak-vystavit-schyot-v-serverspace/)**, "**[Способы оплаты"](https://serverspace.by/support/help/sposoby-oplaty-oblachnyh-servisov-serverspace/)**, в которых мы более конкретно говорим об аспектах связанных с финансами. https://serverspace.by/support/help/kak-izmenit-parol-i-email-ot-akkaunta-v-serverspace.md Как изменить пароль и email от аккаунта в Serverspace? ## Введение В процессе использования вашего аккаунта, может возникнуть необходимость изменить пароль или обновить адрес электронной почты для обеспечения безопасности. В этом руководстве мы подробно рассмотрим каждый из этих шагов, чтобы вы могли легко и безопасно обновить свои данные в панели управления Serverspace. ## Пароль Для того чтобы сменить пароль, необходимо перейти во вкладку **Настройки** — **Безопасность** — **Изменение пароля**: После чего заполните поле **Старый пароль**, **Новый пароль** и **Новый пароль ещё раз**. Нажмите кнопку **Сохранить изменения** и выполните авторизацию, используя новый пароль. ## Смена почтового адреса Для смены почтового адреса в панели Serverspace, необходимо сделать ваш личный проект — общим. Для этого нажмите на знак **+**, сверху справа вашей панели: После чего преобразуйте личный проект в общий: Перейдите в **Настройки** — **Настройки проекта** — **Детали проекта**. Добавьте нового пользователя, нажав кнопку **Добавить**: Введите почту вашего нового зарегистрированного аккаунта с ролью — **Владелец**: Проверьте почтовый ящик, и примите приглашение: На старом аккаунте, покиньте проект: Удалите старый аккаунт. Перейдите в личные настройки, затем во вкладку **Удалить**: В новом аккаунте проверьте, что остался один владелец с новой почтой: Вы успешно сменили почту вашего проекта! https://serverspace.by/support/help/vidy-uvedomlenij-v-paneli-upravleniya-serverspace.md Виды уведомлений в панели управления Serverspace Для обеспечения комфортной работы в панели управления Serverspace, наша команда использует разные виды уведомлений. С их помощью вы можете понять, что происходит в вашем аккаунте, а главное почему. ## Уведомления администраторов Есть три типа: 1)Информационные уведомления (серого цвета), например о технических работах: 2)Предупреждающие уведомления (желтого цвета), например о недоступности ЦОД: 3) "Важные" уведомления (красного цвета), например какие-то изменения в работе сервиса: ## Системные уведомления Уведомления об умпешном выполнении тастки отображаются зеленым цветом, например, успешное создание снапшота сервера: Информационные уведомления — желтого цвета, например, о необходимости заполнить какие-либо данные: Уведомления об ошибках показываются красным цветом, например, о невозможности взаимодействия с [облачным сервером](https://serverspace.by/support/help/kak-sozdat-server-v-paneli-upravleniya-serverspace/), пока он выключен: ## Уведомления от технической поддержки Также вам могут приходить уведомления от администратора, они приходят как в панель управления, так и на вашу почту. Такие уведомления могут могут быть предупреждающими, например, когда с вашего сервера была совершена незаконная деятельность, или уведомлять о блокировке.: **Обращаем внимание**, что следует регулярно проверять панель управления на наличие уведомлений. Также наша маркетинговая команда может использовать уведомления для коммуникации с вами, чтобы узнать о вашем опыте взаимодействия с панелью управления. Мы всегда рады вашему фидбеку! Если у вас возникают вопросы по поводу пришедших уведомлений, вы можете обратиться в поддержку в панели управления. https://serverspace.by/support/help/kak-vyklyuchit-i-vklyuchit-server-v-paneli-upravleniya-serverspace.md Как выключить и включить сервер в панели управления Serverspace В панели управления Serverspace пользователь может управлять своими виртуальными машинами. В данной статье мы разберем выключение и включение серверов. ## Выключение виртуальной машины из списка серверов Для того чтобы выключить сервер, необходимо зайти в список серверов, нажать на контекстное меню, нужного нам сервера, и в выпадающем меню выбрать **"Выключить" **: После чего вам будет предложено выключить сервер средствами операционной системы или же выключить сервер по питанию: Начнется выключение сервера: Затем сервер будет отображаться как выключенный: ## Выключение сервера через его меню Также сервер можно выключить через его меню. Для этого необходимо перейти в меню **Действия->Питание **и нажать кнопку **Выключить сервер:** После чего вам будет предложено выключить сервер средствами операционной системы или же выключить сервер по питанию: Затем начнется процесс выключения сервера: Сервер будет выключен: ## Как включить сервер в списка серверов Включение аналогично процессу выключения. Для нужного сервера нажимаем значок контекстного меню и выбираем **Включить**: Откроется меню подтверждения: После этого начнется процесс включения сервера: Сервер включится и будет готов к работе: ## Как включить сервер через его меню Для того чтобы выключить виртуальную машину, перейдите в меню сервера **-> Действия -> Питание**: и нажмите **Включить:** Начнется процесс включения сервера: Сервер включится: https://serverspace.by/support/help/kak-sozdat-snimok-servera.md Как создать снимок сервера В панели управления Serverspace пользователь может создавать снимки сервера и в случае чего восстанавливать по ним. ## Что такое снимок сервера? Снимок сервера — состояние файловой системы и сетевой конфигурации сервера, сохранённое в определённый момент времени. Снимки занимают минимум места для хранения и отражают объём изменений, произведённых с момента сохранения состояния. Объём снимка формируются следующим образом: - Когда создаётся снимок, он точно соответствует состоянию файловой системы сервера, именно поэтому объём снимка сразу после создания равен 0 MB. - После изменения данных на сервере, выполнения операций ввода-вывода, выполняемых файловой системой, и изменения сетевой конфигурации происходит сравнение состояний текущей файловой системы и снимка. Разница состояний и является объёмом снимка. - Чем больше изменений происходит в файловой системе, тем больше становится объём снимка. С помощью снимка можно восстановить состояние файловой системы и сетевой конфигурации в определённый момент времени — вернуть содержимое файлов и каталогов, вернуть сетевые настройки. ## Особенности и ограничения работы со снимками - Размер снимка можно узнать только после его создания. Объём снимка меняется со временем и зависит от изменений, которые произошли с данными на сервере. Сразу после создания его объем равен 0. - При восстановлении с непоследнего снимка более новые автоматически удаляются. - Удалить из панели управления можно любой снимок без потери более новых или более старых, при этом объём оставшихся снимков может измениться. - В снимках учитывается конфигурация и дополнительные диски. - Сетевые интерфейсы не удаляются при восстановлении, если на момент создания снимка они отсутствовали. - Удалённые сетевые интерфейсы восстанавливаются, если на момент создания снимка они присутствовали. - Невозможно удалить сеть, если у ранее подключенного к этой сети сервера есть снимок (в снимке интерфейс подключен к сети). - Объём снимка в панели управления обновляется раз в 5 минут. ## Создание снимка Для того чтобы создать снимок — перейдите в меню нужного вам сервера, затем в **Снимки:** После чего кликните по кнопке «**Добавить**«, появится контекстное меню с созданием снимка. Укажите его имя и нажмите «**Создать**«: Снимок создан и будет отображаться в списке: ## Как восстановить сервер по снимку. Для того чтобы восстановить сервер по снимку, перейдите в меню сервера -> **Снимки** и, выбрав нужный снимок, кликните по кнопке **Восстановить**: Необходимо будет подтвердить процесс восстановления: Это займет некоторое время, после сервер будет восстановлен. https://serverspace.by/support/help/kak-perezagruzit-server-v-paneli-upravleniya-serverspace.md Узнайте как перезагрузить сервер в панели управления Serverspace. Перезагрузка доступна двумя способами: по питанию и средствами ОС В панели управления Serverspace пользователь может перезагрузить сервер двумя способами: по питанию и средствами операционной системы. ## Как перезагрузить сервер Для того чтобы совершить перезагрузку сервера необходимо перейти в его меню -> **Действия** -> **Питание** и нажать кнопку **Перезагрузить:** Откроется контекстное меню, где вам предложат перезагрузить сервер средствами операционной системы или же перезагрузить сервер по питанию: Начнется процесс перезагрузки сервера: После этого сервер будет готов к работе! ## Дополнительный способ перезагрузки сервера Также вы можете перезагрузить сервер с помощью выпадающего меню в меню серверов: https://serverspace.by/support/help/shablony-v-paneli-upravleniya-serverspace.md Узнайте как управлять шаблонами в панели управления Serverspace: создание, удаление, создание сервера по шаблону В панели управления Serverspace пользователь может создавать шаблоны для своих виртуальных машин. ## Для чего нужны шаблоны. - Сохраняйте собственные виртуальные серверы в шаблоны, позволяющие быстро разворачивать их полные копии. - Копирование конфигурации сервера и ПО - Сохранение шаблона при удалении сервера - Нет ограничений на количество шаблонов Пока что шаблоны доступны только для серверов с виртуализацией VMware. ## Как создать шаблон? Для того чтобы создать шаблон, перейдите в раздел аренды серверов **VMware** -> **Шаблоны** и нажмите **Создать шаблон**: Шаблон будет создан на основе одного из ваших серверов, поэтому у вас должен быть хотя бы один активный сервер. Хранение шаблона — платная услуга, её цена равна стоимости дискового пространства _оригинального сервера_. Для создания шаблона сервер должен: - находиться в выключенном состоянии - не иметь активных снапшотов - не иметь подключенных дополнительных дисков - Примечание: создание шаблона может занять существенное время. Укажите название шаблона, его техническое наименование и сервер на основе которого будет создан шаблон: Шаблон будет создан и будет готов к использованию: ## Как создать сервер по шаблону? Для этого перейдите в меню шаблона -> **Серверы** -> **Создать сервер**: После чего откроется обычное меню выбора конфигурации сервера, вместо выбора обычного шаблона виртуального сервера, у вас будет отображаться ваш: ## Как удалить шаблон Для того чтобы удалить шаблон, перейдите в меню шаблонов и выберите нужный. После чего перейдите в меню **Удаление**: Откроется контекстное меню подтверждения: Шаблон будет удален: https://serverspace.by/support/help/istoriya-operaczij-v-paneli-upravleniya-serverspace.md История операций в панели управления Serverspace В панели управления Serverspace пользователь может отслеживать историю операций своего проекта. ## Где посмотреть историю операций? Для того чтобы увидеть историю операций, необходимо перейти в раздел **Финансы** -> **Операции: ** В истории операций вы можете увидеть ваши зачисления, зачисления бонусных средств, списание денежных средств за месяц. ## Как узнать подробные списания средств по дням? (Детализация затрат средств на инфраструктуру) Для того чтобы увидеть детализацию по списанию средств, необходимо нажать на значок «документа» справа от **Общей суммы списаний денежных средств в месяц:** После этого откроется контекстное меню с подробными операциями списания за месяц. Чтобы узнать подробную информацию о дне, необходимо раскрыть список, нажав на плюсик слева от нужной даты: Также у нас есть другие статьи посвященные разделу финансы: [Как выставить счет](https://serverspace.by/support/help/kak-vystavit-schyot-v-serverspace/), [Как активировать промокод](https://serverspace.by/support/help/kak-aktivirovat-promokod/), [Способы оплаты облачных сервисов Serverspace](https://serverspace.by/support/help/sposoby-oplaty-oblachnyh-servisov-serverspace/), [Инструкция для Юридических лиц](https://serverspace.by/support/help/instrukcziya-dlya-yuridicheskih-licz/). https://serverspace.by/support/help/tarify-na-uslugi-i-kalkulyator-konfiguraczii-serverspace.md Узнайте как быстро и удобно выбрать конфигурацию сервера, воспользовавшись калькулятором от Serverspace В панели управления Serverspace вы можете узнать стоимость услуг, а также воспользоваться удобным конструктором-калькулятором. ## Гибкий конструктор на сайте Вы можете получить информацию по тарифам [на главном сайте Serverspace:](https://serverspace.by/conditions/price.md) Здесь вы можете воспользоваться удобным **конструктором-калькулятором**, подсчитывающим стоимость аренды виртуальной машины. Вы можете выбирать: операционную систему, ЦОД, количество CPU, RAM, ширину канала, емкость SSD диска и, при необходимости, добавить еще несколько дисков: Вам будет представлена информация о стоимости аренды данной конфигурации сервера в месяц и за час. ## Тарифы в панели управления Информацию по тарифам также можно открыть в панели управления. Чтобы сделать это — перейдите в раздел **Финансы** ->**Тарифы:** Здесь вы можете увидеть подробную информацию о стоимости конфигурации серверов, о стоимости услуг, о стоимости лицензий и ПО. https://serverspace.by/about/news/tehnologii-serverspace-v-oae-zapusk-falconcloud.md Falconcloud.ae – решение для тех, кто ведет бизнес на Ближнем Востоке. Удобная англоязычная панель и оплата в дирхамах с помощью банков ОАЭ. Технологии Serverspace добрались и до Ближнего Востока. Наши коллеги из ОАЭ объявляют об официальном запуске Falconcloud. Теперь пользователи, которые ведут бизнес в этом регионе, могут оплачивать услуги в дирхамах с помощью банков Арабских Эмиратов. [Falconcloud.ae](http://Falconcloud.ae) соответствует всем стандартам качества, установленным Serverspace и предоставляет тот же набор услуг, которые уже доступны в панели управления my.falconcloud.ae. Провайдер дает возможность развернуть облачную инфраструктуру на базе enterprise-оборудования в разных локациях по всему миру. Также пользователи могут арендовать дополнительные облачные сервисы для работы с ИТ-проектами: предустановленные приложения, DNS, CDN и инструменты разработчика. Ближний Восток представляет собой регион, который находится в стадии активного экономического роста и обладает значительным потенциалом. Компании, работающие на рынке ОАЭ, сталкиваются с вызовом эффективного управления, обработки и хранения больших объемов данных. Это приводит к тому, что бизнес все чаще прибегает к услугам IaaS провайдеров. Облачные технологии предлагают масштабируемую и гибкую инфраструктуру, которая позволяет организациям настраивать свои вычислительные ресурсы в соответствии с текущими потребностями проектов. Это способствует расширению рынка, поскольку все больше компаний осознают преимущества использования облачных решений. "_[Falconcloud.ae](http://Falconcloud.ae) – бренд, который поможет экспертизе Serverspace освоить Ближний Восток. В Арабских Эмиратах большое количество малых и средних предприятий, ориентированных на внедрение облачных технологий, а также обширное сообщество российских предпринимателей, которым требуется инфраструктура. Также в ОАЭ созданы благоприятные условия для бизнеса: умеренная конкуренция, хорошие налоговые ставки, дружелюбное отношение к иностранным специалистам и широкое использование английского языка. Развитие локального провайдера даст возможность пользователям, ведущим бизнес на ближневосточном рынке, развернуть облачную инфраструктуру в удобном для них формате_" – руководитель проекта, Светлана Шарапова. Подробная информация о Falconcloud - Сайт доступен по адресу: [falconcloud.ae](http://falconcloud.ae). Язык: английский; - Регистрация и вход в панель управления: my.falconcloud.ae; - Обращения в техническую поддержку осуществляются через чат на сайте, в разделе "Поддержка" в панели управления или по телефону: +971 58 262 9713; - Валюта – дирхам ОАЭ; - Оплата принимается по картам банков ОАЭ. Технологии Serverspace в разных странах: - ОАЭ: [falconcloud.ae](http://Falconcloud.ae) - Беларусь: [Serverspace.by](https://serverspace.by/index.md) - США: [Serverspace.us](http://Serverspace.us) - Канада: [Serverspace.ca](http://Serverspace.ca) - Нидерланды: [Serverspace.io](http://Serverspace.io) - Россия: [Serverspace.ru](http://Serverspace.ru) - Казахстан: [Serverspace.kz](http://Serverspace.kz) - Турция: [Serverspace.com.tr](http://Serverspace.com.tr) - Бразилия: [Serverspace.com.br](http://Serverspace.com.br) _[Serverspace](https://serverspace.by/index.md) – международный облачный провайдер, предоставляющий сервисы для создания и работы с виртуальной инфраструктурой. Предлагает автоматическое развертывание VPS серверов с популярными операционными системами Linux и Windows Server, а также с отечественными ОС. Создание инфраструктуры осуществляется из любой точки мира за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/news/novyj-data-czentr-v-oae-equinix-dx1.md Облачный провайдер Serverspace добавил в панель управления дата-центр Equinix DX1, локация - Дубай. Теперь пользователи имеют возможность развернуть облачную инфраструктуру в ОАЭ на базе платформы VMware. [https://serverspace.by/wp-content/uploads/2024/05/ru-1.svg](https://serverspace.by/wp-content/uploads/2024/05/ru-1.svg) Serverspace теперь на Среднем Востоке. Облачный провайдер добавил в панель управления новый дата-центр Equinix DX1, локация — Дубай. Теперь пользователи имеют возможность развернуть облачную инфраструктуру в Объединенных Арабских Эмиратах на базе платформы виртуализации VMware. Дата-центр уже доступен в панели управления, открывая новые возможности и преимущества Equinix DX1. ЦОД спроектирован в соответствии с международными стандартами Tier III и имеет сертификаты соответствия качества, такие как ISO 27001, ISO 9001 и PCI DSS. В кластере установлены серверы vStack-R-SL201-25RE оснащенные 16-ядерными CPU Intel Xeon Gold с базовой частотой 3.0 GHz. Основные характеристики Equinix DX1: - Электрическая мощность 5.6 МВт; - Бесперебойное электропитание с уровнем резервирования N+1; - Система охлаждения с уровнем резервирования N+20%; - Содержит 1200 стоек для размещения оборудования; DX1 является частью сети дата-центров Equinix, Inc., компании с большим опытом в дизайне, разработке и поддержке самых современных инфраструктур данных. Как создать VPS в ОАЭ? - Перейдите в панель управления my.serverspace.by; - Приступите к созданию сервера; - Выберите ОС и дата-центр Дубаи, ОАЭ; - Настройте конфигурацию ресурсов сервера; - Нажмите на кнопку "Создать". С добавлением нового ЦОДа DX1, провайдер предоставляет возможность развернуть инфраструктуру в 4 дата-центрах, расположенных по всему миру: — [Москва (Россия)](https://serverspace.by/infrastructure/datacenter-moskva.md); — [Минск (Беларусь)](https://serverspace.by/infrastructure/datacenter-minsk.md); — [Алматы (Казахстан)](https://serverspace.by/about/news/publichnoe-oblako-vmware-v-kazahstane.md); — [Амстердам (Нидерланды)](https://serverspace.by/infrastructure/datacenter-amsterdam.md); — [Дубаи (ОАЭ)](https://serverspace.by/infrastructure/data-centr-dubai.md). В ближайшее время провайдер планирует открывать для своих пользователей и другие локации, расширяя геораспределенную сеть компании. https://serverspace.by/about/news/oblachnye-servery-na-baze-vstack-oficzialnyj-zapusk-serverspace.md Белорусский облачный провайдер Serverspace запускает создание виртуальных серверов на базе гиперконвергентной платформы vStack. Разверните виртуальный сервер в 8 локациях по всему миру. Serverspace, белорусский облачный провайдер, объявил о запуске услуги создания [виртуальных серверов на основе гиперконвергентной платформы vStack](https://serverspace.by/services/cloud-servers.md). Этот шаг направлен на замену иностранных решений в области виртуализации и предоставления белорусским компаниям конкурентоспособного сервиса мирового уровня. vStack — российская разработка, основанная на уникальных проприетарных технологиях, отличающаяся легковесностью и высокой производительностью. Ключевые преимущества платформы включают: - **Экономическая эффективность**: возможность использования до 900% ресурсов центрального процессора в вычислительном слое. - **Высокая производительность системы хранения данных**: передовые алгоритмы и оптимизация обеспечивают быстрый и надежный доступ к данным. - **Простота эксплуатации**: единый API позволяет легко интегрировать и управлять виртуальными машинами. - **Гибкая кастомизация виртуальных машин**: пользователи могут настраивать параметры под свои нужды и менять их в любое время в несколько кликов. - **Широкий выбор операционных систем**: поддержка как отечественных, так и западных ОС (Linux, FreeBSD, Windows и др.). - **Непрерывный рост компетенций, основанный на запросах пользователей**: быстрая адаптация к потребностям рынка и обеспечение высокой лояльности пользователей​​. "_Внедряя [VPS-серверы на базе vStack](https://serverspace.by/services/cloud-servers.md) в панель управления, мы предоставляем белорусским компаниям и организациям передовое решение в области виртуализации. Это важный шаг на пути импортозамещения, который позволит нашим клиентам получить высокие стандарты обслуживания и надежность_«, — сообщает Оксана Слабко, директор Белорусского подразделения Serverspace. Запущенная платформа виртуализации уже доказала свою эффективность и востребованность среди бизнесов, стремящихся к оптимизации своих ИТ-инфраструктур и повышению их производительности на территории 8 стран, в которых развивается местные представительства Serverspace: [Россия](http://Serverspace.ru), [Беларусь](https://serverspace.by/index.md), [Казахстан](https://serverspace.by/index.md), [Нидерланды](https://serverspace.io/), [США](https://serverspace.us/), [Канада](https://serverspace.ca/), [Турция](https://serverspace.com.tr/) и [ОАЭ](http://Falconcloud.ae). _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе [Linux](https://serverspace.by/services/vps-server/linux/), [Windows](https://serverspace.by/services/vps-server/windows/) и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/about/blog/sumo-tatami-x-serverspace.md История о том, как использование VPS-серверов Serverspace помогло реализовать в короткие сроки амбициозный игровой проект Sumo Tatami. Описание инструментов и архитектуры онлайн-игры. Представьте себе мир, где борцы сумо соревнуются не на традиционных дохьо, а в захватывающих аркадных гонках с множеством препятствий и веселых испытаний. Именно такую вселенную создала команда под руководством Константина Кондюкова в проекте [Sumo Tatami](https://store.steampowered.com/app/1707170/Sumo_Tatami/). Стартап уже завоевал признание в сообществе разработчиков и получил значительную поддержку, став резидентом Сколково и обеспечив себе грант на 7 миллионов рублей. Давайте разберемся с какими техническими вызовами пришлось столкнуться команде и как облачный провайдер [Serverspace](https://serverspace.by/index.md) внес свой вклад в реализацию этого многообещающего проекта. ## История создания Константин Кондюков, программист с 10-летним стажем и преподаватель ИТМО (Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики), посвятил последние четыре года разработке Sumo Tatami. Всё началось с увлечения стартапами, которое переросло в амбициозный проект. Игра, основанная на идее объединения аркадных гонок и традиций сумо, быстро привлекла внимание общественности. В Sumo Tatami игроки управляют борцами сумо, преодолевающими различные препятствия в соревновательных режимах. Гонки, дуэли, боулинг и даже футбол – всё это лишь часть захватывающего игрового процесса. ## Для каких задач понадобились облачные серверы? Создание мультиплеерной игры требует не только творческого подхода, но и решения сложных технических задач. Одной из главных проблем стала необходимость обеспечения стабильной работы серверов, способных выдержать высокую нагрузку во время пикового онлайна. Этот показатель отражает максимальное количество игроков на сервере одновременно: чем больше игроков – тем выше нагрузка. Sumo Tatami нуждался в мощностях для нескольких тысяч пользователей на начальном этапе запуска и бета-тестировании игры. "Sumo Tatami" – это международный проект, то есть игроки рассредоточены буквально по всему миру. Именно по этой причине, помимо высокой производительности виртуальных серверов, для команды разработчиков был важен фактор наличия у облачного провайдера геораспределенной сети дата-центров. Возможность развернуть серверы в разных частях света позволяет обеспечить качественный процесс игрового взаимодействия для широкой мировой аудитории геймеров. Скорость развертывания инфраструктуры – также значимый параметр для проекта, который требует динамичного развития, а разработка и запуск онлайн-игры тем более относится к этому случаю. Создателям игры необходимо быстро создавать виртуальные серверы, наращивать или, наоборот, понижать мощности в процессе тестирования, устранения ошибок в сжатые сроки. Стоит отметить, что ценообразование и качественная техническая поддержка стали еще одним важным критерием при выборе поставщика облачных услуг. Сам проект является стартапом, а это значит, что финансовые и человеческие ресурсы ограничены по сравнению с большими геймдев-студиями. Соответственно, работы по настройке инфраструктуры и обеспечения ее функционирования – это дополнительные статьи расходов для сравнительно небольшого бюджета Sumo Tatami. Команда испытала различные облачные решения, включая МТС Cloud и Яндекс. Однако в некоторых случаях цены были слишком высокие, а в других возникали трудности с технической поддержкой, а именно вопросы построения безопасной инфраструктуры для сервисов. В контексте отказоустойчивой и оснащенной средствами защиты информации технологией виртуализации, а так же сетевого взаимодействия пользователей с ресурсами инфраструктуры. В поисках подходящей облачной платформы Sumo Tatami обратились к [Serverspace](https://serverspace.by/index.md). ## Как использовали серверы Serverspace? Для разработки команда Sumo Tatami развернула более десяти облачных [Windows-серверов](https://serverspace.by/services/vps-server/windows/) на базе гиперконвергентной платформы виртуализации vStack. [Система отечественной платформы vStack](https://serverspace.by/services/cloud-servers.md) не только не уступает по своим качественных характеристикам западным аналогам, таким как VMware, но и является более выгодным решением для создания мощной инфраструктуры, Так, данный фактор в совокупности с удобной моделью оплаты Pay-As-You-Go оптимально подошли для требований проекта. На начальном этапе разработки специалисты Sumo Tatami использовали небольшие мощности для серверов: 4 ядра, 8 гб оперативной памяти и 50 гб на жестком диске. Основной мультиплеерный сервер разместили на виртуальном VPS-сервере Serverspace в Турции. Это позволило игрокам из разных регионов подключаться к игре через глобальную сеть. Для более широкого покрытия гео команда развернула виртуальные серверы еще и в других локациях: США, Канада и Нидерланды. Пиковая нагрузка от пользователей поставила задачи вертикального и горизонтального расширения для инфраструктуры проекта. Были увеличены мощности основного сегмента практически без простоя, изменение конфигурации заняло считанные минуты. А возможности использовать дата-центры в других странах, географически расширило диапазон и снизило задержки для пользователей. ## Какие результаты? На качество игрового процесса влияют несколько важных параметров: пинг, отсутствие задержек (Low latency) и быстрая синхронизация действий между игроками. Каждый из них напрямую зависит от производительности серверов, на которых строится техническая инфраструктура. В геймдеве пинг (ping) — это мера времени, необходимого для отправки и получения данных между клиентом (устройством игрока) и сервером. Пинг измеряется в миллисекундах (мс) и является важным показателем сетевой производительности в многопользовательских онлайн-играх. Низкий пинг означает быструю связь с сервером, что приводит к меньшим задержкам и более плавному игровому процессу. Высокий пинг, напротив, может вызвать значительные задержки (лаг), что ухудшает игровой опыт. Пинг важен в следующих аспектах: - **Время реакции:** В играх, где важна быстрая реакция (например, шутеры от первого лица или файтинги), высокий пинг может негативно сказаться на эффективности игрока. - **Синхронизация:** Низкий пинг помогает лучше синхронизировать действия всех игроков, что особенно важно в командных играх. - **Качество сети:** Высокий пинг может быть признаком проблем с интернет-соединением или перегруженностью сервера, что может привести к разрывам соединения и другим техническим проблемам. Чтобы снизить пинг, рекомендуется использовать более стабильные и быстрые интернет-соединения и выбирать серверы, которые находятся ближе к географическому расположению целевой аудитории. Использование высокопроизводительных [VPS-серверов Serverspace в разных географических локациях](https://serverspace.by/infrastructure/datacenter-minsk.md) позволило команде уже на начальном этапе запуска игры добиться достаточно низкого показателя пинга – чуть более 30 мс. В дальнейшем специалисты планируют нарастить производственные мощности и в других странах, что позволит повысить стабильность сетевого соединения и доступность игры для пользователей разных стран Термин «Low Latency» (низкая задержка) обозначает минимальное время задержки между вводом игрока и соответствующим откликом игры. Низкая задержка важна для обеспечения плавного и отзывчивого игрового процесса, особенно в многопользовательских онлайн-играх и играх, требующих быстрого реагирования, таких как шутеры от первого лица, файтинги и гонки. Важные аспекты Low Latency в геймдеве включают: - **Входная задержка (Input Lag):** Время между моментом, когда игрок совершает действие (например, нажимает кнопку), и моментом, когда это действие отображается на экране. Низкая входная задержка важна для точного и отзывчивого управления. - **Задержка сети (Network Latency):** Время, необходимое для отправки данных от клиента (устройства игрока) к серверу и обратно. Снижение сетевой задержки помогает уменьшить лаги и улучшить синхронизацию между игроками в онлайн-играх. - **Задержка рендеринга (Rendering Latency):** Время, необходимое для обработки и отображения графики на экране. Оптимизация рендеринга помогает сократить задержку и улучшить качество изображения. - **Задержка обработки (Processing Latency)**: Время, затрачиваемое на обработку игровых данных (физика, логика, ИИ и т.д.) до их отображения. Эффективные алгоритмы и оптимизация кода могут помочь снизить эту задержку. Для достижения низкой задержки разработчики Sumo Tatami применили различные методы: - **Оптимизация сетевого кода:** Использование более эффективных протоколов передачи данных и снижение количества передаваемых данных. - **Использование мощного и быстрого оборудования Serverspace:** Обновление серверов и игровых устройств для обеспечения высокой производительности. - **Выбор близко расположенных серверов:** Распределение серверов по различным регионам для уменьшения физического расстояния между игроком и сервером. - **Использование технологий предсказания и компенсации лагов:** Применение алгоритмов, которые предсказывают действия игрока и компенсируют возможные задержки. Так, с помощью этих действий во время бета-тестирования игры команде удалось добиться практически полного отсутствия каких-либо задержек. ## Какие преимущества Serverspace для разработки игр? Разработчики Sumo Tatami выделили несколько существенных плюсов, которые помогли с успешной реализацией проекта. Во-первых, интуитивно понятный интерфейс позволил команде быстро настроить и запустить серверы без необходимости в сложных конфигурациях, которые требуются у других провайдеров. Это дало возможность программистам Sumo Tatami самостоятельно настроить серверы без привлечения отдельного DevOps-инженера, что сэкономило время и ресурсы. Во-вторых, высокая стабильность серверов Serverspace проявлялась на протяжении всего периода тестирования. Этот показатель особенно важен для многопользовательских игр, так как даже кратковременные простои могут испортить пользовательский опыт. Третьим важным аспектом стала экономия времени. Быстрое развертывание облачных серверов и отсутствие необходимости в постоянной технической поддержке позволили команде сосредоточиться на разработке игры и внедрении новых функций. В условиях стартапа, где каждый час на счету, эта экономия времени значительно ускорила процесс реализации проекта. Кроме того, высокая производительность серверов обеспечивала быструю обработку данных и плавный игровой процесс, что критически важно для качественного пользовательского опыта. Быстрое масштабирование дало команде возможность адаптировать серверные мощности в зависимости от меняющихся потребностей проекта, что особенно полезно при увеличении числа пользователей. Качество технической поддержки также сыграло важную роль: оперативная и профессиональная помощь позволила быстро решать возникающие вопросы и проблемы. И, наконец, удобное ценообразование по модели Pay-As-You-Go позволило контролировать расходы и эффективно управлять бюджетом проекта, оплачивая только те ресурсы, которые реально использовались. Все эти факторы сделали Serverspace подходящим выбором для команды Sumo Tatami, помогая им развивать стартап. ## Что дальше? Sumo Tatami только начинает свой путь. В ближайшее время команда планирует запустить открытое тестирование, а полноценный релиз игры ожидается к концу года. В дальнейшем команда планирует привлекать частные инвестиции, расширять географический охват серверов, улучшать игровой процесс и масштабировать инфраструктуру. Sumo Tatami – яркий пример того, как страсть к разработке и правильно выбранная облачная платформа могут привести к созданию уникального продукта. Serverspace стал оптимальным решением, позволившим команде сосредоточиться на креативной части проекта и не беспокоиться о технических сложностях. Впереди еще много работы, но Sumo Tatami уже завоевала сердца первых поклонников и готова покорять мир гейминга. И в этом им, несомненно, готова помогать команда специалистов Serverspace. https://serverspace.by/about/news/zapusk-novoj-uslugi-video-on-demand-vod-uzhe-v-paneli-upravleniya.md VoD (Video on Demand) интегрирован с CDN и S3. Он позволяет зрителям просматривать видеоконтент по запросу в удобное для них время! [Serverspace](https://serverspace.by/index.md) объявляет о запуске новой услуги [Video on Demand (VoD)](https://serverspace.ru/services/video-on-demand-vod/). VoD предоставляет возможность пользователям запрашивать и воспроизводить видеоконтент в качественном формате в любое время независимо от их географического местоположения. VoD (Video on Demand) — это услуга, которая позволяет зрителям просматривать видеоконтент по запросу в удобное для них время. Serverspace интегрировал VoD с сетью [CDN](https://serverspace.by/services/cdn.md) таким образом, что видеофайлы, загруженные клиентами, автоматически кэшируются и распределяются по серверам по всему миру. Это гарантирует быстрый доступ к видео с минимальными задержками и высоким качеством. ## Какие задачи выполняет Video on Demand: - **Эффективная доставка контента:** VoD, интегрированный с [CDN](https://serverspace.by/services/cdn.md), обеспечивает низкие задержки и высокую скорость загрузки видеоматериалов. - **Снижение нагрузки на серверы:** Использование [CDN](https://serverspace.by/services/cdn.md) для VoD помогает снизить нагрузку на основные серверы, перераспределяя запросы на видеоконтент по распределенной сети. - **Оптимизация качества видео:** Система VoD автоматически регулирует качество видео в зависимости от устройства пользователя и доступной скорости интернета. ## Кому подойдет услуга VoD? - **Контент-провайдерам и стриминговым сервисам:** Для качественного распространения и монетизации видеоконтента, обеспечивая доступ к фильмам, сериалам и другим материалам в любое время. - **Образовательным платформам и учебным заведениям:** Для предоставления учащимся доступных видеоматериалов, таких как лекции и курсы, в удобное для них время, улучшая гибкость учебного процесса. - **Компаниям-дистрибьюторам видеоконтента:** Для оптимизации процессов хранения и доставки контента, что обеспечивает его быстрое и качественное воспроизведение пользователями. - **Маркетинговым компаниям:** Для эффективного использования видеоконтента в рекламных кампаниях и обучении, повышая вовлеченность и понимание продуктов. [Новый сервис](https://serverspace.ru/services/video-on-demand-vod/) доступен для всех пользователей, использующих услугу [CDN](https://serverspace.by/services/cdn.md). В дальнейшем Serverspace планирует расширять список предлагаемых услуг, чтобы обеспечить своим клиентам еще больше возможностей для работы с цифровыми технологиями. _[Serverspace](https://serverspace.by/index.md) – облачный провайдер, предлагающий автоматическое развертывание виртуальной инфраструктуры на базе Linux, Windows и российских ОС из любой точки мира менее чем за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/support/help/kak-aktivirovat-promokod.md Как активировать промокод? Промокоды в Serverspace позволяют использовать облачные сервисы Serverspace по выгодным условиям. Активировать их можно в панели управления. ## Как активировать промокод Serverspace? Для того чтобы активировать промокод, перейдите в панель управления Serverspace или зарегистрируйтесь с нуля. После этого откройте раздел** Пополнить баланс**: После чего перейдите на вкладку** Промокод**: Введите полученный промокод в поле ввода и нажмите кнопку **"Активировать промокод" ** В случае успешной активации промокода будет отображена строка **"Промокод успешно активирован"** и условия акции. Если промокод не прошел проверку, то перед вами будет отображена строка с выделенной красным информацией о причине отклонения. Примеры причин: - Активного промокода с данным ключом не найдено. - Вы уже ввели один промокод. Для ввода следующего промокода, пожалуйста, выполните условия предыдущего. - Этот промокод можно активировать только на первом проекте. ## Что делать, если возникла ошибка при активации промокода? Проверьте, что: - ваш проект соответствует условиям акции; - срок действия акции не закончился; - большинство акций проходит для новых пользователей, зарегистрированных впервые. ## Где вы можете найти промокоды Serverspace? - на порталах в Интернете; - в рассылке Serverspace; - в [новостях Serverspace](https://serverspace.by/about/news.md) на сайте; - на акционных страницах в период проведения акций. https://serverspace.by/support/help/kak-vystavit-schyot-v-serverspace.md Для юридических лиц в Serverspace предусмотрена работа с основными документами: счета, акты, акты сверки. В панели управления вы можете настроить автоматическое выставление счетов на определенную сумму. Для юридических лиц в Serverspace предусмотрена работа с основными документами: счета, акты, акты сверки. В панели управления вы можете настроить автоматическое выставление счетов на определенную сумму. Информация про основные способы оплаты находится в инструкции — "[Способы оплаты сервисов Serverspace](https://serverspace.ru/support/help/sposoby-oplaty-servisov-serverspace/)". ## Как подключить выставление счета В личном кабинете вы можете настроить автоматическое выставление счетов. Для этого заполните данные юрлица в разделе **"Настройки"** -> **"Настройки проекта"** -> **"Данные юрлица"**. Укажите email для счетов и закрывающих документов. После чего укажите всю необходимую информацию и нажмите сохранить изменения: **Важно! У каждого проекта свой индивидуальный счет** ## Автоматическое выставление счета Для того чтобы автоматически высылать счета на оплату, вы должны настроить правило в разделе **"Настройки проекта"** -> **"Данные юрлица"**: Автоматическое выставление счета можно настроить в соответствии с правилами: - Не выставлять - Первого числа каждого месяца - За 7 дней до обнуления баланса - За 14 дней до обнуления баланса ## Выставленные счета Чтобы увидеть информацию о выставленных счетах, вам необходимо перейти в раздел **"Финансы"** -> **"Счета":** https://serverspace.by/support/help/sposoby-oplaty-oblachnyh-servisov-serverspace.md Способы оплаты облачных сервисов Serverspace Чтобы оплатить облачные сервисы Serverspace, вам необходимо зайти в панель управления и пополнить баланс одним из доступных способов. В статье разберем, какие способы оплаты и форматы работы с денежными средствами вы можете использовать. С условиями вы можете ознакомиться в нашей [публичной оферте](https://serverspace.by/conditions/sla.md). Для оплаты облачных сервисов перейдите в панель управления Serverspace: кнопки для регистрации и входа находятся в правом верхнем углу сайта Serverspace.by. После входа в панель нажмите **"**‎**Пополнить баланс"**, кнопка находится также в правом верхнем углу. Далее выберите будете вы оплачивать как физическое, или юридическое лицо. ## Способы оплаты для физических лиц Пополнение баланса для физических лиц можно совершать с помощью банковской карты и с помощью сервиса Ерип ### Банковская карта Вы можете использовать банковские карты VISA, MasterCard, bePaid и Белкарт. Минимальная сумма пополнения составляет 3 белорусских рубля. Для оплаты банковской картой, вам необходимо ввести необходимые данные и нажать оплатить: **Ерип** Также вы можете пополнить свой счет с помощью сервиса Ерип: ## Способы оплаты для юридических лиц Для того чтобы пополнить аккаунт, как юридическое лицо, вам необходимо указать реквизиты юридического лица. Указав эти данные один раз, они сохранятся. В личном кабинете можно как выставить счет на юридическое лицо, так и настроить автоматическое выставление счетов. Также в настройках личного кабинета можно указать email для счетов и закрывающих документов. В случае смены данных юр.лица, вы всегда можете сменить их в панели управления. ## Активация промокода Serverspace периодически проводит акции или предоставляет промокоды, которые вы можете найти на разных сайтах в интернете. Если вы получили промокод и хотите его активировать, перейдите в панель управления в раздел **Пополнить баланс** — **Промокод.** ## Обещанный платеж Опция доступна пользователям, которые хотя бы раз пополняли свой баланс и не израсходовали средства за последнюю неделю до нуля. Сумма обещанного платежа рассчитывается на основании суммы потребления ресурсов пользователем за последние 7 дней. Для физических лиц услуга доступна через 2 месяца после регистрации, для юридических — сразу. https://serverspace.by/support/help/kak-vklyuchit-temnuyu-temu-v-paneli-upravleniya-serverspace.md Как включить темную тему в панели управления Serverspace Переключение на темную тему — полезная функция, которая есть в панели управления [облачными серверами](https://serverspace.by/services/cloud-servers.md) от Serverspace. Если вам комфортнее работать с более темными цветами, или же у вас настало темное время суток, и не хочется напрягать глаза, то вы можете включить данную тему. Сейчас разберем, как это сделать. ## Как включить темную тему в панели управления Для начала нам нужно перейти в панель управления. После этого кликните по значку своего профиля в правом верхнем углу — выпадет в меню, где и можно будет сменить тему на темную: После этого ваша панель станет темной. ## Как выключить темную тему в панели управления Если вы хотите вернуть все к прежнему виду, то выполните действия в той же последовательности. Нажмите на значок профиля, а затем на кнопку возле Темной темы. https://serverspace.by/support/help/dvuhfaktornaya-autentifikacziya-v-paneli-upravleniya-serverspace.md Двухфакторная аутентификация в панели управления Serverspace ## Введение Двухфакторная аутентификация позволит обеспечить безопасность вашего аккаунта. При включении данной функции для входа в аккаунт требуется не только пароль и логин, но и уникальный шестизначный код, полученный через приложение на вашем смартфоне ## Включение Предварительно необходимо авторизоваться в личном кабинете. После этой операции, с помощью меню слева, перейдите в раздел **Настройки, о**ткройте вкладку **Безопасность, в **окне **Двухфакторная аутентификация** нажмите кнопку **Подключить**: Воспользуйтесь приложением на смартфоне "[Google Authenticator](https://serverspace.by/support/help/ustanovka-google-authenticator/)", "Authy" или аналогичным, чтобы отсканировать **QR-код**: После ввода уникального шестизначного кода, двухфакторная аутентификацию будет успешно активирована. С этого момента для входа в аккаунт будет необходимо вводить специальный код, полученный на смартфоне: ## Отключение Мы настоятельно рекомендуем не отключать двухфакторную аутентификацию, поскольку она является важным дополнительным механизмом безопасности, который обеспечивает надежную защиту, благодаря уникальному коду. Если вам потребуется отключить двухфакторную аутентификацию, Вы всегда можете сделать это во вкладке **Настройки — Безопасность**: https://serverspace.by/support/help/roli-polzovatelej-v-serverspace.md Роли пользователей в Serverspace В панели управления Serverspace пользователи могут настроить роли для каждого участника. Всего их три: Владелец, Администратор и Бухгалтер. Ниже мы рассмотрим каждую из них подробнее. О том как добавлять или удалять пользователей, мы рассказали в нашей инструкции ["‎Как добавить и удалить участника проекта в Serverspace?"](https://serverspace.ru/support/help/kak-dobavit-i-udalit-uchastnika-proekta-v-serverspace/). ## Роли пользователей в Serverspace В проектах Serverspace существует три роли участников. Разделяются они в зависимости от задач, которые выполняют участники: - **Владелец** — назначается автоматически владельцу аккаунта и позволяет ему передавать ее любому другому участнику проекта. Владелец имеет полный контроль над панелью управления и [облачными серверами](https://serverspace.by/services/cloud-servers.md), может совершать все доступные операции в ней; - **Администратор** — не может добавлять или исключать участников проекта, а также изменять роль Владельца. Однако, в остальном, у данной роли есть те же права и возможности, что и у Владельца; - **Бухгалтер** — имеет доступ только к финансовой информации, такой как разделы "Партнеры", "Биллинг", "Поддержка" и "Настройки юрлиц". Также Бухгалтер может видеть список всех участников проекта. В таблице ниже мы показали главные отличия между ролями в проекте. **Роль** Управление ролями в проекте Выполнение операций Работа с финансами Владелец + + + Администратор — + + Бухгалтер — — + ## Список всех участников проекта Чтобы увидеть всех участников проекта, необходимо перейти в "**Настройки**" -> "**Настройки проекта**" -> "**Участники проекта**": ## Изменение ролей пользователей и удаление из проекта Если вы хотите изменить роль участника, или же удалить его из проекта, необходимо нажать на значок троеточия рядом с пользователем. После этого выпадет меню, где вы можете выбрать нужную вам опцию: Если вы хотите изменить роль пользователя — выберите "**Редактировать доступ**", после чего откроется меню изменения роли: https://serverspace.by/support/help/kak-dobavit-i-udalit-uchastnika-proekta-v-serverspace.md Как добавить и удалить участника проекта в Serverspace? ## Введение В этом руководстве вы найдете подробное описание шагов, необходимых для управления своим проектом и добавления или удаления участников. ## Создание проекта Чтобы добавить участника в проект, вы должны сделать свой личный проект **общедоступным**, либо создать **новый** общедоступный проект. ### Расширение личного проекта Рассмотрим процесс расширения своего проекта до общедоступного. Справа вверху нажмите на символ **+**: После чего поставьте галочку, придумайте название и нажмите на кнопку **Создать проект**: ### Создание нового проекта В левой панели выберите пункт **Добавить проект**: Придумайте название и нажмите на кнопку **Создать проект**: ## Добавление пользователя Независимо от выбранного способа создания проекта, процесс добавления участника останется одним и тем же. Перейдите в **Настройки** — **Настройки проекта** — **Детали проекта**: На выбор доступны 3 роли: - **Владелец** — Эта роль назначается автоматически владельцу аккаунта и позволяет ему передать ее любому другому участнику проекта. Владелец имеет полный контроль над панелью управления и может совершать все операции в ней; - **Администратор** — Пользователь с этой ролью **не может** добавлять или исключать участников проекта, а также изменять роль Владельца. Однако, в остальном, у данной роли есть те же права и возможности, что и у Владельца; - **Бухгалтер** — Эта роль предоставляет доступ только к финансовой информации, такой как разделы "Партнеры", "Биллинг", "Поддержка" и "Настройки юрлиц". Бухгалтер также может видеть список всех участников проекта. Укажите роль будущего участника, введите его почтовый адрес. На него будет отправлено приглашение в проект: После того как пользователь примет ваше приглашение, он будет отображаться в настройках проекта: ## Удаление Чтобы удалить участника проекта перейдите по пути **Настройки** — **Настройки проекта** — **Детали проекта**, после чего вызовите контекстное меню и выберите опцию **Удалить участника**: После подтверждения, участник будет удален из проекта: https://serverspace.by/support/help/kak-sozdat-ssh-klyuch.md Как создать SSH-ключ Рассмотрим как создать SSH-ключ, для чего он используется и для каких услуг нужен. ## Для чего нужен SSH-ключ SSH (Secure Shell Protocol/Протокол защищенной оболочки) — это протокол безопасного доступа к удалённым системам. Он относится к прикладным на ряду с такими как: http, smtp, snmp, FTP, Telnet etc. Протокол функционирует на порту 22, при настройке конфигурации протокола ssh, порт можно изменить. По сравнению с протоколом Telnet, ssh передает зашифрованный трафик который защищен ключом шифрования. Протокол для работоспособности и передачи данных в зашифрованном виде использует ключи шифрования. Благодаря шифрованию, злоумышленнику перехвативших поток зашифрованных данных потребуется несколько лет для его дешифровки, тем самым время актуальности данных теряется, именно поэтому используется ассиметричное шифрование. Ассиметричное шифрование – использование двух ключей для шифровки и дешифровки данных. SSH ключ — последовательность произвольных символов. С помощью него данные шифруются, после шифрования отправляются на конечный узел. Публичный ключ – данный ключ шифрует данные, его можно передавать другой стороне которая должна отправлять зашифрованные сообщения/данные. Приватный ключ – данный ключ дешифрует данные, его требуется хранить в безопасном месте. Присутствует возможность зашифровать приватный ключ, использовав ключевую фразу-пароль при создании ключа. ## Как создать SSH-ключ Создать SSH-ключ вы можете через панель управления Serverspace. Для этого перейдите в настройки пользователя, далее во вкладку SSH-ключи, как показано на скриншоте. Тут вы можете добавить ключ или же просматривать уже имеющиеся. Если вы хотите добавить SSH-ключ, нажмите на кнопку **Добавить SSH-ключ**, после чего у вас откроется меню: В меню вы можете добавить уже существующий ключ или же сгенерировать новый. Для создания нового, укажите название ключа, его формат, затем нажмите кнопку **Создать и скачать**: Если вы хотите сами сгенерировать ключ, то можете воспользоваться [нашей инструкцией](https://serverspace.by/support/help/generaciya-ssh-kluchey/). После этого ваш ключ будет успешно создан. Созданный ключ можно применить во время конфигурации сервера. В поле **Аутентификация** выберите вариант** SSH-ключи**, затем поставьте галочку, какой из ключей использовать: https://serverspace.by/support/help/registracziya-v-paneli-upravleniya-serverspace.md Регистрация в панели управления Serverspace ## Виды регистрации Для работы с сервисами Serverspace необходимо создать аккаунт в панели управления my.serverspace.ru: - через сайт [Serverspace.ru](https://serverspace.by/index.md); - по приглашению. Для создания учетной записи можно использовать несколько способов: - указать почтовый ящик; - зарегистрироваться через сторонние сервисы: Google, Яндекс, VK или GitHub. ## Как зарегистрироваться ### Регистрация через сайт На сайте нажмите на "Регистрация" в правом верхнем углу или используйте кнопки, размещенные на страницах. В открывшейся вкладке вы можете приступить к созданию аккаунта, указав Ваш почтовый ящик или использовав Google: На вашу электронную почту будет отправлено письмо с подтверждением адреса. После этого вам придет пароль для входа в панель управления и ваш личный аккаунт. ### Регистрация по приглашению Для регистрации по приглашению, вам понадобиться ссылка-приглашение. Получить её можно от человека уже зарегистрированного в Serverspace. После перехода по такой ссылке, регистрация происходит аналогичным образом: через электронную почту, или сторонний сервис. Преимущество такой регистрации через [реферальную программу](https://serverspace.by/conditions/referral-program/) в том, что человек или организация, пригласившая Вас, будет получать до 10% от ваших платежей. Вы же получите 20% кэшбэк на первый платеж. ## Персональные настройки После завершения регистрации рекомендуется настроить аккаунт. Serverspace позволяет настраивать в аккаунте как **личные** данные, так и данные **юридического лица**. ### Личные **Настройки**. В графе **Личные данные** Вы можете указать Имя, Фамилию и язык интерфейса: __ **Безопасность**. Здесь вы можете подключить двухфакторную аутентификацию через мобильное приложение. Здесь же вы можете изменить пароль. Рекомендуем сменить пароль при первом входе в аккаунт: Во вкладке **SSH-ключи** добавляются ключи шифрования для протокола SSH: В появившемся окне нужно выбрать вкладку **Сгенерировать новый ключ**, выбрать название и формат ключа: Созданный ключ можно применить во время конфигурации сервера. В поле **Аутентификация** выберите вариант **Аутентификация по SSH-ключу**, затем имя Вашего ключа: ### Настройки юридического лица Для добавления юридического лица к аккаунту, перейдите в раздел **Настройки — Данные юрлица**. Выберите страну,где зарегистрировано ваше юрлицо. Заполните поля: - ИНН - КПП - ОГРН - ОКПО - ФИО - Название компании - Юридический и почтовый адрес После заполнения, проверьте правильность данных. Для корректности выставления документов, заполните также вручную поля: - почтовый адрес - название Вашего банка - БИК - расчётный счёт - корреспондентский счёт - EMAIL - Сумма для оплаты и периодичность отправки документов. ## Типы проектов После регистрации и настройки аккаунта Вы получите доступ к [панели управления](https://my.serverspace.ru/vstack/servers/) Вашими проектами. Проекты разделяются на **Личные** и **Общие**. В **Общие** проекты можно добавлять других пользователей Serverspace. К **Личным** проектам есть доступ только у Вас. Чтобы создать новый проект, перейдите во вкладку **Проекты — Добавить проект**: В открывшемся окне введите название нового проекта и нажмите кнопку **Создать проект**: Поздравляем! Вы создали новый **Личный** проект. Чтобы сделать его **Общим** нажмите на кнопку **Добавить** в блоке **Участники проекта:** Затем введите адрес электронной почты того с кем Вы хотите поделиться проектом, и выберете подходящую роль. https://serverspace.by/support/help/kak-udalit-akkaunt-serverspace.md Как удалить аккаунт Serverspace? ## Введение Если вы решили закрыть свой аккаунт на платформе Serverspace, то мы готовы помочь вам в этом процессе. В данной инструкции мы подробно описываем шаги, которые необходимо выполнить, чтобы удалить аккаунт без лишних сложностей. ## Удаление аккаунта Для начала перейдите во вкладку **Настройки**, она расположена в левой панели снизу. Затем **Личные настройки** — **Удалить**: https://serverspace.by/support/help/kak-sozdat-server-v-paneli-upravleniya-serverspace.md Как создать сервер в панели управления Serverspace? В Serverspace представлен большой выбор услуг по созданию и управлению серверами в облаке. [Создать высокопроизводительный VPS сервер](https://serverspace.by/services/vps-server.md) можно буквально в несколько простых шагов. **VPS** — виртуальный выделенный сервер с доступом через облачные технологии, ресурсы которого можно масштабировать. Одним из основных преимуществ VPS является возможность получить выделенные ресурсы, такие как процессор, оперативную память, дисковое пространство и ширину канала, что позволяет обеспечить более стабильную работу веб—сайтов и приложений. Кроме того, VPS серверы дают большую свободу в выборе операционной системы и программного обеспечения, установку которых можно производить в соответствии с требованиями проекта. Ниже представлены основные действия для создания и управления VPS сервером, которые помогут вам быстро начать работу. ## Регистрация Перед созданием сервера и выбором его конфигурации необходимо пройти [быструю регистрацию](https://serverspace.by/support/help/registracziya-v-paneli-upravleniya-serverspace/). Пройдя этот этап, введите данные в поля "Email" и "Пароль": ## Создание машины После авторизации откроется главная панель сайта, в которой можно выбрать подходящее облачное решение. VMware Cloud и Vstack Cloud — это облачные решения, предоставляемые компанией Serverspace. Они основаны на технологиях виртуализации VMware и vStack соответственно: - **VMware Cloud** — это облачное решение, которое позволяет запускать виртуальные машины на инфраструктуре VMware vSphere. Обеспечивает высокую производительность, надежность и безопасность для вашего приложения. Вы также можете легко масштабировать свои ресурсы и управлять ими через веб — интерфейс. - **vStack Cloud** — это облачное решение, построенное на базе гиперконвергентной платформы виртуализации vStack для создания и управления облачной инфраструктурой. Это обеспечивает большую гибкость и масштабируемость. В меню слева перейдите во вкладку **Серверы** и нажмите **Создать сервер**. В зависимости от выбранного облачного решения вам будут доступны разные возможности в панели для создания сервера. ## VMware cloud Перед вами откроется панель создания и конфигурации VPS. Перед началом нужно выбрать шаблон для сервера. **Шаблон** — это набор настроек и конфигураций, с которыми будет создан и запущен ваш сервер. В панели Serverspace доступны самые популярные серверные операционные системы семейства Linux, Windows и FreeBSD. **Конфигурация сервера** — настройка мощностей вашего VPS. В данном облачном решении возможна гибкая конфигурация основных ресурсов. В зависимости от необходимых потребностей автоматически меняется итоговая стоимость: - количество ядер процессора (CPU, шт); - объем оперативной памяти (RAM, Gb); - тип и объем дискового подпространства (Storage, GB, SSD/SAS); - ширину канала связи (гарантированное значение, ниже которого показатель не может опускаться, Mbit/s); **Центр обработки данных (ЦОД)** — географическое местоположение заказываемого сервера. ЦОДы располагаются в специально построенных зданиях, которые соответствуют всем необходимым требованиям по безопасности, питанию, охлаждению, пожарной системе и другим параметрам. При выборе облачного решения "VMware cloud" становятся доступны ЦОДы представленные на скриншоте ниже: Спустившись чуть ниже по странице вам нужно будет заполнить еще несколько полей: **** - **Резервное копирование** — функция представляет собой процесс полного дублирования сервера с определенной периодичностью. - **Способ аутентификации** — проверка подлинности доступна в двух вариантах: [по SSH](https://serverspace.ru/support/help/kak-sozdat-ssh-klyuch/), что более безопасно. И по стандартному логину/паролю. **** - **Имя сервера** — обозначьте, как будет называться ваш VPS. **** - **Количество серверов** — укажите необходимое количество серверов, которые будут созданы по указанному вами шаблону параметров выше. В итоге всех манипуляций и законченной конфигурации, калькулятор на сайте подсчитает необходимую сумму к оплате за месяц/день/час использования и обслуживания сервера/сетевого оборудования. Списание будет происходить по модели Pay—as—you—go, с периодом в десять минут. ## vStack cloud Порядок действий, при создании сервера максимально идентичный, однако, в данном облачном решении есть ряд явных отличий. Больший выбор местоположения ЦОДов: Казахстан, Нидерланды, Россия, Беларусь: Помимо гибкого калькулятора, здесь вы можете выбрать **конфигурацию сервера**, которая будет соответствовать вашим запросам. По умолчанию серверу выдается адрес IPv4 — бесплатно. Однако есть возможность подключить до 4 дополнительных IPv4 адресов на коммерческой основе. Еще одним отличием является наличие таких вкладок как: - **Группы Affinity** — предоставляют возможность разместить сервера на разных или одном пуле локаций в зависимости от ваших потребностей. - **Приложения** — функция, позволяющая при создании сервера установить готовое к работе ПО. Приложения автоматически развернуться на виртуальной машине после нажатия кнопки "Создать": На сайте доступен выбор основного ПО, которое решает большой круг задач: начиная от WordPress, заканчивая фреймворками. ## Итог После выбора настроек создание и запуск сервера занимает пару минут, после чего он готов к работе. Для подключения используйте данные или ПО, в зависимости от выбранного способа аутентификации. Serverspace предоставляет удобный интерфейс для управления сервером. Кроме того, на сайте есть множество инструкций и руководств по его настройке и управлению в [базе знаний](https://serverspace.by/support/help.md). https://serverspace.by/support/help/proekty-v-serverspace.md Проекты в Serverspace После регистрации пользователь получает доступ к аккаунту, где он может создать неограниченное количество проектов. Что же это такое и как ими управлять? ## Что такое проекты? Проекты позволяют владельцу аккаунта предоставлять **полный или ограниченный доступ** к своей панели другим пользователям для совместной работы с ресурсами. Проекты бывают двух видов: - **Личный проект** Такой проект создается автоматические после регистрации аккаунта, у пользователя есть полный доступ к проекту. При необходимости, его можно сделать общим. - **Общий проект** Проекты такого вида могут быть созданы пользователем для предоставления совместной работы с другими пользователями. Владелец в праве добавить участника проекта и выбрать ему одну из 3 ролей: владелец, администратор или бухгалтер: - **Владелец** Роль закрепляется по умолчанию за владельцем аккаунта, после чего он может выдать ее любому другому участнику. Данная роль дает полный доступ к панели управления - **Администратор **Здесь пользователь не может добавлять участников проекта и исключать их, а также влиять на роль "Владелец" (добавлять, удалять, передавать и т.д.) В остальном у данной роли возможности такие же как и у владельца. - **Бухгалтер** У данной роли доступ будет открыт только к вкладкам с финансовой информацией, например: "Партнерам", "Биллинг", "Поддержка" и "Настройки юрлиц". Также данная роль может видеть всех участников проекта. ## **Создание проекта** После [создания аккаунта](https://serverspace.by/support/help/registracziya-v-paneli-upravleniya-serverspace/) и/или авторизации в панели управления в левом верхнем углу будет отображаться логотип Serverspace и личный проект, созданный автоматически. Для общего проекта необходимо кликнуть на название личного проекта, и в выпадающем списке выбрать опцию "Добавить проект": Далее вы можете преобразовать существующий личный проект в общий или же просто создать новый. Выберите название для проекта, по необходимости, его логотип и нажмите создать проект: После создания проекта, вам откроется меню настроек проекта. Далее мы рассмотрим каждую вкладку по отдельности. ## Управление проектом ## Детали проекта Здесь вы можете изменить название проекта, добавить нового участника или же редактировать доступ к уже существующему. Поменять название проекта можно, кликнув на него: Чтобы добавить нового участника, нажмите на кнопку "Добавить" внизу страницы: Затем вы должны указать email нового пользователя и его роль: Новый участник проекта появится в списке. Для подтверждения добавленный участник должен зайти в свою панель управления. В списке проектов ему необходимо выбрать новый проект и подтвердить участие. ### Управление участниками проекта Для того чтобы взаимодействовать с участником проекта, нажмите на троеточие справа от него: Через это же меню, можно управлять доступом участника. ## Данные юрлица Если вы работаете в панели как юридическое лицо, то вы можете заполнить юридические данные для выставления документов и оплаты по счету: выбрать юрисдикцию, указать юридические данные, указать финансовые данные, финансовую отчетность и автоматическое отправление счетов на оплату. ## SSH-ключи На данной вкладке вы можете добавить новый SSH-ключ или управлять уже имеющимися. Добавить его можно, кликнув по кнопке "Добавить SSH-ключ": После чего вам будет предложено либо добавить существующий ключ, либо сгенерировать новый: Ключ появиться в списке, и вы сможете управлять им: например для его удаления, необходимо кликнуть по значку корзины справа от названия ключа. ## Удалить проект Здесь вы можете удалить проект, нажав соответствующую кнопку https://serverspace.by/support/help/kak-obratitsya-v-tehnicheskuyu-podderzhku.md Как обратиться в техническую поддержку? Если у вас возникла какая-либо проблема или появились вопросы по работе с инфраструктурой, вы можете сообщить об этом в нашу техническую поддержку. - Среднее время ответа специалиста в тикете — 15 минут. - Время решения запроса — 30 минут. Обратиться в поддержку можно несколькими способами. ## Обращение через тикет-систему в панели управления Находясь в меню управления проектом в левом углу есть раздел **Поддержка**. Перейдя в него, у вас откроется окно создания обращения. Здесь вы указываете тему обращения и описываете подробно свой вопрос. При необходимости вы можете приложить файл к своему обращению. После создания обращения, вам также придет оповещение на почту, где вы можете отслеживать состояние тикета: После создания обращения вы попадете в чат со специалистом, где вы можете задавать уточняющие вопросы и ставить оценку по результату решения запроса. После завершения работы со специалистом вы можете нажать на кнопку **Отметить как решенное**, обращение будет закрыто. ## Обращение через телефон В поддержку можно обратиться по телефону: [+375 (173) 88-72-49](tel:+375 (173) 88-72-49) ## Обращение через чат на сайте Перед регистрацией на сайте или, если вы не можете попасть в панели управления, вы можете задать вопрос через чат на сайте. Для этого нажмите на _всплывающее меню_ в правом нижнем углу. У вас откроется меню чата, в котором вы можете отправить свое обращение: Здесь вы можете - приложить файлы — значок **Скрепки**; - указать свою контактную информацию — имя, адрес почты; - перенести тикет на личную почту; - включить/выключить звук от уведомлений в чате. ## SLA Количественные и качественные целевые показатели услуг сервиса Serverspace, а также финансовые гарантии их соблюдения определяет [Соглашение об уровне обслуживания](https://serverspace.by/conditions/sla.md) (SLA, Service Level Agreement). https://serverspace.by/about/news/publichnoe-oblako-vmware-v-kazahstane.md Serverspace расширяет список зоны предоставления облачных сервисов, предлагая пользователям и партнерам возможность создания виртуальной инфраструктуры на базе VMware в новой локации, дата-центре Kazteleport, Казахстан. Serverspace расширяет список зоны предоставления облачных сервисов, предлагая пользователям и партнерам возможность создания виртуальной инфраструктуры на базе VMware в новой локации, дата-центре Kazteleport, Казахстан. Serverspace активно увеличивает зону продаж [облака VMware](https://serverspace.ru/services/iaas/), предоставляя возможность строить облачную инфраструктуру с использованием серверных платформ Enterprise-уровня. ЦОД Kazteleport имеет сертификаты надежности: PCI DSS, ISO 14001, 45001, 9001, Eurolan Authorized Partner, и Лицензию ОЦИБ. Сертификаты подтверждают высокий стандарт работы и гарантируют клиентам безопасность серверного оборудования и данных, хранящихся в нем. Кластер Kazteleport оборудован 8 Blade серверами Cisco с процессорами из линейки Intel Xeon Gold (3.00GHz). Оборудование обеспечивает не только высокую производительность, но и защиту обрабатываемых данных, а также доступность, особенно при обработке огромных объемов информации. Новая локация в экосистеме облачных решений VMware значительно расширяет возможности для клиентов Serverspace. Наша цель — обеспечить высокую производительность сервисов, основываясь на использовании передового оборудования, специально разработанного для решения задач, связанных с интенсивной обработкой данных. Размещение кластера в местном центре обработки данных (ЦОД) в Казахстане также предоставляет нашим клиентам преимущество в виде высокой скорости, что уменьшает время задержки при передаче данных между виртуальными машинами (VM). Облачная платформа VMware предоставляет широкие возможности для развертывания VM с гибкой спецификацией, используя процессоры Intel Xeon Gold, а также обеспечивает масштабируемость и возможность миграции виртуальных машин в облако. Это позволяет пользователям Serverspace управлять своей инфраструктурой и достигать своих бизнес-целей в условиях быстро меняющейся информационной среды. **Как создать VM на базе VMware в Казахстане?** - войдите в аккаунт или создайте его в [Serverspace](https://serverspace.ru/); - начните создание сервера во вкладке VMware cloud; - выберете ЦОД Алматы и ресурсы сервера; - нажмите кнопку создать. https://serverspace.by/about/blog/ii-istoriya-uzhasov.md Serverspace запускает проект, в рамках которого идеи пользователей и возможности AI будут объединены в уникальный цифровой рассказ. ### Сладость или гадость! Наступает период устрашающих костюмов, любимых фильмов ужасов и набитых конфетами карманов. Хэллоуин приближается, а Serverspace представляет результаты нового проекта, который объединил творческие идеи пользователей со всего света и возможности искусственного интеллекта в уникальное цифровое произведение. Из массива слов, собранных со всего мира, AI создал устрашающую историю и проиллюстрировал её. Этот проект не просто еще одна интерактивная акция. Это исследование пересечений человеческого воображения и технологических инноваций. Приглашаем вас к прочтению. **Счастливого Хеллоуина!** # Бугимен из Даркнайта На освещенных неоновым светом улицах Даркнайта кипела жизнь. Это был центр технологического прогресса, где мечты сплетались в строки кода, а реальность сливалась с виртуальностью. Воздух гудел от данных вокруг, как вечный туман. Анита, молодой devops-инженер, сидела, сгорбившись гиперболой, в своей квартире. Она привыкла получать странные электронные письма (в основном от клиентов), но сегодня все было иначе. На экране вспыхнуло зловещее сообщение: "Я собираюсь съесть твою душу". На лбу выступил холодный пот, когда она прочла подпись — письмо направил страшный Бугимен из Даркнайта. В голове пронеслись воспоминания о сказках, которыми пугали всех, кто посещал курсы по информатике в начальных классах: истории о цифровом демоне, который становился сильнее за счет жадности любителей техники. Истории были разными, кто-то пугал тыквенной головой и страшилищями, кто-то говорил о полузомби-полугрузовике, а кто-то ласково называл его Сэмом. Не успела Анита перевести дух и избавиться от страха, как замигало еще одно предупреждение – _"система безопасности обнаружила Брутфорс"_. Когда стены вокруг нее начали рушиться, а компьютер начал дымиться, она поняла, что попала в опасную игру и выбежала из квартиры. Она испытала настоящий животрепещущий страх, но знала, куда ей нужно спешить. В то время как бешеные шаги Аниты гулко отдавались в холодных переулках Даркнайта, асфальт горел от сбитых звезд с вишневого неба из ореховой скорлупы. Она искала человека, который мог ей помочь, – сэра Сэмюэля Ваймса. Маг, известный своими непревзойденными знаниями, вел свою скрытую игру из подсобки паба "Эхо Темного Рыцаря", помогая тем, кто также стал жертвой Бугимена. "Эхо тёмного рыцаря" – настоящий оазис для технарей. Cэр Сэмюэль Ваймс открыл этот паб с десяток лет назад как безопасный угол для тех, кто стал жертвой Бугимена. Каждая душа Даркнайта знала, что этот человек — друг. Войдя в паб, Анита почувствовала знакомый запах – ужасно-вкусновая смоква с соусом из аджики была любимой закуской всех IT-специалистов Даркнайта. Также героиня ощутила на себе множество взглядов, в том числе учёного Внхельсинга и его помощника по кличке «Жеваный крот», чей взгляд был направлен в сторону загадочного человека по имени Тимбукту, который сидел в тени, курил свою трубку и периодически кашлял. Мистер Ваймс, выслушав историю Аниты, достал из под стойки два граненых стакана, наполнил их ромом и рассказал героине о том, что Тимбукту – единственный, кто столкнулся с Бугименом и остался жив. Он посмотрел на Аниту, уверенно взглянул на свободный стул у столика Тимбукту и Анита поняла – ей нужно присесть. Сэр Сэмюэль, силуэт которого вырисовывался на фоне тусклого свечения многочисленных экранов, внимательно слушал. "_Игра Бугимена стара, старше любого кода_", – пробормотал Тимбукту. "_Вы должны ориентироваться в хитростях и ловушках его цифрового пространства_". Он рассказал ей о глазах, которые преследуют игроков, – глазах без склеры, наполненные лишь пустотой, настолько глубокой, что в ней отражаются самые темные страхи человека. В этот момент на сотовый телефон Аниты пришло еще одно сообщение – оно содержало не менее ужасающие вещи – список задач, которые Бугимен заставляет выполнить для того, чтобы остаться в живых. Анита, понимая, что от ужаса в плаще не скрыться, обреченно встала со стула, побрела к выходу и, напоследок, окинула взглядом местных пьяниц-айтишников. День за днем Анита заглядывала в список задач, выполняла то, что под силу и медленно продвигалась вперёд, словно по сюжету её любимой компьютерной игры "Cyberpunk: Unity". За каждую решенную задачу Анита получала вознаграждение. Это были не сладкие конфеты, а диковинные артефакты: ржавый сундук, шепчущий о древних сказаниях, емкость, наполненная липкой смолой с необычным мерцанием, и, как ни странно, картофелина, искусно вырезанная в виде грозного черепа. Но далеко не все загадки ей удавалось решить – с каждой неудачей она чувствовала, как вокруг её шеи затягивается цифровая петля. Испытания "Salt" и "Mumutoje" оказались самыми сложными. Она слышала призрачное эхо смеха Бугимена, ощущала холод его присутствия и видела, как кластеры данных в её квартире повреждаются со скрежетом, отдающимся эхом в ее душе. Несмотря на то, что Анита, помимо страха, чувствовала любопытство и каждое вознаграждение казалось заманчивым, тени города шептали предупреждение: _Не все игроки выберутся живыми_. И когда на улицах Даркнайта становилось все темнее, свет, казалось, меркнул в такт с клеящимся сердцем Аниты. Ставки были высоки как никогда, а времени оставалось все меньше Анита взглянула в список задач и спустилась в Катакомбы. Катакомбы Даркнайта хранили множество тайн. Под шумными улицами города, в одной из древних камер, Анита наткнулась на легендарный Священный Соковыжиматель производства местной компании «Распределенный Навуходоносор». Его изображения были размещены во всех учебниках истории, на всех уличных баннерах и гравюрах. На боку соковыжималки был выгравирован стих, рассказывающий о ее силе и том, как её использовать. С трепетом, следуя инструкции, она опустила в соковыжималку спелый персик, лежащий рядом. Сок, золотистый и светящийся, потек в емкость со странным скрежетом. Затем она зажгла таинственную свечу, полученную в качестве одного из "вознаграждений". Когда воск полностью растаял, Анита смешала его с персиковым соком. Комната наполнилась флюоресцентным зеленым светом и приторным едким запахом. И тут начались видения. Разыгрывались жуткие сцены: вытянутая теневая форма Бугимена объединялась с квазигуманоидными существами и совершала какой-то загадочный ритуал. Страх Аниты нарастал и очередное видение заставило ее проснуться – она лежала на холодном полу катакомб, а за ней наблюдала теневая фигура с пустыми глазами, следившая за каждым ее шагом. Анита облокотилась на мокрую стену и горько вздохнула, но не собиралась сдаваться. Она понимала – главное испытание еще впереди. Игра становилась все более запутанной. Каждая задача была сложнее предыдущей. Теперь Анита столкнулась с загадкой, зашифрованной как "DevOps 1С". Одно упоминание о ней заставляло цифровое царство Даркнайта пульсировать от страха. О ней Анита знала с самого начала игры – мистер Ваймс при первой их встрече в "Эхо Тёмного Рыцаря" рассказал, что эта загадка является неразрешимой. Никто в городе не смог её разгадать, кроме Тимбукту. И вот, отчаявшись и устав, Анита вернулась в бар, снова подсела за стол к Тимбукту и спросила, как ему удалось пройти загадку "DevOps 1С". Он, в традиционной для Даркнайта манере, ответил загадочно – "_Следуй за своими снами_". Анита сразу поняла, что помощь нужно искать в неожиданном источнике — у сомнолога в квартале "Кровосток". Женщина, чье имя никто не знал, обладала удивительной способностью понимать работу сознания во время сна. Увидев Аниту, она сразу поняла, в чём дело и рассказала, что загадки Бугимена, особенно "devops 1c", были тщательно продуманы, чтобы вторгнуться в сон игрока и заставить его заново переживать свои неудачи, пока не наступит изнеможение. Это была жестокая психологическая война, направленная на самые уязвимые места игрока. Анита открыла блокнот, чтобы записать важные мысли, но никак не могла уловить суть. Сомнолог говорила невнятно, много запиналась и периодически всхлипывала. Единственное, что поняла Анита – надеяться следует только на себя и свои силы. Опустошенная и разбитая, Анита покинула "Кровосток". Когда дни превратились в ночи, а границы игры размылись, Анита получила богато украшенное приглашение с кроваво-красной печатью. Это было приглашение на "Кровавую сделку" – собрание игроков, попавших в ловушку коварной игры Бугимена. Коридор здания, в котором проходили собрания, был освещен красным цветом и огромным количеством ростовых кукол – некоторые игроки верили, что такая кукла может принять на себя гнев Бугимена и защитить от неминуемого поражения. В большом зале, освещенном мерцающими свечами, она встретила других социофобных игроков с таким же пустым и призрачным взглядом, как у неё. Они обменивались историями – о встречах с Бугименом, о поедании ужасно невкусной пиццы из "Вознаграждения" в рамках задания и о своем общем обжигающем страхе перед Бугименом. В атмосфере царила смесь товарищества, крипоты и страха. Ведь все они знали, что эта встреча – лишь короткая передышка. Настоящая игра, с ее опасностями и обещаниями, ждала их снаружи. И никакая миграция в патти-кластер на Бали их не спасет. Анита прекрасно знала, что столкнулась с непрекращающимся натиском трудностей, каждая из которых все больше подрывала ее дух. Смотря на всех этих бедолаг, она все больше погружалась в свое сознание, тонула в нем и как раз в тот момент, когда тяжесть всего этого грозила раздавить ее, она заметила корзину с фруктами, стоящую на скромном столе посреди комнаты. Их освещал тусклый свет, а мотыльки летали вокруг. Для постороннего наблюдателя это может показаться пустяком, обычными фруктом, но для Аниты они стали душераздирающим символом ушедших времен. "_Мой маленький мышонок_", – прошептала она, и слезы потекли по ее лицу, вспоминая маленького котенка, которого она обожала и потеряла. Пока Анита ела свежие фрукты, её котенок любил играть со светлячками, перебирая их своими маленькими лапками. Но когда ностальгия охватила ее, в голове зазвучала жуткая мелодия из прошлого: «телепортация в масло — полный бесперспективняк». Это была не просто колыбельная, которую пела ее бабушка. Для неё она имела более глубокий, зловещий смысл. Эта мелодия была не просто воспоминанием, а намеком, загадкой, которую она должна была разгадать, чтобы продолжить эту коварную игру. С мелодией, звучащей в ушах, Анита бродила по улицам Даркнайта, а хтонический экзистенциальный ужас предварял кошмар и подгонял страхом. Она оказалась перед старым, забытым бассейном. Вода была жутко спокойной, и когда она заглянула в ее глубину, ее взгляд встретил жуткое отражение: глаза без склеры, наполненные глубокой пустотой. Глаза, казалось, следили за каждым ее движением, взгляд их был застывшим и в то же время настороженным. Окружающая темнота на мгновение озарилась мерцающим зеленым флуоресцентным светом, отбрасывая жуткие тени. Внезапно спокойствие было нарушено. Зашуршали кусты, вода в бассейне пошла рябью, и из густой зелени появилась страшная фигура Бугимена в сопровождении его квазигуманоидных сообщников. Их присутствие наполнило воздух ощутимым страхом, и казалось, что ставки в игре только что снова выросли. Анита стояла в напряжении, крепко сжимая в руке ржавый сундук. Ее глаза были устремлены на Бугимена. Глубоко вздохнув, она осторожно открыла сундук, обнаружив внутри коробку "SLAY". "_Что это за игра, Бугимен?_" – спросила она, голос ее был тверд, хотя и с нотками трепета. Бугимен ухмыльнулся: "_Простой фокус, моя дорогая. Откройте сундук, наполненный "бибками". Но для этого тебе понадобится этот контейнер, картошка и смола_". Сбитая с толку, но решительная Анита, побежала домой. В её спальной комнате всё было по-прежнему. Разбросанные вещи и не аккуратно заправленная постель. Анита положила картошку в сундук и медленно залила ее вязкой смолой. Она слышала рассказы о подобных фокусах от сэра Сэмюэля Ваймса, но не была уверена ни в порядке действий, ни в способе. Пока смола капала, образуя на картофелине блестящий слой, она надеялась, что все делает правильно. Героиня начала ждать. Но когда секунды превратились в мучительные минуты, стало ясно, что Анита ошиблась. "Бибки" остались неизменными, а коробка "SLAY" осталась наглухо закрытой. Смех Бугимена угрожающе раздавался вокруг. "_Ты думала, что сможешь победить меня в моей же игре?_" – издевался он. Анита сделала шаг назад, ее сердце бешено забилось. Квазигуманоидные существа кружили вокруг нее, их поврежденные кластеры данных становились очевидными в их глючных движениях. "_Нет_", — прошептала она с отчаянием в голосе. Бугимен двинулся вперед, его глаза – глубокая, темная пустота – впились в ее глаза. И в этот момент она осознала ужасающую истину. Игра никогда не была честной. Это всегда была ловушка, технологическая ловушка, расставленная в мире, где господствуют жадность и злоба. Когда зрение затуманилось, последним, что увидела Анита, была призрачная ухмылка Бугимена, ставящая крест на ее судьбе. Теперь она была еще одной заблудшей душой, ее цифровая сущность навсегда слилась с Даркнайтом, доказав, что на просторах этого города никому не удается выйти из игры победителем. https://serverspace.by/about/news/predstavitelstvo-serverspace-v-kanade.md Serverspace начинает предоставлять свои облачные сервисы канадским пользователям. Serverspace открывает представительство облачного провайдера в Канаде и начинает предоставлять свои сервисы местным пользователям. Это вторая локация в Северной Америке. Теперь можно воспользоваться адаптированным сайтом, доступный под доменом [serverspace.ca](https://serverspace.ca/), а также панелью управления облачной инфраструктурой. Важным аспектом открытия представительства является соблюдение закона Канады о защите электронных документов и личной информации (PIPEDA). Согласно ему, персональные данные клиентов могут хранить только те юридические лица, которые зарегистрированы и работают на территории Канады. Благодаря наличию ЦОД в Канаде и открытию представительства, Serverspace теперь имеет возможность официально сотрудничать с канадскими пользователями, обеспечивая им надежное и соблюдающее требования на хранение данных. На сайте [Serverspace.ca](https://serverspace.ca/), нашим пользователям открывается возможность заказа различных облачных сервисов, которые представлены в специально адаптированной для местного рынка панели управления. Для улучшения удобства работы с облачной инфраструктурой сайт и панель имеют англоязычную версию. Также были добавлены возможность оплаты картами канадских банков, используя канадский доллар (CAD). Выбор спецификации серверов: ЦОД, операционная система, CPU, RAM, SSD, ширина канала осуществляется при помощи калькулятора с гибкими настройками. Он позволяет приобрести ресурсы серверов, подходящие индивидуальные потребности каждого проекта. Важно отметить, что возможность создания виртуальных услуг доступна в дата-центре TOR3, который соответствует стандартам Tier III и находится в городе Торонто, Канада. Пользователям также доступно развертывание виртуальных машин и на других площадках, включая США, Нидерланды, Турцию и страны СНГ. Мы стремимся предоставить нашим клиентам максимальную гибкость и доступность в выборе местоположения и конфигурации облачных ресурсов. ## Как создать сервер в Канаде? Создание сервера через канадское представительство не отличается от других локаций. Необходимо: - зарегистрироваться на сайте [Serverspace.ca](https://serverspace.ca/); - перейти к созданию вирутального сервера; - выбрать конфигурацию, подходящую под ваш проект; - нажать кнопку создать сервер; - пополнить баланс на необходимую сумму. ## Как оплачивать сервисы Serverspace.ca? Облачные сервисы в Канаде вы можете оплачивать с помощью карт местных банков в канадских долларах (CAD). ## Как обратиться в техническую поддержку? Техническая поддержка работает круглосуточно и доступна через вкладку Поддержка в панели управления и по телефону +1 647 4935 0400. https://serverspace.by/about/news/new-year-gift.md Новогодняя акция для новых пользователей. Получите 200 бонусных рублей на счет проекта. **Новый Год к нам мчится!** Облачный провайдер Serverspace объявляет [новогоднюю акцию](https://serverspace.by/new-year-gift/). Новым пользователям, зарегистрированным в панели управления, будут подарены 200 бонусных рублей на счет проекта. Чтобы получить подарок, нужно соблюсти несколько **условий**: - Вы зарегистрировались впервые; - Email, с которого вы зарегистрированы, имеет корпоративный домен; - Компания, в которой вы работаете, официально зарегистрирована и имеет веб-сайт; - Вы прошли верификацию компании в панели управления. ## Как пройти верификацию? - Зарегистрируйтесь в панели управления с 18.12 по 27.12 включительно, используя почту с корпоративным доменом. - Перейдите во вкладку "Новогодний подарок" и заполните форму, нажав на кнопку "Получить". Бонусные рубли будут зачисляться новым пользователям в период проведения акции с 18.12.2023 по 27.12.2023 в течение 3 суток после заполнения формы обратной связи. ## Информация о новогодней акции - Бонус могут получить только новые пользователи, зарегистрированные с 18.12 по 27.12 включительно. - Бонусные рубли начисляются только на 1 проект, созданный автоматически при регистрации. - Вкладка "Новогодний подарок" отображается до 27.12 включительно. - Оставшиеся на балансе бонусные рубли сгорают 01.02.2024. ## А как же подарок для существующих пользователей? Для существующих пользователей мы также подготовили новогодний подарок. Он ждет вас в панели управления. Чтобы узнать об условиях его получения, следите за нашими рассылками и нотификациями в панели управления! https://serverspace.by/about/news/serverspace-v-brazilii.md Serverspace, международный провайдер облачных сервисов, продолжает расширение и запускает первое представительство в Латинской Америке, Бразилия. Serverspace, международный провайдер облачных сервисов, продолжает расширение и запускает первое представительство в Латинской Америке, Бразилия. Для местных пользователей теперь доступны сайт [Serverspace.com.br](https://serverspace.com.br/) на португальском языке и панель управления с приемом платежей в бразильских реалах. Облачный провайдер Serverspace продолжает следовать стратегии расширения, предоставляя сервисы на локальных рынках стран присутствия. Так, пользователи могут работать с виртуальной инфраструктурой в удобном для них формате с оплатой картами локальных банков. Для бразильских пользователей ресурс включать в себя: - сайт на португальском языке [Serverspace.com.br](https://serverspace.com.br/); - панель управления с функцией оплаты в бразильских реалах; - бесплатная поддержка от технических специалистов Serverspace. _"Входя в десятку ведущих мировых экономик по объему ВВП, Бразилия представляет собой стратегически важный рынок. Многие отрасли, например, финансы, логистика, ИТ сейчас демонстрирую возрастающий интерес к облачным инновациям, наращивая спрос на соответствующие решения. Это делает рынок Бразилии ключевым для нашей стратегии развития, целью которой является предложение местным пользователям оптимальных условий для использования облачных сервисов. Кроме того, важным аспектом нашей работы будет соответствие законодательству о защите данных LGPD, гарантируя безопасность информации пользователей" _ – говорит Светлана Шарапова, руководитель проекта Serverspace. С открытием офиса в Бразилии, Serverspace намерен продолжить свое расширение. Его основная цель – предоставление ещё большему числу пользователей доступа к своим облачным сервисам в формате, максимально адаптированном к потребностям рынков разных стран. В планы компании до конца текущего года также входит запуск нового представительства в Объединенных Арабских Эмиратах, что подчеркивает стремление Serverspace к расширению своего влияния и укреплению позиций в сфере облачных технологий. **Подробная информация о представительстве Serverspace в Бразилии:** - Адаптированный сайт доступен по адресу: [Serverspace.com.br](https://serverspace.com.br/). Язык: португальский; - Регистрация и вход панель управления: [my.serverspace.com.br](https://my.serverspace.com.br/); - Обращения в техническую поддержку осуществляются через чат на сайте, раздел "Поддержка" в панели управления или по телефону: + 55 11 5118-1047; - Валюта – бразильский реал; - Оплата принимается по картам бразильских банков; - Дата-центр в Сан-Паулу Equinix SP3. Список представительств компании в разных странах: - Бразилия: [Serverspace.com.br](https://serverspace.com.br/) - Беларусь: [Serverspace.by](https://serverspace.by/index.md) - Россия: [Serverspace.ru](https://serverspace.ru/) - Казахстан: [Serverspace.kz](https://serverspace.kz/) - Нидерланды: [Serverspace.io](https://serverspace.io/) - США: [Serverspace.us](https://serverspace.us/) - Канада: [Serverspace.ca](https://serverspace.ca/) - Турция: [Serverspace.com.tr](https://serverspace.com.tr/) _**[Serverspace](https://serverspace.by/index.md)** – международный облачный провайдер, предоставляющий сервисы для создания и работы с виртуальной инфраструктурой. Предлагает автоматическое развертывание VPS серверов с популярными операционными системами Linux и Windows Server, а также с отечественными ОС. Создание инфраструктуры осуществляется из любой точки мира за 1 минуту. Для интеграции клиентских сервисов доступны открытые инструменты API, CLI и Terraform._ https://serverspace.by/support/help/kak-izmenit-mesto-hraneniya-dannyh-mariadb.md После прочтения этой статьи вы узнаете, что такое MariaDB, возможные причины смены каталога для баз данных и способ переноса под Centos 7. ## Что такое MariaDB MariaDB — одна из самых популярных систем управления базами данных, основанная языке запросов SQL. Она отличается более высокой производительностью при полной совместимости с «предком» — MySQL. ## Для чего может понадобиться переместить данные MariaDB в другое место Есть две основные причины: - Место на текущем диске закончилось; - Был установлен более быстрый диск, и вы хотите улучшить производительность сервиса, пернеся данные на него. ## Как изменить расположение данных MariaDB Перед любыми операциями я настоятельно рекомендую вам уточнить, где данные располагаются сейчас. Для этого установите SSH-сессию как пользователь root, войдите в MariaDB и выполните следующую команду: ```bash mysql -u root select @@datadir; ``` Выйдите из SQL и остановите службу: ``` quit; service mariadb stop ``` Создайте новый каталог и переместите базы данных в него: ``` mkdir && rsync -av ``` Отредактируйте конфигурационный файл сервиса баз данных: ``` sed -i 's|||g' /etc/my.cnf cat /etc/my.cnf socket=/mysql.sock EOT ``` Создайте специальный сокет-файл и установите необходимые права доступа: ``` touch /mysql.sock && chmod 777 /mysql.sock ``` Запустите службу: ```bash service mariadb start ``` Проверьте, какой каталог MariaDB использует для хранения данных теперь: ```bash mysql -u root select @@datadir; ``` ## Заключение После прочтения этой статьи вы узнали, что такое MariaDB, какими могут быть возможные причины для перемещения баз данных в другое место и как это можно сделать на сервере под Centos 7. https://serverspace.by/support/help/kak-ispolzovat-neskolko-serverov-s-odnim-publichnym-ip-adresom.md Как организовать доступ к множеству серверов, скрытых за одним публичным IP-адресом, ограничиваясь личным кабинетом Serverspace ## В чем смысл идеи использования нескольких серверов с одним публичным IP? Существует два обстоятельства, почему может быть оправдано "спрятать" серверы за одним IP-адресом: **Соображения безопасности**. Если "поставить" сетевой узел между виртуальной машиной и сетью Интернет, получится создать "личную сеть", и любому злоумышленнику, чтобы получить доступ к серверу, необходимо будет пройти через этот шлюз; **Экономия средств**. Дело в том, что на свете уже не осталось свободных подсетей IPv4, а адресация IPv6 до сих пор не получила широкого распространения. Поэтому цена на IP-адреса все время увеличивается, и можно неплохо сэкономить, если использовать меньшее число публичных IP-адресов. ## Как организовать личную "безопасную сеть"? Чтобы создать личную сеть, будем использовать трансляцию сетевых адресов (NAT). Последовательность шагов такая: Сначала сделаем непосредственно сеть. Нужно войти в панель управления, перейти в раздел **VMWare Cloud > Сети >** **Добавить сеть** и выбрать необходимые пропускную способность и количество IP-адресов внутри сети. Запомните автоматически назначенный публичный IP-адрес, он будет "точкой входа" в сеть; Затем нужно изменить настройки сетевых интерфейсов ваших виртуальных серверов, а именно удалить публичный интерфейс: После этого пойдет процесс отключения сервера от сети: После этого нам нужно добавить нашу новую сеть: После этого начнется процесс присоединения к сети: В итоге вы должны увидеть список частных IP-адресов, присвоенных каждому из серверов. Не забудьте запомнить их: Перейдите назад, в раздел с настройками вашей приватной сети. Добавьте перенаправляющие правила, обеспечивающие доступ к серверам: ## Итог работы Чтобы проверить, достаточно всего лишь подключиться к публичному IP-адресу, назначенному вашей сети, и порту, "проброшенному" на конкретный виртуальный сервер; ## Заключение В данном материале мы рассказали, что необходимо, чтобы обеспечить доступ к множеству серверов, с использованием только одного маршрутизируемого IP-адреса, при помощи опций, доступных в личном кабинете Serverspace. https://serverspace.by/support/nastroyka-ip-adresov-windows-powershell.md Инструкция: как автоматизировать назначение нескольких IP адресов на разных серверах с помощью Power Shell на Windows Server 2016/2019 В некоторых случаях, например, на веб-серверах, требуется настроить на одном сетевом адаптере **более одного IP адреса**. Если это один сервер и в нём одна или две сетевые карты и небольшое количество дополнительных IP адресов, то, как правило, настройка через графический интерфейс проблем не вызовет. Но что делать, если серверов больше десяти и на каждом несколько сетевых адаптеров и у каждого несколько IP адресов? Настройка через графический интерфейс в данном случае займёт очень немало времени. В таком случае на помощь придут средства автоматизации **Windows — PowerShell**. Далее будет рассмотрен процесс настройки для версии **ОС Windows Server 2016/2019**. Запускаем Powershell от имени администратора. Сделать это можно, кликнув правой кнопкой по меню "Пуск" и выбрав "Windows PowerShell (Admin)" в случае английской версии ОС. Скриншот №1. Запуск Powershell от имени Администратора Далее откроется окно Powershell. Теперь необходимо определить, на каком интерфейсе необходимо добавить требуемые IP-адреса. Используя команду ниже определяем требуемый сетевой интерфейс: ``` Get-NetAdapter ``` Скриншот № 2. Получение списка сетевых адаптеров В данном случае один сетевой адаптер с именем "Ethernet" , его и будем использовать. Узнаем вначале, какие уже настроены IP на данном адаптере : ``` Get-netIpAddress -ifalias Ethernet -addressFamily Ipv4 | ft ``` Скриншот №3. Информация об уже настроенных IP на выбранном адаптере Для добавления нового адреса, например 192.168.10.10, необходимо использовать следующую команду: ``` New-NetIPAddress -addressfamily Ipv4 -IPAddress 192.168.10.10 -PrefixLength 24 -InterfaceAlias "Ethernet" -SkipAsSource $True ``` Проверим результат: ``` Get-netIpAddress -ifalias Ethernet -addressFamily Ipv4 | ft -AutoSize -Wrap ``` Скриншот №4. Проверка присвоения нового IP Как видно, адаптеру присвоен ещё один IPv4 адрес — 192.168.10.10. Если необходимо, чтобы исходящий трафик отправлялся с нового IP адреса, необходимо параметру SkipAsSource присвоить значение false: Скриншот №5. Запрещаем новому IP быть в качестве исходящего по умолчанию для трафика ``` Get-NetIPAddress 192.168.10.10 | Set-NetIPAddress -SkipAsSource $False ``` В случае, если необходимо добавить большее число адресов, например 5 , то можно воспользоваться следующим скриптом. Используя массив чисел, например, от 11 до 16 и цикл, добавляем ещё 5 IP адресов: ``` 11..16 | foreach-object {New-NetIpAddress -ifalias Ethernet -AddressFamily IPv4 -PrefixLength 24 -IPAddress "192.168.10.$_" -verbose} ``` Скриншот №6. Добавление нескольких IP с помощью скрипта После выполнения команды проверим знакомой уже командой : ``` Get-NetIPAddress ``` Скриншот №7. Проверка присвоения множества IP сетевому адаптеру Заключение: в данной статье мы рассмотрели возможности использования Powershell для автоматизации назначения нескольких IP адресов на одном сетевом интерфейсе. - [VPS сервер с Windows — цены](https://serverspace.by/services/vps-server.md) - [/services/vps-server/windows/](https://serverspace.by/services/vps-server/windows/)[Облачные серверы](https://serverspace.by/services/cloud-servers.md) - [Инструкции по работе с Windows Server](https://serverspace.by/support/help/category/windows/) https://serverspace.by/support/help/nastrojka-siem-sistemy-debian.md Узнайте о системах SIEM: их настройке и обслуживании для повышения скорости и эффективности реагирования на кибер-угрозы безопасности В этой инструкции мы расскажем об управлении **SIEM—системой**, настройке и обслуживании, а также о том, что может помочь повысить эффективность и скорость реагирования на кибер—инциденты и обеспечить повышенную безопасность вашей информационной системы. Изучим больше возможностей контроля кибер—инцидентов, основанных на корреляционном анализе и методах управления рисками. ## SIEM-системы **SIEM** (Security Event Management + Security Information Management) — системы, которые контролируют информационные системы, анализируют события безопасности в режиме реального времени, исходящие от сетевых устройств, средств информационной безопасности, ИТ—служб, системной и прикладной инфраструктуры, и помогают обнаруживать инциденты информационной безопасности. Проблемы обнаружения инцидентов в корпоративных сетях: - средства безопасности, серверы и сетевые устройства создают миллионы событий, терабайты журналов; - неэффективное реагирование на все инциденты: 50-95% из них являются ложными; - данные, полученные с помощью одного средства защиты, не позволяют выявить сложные и целенаправленные атаки; - события разбросаны по разным системам и десяткам отчетов; - нормативные требования в области информационной безопасности. ## Настройка SIEM-системы Перед установкой любого программного обеспечения необходимо обновить индекс и пакет в Debian: ```bash sudo apt update && sudo apt upgrade -y ``` Скриншот №1 — Обновление пакетов Следующий этап: установка необходимых пакетов. ```bash sudo apt-get install suricata ``` Скриншот №2 — Установка ## Настройка Suricata Для настройки Suricata используем команду: ``` sudo nano /etc/suricata/suricata.yaml ``` Скриншот №3 — Настройка конфига В файле конфигурации установите соответствующий сетевой интерфейс для мониторинга Suricata: ``` default-log-dir: /var/log/suricata/ af-packet: — interface: enp0s5 ``` Скриншот №4 — Настройка SIEM Примечание: Замените "enp0s5" именем вашего сетевого интерфейса, для этого вы можете использовать команду ниже: ``` ifconfig ``` Скриншот №5 — Сетевой интерфейс Сохраните и закройте файл конфигурации. Запустите Suricata: ``` sudo suricata -c /etc/suricata/suricata.yaml -i enp0s5 —init-errors-fatal ``` Скриншот №6 — Проверка работы Убедитесь, что Suricata запущена, проверив ее лог-файлы: ``` tail -f /var/log/suricata/fast.log ``` В результате система вывода будет выглядеть как строка с информацией о ваших настройках, если вы не введете какое-либо значение, то получите соответствующий ответ. ## Заключение по настройке SIEM-системы В заключение, настройка системы **SIEM** с открытым исходным кодом на Debian является важным шагом на пути к повышению безопасности информационных систем для малого и среднего бизнеса. Отслеживая и анализируя события безопасности в режиме реального времени, **SIEM**—системы помогают выявлять потенциальные инциденты безопасности. Однако обнаружение инцидентов в корпоративных сетях может быть сложной задачей из-за большого объема событий, генерируемых различными инструментами и устройствами безопасности. При правильно настроенной системе SIEM предприятия могут эффективно управлять кибер—инцидентами на основе корреляционного анализа и методов управления рисками, обеспечивая тем самым режим повышенной безопасности своей информационной системы. https://serverspace.by/support/help/ustanovka-freeradius-linux.md Установка FreeRADIUS на Linux — это шаги по установке и настройке сервера RADIUS на Linux, используя AlmaLinux в качестве примера. Архитектура современной корпоративной сети имеет сложную структуру. Множество устройств могут подключаться к ней одновременно, что удобно для нарушителей и всех, у кого есть противоправные намерения. Чтобы решить эту проблему, был разработан механизм учета информационных субъектов в сети. RADIUS-сервер, который может обеспечивать 3 функции защиты: аутентификацию, авторизацию и учет. Каждый шаг в системе будет регистрироваться, и все записи и точки входа будут находиться под контролем. ## FreeRADIUS Server **FreeRADIUS** — это исключительный RADIUS—сервер, предоставляющий услуги централизованной аутентификации и авторизации для устройств, включая коммутаторы, маршрутизаторы, VPN—шлюзы и точки доступа Wi-Fi. Его уникальная способность управлять доступом пользователей к сетевым ресурсам на основе различных параметров, таких как личность, местоположение, характеристики устройства и время суток, что делает его универсальным решением для корпоративных, учебных и сетей провайдеров. Сервер поддерживает несколько методов аутентификации и может интегрироваться с внешними базами данных, такими как SQL, LDAP и Kerberos, для эффективного хранения и извлечения информации о пользователях и устройствах. Благодаря своей масштабируемости, гибкости и надежности FreeRADIUS остается лучшим выбором для организаций, которым требуется надежное и настраиваемое **RADIUS** решение. ## Установка и настройка FreeRADIUS Перед установкой любого программного обеспечения нам необходимо обновить индексы и пакеты в AlmaLinux: ```bash sudo dnf update -y ``` Скриншот №1 — Обновления пакетов Установите необходимый пакет для RADIUS—сервера: ```bash sudo dnf install freeradius ``` Скриншот №2 — Установка сервера После установки вам необходимо настроить сервер в соответствии с вашими задачами. Конфигурационные файлы можем найти с помощью приведенной ниже команды: ``` sudo nano /etc/raddb/radiusd.conf ``` Вы все равно можете использовать удобный текстовый редактор. Откройте файл и посмотрите на параметры: ведение журнала, протокол аутентификации и порты. Все настройки могут быть изменены в соответствии с вашими целями. Скриншот №3 — Конфигурация сервера Далее создайте файл с именем "user.conf" в том же каталоге: ``` sudo touch /etc/raddb/user.conf ``` Откройте файл в вашем текстовом редакторе, используя следующую команду: ``` sudo nano /etc/raddb/user.conf ``` В конфигурации добавьте клиентские устройства и ключ, используя следующий синтаксис: ``` client { secret = } ``` Скриншот №4 — Конфигурация машин Вместо "client IP or hostname" введите необходимые вам учетные данные и то же самое с "shared secret", вместо этого введите надежный пароль хоть у ААА—сервера, много ступень защита эта так же важна! **Внимание**: файл конфигурации определяет правила для клиентского устройства! Теперь мы переходим к настройке конфигурации для учетной записи пользователя: настройка учетных записей и групп для аутентификации на стороне сервера, реализация протокола RADIUS с открытым исходным кодом. Это включает в себя создание учетных записей пользователей и присвоение им членства в группах в базе данных. ``` sudo nano /etc/raddb/users ``` И введите это: ``` Cleartext-Password := "" ``` Скриншот №5 — Конфигурация пользователя Замените на желаемое имя пользователя, а на соответствующий пароль в открытом текстовом формате. Аналогичным образом откройте файл groups в вашем текстовом редакторе, используя следующую команду: ``` sudo nano /etc/raddb/groups ``` И вставьте: ``` User-Name == "" ``` Скриншот №6 — Конфигурация групп Запустите AAA—сервер. Как только настройка будет завершена, запустите сервер, выполнив соответствующую команду. Например, вы можете использовать строчку приведенную ниже: ```bash sudo systemctl start radiusd ``` И это все! ## Настройка FreeRADIUS на Linux Настройка сервера AAA в AlmaLinux—это простой процесс, который включает в себя несколько простых шагов. Выполнив основные шаги по настройке, описанные в этой статье, вы сможете запустить свой сервер FreeRADIUS в кратчайшие сроки. Однако важно отметить, что в программном обеспечении доступны более продвинутые параметры конфигурации и функции, которые не были рассмотрены в этой статье. https://serverspace.by/support/help/ustanovka-drupal-na-ubuntu.md Установка и настройка Drupal для работы на Ubuntu c предустановленным LAMP: пошаговый процесс от создания базы данных, до установки CMS Drupal — популярная бесплатная система управления контентом. Она помогает создавать и управлять веб-сайтами, начиная с простых блогов и заканчивая сложными корпоративными приложениями. Drupal предоставляет гибкую и расширяемую платформу для создания и организации контента, управления правами пользователей и настройки внешнего вида и функциональности веб-сайтов. ## Подготовка Вам понадобится сервер с установленным LAMP, вы можете подготовить его самостоятельно или использовать предустановленные варианты в нашем VPS-сервисе. В этой инструкции мы будем использовать сервер с предустановленным LAMP на Ubuntu 20.04. ## Настройка Apache и PHP Как обычно обновимся: ```bash sudo apt update sudo apt upgrade ``` Сначала давайте проверим какая версия установлена. ```bash php -version ``` __ При выполнении этой команды будет отображена текущая установленная версия PHP. Проверка версии PHP важна для обеспечения совместимости, поскольку определенные версии Drupal могут требовать последние версии PHP для работы. Более новые версии требуют PHP 8 и новее, давайте обновим его. К сожалению, версия, которая нам нужна, отсутствует в репозитории по умолчанию, поэтому давайте добавим другой репозиторий, введя следующие команды: ``` sudo dpkg -l | grep php | tee packages.txt sudo add-apt-repository ppa:ondrej/php# ``` Подтвердите, нажатием Enter, когда вам будет предложено. Теперь вам нужно установить PHP и его модули, необходимые для работы Drupal: ```bash sudo apt update sudo apt install php8.2 php8.2-cli sudo apt install php8.2-fpm sudo apt install php8.2-{bcmath,fpm,xml,mysql,zip,intl,ldap,gd,cli,bz2,curl,mbstring,pgsql,opcache,soap,cgi} ``` Удалите более старую версию: ```bash sudo apt purge php7.4* ``` После удаления старой версии включите новую: ``` sudo a2enconf php8.2-fpm ``` Эта команда включает модуль перезаписи, который необходим для функциональности «чистых» URL Drupal и позволяет переписывать URL в соответствии с определенными правилами. Включение этого модуля позволяет Apache интерпретировать и обрабатывать правила перезаписи URL, указанные в файле .htaccess Drupal. «Чистые» URL предоставляют более дружественную для пользователей и поисковых систем структуру для веб-сайтов Drupal. ```bash sudo a2enmod rewrite systemctl reload apache2 ``` Теперь внесем некоторые настройки в файл /etc/php/8.2/apache2/php.ini Найдите эти параметры и проверьте, что они выключены: ``` expose_php = Off . . . allow_url_fopen = Off ``` Установка expose_php в значение Off отключает отображение информации о версии PHP в заголовках HTTP-ответа. Скрытие версии PHP усиливает безопасность вашей системы, предотвращая возможные атаки, нацеленные на конкретные уязвимости, связанные с известной версией PHP. Аналогично, установка allow_url_fopen в значение Off отключает возможность открывать удаленные файлы с помощью URL. Это мера безопасности, направленная на снижение риска подключения вредоносных файлов или выполнения неавторизованных удаленных сценариев. Отключение этой функции предотвращает потенциальные уязвимости безопасности, связанные с доступом к файлам по сети. Внесение этих изменений позволяет повысить безопасность путем ограничения отображения информации о версии PHP и предотвращения выполнения потенциально небезопасных удаленных файлов. Теперь давайте еще раз перезагрузим Apache. ```bash systemctl reload apache2 ``` ## Настройка MySQL Как и для практически любого другого веб-сайта, Drupal потребуется собственная база данных, давайте настроим ее: ```bash mysql -u root -p ``` Введите пароль. ```sql CREATE DATABASE drupaldb; CREATE USER 'drupaluser'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON drupaldb.* TO 'drupaluser'@'localhost'; FLUSH PRIVILEGES; EXIT; ``` Сделано. ## Установка Drupal Перейдите в каталог: ``` cd /var/www/html/ ``` Эта папка является типичным местом для хранения веб-контента. Обычно она называется «DocumentRoot» (корневой каталог документов). Когда пользователь открывает веб-сайт, размещенный на сервере Apache, сервер берет необходимые файлы из этого каталога. Скачайте Drupal с помощью следующей команды ```bash sudo wget https://www.drupal.org/download-latest/tar.gz ``` Извлеките архив: ```bash sudo tar -zxvf tar.gz ``` Запустите команду и запомните каталог в который были извлечены файлы Файл /etc/apache2/sites-available/000-default.conf представляет собой .config файл по умолчанию, в котором указываются параметры для виртуального хоста. Откройте его и отредактируйте следующим образом, обычно заменяя имя сервера на ваше имя хоста или IP-адрес вашего сервера Drupal. Это позволяет Apache правильно маршрутизировать входящие запросы на эту страницу и предоставлять соответствующий веб-контент. DocumentRoot указывает путь к файлам веб-сайта. ServerName www.example.com ServerAdmin webmaster@localhost DocumentRoot /var/www/html/drupal-10.0.9 AllowOverride All ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Теперь вам понадобится подставить шаблон настроек чтобы вам не пришлось всё настраивать самостоятельно ``` mkdir /var/www/html/drupal-10.0.9/sites/default/files cp /var/www/html/drupal-10.0.9/sites/default/default.settings.php /var/www/html/drupal-10.0.9/sites/default/settings.php ``` Дадим необходимые разрешения для установки ```bash sudo chmod -R 775 /var/www/html/drupal-10.0.9/ sudo chown -R :www-data /var/www/html/drupal-10.0.9/* ``` Не забудьте перезагрузить Apache ## Веб установка После открытия адреса вашего сервера в веб-браузере вы увидите интерфейс веб-установки, выберите язык, затем тип установки. На следующем шаге вы увидите список ошибок, если они есть, и предложения по их устранению. Если все в порядке, то этот экран будет пропущен, и вам будет предложено ввести настройки базы данных, которые вы настроили ранее в MySQL. А также другие необходимые данные вроде имени сайта и аккаунта администратора. После завершения установки вы увидите страницу приветствия Drupal, и ваш веб-сайт будет готов к использованию Последнее что осталось исправить изменения в правах доступа: ```bash sudo chmod 644 /var/www/html/drupal-10.0.9/sites/default/settings.php ``` ## Заключение Это базовая инструкция по установке Drupal на сервере Ubuntu с установленным LAMP. Обратите внимание, что это только начало и вам может потребоваться дополнительная настройка в соответствии с вашими потребностями и требованиями веб-сайта. https://serverspace.by/support/help/kak-ispolzovat-utilitu-chroot-v-linux.md В этом руководстве вы узнаете, как использовать Chroot для создания защищенного окружения. Chroot Linux. **chroot** — это команда Unix, которая может помочь вам изменить видимый корневой каталог вашей файловой системы. Преимущества этой утилиты превосходят все возможные нормы и показатели, такие как запуск программ или утилит в другой версии операционной системы без ущерба для остальной системы. ## Chroot Когда вы запускаете chroot, вы создаете новую среду оболочки с ее корневым каталогом, отдельным от корневого каталога центральной системы. Это значит, что любые команды или действия, которые вы выполняете в среде chroot, будут ** влиять только на файлы и каталоги** в среде chroot, а не на основную систему. Например, если вы хотите протестировать новую версию программы, для которой требуются библиотеки, отличные от тех, что установлены в вашей основной системе, вы можете создать среду chroot с необходимыми библиотеками, а затем запустить программу в этой среде. Таким образом, вы можете быть уверены, что программа будет работать должным образом, без необходимости вносить изменения в вашу основную систему. Важно отметить: chroot следует использовать только опытным пользователям, так как при некорректном эксплуатировании он потенциально может привести к нестабильности системы. ## Chroot: изоляция и разрешение root Основными особенностями chroot являются: - **Изоляция процессов**: chroot может запускать процессы в изолированном пространстве имен файловой системы, чтобы предотвратить доступ к конфиденциальным данным и ресурсам; - **Тестирование программ**: chroot можно использовать для тестирования программ в безопасной среде, где они не могут повредить хост—систему; - **Восстановление системы**: chroot можно использовать для восстановления системы после сбоя или вредоносной атаки; - **Управление разрешениями**: chroot можно использовать для ограничения доступа пользователей к определенным файлам и каталогам на сервере. В этой статье мы рассмотрим только процесс **изоляции** и **разрешения root**, другая функция этой утилиты будет описана в новых инструкциях. В начале напишите эту команду, чтобы обновить индекс пакета : ```bash sudo apt update -y && sudo apt upgrade -y ``` Скриншот №1 — Обновление пакетов Проверьте версию и вообще наличие утилиты chroot в вашей системе с помощью команды. Для большинства дистрибутивов Linux они называются "**chroot**" или "**util—linux**": ``` chroot —version || util-linux —version ``` Скриншот №2 — Проверка версии После того, как мы убедимся, что все файлы и пакеты установлены правильно, создайте каталог, в котором будет новая среда для нашей системы: ``` cd / && mkdir env0 ``` Скриншот №3 — Директория окружения Например, мы изолируем служебный процесс ls: ``` cp -R /bin /lib /lib64 /usr /etc /env0/ ``` ``` chroot /env0 /bin/ls ``` Скриншот №4 — Запуск окружения С помощью этих команд мы копируем и запускаем изолированную среду, которая, в свою очередь, загружает процесс ls. Но как мы можем предоставить или получить доступ к этой утилите, весь процесс довольно прост. ``` chroot —userspec= ``` Скриншот №5 — Запуск окружения от пользователя Задает пользователя и группу, от имени которых команда будет выполняться в изолированной среде. ## Вывод В целом, **chroot** — это мощная утилита, которая предлагает широкий спектр преимуществ, включая изоляцию процессов, тестирование программ, восстановление системы и управление разрешениями. В этой статье мы сосредоточились на изоляции процессов и управлении правами root, но в следующем эпизоде инструкций мы рассмотрим другую функцию этой утилиты. Выполнив эти действия, вы можете воспользоваться возможностями chroot для создания безопасных сред для тестирования программ и восстановления систем после сбоев или вредоносных атак. Следите за обновлениями для нашей предстоящей статьи на тему ["Изолированное восстановление Linux через chroot"](https://serverspace.by/support/help/kak-ispolzovat-utilitu-chroot-v-linux-chast-2/)! https://serverspace.by/support/help/kak-ispolzovat-utilitu-chroot-v-linux-chast-2.md Узнайте, как использовать команду Chroot в Unix для восстановления системы после сбоя или вредоносной атаки на сервер VDS. Команда Chroot в Unix позволяет пользователям создавать безопасную временную среду для программ, изменяя корень файловой системы. Такая изоляция предотвращает нанесение какого-либо вреда первичной системе. [В предыдущей инструкции](https://serverspace.by/support/help/kak-ispolzovat-utilitu-chroot-v-linux/) из этой серии рассмотрели две основные и немаловажные функции: изоляция и разрешение. ## Что такое Chroot? Chroot создает новую среду оболочки, что означает любые изменения, внесенные в эту среду, будут влиять только на файлы и каталоги в среде Chroot, а не на центральную систему. Например, если вам нужно протестировать программу на другой версии операционной системы, для которой требуются определенные библиотеки, недоступные в вашей основной системе, вы можете создать Chroot-среду с необходимыми библиотеками и запустить программу в этой изолированной среде. Это гарантирует, что программа работает корректно, не вызывая никаких проблем в основной системе. Однако важно отметить, что Chroot следует использовать только опытным пользователям, поскольку неправильное использование может привести к нестабильности системы. Кроме того, Chroot может помочь восстановить системы после аварийных сбоев или вредоносных атак. ## Установка и настройка Рассмотрим одну из основных функций утилиты — восстановление системы. Chroot можно использовать для восстановления системы после сбоя или вредоносной атаки. Программа изолирует файловую систему от воздействия, которое может проявиться после технического обслуживания. Давайте посмотрим! Если у вас есть VDS на Serverspace, то вам нужно открыть панель управления и перейти на вкладку восстановление: Скриншот №1 — Панель управления Скриншот №2 — Вкладка Затем перезагрузите свой сервер и продолжайте. Перед использованием обновите основную утилиту и обновите вашу систему : ```bash sudo apt update -y && sudo apt upgrade -y ``` Скриншот №3 — Обновление На первом шаге нам нужно найти метку диска восстановления с помощью приведенной ниже команды: ``` fdisk -l ``` Скриншот №3 — Диски Монтируйте устройство в точку файловой системы для дальнешей работы с ним. Приведенная ниже команда создает папку и точку монтирования: ``` mkdir mnt && mount dev/vda2 /mnt ``` Скриншот №4 — Монтирование Затем создайте папку и скопируйте файл конфигурации: ``` mkdir /mnt/chroot/etc && cp -p /etc/(passwd,group,shadow,gshadow} /mnt/chroot/etc ``` Скриншот №5 — Копирование Создание папок и монтирование каталогов в систему, выполняется следующим образом: ``` mkdir /mnt/chroot/dev mount —bind /dev /mnt/chroot/dev mkdir /mnt/chroot/proc mkdir /mnt/chroot/sys mount —bind /proc /mnt/chroot/proc mount —bind /sys /mmt/chroot/sys ``` Скриншот №6 — Монтирование папки Запустите виртуальную среду и выполните необходимые операции для восстановления системы, например, обновление пакетов или восстановление загрузочного сектора: ``` chroot /mnt ``` Скриншот №7 — Запустите команду После завершения операций выйдите из среды chroot и подключите файловые системы: ``` umount /mnt/chroot/sys && umount /mnt/chroot/proc && umount /mnt/chroot/dev ``` Скриншот №6 — Размонтируйте директории И в конце процесса перезагрузите вашу систему подготовки! ## Заключение Команда **Chroot** в Unix обеспечивает безопасную временную среду для запуска программ путем ** изоляции** их от основной системы. Такая изоляция предотвращает любой вред основной системе и может использоваться для тестирования программ на различных версиях операционной системы с определенными библиотеками, недоступными в основной системе. Однако важно отметить, что им должны пользоваться только опытные пользователи, поскольку неправильное использование может привести к нестабильности системы. Кроме того, **Chroot** также может использоваться для восстановления системы после аварийных сбоев или вредоносных атак. https://serverspace.by/support/help/proverka-konfiguraczii-nginx-s-pomoshhyu-gixy.md Рассматриваем как установить Gixy и как с его помощью проверить конфигурацию Nginx на предмет ошибок и уязвимостей. GIXY — это инструмент, специально разработанный для анализа конфигурационных файлов Nginx. Он выступает в качестве статического анализатора, который помогает выявлять потенциальные уязвимости безопасности, неправильные настройки и оптимизации производительности в настройках вашего сервера Nginx. Вот несколько ключевых функций и возможностей GIXY: - Анализ безопасности: GIXY фокусируется на безопасности, обнаруживая распространенные неправильные настройки безопасности в файлах конфигурации Nginx. Он проверяет на наличие известных уязвимостей безопасности, небезопасных конфигураций и потенциальных векторов атак. - Обнаружение неправильных настроек: GIXY помогает выявлять настройки конфигурации, которые могут привести к непредвиденному или нежелательному поведению. Он обнаруживает проблемы, такие как дублирующиеся или конфликтующие директивы, неправильный синтаксис, неиспользуемые или устаревшие настройки и многое другое. - Оптимизация производительности: GIXY также может предоставлять рекомендации по оптимизации производительности вашего сервера Nginx. Он предлагает улучшения, которые могут повысить эффективность и отзывчивость настроек сервера. - Подробные отчеты: GIXY генерирует подробные отчеты об анализе, включающие информацию о выявленных проблемах, их уровне серьезности и рекомендациях по устранению. Отчеты можно просмотреть в терминале или экспортировать в текстовый или JSON форматы для дальнейшего анализа или обмена. Используя GIXY, вы можете проактивно выявлять и устранять потенциальные уязвимости безопасности, гарантировать правильную настройку вашего сервера Nginx и оптимизировать его производительность. Это помогает улучшить общую безопасность и надежность ваших приложений или веб-сайтов, работающих на Nginx. ## Установка Gixy Предварительные требования: - Убедитесь, что на вашей системе Ubuntu установлен Nginx. - Убедитесь, что у вас установлены Python и Pip. Если нет, вы можете установить их, выполнив следующую команду: sudo apt update sudo apt install python3 python3-pip Установите GIXY с помощью pip, выполнив следующую команду: pip install gixy==0.1.20 pyparsing==2.4.7 Мы устанавливаем версию pyparsing 2.4.7, потому что в более новых версиях есть ошибка, которая не позволяет Gixy правильно анализировать nginx.conf. ## Анализ конфигурации: После установки GIXY вы можете анализировать файлы конфигурации Nginx. Для анализа определенного файла конфигурации Nginx используйте следующую команду: gixy /etc/nginx/nginx.conf Если ваш nginx.conf перемещен в другое место, измените путь на фактический. GIXY проанализирует файл конфигурации Nginx и сгенерирует отчет о потенциальных проблемах безопасности, неправильных настройках или оптимизации производительности. Отчет будет отображен в терминале. Помимо терминала GIXY предоставляет различные форматы вывода для отчета об анализе, включая текст и JSON. Вы можете указать формат вывода с помощью параметра -format. Например, для создания текстового отчета вы можете использовать следующую команду: gixy /etc/nginx/nginx.conf --format=text --output=/path/to/output Замените «/path/to/output» на желаемый путь и имя файла для отчета HTML. GIXY предлагает дополнительные параметры для настройки процесса анализа. Вы можете изучить их, используя команду «gixy -h». Не забудьте создать резервную копию файлов конфигурации Nginx перед внесением каких-либо изменений на основе рекомендаций GIXY и протестировать любые модификации в не-продукционной среде. ## Заключение: Теперь вы узнали, как установить GIXY и проверить вашу конфигурацию Nginx с его помощью. https://serverspace.by/articles/netcat-dlya-testirovaniya-soedinenij-tcp-i-udp.md Netcat (или nc) - это инструмент для тестирования TCP и UDP соединений. Он предоставляет возможность создавать клиентские и серверные соединения для проверки и отладки различных сетевых протоколов. В инструкции Serverspace рассмотрим подробнее, как использовать Netcat для тестирования TCP и UDP… Netcat (или nc) — это мощный инструмент для тестирования TCP и UDP соединений. Он предоставляет возможность создавать клиентские и серверные соединения для проверки и отладки различных сетевых протоколов. Netcat является универсальным инструментом, который может быть использован во многих сценариях сетевого тестирования и анализа. Рассмотрим подробнее, как использовать Netcat для тестирования TCP и UDP соединений. ## Тестирование TCP-соединений Прежде, чем начать использование инструмента, его необходимо установить так, к примеру в Debian: ```bash sudo apt update ``` ```bash sudo apt install netcat ``` TCP (Transmission Control Protocol) является протоколом, который обеспечивает надежную и упорядоченную передачу данных между узлами сети. Для тестирования TCP-соединений с помощью Netcat следуйте следующим шагам: **1.** Запустите Netcat в режиме сервера, прослушивающего определенный порт: ``` nc -l порт ``` Скриншот №1. Старт приложения в режиме сервера Это команда запускает Netcat в режиме сервера, который будет прослушивать входящие подключения на указанном порту. **2.** Запустите Netcat в режиме клиента, устанавливающего соединение с сервером: ``` nc хост порт ``` Скриншот №2. Подключение в режиме клиента Эта команда запускает Netcat в режиме клиента и устанавливает соединение с указанным хостом и портом. После установления соединения, как сервер, так и клиент могут отправлять и принимать данные. Для отправки данных в Netcat в режиме клиента просто введите текст и нажмите Enter. Данные будут отправлены на сервер, который их примет и отобразит в своем терминале. Аналогично, сервер может отправлять данные клиенту. Таким образом, вы можете проверять и отлаживать соединение TCP, отправляя данные и наблюдая за их передачей и обработкой на обеих сторонах. ## Тестирование UDP-соединений UDP (User Datagram Protocol) является протоколом, который обеспечивает передачу данных без предварительного создания канала между узлами сети. Для тестирования UDP-соединений используйте следующие шаги: **1.** Запустите Netcat в режиме сервера, прослушивающего определенный порт для UDP-данных: ``` nc -ul порт ``` Скриншот №3. Запуск nc в режиме прослушивания udp Это команда запускает Netcat в режиме сервера для приема UDP-данных на указанном порту. **2.** Запустите Netcat в режиме клиента, отправляющего UDP-данные на сервер: ``` nc -u хост порт ``` Скриншот №4. Подключение к серверу в режиме udp-соединения Эта команда запускает Netcat в режиме клиента и отправляет UDP-данные на указанный хост и порт. После установления соединения вы можете проверять передаваемые данные и их целостность. Как и в случае с TCP, данные могут быть отправлены как с клиента на сервер, так и в обратном направлении. Тестирование UDP-соединений позволяет проверить надежность, пропускную способность и работу протокола UDP. ## Проверка доступности порта Netcat также может быть использован для проверки доступности порта на удаленном хосте. Для этого используйте команду: ``` nc -zv хост порт ``` Скриншот №5. Проверка доступности порта SSH при помощи netcat Эта команда позволяет проверить доступность указанного порта на указанном хосте. Если соединение установлено успешно, порт будет считаться открытым. В противном случае, если соединение не может быть установлено, порт будет считаться закрытым. ## Передача файлов для проверки сети Netcat также может быть использован для передачи файлов через TCP или UDP соединения в целях проверки стабильности сети и пропускной способности. Чтобы запустить сервер в режиме приёма файла с клиента на сервер через TCP-соединение, используйте следующую команду: ``` nc -l порт > filename ``` Скриншот №6. Сервер ожидает приём файла от клиента Эта команда запускает Netcat в режиме сервера, который принимает данные, и перенаправляет их в указанный файл. Затем, на стороне клиента, вы можете отправить файл следующим образом: ``` nc хост порт < filename ``` Скриншот №7. Клиент отправляет файл серверу В этом случае Netcat будет использоваться для передачи данных из файла на клиентскую машину через указанное TCP-соединение. ## Расширенные опции Netcat поддерживает множество расширенных опций, которые позволяют контролировать и настраивать соединения. Например, с флагом "-s" можно указать определенный исходящий IP-адрес, а флаг "-p" позволяет выбрать определенный порт для исходящего соединения. Netcat предоставляет гибкие и удобные возможности для тестирования TCP и UDP соединений. Он может быть полезным инструментом для сетевых специалистов и разработчиков при отладке и проверке сетевых протоколов. Освоение и использование Netcat помогут вам углубить знания о сетевом взаимодействии и стать более опытным профессионалом в области сетевых технологий. https://serverspace.by/support/help/prava-dostupa-k-fajlam-v-linux.md Познакомьтесь с ключевыми аспектами управления правами доступа к файлам. Вы сможете гибко настраивать доступ к файлам в Linux. ## Введение Управление доступом и разрешениями для файлов важнейшие цели в области управления данными и безопасности: - Повышенная безопасность: Реализация механизмов контроля доступа обеспечивает доступ к файлам только лицам, обладающим необходимыми правами. Такое решение позволяет предотвратить доступ к конфиденциальным данным посторонних лиц. - Сохранение конфиденциальности: Благодаря точной настройке прав доступа обеспечивается конфиденциальность. Несанкционированный доступ нежелательных пользователей к конфиденциальной информации, который может привести к утечкам или нарушениям, эффективно предотвращается. - Обеспечение целостности: Контроль разрешений играет ключевую роль в сохранении целостности файлов. Несанкционированное изменение или подделка важных файлов предотвращается, что обеспечивает надежность и точность данных. - Соблюдение нормативных требований: Многие отрасли и организации обязаны соблюдать нормативные требования, предусматривающие строгий контроль доступа. Создание надлежащей структуры разрешений помогает соответствовать этим требованиям и избегать юридических последствий. - Защита от потери данных: контроль доступа позволяет предотвратить непреднамеренную потерю данных. Исключаются случаи, когда пользователи, не имеющие соответствующих прав, случайно удаляют или перезаписывают важные файлы. - Оптимизация ресурсов: Управление правами оптимизирует распределение ресурсов. Ограничение доступа для определенных пользователей или групп позволяет избежать ненужного потребления ресурсов и предоставить доступ соответствующим сторонам. Таким образом, управление доступом и разрешениями играет важную роль в обеспечении безопасности, конфиденциальности и сохранности файлов и данных. Они препятствуют несанкционированному доступу, предотвращают утечки и потери данных, а также способствуют соблюдению нормативных требований. ## Требования - Root—права; - Debian 12 или более поздняя версия; - Некоторые знания о работе ОС; - Подключение к Интернету. ## Разрешения и атрибуты в Linux В среде Linux управление файлами представляет собой тщательный и сложный процесс, призванный обеспечить максимальную безопасность и точность работы с данными. Linux распознает целый спектр типов файлов, включая обычные файлы, каталоги, символические ссылки и устройства. Каждый тип обладает уникальными атрибутами и правами доступа. В Debian 12 мы можем проверить атрибуты и разрешения всех пользователей с помощью следующей команды: ``` ls -l ``` Скриншот №1 — Атрибуты файлов Но если мы хотим проверить определенный файл, то необходимо использовать команду, приведенную ниже, указав файл, который вы хотите проверить: ``` ls -l /etc/network/interfaces ``` Скриншот №2 — Атрибуты файла Давайте уточним каждый параметр: - Строка **-rw-r—r—** означает, что первая тройка соответствует правам владельца, вторая — группы, третья — других пользователей. Этот файл не является каталогом или ссылкой, поскольку первым знаком является тире. Параметр **rw-** означает, что владелец имеет право на чтение, запись, но не имеет права на выполнение. Параметр **r—** означает, что группа владельцев имеет право только на чтение, а также на последнюю тройку других пользователей; - В строке **1** означает, что файл имеет одну жесткую ссылку; - Параметр **root:root** в этом случае указывает на владельца и группу для этого файла; - Размер этого файла **175 байт**; - Данные последних изменений **8 ноября 2022 года** и имя файла **Interfaces**. Каждый файл связан с отдельным пользователем (владельцем) и определенной группой. При создании файла его создатель становится его владельцем, а определенная группа назначается на этот файл. Linux разделяет права доступа на три категории: пользователь, группа и другие. Каждой категории могут быть назначены свои разрешения на чтение, запись и выполнение. И все это мы можем изменить, если у нас есть на это право и прямое разрешение, с помощью утилиты chmod. Разрешения также можно перевести в числовую форму, где чтение (r) равно 4, запись (w) — 2, а выполнение (x) — 1. Сумма представляет собой числовое разрешение, например 755. ```bash chmod 755 interfaces ``` Скриншот №3 — Chmod цифрами Если же мы хотим запретить использование файла для всех типов пользователей, то необходимо написать следующую команду: ```bash chmod 000 interfaces ``` Скриншот №4 — Chmod запрет Команда chmod служит для изменения прав доступа. Эта команда принимает как символьные, так и числовые обозначения. Например, **chmod** **u+w** filename дает право на запись владельцу. Символ **u** означает владельца, **g** — группу, **o** — других и **a** — всех. Затем мы указываем **+** или **—** или **=** для добавления, удаления, явного указания разрешения для пользователей: ```bash chmod u+rwx interfaces && chmod go-rwx interfaces ``` Скриншот №5 — Chmod символьные Или мы можем использовать команду: ```bash chmod u=rwx, go= interfaces ``` Если необходимо сохранить права на запись для других и групповых пользователей, но при этом защитить их от удаления, то используйте приведенную ниже команду: ```bash chmod +t interfaces ``` Это базовые разрешения системы, но что, если нам нужно больше контроля? ## Утилита для дополнительного контроля В Linux ядро обеспечивает надежную основу операционной системы, однако по умолчанию оно не включает в себя все возможные возможности и функции. Дополнительные модули и пакеты для управления доступом и разрешениями файлов необходимы для того, чтобы дать системным администраторам и пользователям возможность гибко настраивать поведение системы под свои нужды. Вот несколько причин, по которым применяется такой подход: - Модульность: Ядро Linux спроектировано по модульному принципу, что означает, что различные функциональные возможности могут быть скомпилированы в виде загружаемых модулей, а не интегрированы непосредственно в ядро. Благодаря этому ядро остается относительно легким, а пользователи могут добавлять только те модули, которые им необходимы. Такой подход повышает эффективность системы и снижает риск того, что ненужный код повлияет на стабильность ядра. - Гибкость: Не всем пользователям и системам требуется одинаковый уровень контроля доступа и разрешений на файлы. Предлагая дополнительные модули и пакеты, дистрибутивы Linux позволяют администраторам выбирать средства, соответствующие конкретным требованиям безопасности. Такая гибкость обеспечивает возможность тонкой настройки систем под различные нужды, будь то простая настольная система или сложная серверная среда. - Безопасность: Предлагая модули управления доступом и разрешения файлов в виде отдельных пакетов, пользователи устанавливают только то, что им необходимо. Это уменьшает площадь атаки на систему, поскольку в ней отсутствуют ненужные функции. Это также позволяет регулярно устанавливать обновления и исправления безопасности именно для этих модулей, что повышает общую безопасность системы. Как можно заметить, стандартная система контроля доступа имеет ряд недостатков: нет защиты системы от случайного удаления значимого файла, целостности файловой системы и т.д. Давайте настроим систему! Использование команды Umask: Команда umask регулирует разрешения по умолчанию для новых файлов и каталогов. Для этого она вычитает указанную маску из максимального значения разрешения, чтобы установить значения по умолчанию. По умолчанию мы видим такой список разрешений: Скриншот №6 — Права по умолчанию Здесь мы видим стандартный список разрешений для файлов, давайте изменим его: ``` umask u=rwx,go= ``` Скриншот №7 — Изменение прав по умолчанию Это решение поможет на время до выключения машины, для более длительной работы системы можно добавить в .bashrc или bash_login необходимые raw! ## Вывод Сочетание контроля доступа, точных настроек разрешений и гибкости с использованием дополнительных инструментов позволяет системным администраторам создавать безопасную и специализированную среду для управления файлами и данными в экосистеме Linux. https://serverspace.by/support/glossary/oblachnoe-hranilishhe.md Облачное хранилище — модель предполагает хранение данных в интернете при помощи ресурсов облачного провайдера или поставщика, который управляет облачной инфраструктурой. Облачное хранилище — модель предполагает хранение данных в интернете при помощи ресурсов облачного провайдера или поставщика, который управляет облачной инфраструктурой. Особенностью данной модели является подход к потреблению ресурсов, который определяется тарифом или техническими возможностями провайдера. Кроме этого, подобный подход избавляет потребителя услуги от необходимости закупать и обслуживать собственные СХД, что несет за собой сокращение издержек. Облачный сервис Cloud Storage направлен на работу с данными: хранением и раздачей цифрового контента, который используют нагруженные приложения и другие сервисы. С точки зрения клиента все данные хранятся на одном виртуальном сервере, в то время как фактически данные могут распределяться между удаленными друг от друга физическими серверами, но их структура остается непрозрачной для потребителя услуги. Сервис может использоваться мобильными разработчиками, онлайн-СМИ или сайтами, которые работают с пользовательским контентом и поэтому нуждаются в постоянном масштабировании и, конечно, обычными пользователями. ## Преимущества Cloud Storage - Высокая степень доступности данных; - Возможность организовать коллективную проектную работу с данными; - Оплата происходит по факту использования ресурсов, а не за аренду всего сервера; - Потенциальная возможность бесконечного масштабирования; - Оптимизация бизнес-расходов на покупке и обслуживании железа; - Сохранность данных даже в случае аппаратных сбоев. Еще одно преимущество является скорее факультативным, поскольку в большей степени зависит от конкретного сервис-провайдера, но администрацией Cloud Storage может, как правило, заниматься специалист, не обладающий ИТ-образованием, тогда как администрирование физического сервера такой ситуации не допускает. https://serverspace.by/support/glossary/container.md Контейнеры: что это такое. Container представляет собой альтернативный тип виртуализации, который состоит в использовании изолированной среды для исполнения приложений. Контейнеры представляют собой альтернативный тип виртуализации, который состоит в использовании изолированной среды для исполнения приложений. Реализация контейнеров достигается использованием изолированного пространства, которое содержит все необходимые компоненты: от системных инструментов до библиотек. Данные ресурсы принято называть виртуализированными именами. Со всеми компонентами контейнера поддерживается взаимодействие, но ограничивается выход за их пределы. Иначе говоря, операционная система дает использовать только маркированные компоненты. Внутри контейнеров приложения функционируют без ограничений, поскольку определяется как единственное. Для внесения изменений в уже существующий файл, либо для создания нового, контейнер получает только новые области от основной ОС хоста. Это дает ключевое преимущество в скорости развертывания нескольких контейнеров на одном хосте. Между технологиями виртуальных машин (ВМ) и контейнерами есть важное отличие. Контейнеры не работают со сторонними системными файлами и инструментами, тогда как ВМ используют отдельный пул ресурсов со своей ОС. Для того, чтобы работать с контейнером потребуются только ресурсы, в остальном же процесс больше похож на шэринг компонентов операционной системой. Это дает контейнером преимущество относительно ВМ не только в скорости запуска, но и в степени нагрузки системы, особенно во время запуска. Контейнеры могут обладать спецификацией по-определенному API или ОС. Например, контейнеры Linux не будут работать без Linux API, поэтому для Windows они будут малопригодны. Чтобы управлять контейнерами, можно использовать PowerShell (позволяет работать только с локальным репозиторием), который постепенно теряет популярность или Docker. Между Microsoft и Docker существует соглашение, по которому все команды управления актуальны и для контейнеров Win, и для Linux. https://serverspace.by/support/glossary/docker.md Docker представляет собой платформу или программное обеспечение (что тоже будет верным) с открытым исходным кодом, которое используют для разработки, тестирования, доставки и запуска приложений в контейнерных средах. Docker представляет собой платформу или программное обеспечение (что тоже будет верным) с открытым исходным кодом, которое используют для разработки, тестирования, доставки и запуска приложений в контейнерных средах. Полезность платформы обнаруживается в более эффективном использовании ресурсов, быстром переносе приложений в рабочем состоянии в другие среды и автоматизации развертывания. Платформа заключает программное обеспечение в стандартизованные контейнеры вместе со всей логикой созависимостей. Собранный таким образом контейнер содержит все ключевые компоненты: системные инструменты, код и среду исполнения, а также необходимые библиотеки. Принцип работы Docker состоит в использовании стандартизированного способа исполнения кода, который ускоряет разработку, лишает ее определенных рисков и в большинстве случаев, более экономически выгоден. Например, в установке Redis или Elasticsearch больше нет нужды, поскольку их можно запускать напрямую из контейнера. Способность к быстрому развертыванию дает Docker возможность быстрого описания всего окружения, что значительно удешевляет и ускоряет процессы разработки. В практическом использовании Docker выделяется ряд преимуществ: - Docker дает возможность доставлять сервисы на порядок чаще; - Благодаря использованию заранее описанных контейнеров (со всеми зависимостями), облегчается механика развертывания, поскольку достигается повторяемость среды. Кроме этого, снижается критичность ошибок, поскольку запустить бэкап более ранней версии на порядок проще; - Контейнерная упаковка Docker позволяет запустить больше кода на каждом используемом сервере, что оптимизирует расход ресурсов; - Облегченная система переноса приложения из среды разработки и тестирования в продуктивную среду с последующим развертыванием. Docker работает не только с родной ОС Linux, но и с Windows, а также macOS. Несмотря на очевидные плюсы использования ОС, Docker все равно может обладать рядом ограничений в зависимости от конфигурации конкретной системы. https://serverspace.by/about/blog/openvpn-vs-wireguard-kakoj-vpn-luchshe.md Сравнили для вас два VPN-протокола по четырём критериям: шифрование, производительность, конфиденциальность и совместимость. Сравнили для вас два популярных VPN-протокола по четырём критериям: шифрование, производительность, конфиденциальность и совместимость. В конце статьи ссылки на инструкции по настройке. ## Шифрование OpenVPN использует библиотеку [OpenSSL](https://www.openssl.org/), куда входит множество криптографических алгоритмов (см. Таблицу 1). Длина кода составляет более 70000 строк. WireGuard использует фиксированный набор алгоритмов шифрования (см. Таблицу 1). Длина кода составляет 4000 строк. OpenVPN WireGuard Защита данных пользователя Perfect Forward Secrecy (PFS) Perfect Forward Secrecy (PFS) Протокол транспортного уровня UDP или TCP UDP Протокол формирования и согласования ключа RSA, DSA, X25519, Ed25519, SM2 и др. HKDF, Curve25519 для протокола безопасного обмена ключей Diffie-Hellman Хеширование MD5, MD4, SHA-1, SHA-2, MDC-2, BLAKE2 и др. BLAKE2, SipHash24 Шифрование и аутентификация AES, Blowfish, Camellia, ChaCha20, Poly1305, DES, Triple DES, ГОСТ 28147-89 и др. ChaCha20, Poly1305 в AEAD структуре RFC7539 Таблица 1. Сравнение алгоритмов шифрования **Вывод:** OpenVPN подойдет в качестве корпоративного VPN, т.к. имеет гибкую и более сложную технологию шифрования. WireGuard станет подходящим решением для частных пользователей. Оба VPN-протокола проходят независимые аудиты, после которых [исправляются](https://openvpn.net/security-advisory/security-audit-vulnerabilities-resolved/) ошибки безопасности. ## Производительность Чтобы понять, какой VPN быстрее, достаточно взглянуть на два графика. Вот [результаты](https://www.wireguard.com/performance/) теста пропускной способности: А вот [результаты](https://www.wireguard.com/performance/) замера пинга: Во время теста также было отмечено, что OpenVPN нагружает CPU на 100%, в то время, как WireGuard оказался менее требовательным. **Вывод** очевиден: WireGuard имеет большую пропускную способность и меньший пинг, поэтому он побеждает в этой гонке. Он также меньше нагружает центральный процессор, что является дополнительным преимуществом. ## Конфиденциальность данных Настройки WireGuard содержат IP-адреса пользователей. Это небезопасно, т.к. позволяет идентифицировать участников VPN-соединения. OpenVPN не требует прописывать IP-адреса, поэтому считается безопаснее. ## Совместимость WireGuard совместим со всеми мобильными устройствами. Его можно установить на Windows, Android, iOS и Linux. Данный VPN-протокол относительно молодой по сравнению со своим конкурентом. В перспективе, мы можем ожидать, что список возможностей по установке WireGuard будет расширяться. OpenVPN менее мобилен, но подходит для большинства компьютерных платформ. Его можно использовать в Solaris, QNX, Maemo, FreeBSD, ChromeOS и Linux. Чаще всего, OpenVPN используется для внедрения его в маршрутизаторы, брандмауэры и т.д. **Вывод:** OpenVPN уступает WireGuard в мобильности, но имеет лучшую совместимость с современными платформами. ## Какой VPN выбрать? Используйте WireGuard, если: - VPN вам нужен для простых задач (например, получить доступ к зарубежному контенту); - вам важна скорость соединения. Подойдет для файлообмена. Используйте OpenVPN, если: - вам требуется удалённый доступ к корпоративной сети компании; - если вы беспокоитесь о конфиденциальности ваших данных. ## Как установить VPN на сервер? Это несложно. Вот несколько инструкции, которые могут быть полезным вам: - [Установка OpenVPN сервера на Ubuntu 20.04](https://serverspace.by/support/help/openvpn-ubuntu-20-04/); - [Windows Server версий 2008/2012: инструкция по настройке OpenVPN](https://serverspace.by/support/help/nastroika-openvpn-na-windows-server-2012/); - [Установка и настройка OpenVPN в CentOS](https://serverspace.by/support/help/installing-and-configuring-openvpn-on-centos/); - [Настройка OpenVPN в Ubuntu](https://serverspace.by/support/help/configuring-openvpn-on-ubuntu/); - [Как установить WireGuard VPN на сервере Ubuntu](https://serverspace.by/support/help/kak-ustanovit-wireguard-vpn-na-servere-ubuntu/); - [Как настроить VPN-сервер WireGuard на CentOS](https://serverspace.by/support/help/kak-nastroit-vpn-server-wireguard-na-centos/); - [Как установить WireGuard VPN Client на Ubuntu Linux](https://serverspace.by/support/help/kak-ustanovit-wireguard-vpn-client-na-ubuntu-linux/); - [Как настроить WireGuard VPN Client на CentOS](https://serverspace.by/support/help/kak-nastroit-vpn-klient-wireguard-na-centos/). https://serverspace.by/about/news/serverspace-zapustil-prodazhi-vps-v-kazahstane.md Serverspace, международный провайдер IaaS-решений, объявил о старте продаж облачных услуг для клиентов из Казахстана. Теперь им доступна возможность создавать облачные серверы и разворачивать облачную инфраструктуру под свои проекты. Serverspace, международный провайдер IaaS-решений, объявил о старте продаж облачных услуг для клиентов из Казахстана. Теперь им доступна возможность создавать [облачные серверы](https://serverspace.kz/services/cloud-servers/) и разворачивать облачную инфраструктуру под свои проекты. Serverspace адаптировал панель управления собственной разработки под рынок Казахстана. Благодаря этому компания сделала услуги еще более доступными для казахстанских клиентов. Этот шаг позволит Serverspace расширить свое присутствие на мировом рынке и удовлетворить спрос на VPS. Панель управления с гибким и удобным калькулятором дает возможность выбирать подходящую спецификацию сервера, которая подходит для их проекта, создавать и настраивать облачную инфраструктуру в несколько кликов. Доступ к панели управления осуществляется по адресу [my.serverspace.kz](https://serverspace.kz/). Цены на услуги Serverspace отражены в казахстанских тенге, что значительно упрощает расчеты для пользователей и позволяет избежать лишних затрат. Клиентам доступно множество предложений решений по управлению облачной инфраструктурой, из которых можно выбрать подходящий вариант в соответствии с требованиями проекта. Ознакомиться с доступными услугами Serverspace можно на сайте [serverspace.kz](https://serverspace.kz/). Помимо этого, Serverspace гарантирует высокое качество предоставляемых услуг и безопасность пользовательских данных. Оплата услуг осуществляется через локальные банки Казахстана, что также обеспечивает максимальную защиту данных и удобство для клиентов. Serverspace предлагает круглосуточную техническую поддержку через тикет-систему и по телефону: +7 (777) 555-36-66. Это обеспечивает максимальный комфорт и поддержку для пользователей в любое время суток. Важной особенностью Serverspace является возможность развернуть виртуальный сервер в любом из подключенных дата-центров, расположенных в Казахстане, России, Нидерландах, США, Канаде и Беларуси. Это позволяет пользователям выбирать локацию сервера в зависимости от своих потребностей и получать максимальную скорость и производительность. https://serverspace.by/about/news/reliz-paneli-upravleniya-serverspace.md Serverspace, провайдер облачной инфраструктуры, выпустил обновленный дизайн панели управления. В результате 1 этапа, произошли значительные изменения в общем лейауте, калькуляторах и страницах настроек. [Serverspace](https://serverspace.by/index.md), провайдер облачной инфраструктуры, выпустил обновленный дизайн панели управления. В результате 1 этапа, произошли значительные изменения в общем лейауте, калькуляторах и страницах настроек. Ранее из-за отсутствия большого спроса на использование сайта и панели с мобильных устройств мобильная версия сайта не была адаптирована. Однако в конце 2022 года спрос вырос и составил более 32% от общего числа клиентов. Поэтому главной целью релиза стало создание адаптива под мобильные устройства. Для обеспечения более быстрого запуска на мобильных, уже были обновлены два основных раздела: "Создание сервера" и "Пополнение баланса". В ближайшем будущем планируется обновление и остальных разделов. Интерфейс панели Serverspace стал не только более современным, но и легким в использовании. Благодаря проведению исследований и получения фидбэка от пользователей, команда смогла значительно упростить навигацию и отображение фичей панели. ## Основные обновления: - Боковое отображение серверной конфигурации и стоимости в калькуляторе создания сервера. Это обновление позволяет пользователям отслеживать выбранные параметры и их влияние на общую стоимость сервера. - Дополнительное отображение списка облачных серверов в виде карточек. Пользователи теперь имеют возможность выбирать между привычным форматом списка и новым карточным представлением. В карточке представлена основная информация о сервере: текущий статус, дата-центр, ОС, IP-адрес и конфигурацию ресурсов. - Управление тегами. Добавление и удаление тегов теперь возможно прямо в карточках серверов. - Фильтр по статусу и сортировка. Добавление этих фичей сделал проще процесс поиска серверов. Теперь можно легко фильтровать серверы по их статусу и сортировать их. - Копирование кода из системных инструкций прямо в панели управления. Теперь пользователи могут использовать необходимый код из инструкций панели для настройки сервера или выполнения других задач. - Адаптация панели управления под мобильные устройства. Теперь можно более комфортно использовать Serverspace на своих смартфонах и планшетах, получая доступ к возможностям создания и оплаты услуг. Обновленный дизайн панели управления [Serverspace](https://serverspace.by/index.md)стал результатом тщательного анализа потребностей пользователей и стремления команды к непрерывному улучшению пользовательского опыта. Новые функции и улучшения позволят пользователям более эффективно управлять своими [облачными серверами](https://serverspace.by/services/cloud-servers.md) и достигать своих целей в более удобной и интуитивно понятной среде. Чтобы воспользоваться преимуществами обновления панели, необходимо создать аккаунт Serverspace или войти в свою учетную запись. ## Планы по обновлению панели Serverspace Одним из предстоящих обновлений будет темная тема, которая позволит организовать комфортную рабочую среду для разработчиков, которые часто работают в ситуациях низкой освещенности или в темное время суток. Команда Serverspace также активно занимается доработкой мобильной версии. В ближайшем будущем клиенты смогут полноценно управлять своей облачной инфраструктурой на любых устройствах. https://serverspace.by/support/help/kak-ustanovit-wireguard-vpn-na-servere-ubuntu.md Узнайте как настроить VPN сервер WireGuard на операционной системе Ubuntu Linux и установить туннель с внешними клиентами. WireGuard — это приложение которое позволяет настроить безопасную виртуальную частную сеть (VPN), известное своей простотой и удобством использования. Оно использует проверенные криптографические протоколы и алгоритмы для защиты данных. Изначально разработанное для ядра Linux, оно может быть развернуто на Windows, macOS, BSD, iOS и Android. В этой настройке WireGuard vpn используется Ubuntu 20.04. ## Установка WireGuard Server на Ubuntu Linux Войдите по SSH на Linux сервер, после входа в систему проверьте, обновлена ли машина, выполнив следующую команду: ```bash sudo apt-get update && sudo apt-get upgrade ``` Теперь установите WireGuard, выполнив следующую команду: ```bash sudo apt-get install wireguard ``` ## Настройка IP-переадресации Для работы VPN нам нужно включить пересылку пакетов, только тогда мы сможем подключаться через сервер Wireguard, для этого нам нужно отредактировать файл **/****etc/****sysctl.****conf**: ``` sudo nano /etc/sysctl.conf ``` удалите "#" для следующей команды ``` net.ipv4.ip_forward=1 ``` После этого выполните следующую команду для того, чтобы применить изменения: ``` sysctl -p ``` Отобразится следующее сообщение: ## Генерация закрытого и открытого ключей WireGuard работает путем шифрования соединения с помощью пары криптографических ключей. Пара ключей используется путем передачи открытого ключа другой стороне, которая затем может зашифровать свое сообщение таким образом, что оно может быть расшифровано только с помощью соответствующего закрытого ключа. Для обеспечения безопасности двусторонней связи каждая сторона должна иметь собственные закрытый и открытый ключи, так как каждая пара обеспечивает только односторонний обмен сообщениями. Перед генерацией пары ключей перейдите в каталог ``` dwg sudo cd /etc/wireguard ``` Установите разрешение на эту директорию: ``` umask 077 ``` Чтобы сгенерировать пару ключей, введите следующую команду: ``` wg genkey | tee private.key | wg pubkey > public.key ``` ## Настройка серверной конфигурации Чтобы начать настройку сервера WireGuard, перейдите в папку /etc/wireguard и создайте файл wg0.conf ``` sudo nano /etc/wireguard/wg0.conf ``` Добавьте в файл конфигурации следующие директивы: ``` 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 PublicKey = AllowedIPs = 10.0.0.2/32 ``` Скопируйте закрытый ключ, который мы сгенерировали ранее, и вставьте его в PrivateKey. Аналогично нужно сгенерировать пару ключей для клиента, скопируйте открытый ключ клиента и вставьте его в PublicKey. Чтобы скопировать значение ключа, выполните следующую команду: ``` sudo cat /etc/wireguard/public.key ``` ``` sudo cat /etc/wireguard/private.key ``` ## Запуск WireGuard и включение его при загрузке Теперь мы готовы к запуску сервера, для запуска WireGuard мы используем wg-quick и указываем имя нового интерфейса: ``` wg-quick up wg0 ``` Если конфигурация выполнена идеально, вы увидите следующий экран, Чтобы проверить статус работы сервера WireGuard введите: ``` wg show ``` Поздравляю, мы успешно подняли сервер WireGuard! https://serverspace.by/support/help/kak-nastroit-vpn-server-wireguard-na-centos.md Узнайте как настроить VPN сервер WireGuard на операционной системе CentOS Linux для установки туннелей с внешними клиентами. WireGuard — это приложение, которое может обеспечить безопасную виртуальную частную сеть (VPN), оно достаточно простое в использовании и настройке. Оно использует надежные криптографические протоколы и алгоритмы для шифрования данных. Разработанное исключительно для ядра Linux, оно может быть развернуто и на Windows, macOS, FreeBSD, iOS, а так же Android. Как установить WireGuard на CentOS 8.3: - [Как установить сервер WireGuard на CentOS](#step1) - [Как сгенерировать открытый и закрытый ключ](#step2) - [Как настроить FireWall](#step3) - [Как настроить серверную конфигурацию](#step4) - [Как запустить WireGuard и включить его при загрузке](#step5) В нашем случае мы будем использовать CentOS 8.3 для установки WireGuard. ## Установка сервера WireGuard на CentOS Скачаем последние обновления с помощью данных команд: ```bash sudo yum update ``` ```bash sudo dnf update ``` Для того, чтобы установить WireGuard сервер войдите на ваш Linux-сервер, после входа добавьте репозитории EPEL и Elrepo для установки модулей ядра и инструментов WireGuard. ```bash sudo dnf install epel-release elrepo-release -y ``` Убедимся, что у нас включены репозиторий PowerTools, так как пакеты EPEL могут зависеть от пакетов из него: ```bash sudo yum install 'dnf-command(config-manager)' ``` ```bash sudo yum config-manager —set-enabled PowerTools ``` Прежде чем мы сможем установить модуль ядра WireGuard, включим его официальный репозиторий: ```bash sudo yum copr enable jdoss/wireguard ``` Теперь установим WireGuard: ```bash sudo yum install wireguard-dkms wireguard-tools ``` ## Генерация закрытого и открытого ключей 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 ``` Также, обязательно запишите этот ключ, он понадобиться нам далее. ## Настройка FireWall По умолчанию firewall прекращает все коммуникации между внутренней (wg0) и общедоступной сетью (eth0). Изменим это с помощью данных команд: ``` sudo firewall-cmd —add-interface=wg0 —zone=internal ``` ``` sudo firewall-cmd —permanent —zone=internal —add-masquerade ``` ## Настройка серверной конфигурации Чтобы начать настройку сервера WireGuard, перейдите в папку /etc/wireguard и создайте файл wg0.conf ``` sudo nano /etc/wireguard/wg0.conf ``` Добавьте в файл конфигурации следующие директивы и заполните данные созданными до этого ключами: ``` 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 PublicKey = AllowedIPs = 10.0.0.2/32 ``` Скопируйте закрытый ключ, который мы сгенерировали ранее, и вставьте его в PrivateKey. Аналогично нужно сгенерировать пару ключей для клиента, скопируйте открытый ключ клиента и вставьте его в PublicKey. Чтобы скопировать значение ключа, выполните следующую команду: ``` sudo cat /etc/wireguard/public.key ``` ``` sudo cat /etc/wireguard/private.key ``` ## Запуск WireGuard и включение его при загрузке Теперь мы готовы к запуску сервера, для запуска WireGuard мы используем wg-quick и указываем имя нового интерфейса: ``` wg-quick up wg0 ``` Если конфигурация выполнена идеально, вы увидите следующий экран чтобы проверить статус работы сервера WireGuard введите: ``` wg show ``` Поздравляю, мы успешно подняли сервер WireGuard! https://serverspace.by/support/help/kak-ustanovit-wireguard-vpn-client-na-ubuntu-linux.md Узнайте как настроить VPN клиент WireGuard на операционной системе Ubuntu Linux и соединить его с сервером. WireGuard — это приложение которое позволяет настроить безопасную виртуальную частную сеть (VPN), известное своей простотой и удобством использования. Оно использует проверенные криптографические протоколы и алгоритмы для защиты данных. Изначально разработанное для ядра Linux, оно может быть развернуто на Windows, macOS, BSD, iOS и Android. В этой настройке клиента WireGuard vpn используется дистрибутив линукса — Ubuntu 20.04. ## Установка клиентского приложения WireGuard на Ubuntu Установка WireGuard клиента происходит так же, как и на стороне сервера. Войдите по SSH на Linux сервер, после входа в систему проверьте, обновлена ли машина, выполнив следующую команду: ```bash sudo apt-get update && sudo apt-get upgrade ``` Теперь установите WireGuard, выполнив следующую команду: ```bash sudo apt-get install wireguard ``` ## Генерация закрытого и открытого ключей WireGuard работает путем шифрования соединения с помощью пары криптографических ключей. Пара ключей используется путем передачи открытого ключа другой стороне, которая затем может зашифровать свое сообщение таким образом, что оно может быть расшифровано только с помощью соответствующего закрытого ключа. Для обеспечения безопасности двусторонней связи каждая сторона должна иметь собственные закрытый и открытый ключи, так как каждая пара обеспечивает только односторонний обмен сообщениями. Сгенерируйте пару открытого и закрытого ключей клиента, для этого выполните следующую команду: ``` wg genkey | tee private.key | wg pubkey > public.key ``` После этого создайте файл конфигурации клиента, в следующем каталоге: ``` sudo nano /etc/wireguard/wg0.conf ``` В файле пропишите: ``` 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 PublicKey = AllowedIPs = 10.0.0.2/32 ``` Примечания: В строку publickey вставьте публичный ключ сервера, который мы сгенерировали в предыдущей статье, а в private key вставьте закрытый ключ клиента. ## Запуск WireGuard Для запуска соединения введите следующую команду: ``` sudo wg-quick up wg0 ``` Теперь клиент может общаться с сервером, можно пропинговать сервер с клиента командой ``` ping 10.0.0.1 ``` Чтобы узнать статус соединения, выполните следующую команду: ``` sudo wg show ``` Вы получите все детали соединения, как показано ниже Поздравляю! Теперь ваш клиентский компьютер имеет доступ к VPN сети. https://serverspace.by/support/help/kak-nastroit-vpn-klient-wireguard-na-centos.md Узнайте как настроить VPN клиент WireGuard на операционной системе CentOS Linux и соединить его с сервером. WireGuard — это приложение, которое может обеспечить безопасную виртуальную частную сеть (VPN), оно достаточно простое в использовании и настройке. Оно использует надежные криптографические протоколы и алгоритмы для шифрования данных. Разработанное исключительно для ядра Linux, оно может быть развернуто и на Windows, macOS, FreeBSD, iOS, а так же Android. В нашем случае мы будем использовать CentOS 8.3 для установки WireGuard. Как настроить VPN-клиент WireGuard: - [Как установить клиент WireGuard на CentOS](#step1) - [Как создать закрытый и открытый ключ](#step2) - [Как запустить WireGuard](#step3) ## Установка клиента WireGuard на CentOS Установка клиента аналогична установке сервера. Войдите на ваш Linux-сервер, после входа добавьте репозитории EPEL и Elrepo для установки модулей ядра и инструментов WireGuard. ```bash sudo dnf install epel-release elrepo-release -y ``` Теперь установим WireGuard из репозитория epel: ```bash sudo dnf install kmod-wireguard wireguard-tools ``` ## Генерация закрытого и открытого ключей WireGuard работает путем шифрования соединения с помощью пары криптографических ключей. Пара ключей используется путем передачи открытого ключа другой стороне, которая затем может зашифровать свое сообщение таким образом, что оно может быть расшифровано только с помощью соответствующего закрытого ключа. Для обеспечения безопасности двусторонней связи каждая сторона должна иметь собственные закрытый и открытый ключи, так как каждая пара обеспечивает только односторонний обмен сообщениями. Сгенерируйте пару открытого и закрытого ключей клиента, для этого выполните следующую команду: ``` wg genkey | tee private.key | wg pubkey > public.key ``` После этого создайте файл конфигурации клиента, в следующем каталоге: ``` sudo nano /etc/wireguard/wg0.conf ``` В файле пропишите: ``` 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 PublicKey = AllowedIPs = 10.0.0.2/32 ``` Примечания: В строку publickey вставьте публичный ключ сервера, который мы сгенерировали в [предыдущей статье](https://serverspace.ru/support/help/kak-nastroit-vpn-server-wireguard-na-centos/), а в private key вставьте закрытый ключ клиента. Установите разрешения для файла конфигурации wg0.conf, чтобы сделать его безопасным. ```bash sudo chmod 600 /etc/wireguard/wg0.conf ``` ## Запуск WireGuard Для запуска соединения введите следующую команду: ``` sudo wg-quick up wg0 ``` Теперь клиент может общаться с сервером, можно пропинговать сервер с клиента командой ``` ping 10.0.0.1 ``` Чтобы узнать статус соединения, выполните следующую команду: ``` sudo wg show ``` Вы получите все детали соединения, как показано ниже Поздравляю! Теперь ваш клиентский компьютер имеет доступ к VPN сети. https://serverspace.by/support/help/kak-bystro-razvernut-veb-sajt-na-wordpress-na-servere-ubuntu.md Узнайте как можно быстро развернуть веб сайт на системе управления контентом WordPress на Ubuntu Linux сервере с базой mySQL. WordPress один из наиболее популярных систем управления контентом (CMS) в мире. Миллионы сайтов используют данную платформу, так как она наиболее дружелюбна к обычному пользователю, который не очень разбирается в веб программировании. Сегодня мы с нуля настроим Ubuntu сервер на котором развернем WordPress. ## Создание сервера Максимально быстро создается так называемый VPS сервер. Это виртуальный сервер на базе VMWare или как в нашем случае vStack – уникальная разработка компании ServerSpace, которая позволяет задеплоить сервер за 40 секунд. Итак заходим на сайт [https://serverspace.by/](https://serverspace.by/index.md) регистрируемся. Заходим в личный кабинет: vStack cloud -> Серверы -> Создать Сервер. Дальше выбираем операционную систему, в нашем случае это будет Ubuntu 20.04 x64. Затем выбираем локацию сервера, если вы планируете разрабатывать сайт для клиентов из России, то выбирайте российский дата центр. ## Далее выбираем конфигурацию сервера. Для нашего тестового сайта мы будем использовать виртуальный сервер с 2мя ЦПУ, 4Гб оперативной памяти, 60Гб жесткий диск и 50Мб/c скорость интернет-соединения. Данной конфигурации хватит примерно для 50000 пользователей в сутки, что для нового сайта практически недостижимая мечта в первые несколько месяцев. Если количество пользователей увеличивается, то вы можете с легкостью добавить ресурсов вашему серверу. Этим виртуальные сервера очень хороши на начальном этапе. Выбираем аутентификацию по логину и паролю и заходим на наш сервер через программу putty, введя в нее получившийся IP адрес сервера. ## Настройка сервера Ubuntu Перед тем как перейти к установке WordPress на сервер, нам нужно установить комплект серверного программного обеспечения — веб-сервер Apache и базу данных MySQL, а так же установить язык PHP. Но перед этим нужно обновить нашу систему: ```bash sudo apt-get update ``` ```bash sudo apt-get upgrade -y ``` ### Установка веб сервера Apache Для установки последней версии веб-сервера выполните: ```bash sudo apt install apache2 apache2-utils ``` Затем добавим Apache в автозагрузку и запустим сервис: ```bash sudo systemctl enable apache2 ``` ```bash sudo systemctl start apache2 ``` Для проверки работы Apache давайте введем IP адрес вашего сервера в браузере. Если вы устанавливаете веб-сервер на локальной машине, используйте адрес http://127.0.0.1 или http://localhost По умолчанию все HTML документы хранятся в каталоге /var/www/html. Так же для корректной работы WordPress нам понадобится модуль Apache mod_rewrite. Чтобы его включить выполните следующую команду: ``` sudo a2enmod rewrite ``` Затем перезагрузите веб-сервер: ```bash sudo systemctl restart apache2 ``` ### Установка базы данных MySQL Для установки сервера баз данных mysql выполните команду: ```bash sudo apt install mysql-client mysql-server ``` Для завершения настройки выполите команду: ``` sudo mysql_secure_installation ``` Система предложит вам установить плагин проверки пароля, который запретит использовать слабые пароли: Затем нужно будет изменить пароль и останется закрыть доступ к аккаунту суперпользователя из сети и отключить гостевой доступ. Так что отвечаем на все "y". ### Установка PHP И в заключении перед тем, как установить WordPress на Ubuntu 20.04 — нужно установить php и несколько модулей для работы с веб-сервером и базой MySQL. Для этого выполните команду: ```bash sudo apt install php7.4 php7.4-mysql libapache2-mod-php7.4 php7.4-cli php7.4-cgi php7.4-gd ``` Чтобы проверить как работает php создайте файл с именем test.php в каталоге /var/www/html/: ``` sudo nano /var/www/html/test.php ``` Текст файла: ```php ``` Сохраните его и затем откройте в веб-браузере адрес http://ip-адрес/test.php. Если все правильно настроено, то вы увидите страницу с информацией о версии PHP. Естественно, в рамках безопасности его нужно удалить после успешного теста. ## Установка WordPress на Ubuntu сервер Итак наконец скачайте последнюю версию CMS WordPress c официального сайта: ```bash wget -c http://wordpress.org/latest.tar.gz ``` Распакуйте содержимое архива в текущую папку: ```bash tar -xzvf latest.tar.gz ``` Скопируйте файлы WordPress из текущей папки в папку /var/www/html/: ```bash sudo rsync -av wordpress/* /var/www/html/ ``` Для того чтобы веб-сервер мог правильно работать с этими файлами нужно установить для них правильные права, а именно пользователь и группа www-data: ```bash sudo chown -R www-data:www-data /var/www/html/ ``` ```bash sudo chmod -R 755 /var/www/html/ ``` И теперь установка WordPress на Ubuntu 20.04 завершена, но осталось еще настроить соединение с базой данных. Чтобы по умолчанию открывался WordPress удалим файл index.html: ``` sudo rm /var/www/html/index.html ``` ### Создание базы данных нового веб сайта Чтобы создать базу данных сначала войдите в интерфейс управления mysql, для этого выполните: ```bash sudo mysql -u root -p ``` Введите пароль который вы ввели при установке, а затем по очереди выполняйте следующие команды для создания базы данных, пользователя и установки для них правильных привилегий: ```sql CREATE DATABASE wp_db; ``` ```sql CREATE USER 'wpusr'@'localhost' IDENTIFIED BY 'password'; ``` ``` GRANT ALL PRIVILEGES ON wp_db.* TO 'wpusr'@'localhost'; ``` ``` FLUSH PRIVILEGES; ``` ``` EXIT; ``` Замените wp_db на желаемое имя базы данных, wpusr — имя пользователя, а password на нужный пароль. Модификатор localhost означает, что к этой базе смогут подключиться только с локальной машины. ## Настройка WordPress на Ubuntu сервере Всё готово для настройки WordPress. Открываем адрес сервера, на котором устанавливали WordPress или localhost, если программа была установлена на локальном компьютере. В первом окне программа предложит вам выбрать язык. На следующем шаге нажимайте "Вперед". Далее введите имя базы данных, имя пользователя и пароль, которые использовали при создании базы. И наконец осталось выбрать название сайта, логин администратора, и придумать сложный пароль. В конце останется только авторизоваться и можно пользоваться только что настроенной системой управления контентом WordPress. Поздравляю, теперь можно с легкостью создать свой собственный сайт используя кучу шаблонов и графический интерфейс. Тут уже начинается самое интересное. https://serverspace.by/support/help/ispravlenie-neaktivnyh-repozitoriev-v-centos8.md Инструкция по исправлению неактивных репозиториев в CentOS8. В связи с тем, что CentOS8 более не поддерживается, её репозитории начинают быть недоступны и выдавать ошибки. Если Вы столкнулись с этой ошибкой, то мы рекомендуем перейти на актуальную ОС — OEL8. Если вы по каким либо причинам не можете перейти, то для исправления данной ошибки достаточно ввести 2 команды: ``` sed -i 's/^mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* ``` ``` sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* ``` Готово! https://serverspace.by/support/help/kak-sozdat-slackbot-s-pomoshhyu-python-na-ubuntu-20-04.md Мануал по созданию и настройке Spackbot для автоматизации взаимодействия с пользователями, отправки оповещений и запуска задач Создание Slackbot с помощью Python на Ubuntu 20.04: - [Вступление](#step1) - [Подготовка к работе](#step2) - [Создание Slackbot](#step3) - [Настройка Python](#step4) - [Создание класса для сообщений Slackbot в Python](#step5) - [Тестовые сообщения от нашего Slackbot](#step6) - [Создание приложения Flask для запуска Slackbot](#step7) - [Запуск вашего Flask приложения](#step8) ## Вступление: Slack — это корпоративный мессенджер. Он предназначен для повышения продуктивности на рабочем месте. С помощью Slack можно обмениваться сообщениями, создавать открытые или же частные чаты, созваниваться с помощью голосовых или видео звонков, а также проводить интеграции с Slackbot’ами. Slackbot — это тип приложения Slack, предназначенный для взаимодействия с пользователями посредством разговора. Она имеет множество функций и опций: отправка оповещений и сообщений, запуск каких-либо задач. В данной инструкции мы развернем Slackbot используя язык Python и Ubuntu 20.04. Slack обладает множеством инструментов, помогающих взаимодействовать с _Application Programming Interface (API) Python_ и его интеграциями. В качестве проверки потенциала связки Python и Slack API, мы создадим _CoinBot_, он будет мониторить чат и при срабатывании подбрасывать монету. Затем же вы сможете модернизировать своего бота для более практичных целей. _Помарка:_ В данной инструкции мы будем работать с Python 3, если же у вас версии, выпущенные ранее, то бот работать не сможет. ## Перед началом работы: Чтобы все работало как нужно, в вашем распоряжении должны присутствовать следующие элементы: 1) Установленный Slack и Workplace (рабочее пространство), в котором вы будете работать. Если у вас его нет, то вы можете создать его на официальном сайте Slack. 2)Виртуальная машина или ПК с общедоступным IP- адресом. ## Создание Slackbot Сперва создадим наше Slack-приложение в панели управления Slack API (CPSAPI). Зайдите в меню своего рабочего места и перейдите в CPSAPI. Затем, выберите меню «Create an App», как показано на скриншоте: Затем вам предложат ввести название для вашего приложения. Мы будем использовать название «_CoinBot_«, но вы можете задать и свое собственное. После этого выберите более удобный для вас Workspace, куда будет установлено приложение. После этого, ваше приложение будет создано, и у вас появится возможность взаимодействовать с панелью управления. На этой панели вы сможете настраивать свое приложением: загружать новые разрешения, подключать уведомления к каким-либо событиям, устанавливать ваше приложение в любой Workplace и многое другое. Для того чтобы ваше приложение смогло отправлять сообщения в ваши чаты, нам необходимо выдать ему специальные права. Чтобы у него появилось данное разрешение: выберите контекстное меню «Permissions», как показано на скриншоте: Затем, у вас вылезет меню «OAuth & Permissions». Вам будет необходимо пролистать к разделу «Scope». В нем выберите «Bot Token Scopes». В нем же, кликните на меню «Add on OAuth Scope»: Затем введите в поисковое меню chat:write и добавьте данное разрешение: Оно даст вашему приложению права писать в чатах, к которым у него есть доступ. После того, как вы добавили данное право для нашего приложения, необходимо добавить его в ваш Workspace. Пролистайте вверх страницу OAuth и выберите меню «Install to Workspace»: После этого, Slack предложит вам посмотреть доступные для этого приложения разрешения. Если вас все устраивает, нажимайте кнопку «Разрешить»: После того, как ваш бот будет установлен, Slack предоставит вам ваш токен , который будет использован приложением для доступа к вашему Workspace: Также в этом меню, если у вас возникла какая-либо ошибка, переустановить вашего бота, нажав на контекстное меню «Reinstall to Workspace» Последним шагом, нам нужно будет добавить бота в чат в вашем рабочем пространстве. Если у вас уже есть созданный канал, то перейдите к шагу ["Добавление бота в ваш канал"](#stepchannel) Если же у вас нет еще созданных чатов, то выполните эти пару шагов: Найдите контекстное меню «Добавить канал», в нем выберите «Создать новый канал»: Затем назовите свой канал и по желанию можете добавить его описание: ## Добавление бота в ваш канал Чтобы добавить бота в ваш канал, вам нужно в необходимом чате навестись на его название и нажать на контекстное меню «Посмотреть сведения о канале»: Затем перейдите в меню «Интеграции» и выберите пункт «Добавить приложение»: Затем с помощью меню поиска или просто пролистав, выберите нужное приложение. В нашем случае «CoinBot»: После этого, бот будет добавлен в ваш канал: ## Настройка Python Для начала настроим Python, чтобы вы смогли установить и управлять вашими Slack ботами. Сперва установим python 3 и соответствующие тулы на вашу виртуальную машину с развернутым на ней Ubuntu 20.04. Изначально на сервера Ubuntu версии 20.04 уже предустановлен Python 3, но чтобы убедиться в доступности обновлений, обновим систему с помощью данных команд: ```bash sudo apt update ``` ```bash sudo apt -y upgrade ``` После этого, узнаем установленную у нас версию Python: ``` python3 -V ``` Ответ будет выглядеть примерно таким: ```bash Python 3.8.2 ``` Теперь установим инструмент pip, чтобы получить доступ к управлению пакетами: ```bash sudo apt install -y python3-pip ``` Затем развернем виртуальную среду: ``` python3 -m venv ~/.venvs/slackbot ``` После этого активируем ее: ``` source ~/.venvs/slackbot/bin/activate ``` Теперь наша терминал в скобочках будет отображать виртуальную среду: ``` (slackbot) root@Ubuntu-Bot-Python:~# ``` Теперь с помощью инструмента pip установим необходимые компоненты Python: ```bash pip install slackclient slackeventsapi Flask ``` Пояснение: slackclient и slackeventsapi — инструменты, облегчающие работу с Slack API. Flask же — это микровеб-фреймворк, который мы будем использовать для развертывания нашего бота. После того, как мы настроили Python, можно приступать к настройке бота. ## Создание класса для сообщений Slackbot в Python В Slack сообщения отправляются с помощью специально отформатированными JSON данными. Вот пример такого сообщения, который Slackbot создаст и отправит: ``` { "channel":"channel", "blocks":[ { "type":"section", "text":{ type":"mrkdwn", "text":"Ок! Подбрасываем монетку.\n\n" } }, { "type":"section", "text":{ "type":"mrkdwn", "text":"*flips coin* Результат-Орел!." } } ] } ``` Давайте создадим класс Python, который симулирует подбрасывание монеты. Напоминание — все действия проделываем в виртуальной среде. В нашем случае виртуальная среда — root@Ubuntu-Bot-Python:~# Сначала с помощью команды touch, создадим файл с именем coinbot.py: ``` touch coinbot.py ``` Затем откроем данный файл с помощью редактора nano, вы можете использовать любой другой редактор: ``` nano coinbot.py ``` Добавьте следующее содержимое в наш файл: ``` # import the random library to help us generate the random numbers import random ``` # Create the CoinBot Class class CoinBot: # Create a constant that contains the default text for the message COIN_BLOCK = { «type»: «section», «text»: { «type»: «mrkdwn», «text»: ( «Ок! Подбрасываем монетку.\n\n» ), }, } # The constructor for the class. It takes the channel name as the a # parameter and then sets it as an instance variable def __init__(self, channel): self.channel = channel # Generate a random number to simulate flipping a coin. Then return the # crafted slack payload with the coin flip message. def _flip_coin(self): rand_int = random.randint(0,1) if rand_int == 0: results = «Орел» else: results = «Решка» text = f»The result is {results}» return {«type»: «section», «text»: {«type»: «mrkdwn», «text»: text}}, # Craft and return the entire message payload as a dictionary. def get_message_payload(self): return { «channel»: self.channel, «blocks»: [ self.COIN_BLOCK, *self._flip_coin(), ], } Затем сохраним и закроем наш файл с помощью комбинации клавиш. Теперь наш бот может отправлять сообщения, а вы сможете добавить его в свое рабочее пространство. ## Тестовые сообщения от нашего Slackbot Теперь проверим, что наш класс создает правильную нагрузку. Создайте файл с именем coinbot_test.py: ``` nano coinbot_test.py ``` Затем добавьте в созданный файл следующее содержимое Важно: Обязательно измените название сервера на свое в coin_bot = coinbot(«#YOUR_CHANNEL_HERE»). ``` from slack import WebClient from coinbot import CoinBot import os ``` # Create a slack client slack_web_client = WebClient(token=os.environ.get(«SLACK_TOKEN»)) # Get a new CoinBot coin_bot = CoinBot(«#YOUR_CHANNEL_HERE») # Get the onboarding message payload message = coin_bot.get_message_payload() # Post the onboarding message in Slack slack_web_client.chat_postMessage(**message) Сохраните и закройте данный файл. Прежде чем запустить тест, вам необходимо экспортировать ваш токен, который указан на Slak API: Теперь экспортируйте ваш токен: ``` export SLACK_TOKEN="Ваш токен" ``` Теперь мы можем протестировать нашего бота. Запустите следующий скрипт в вашем терминале: ```bash python coinbot_test.py ``` После этого к вам в канал, на который вы установили свое приложение придет сообщение о подбрасывании монетки. Убедитесь, что ваш бот действительно выдал вам либо орла, либо решку. ## Создание приложения Flask для запуска Slackbot Теперь, когда ваш бот может подбрасывать монетку, создавать и отправлять сообщения, мы развернем Flask, который будет обрабатывать сообщения и выдавать какую-то реакцию на них, если их содержимое соответствует некоторым критериям. Для начала настроим параметры браундмаузера, чтобы разрешить трафик через порт 3000: ``` sudo ufw allow 3000 ``` Теперь удостоверимся о статусе ufw: ``` sudo ufw status ``` Вы должны будете увидеть примерно такой вывод: ``` Output Status: active ``` To Action From — —— —- OpenSSH ALLOW Anywhere 3000 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 3000 (v6) ALLOW Anywhere (v6) Затем мы создадим файл для нашего Flask-приложения. Назовем данный файл app.py: ``` touch app.py ``` Затем, откроем этот файл с помощью любого из редакторов. Мы будем использовать nano: ``` nano app.py ``` Добавим в наш файл app.py следующее содержимое: ``` import os import logging from flask import Flask from slack import WebClient from slackeventsapi import SlackEventAdapter from coinbot import CoinBot ``` # Initialize a Flask app to host the events adapter app = Flask(__name__) # Create an events adapter and register it to an endpoint in the slack app for event injestion. slack_events_adapter = SlackEventAdapter(os.environ.get(«SLACK_EVENTS_TOKEN»), «/slack/events», app) # Initialize a Web API client slack_web_client = WebClient(token=os.environ.get(«SLACK_TOKEN»)) def flip_coin(channel): «»»Craft the CoinBot, flip the coin and send the message to the channel «»» # Create a new CoinBot coin_bot = CoinBot(channel) # Get the onboarding message payload message = coin_bot.get_message_payload() # Post the onboarding message in Slack slack_web_client.chat_postMessage(**message) # When a ‘message’ event is detected by the events adapter, forward that payload # to this function. @slack_events_adapter.on(«message») def message(payload): «»»Parse the message event, and if the activation string is in the text, simulate a coin flip and send the result. «»» # Get the event data from the payload event = payload.get(«event», {}) # Get the text from the event that came through text = event.get(«text») # Check and see if the activation phrase was in the text of the message. # If so, execute the code to flip a coin. if «hey sammy, flip a coin» in text.lower(): # Since the activation phrase was met, get the channel ID that the event # was executed on channel_id = event.get(«channel») # Execute the flip_coin function and send the results of # flipping a coin to the channel return flip_coin(channel_id) if __name__ == «__main__»: # Create the logging object logger = logging.getLogger() # Set the log level to DEBUG. This will increase verbosity of logging messages logger.setLevel(logging.DEBUG) # Add the StreamHandler as a logging handler logger.addHandler(logging.StreamHandler()) # Run our app on our externally facing IP address on port 3000 instead of # running it on localhost, which is traditional for development. app.run(host=’0.0.0.0′, port=3000) Сохраните и закройте файл. Пояснение: мы добавляем следующие операторы так как: _import os_ — мы будем использовать для доступа к переменным среды _import logging_ — мы будем использовать для регистрации событий приложения. _from flask import Flask_ — мы будем использовать для создания приложения Flask _from slack import WebClient_ — мы будем использовать для отправки сообщений через Slack _from slackeventsapi import SlackEventAdapter_ — мы будем использовать для получения событий из Slack и их обработки _from coinbot import CoinBot_ — мы будем использовать для создания экземпляра вашего CoinBot и генерации полезной нагрузки сообщения. ## Запуск вашего Flask приложения Теперь, когда наше приложение Flask готово работать с приложением, давайте его протестируем. Сначала, добавим наше приложение для Slackbot. На странице Slack API перейдите в раздел «Basik information» и опуститесь до подраздела «App Credentials»: Нажмите на «Show», как показано на скриншоте и затем скопируйте Signing secret. Теперь экспортируем наш секрет подписи с помощью данной команды: ``` export SLACK_EVENTS_TOKEN="MY_SIGNING_SECRET_TOKEN" ``` Теперь мы можем протестировать наше приложение. Запустим приложение Flask, чтобы сделать это выполните данную команду: ``` python3 app.py ``` Вывод должен быть примерно таким: ``` (slackbot) [19:37:05] danial:CoinBot$ python app.py * Serving Flask app "app" (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Debug mode: off * Running on http://0.0.0.0:3000/ (Press CTRL+C to quit) ``` Теперь закончим настройку нашего приложения в пользовательском интерфейсе Slack. Для начала дадим нашему приложению право читать, обрабатывать сообщения и отвечать на них. В меню пользовательского интерфейса выберем раздел «Event Subscriptions» и переключите тумблер «Enable Events» в положение «On», как показано на скриншоте: Затем разверните меню «Subscribe to bot events» и выберите в нем _message.channels:_ После этого ваше приложение сможет обрабатывать сообщения. Как только вы сохраните изменения, у вас появится контекстное меню желтого цвета в верхней части экрана, информирующий вас о том, что вам необходимо переустановить приложение, чтобы применить следующие изменения. Нажмите на ссылку переустановить приложение в этом баннере, чтобы переустановить приложение: Затем у вас откроется контекстное меню с новыми примененными разрешениями. Если вы согласны со всем, нажмите «Разрешить»: После этого ваше приложение будет готово к работе. Вернитесь в ваш канал, на который вы установили бота, и отправьте сообщение, содержащее фразу "Hey, Danny, flip a coin". Ваш бот подбросит монетку и отправит вам результат. Поздравляю, мы создали Slackbot! https://serverspace.by/about/news/serverspace-razvernul-novye-klastery-v-nyu-dzhersi-i-amsterdame.md Мы ввели в эксплуатацию два новых кластера в Нью-Джерси и Амстердаме. Ресурсов стало больше, а конфигурации серверов — мощнее. Компания произвела закупку нового оборудования, которое поступило в дата-центры в **Нью-Джерси** и **Амстердаме**. У пользователей появилась возможность создавать более мощные конфигурации серверов и использовать больше ресурсов. На каждую виртуальную машину теперь доступно: - до 16 ядер; - до 128 ГБ RAM. **Важное примечание:** технически с новыми кластерами будут связаны только пустые проекты. Если вы хотите создавать серверы с большими конфигурациями, вам необходимо предварительно создать новый проект в панели управления или удалить все существующие услуги в текущем. https://serverspace.by/about/news/serverspace-dobavil-vozmozhnost-oplachivat-uslugi-cherez-erip.md Теперь помимо банковских карт пользователи имеют возможность оплачивать услуги через систему «Расчет» (ЕРИП). Serverspace увеличил количество поддерживаемых платежных систем. Теперь помимо банковских карт пользователи имеют возможность оплачивать услуги через систему "Расчет" (ЕРИП). Внедрение нового способа оплаты услуг обусловлено многочисленными просьбами со стороны пользователей. Система "Расчет" — автоматизированная информационная система единого расчетного и информационного пространства. Она была создана Национальным банком Республики Беларусь с целью упрощения организации приема платежей от физических и юридических лиц. **Для оплаты через ЕРИП:** - Выберите ЕРИП в качестве платежной системы на странице пополнения баланса; - Введите сумму платежа; - Отсканируйте QR-код или выберите последовательно вкладки "Интернет-магазины/сервисы" — "A-Z Латинские домены" — "S" — "Serverspace.by" и введите указанный в панели управления номер; - Нажмите "Оплатить". https://serverspace.by/about/news/serverspace-podklyuchil-dopolnitelnyj-klaster-v-moskve.md Serverspace ввел в эксплуатацию дополнительный кластер в дата-центре DataSpace, Москва. Он доступен пользователям услуги vStack cloud. Serverspace установил дополнительное оборудование в центре обработки данных DataSpace в Москве. Теперь пользователи vStack cloud могут развернуть серверы до 16 CPU и 128 GB RAM. В новом кластере установлены процессоры Intel Xeon Gold 6248R второго поколения с частотой 3,00 ГГц и поддержкой технологии Intel Turbo Boost, которая увеличивает эффективность потребления энергии и при необходимости "разгоняет" процессор до 4,00 ГГц. Технология Intel Virtualization (VT-x) снижает время простоев и поддерживает продуктивность работы процессора. Безопасность, быстрое шифрование и дешифровку данных гарантирует набор команд Intel AES-NI. Ускорить работу виртуальных приложений в новом кластере позволяет модуль памяти Micron DDR4 RDIMM. Частота работы устройства достигает 2933 МГц, а пропускная способность – 23400 Мбит/с. Для сетевой связности гиперконвергентной инфраструктуры используются выделенные коммутаторы Cisco Nexus C93180YC-EX с пропускной способностью 3,6 Тбит/с. Они обеспечивают высокий уровень масштабируемости и производительности для пользователей облачной инфраструктуры. Дополнительный кластер доступен для всех новых проектов, а также для проектов, где были удалены все ресурсы в локации Москва. https://serverspace.by/about/news/novyj-shablon-os-windows-server-2022.md Облачный провайдер Serverspace добавил шаблон серверной операционной системы Windows Server 2022 для услуги VMware cloud. Serverspace добавил шаблон серверной OC Windows Server 2022 для серверов на базе VMware. В новой версии усилены меры безопасности и упрощена работа с платформой приложений. Многоуровневая система безопасности обеспечивает защищенное подключение с помощью протоколов HTTPS и TLS 1.3, которые теперь включены по умолчанию, и технологии Secure-core, которую можно активировать через Центр администрирования Windows. Благодаря интеграции Kubernetes была усовершенствована работа с контейнерами Windows и совместимость приложений. Из-за большего размера образа контейнера операционная система теперь загружается на 30% быстрее. Дополнительные возможности операционной системы: - В состав новой версии OC Windows Server 2022 был включен браузер Microsoft Edge вместо Internet Explorer. - Были произведены около сотни обновлений в канал передачи данных по протоколу UDP. Он ускоряет доступ к ресурсам Windows Server 2022 через Интернет. - Был обеспечен плавный сетевой поток данных с повышенной производительностью на высоких скоростях за счет использования протокола TCP. TCP HyStart ++ помогает уменьшить потерю пакетов при запуске соединения, а RACK сокращает время повторной передачи. - Был упрощен перенос хранилища в Windows Server за счет улучшений службы миграции хранилища. С полным списком новых возможностей операционной системы Windows Server 2022 вы можете ознакомиться на портале [microsoft.com](https://docs.microsoft.com/ru-ru/windows-server/get-started/whats-new-in-windows-server-2022). Новая система имеет статус Long Term Servicing Channel (LTSC), а значит расширенная поддержка системы будет длиться на протяжении 10 лет с момента релиза. Основная поддержка – до 13 октября 2026 года. https://serverspace.by/about/news/serverspace-zapustil-uslugu-edge-gateway.md Благодаря обновлению платформы vStack, пользователи смогут подключить изолированные сети к интернету и настроить на нём правила NAT и Firewall. Благодаря обновлению платформы vStack, пользователи облачного провайдера смогут подключить изолированные сети к интернету при помощи Edge Gateway и настроить на нём правила NAT и Firewall. Международный провайдер облачной инфраструктуры Serverspace запустил услугу Edge Gateway для работы с внешними и внутренними сетями. Теперь пользователь может настроить на нем NAT и Firewall и подключаться из изолированных сетей к внешним сетям, используя публичный IP-адрес. NAT (Network Address Translation) или трансляция сетевых адресов — это механизм, позволяющий преобразовывать один IP-адрес в другой. Реализовывает доступ устройств внутренней сети в Интернет, используя всего один внешний IP-адрес WAN-порта. Механизм скрывает адреса частной сети от внешних пользователей и обеспечивает конфиденциальность и дополнительную безопасность данных внутри сети. Firewall — это система, которая отслеживает и фильтрует входящий и исходящий сетевой трафик. Необходим для обеспечения безопасности компьютерной сети от пользователей Интернета и угроз извне. Действует по принципу стены, которая ограничивает интернет-трафик внутри или снаружи частной сети. Firewall контролирует интернет-активность, разрешает или запрещает доступ к устройствам. Serverspace разработал простой интерфейс панели управления, поэтому пользователи смогут быстро настроить Edge Gateway. Добавить правила можно прямо в панели управления. https://serverspace.by/about/news/serverspace-zapustil-uslugu-vpn.md Пользователям Serverspace стало доступно создание серверов vStack с предустановленными приложениями без предварительной настройки ПО. Пользователям Serverspace стало доступно создание VPN-серверов. Теперь нет необходимости самостоятельно настраивать VPN-клиент на виртуальных машинах. Провайдер дает возможность создавать готовые серверы с ПО SoftEther VPN. SoftEther VPN – это мультипротокольное программное обеспечение VPN-сервера и клиента с открытым исходным кодом. Пользователи Serverspace получают: - Пропускную способность 50 Мбит/с без ограничения по объему трафика. - IP-адрес на выбор в любой из пяти стран, доступных при создании сервера. - Доступ к серверу с любого устройства с помощью данных из панели управления. После создания сервера пользователь получает доступ к дашборду SoftEther VPN, где может следить за подключениями и трафиком. В ближайшее время планируется реализация возможности добавления новых пользователей через панель управления. На первом этапе эта функция будет доступна только через конфигуратор на уровне ПО. Как создать сервер с настроенным ПО Softether VPN: - Зайти в раздел "VPN". - Выбрать локацию, нажать кнопку "Создать" и получить доступы для подключения. Чтобы использовать SoftEther VPN на своих устройствах, необходимо перейти в раздел VPN и ввести данные для доступа. https://serverspace.by/support/glossary/virtual-machine.md Виртуальная машина (ВМ/VM) — файл (образ), который работает по типу обычного компьютера, фактически являясь программой. Функционирует в отдельном окне и эмулирует для пользователя работу в операционной системе. Виртуальная машина (ВМ) представляет собой файл (образ), который работает по типу обычного компьютера, фактически являясь программой. Виртуальная машина функционирует в отдельном окне и эмулирует для пользователя работу в операционной системе. Действия в виртуальной машине изолированы от остальной части системы, поэтому ПО внутри нее не может влиять или управлять остальной системой. Кроме этого, ВМ способны запускать отдельные приложения в той среде, для которой они изначально разрабатывались. Особенно это полезно при разработке мобильных приложений. Виртуальные машины часто используются для тестирования различных решений: от обновления ПО до умышленного заражения вирусами и проверки информационной безопасности. Иначе говоря, ВМ способны выполнять роль своеобразной "песочницы" для разработки ПО. Другой ключевой особенностью использования ВМ является их способность к легкой миграции с одной физической машины на другую, что чрезвычайно полезно при управлении кластерами. На одном физическом компьютере могут быть запущены сразу несколько ВМ с разными операционными системами. Переключение между ними не требует перезагрузки, а только переключения между окнами. Каждая ВМ при этом обладает своим набором ресурсов (ядра, память диски), которые распределяет администратор. Далее виртуальное оборудование сопоставляется с фактическим на физическом компьютере. Это помогает оптимизировать средства за счет устранения необходимости в физических аппаратных системах и сопутствующих затратах на их поддержку, а также уменьшает требования к производительности и охлаждению. По этой причине ВМ (точнее сеть из нескольких ВМ) также применяются для моделирования информационных систем с клиент-серверной архитектурой в рамках единой эмуляции и для оптимизации потребления ресурсов мейнфреймов. Наибольшей популярностью сегодня пользуются три типа систем аппаратной виртуализации, с помощью которых создаются ВМ: - Microsoft Hyper-V; - Oracle VirtualBox; - VMware Workstation. https://serverspace.by/support/glossary/iaas.md IaaS, или Infrastructure-as-a-Service, дословно означает инфраструктуру, которую предоставляют как услугу. В качестве инфраструктуры могут выступать разные составляющие: хранилища данных, виртуальные серверы или операционные системы. IaaS, или Infrastructure-as-a-Service, дословно означает инфраструктуру, которую предоставляют как услугу. В качестве инфраструктуры могут выступать разные составляющие: хранилища данных, виртуальные серверы или операционные системы. Каждый подобный компонент предоставляется облачным провайдером в качестве услуги. Управлять ресурсами при этом может как провайдер, так и клиент в зависимости от выбранной модели потребления. Разделение ролей в управлении зависит от нагрузки ИТ-отдела клиента и задач, которые должны быть закрыты при помощи IaaS. Как правило, клиент получает управление хранением данных, установкой и запуском ПО. Облачный провайдер занимается контролем работы своей физической инфраструктуры: сети, серверы, собственным и промежуточным ПО. Модель IaaS имеет ряд преимуществ, среди которых выделяется три основных: **Возможность масштабирования**. Клиент может оплачивать только те ресурсы, которыми он фактически пользуется. Это помогает сохранять работу сервисов даже во время пиковых нагрузок и экономить в периоды, когда в полном объеме ресурсов нет необходимости. **Экономия на инфраструктуре**. Аренда ресурсов по модели IaaS почти всегда будет дешевле покупки собственной инфраструктуры. Не последней статьей расходов является поддержка штата специалистов, которая требует регулярных вложений от клиента. **Мобильность и доступность**. IaaS предоставляет возможность работать с данными вне зависимости от оборудования и геолокации пользователя. Достаточно иметь стабильное интернет-подключение. ## Области применения IaaS - Возможность создания песочницы для новых продуктов и тестирования различных решений; - Хранение и бэкапы данных; - Предоставление ресурсов для своих клиентов; - Анализ больших объемов данных; - Обеспечение доступности сервисов во время пиковых нагрузок; - Резервная площадка для собственной инфраструктуры. https://serverspace.by/support/glossary/solid-state-drive.md Solid State Drive или сокращенно SSD называют тип твердотельных накопителей данных, которые в основном используют флэш-память. Те, что используют динамическую память, выделяют в отдельную группу Ram Drive накопителей. Solid State Drive или сокращенно SSD называют тип твердотельных накопителей данных, которые в основном используют флэш-память. Те, что используют динамическую память, выделяют в отдельную группу Ram Drive накопителей. На данный момент технология достигла того уровня, чтобы заменить любой HDD на SSD, которые выпускаются во всех форм-факторах привычных жестких дисков. Для этого нужно только учесть совместимость интерфейсов. При подобной замене для пользователя изменения будут касаться только быстродействия, но сами процессы деления на разделы или форматирования не изменятся. SSD логически эмулирует обычный жесткий диск, но при этом обладает большей производительностью, которая зависит от типа базового контроллера. Выбор SSD зависит от типа задач и характера записи/стирания информации. В промышленных SSD немаловажную роль играют вспомогательные технологии, отвечающие за износостойкость ячеек памяти. Их основная цель — обеспечить равномерное использование дискового пространства и тем самым продлить срок эксплуатации устройств. На данный момент для SSD используют четыре типа NAND-Flash памяти: SLC (Single Level Cell), eMLC(Enterprise Multi Level Cell), MLC (Multi Level Cell) и TLC (Three Level Cel), отличающиеся плотностью хранения информации и ресурсом Записи/Стирания. Чипы SLC принято считать наиболее ресурсными, но область их применения ограничена из-за высокой стоимости за гигабайт данных. Для построения серверной архитектуры более всего применимы чипы eMLC, которые обладают сравнимым объемом ресурсов, но стоят на порядок дешевле, что приближает их к SSD домашнего типа использования. В домашних устройствах использование SSD чаще всего связывают с созданием недорогой дисковой подсистемы, которая позволяет наладить быструю работу с приложениями путем установки операционной системы на твердотельном накопителе. https://serverspace.by/support/help/kak-sozdat-rezervnuyu-kopiyu-servera-windows-s-pomoshhyu-veeam-backup-agent.md Инструкция о том, как легко создать резервную копию вашего сервера Windows, арендованного в Serverspace с помощью агента Veeam. Резервное копирование важно для каждой организации, особенно сейчас, когда мы ежедневно сталкиваемся с атаками вирусов вымогателей. Вот инструкция о том, как легко создать резервную копию вашего сервера Windows с помощью агента Veeam. ## Скачивание и установка Veeam агента Сначала нам нужно скачать Veeam backup agent с официального сайта, вот ссылка для скачивания: https://www.veeam.com/windows-endpoint-server-backup-free.html После завершения загрузки нам нужно установить это программное обеспечение, для этого вам понадобятся права администратора. Распакуйте Veeam Agent Windows и запустите его. Примите все условия и приступайте к установке. Установка проста и завершится автоматически. Пропустите настройку резервного копирования на внешнее устройство. И в следующем окне нажмите кнопку Finish ## Создание образа восстановления Сначала нам нужно создать образ для восстановления, оставьте все по умолчанию и нажмите Next Выберите место, где вы хотите сохранить этот образ, вы можете использовать для этого локальное или сетевое хранилище, в моем случае я сохраню его на локальном диске, нажмите Next и Create. Дождитесь завершения создания образа, это займет некоторое время. Нажмите Finish и откройте Veeam Agent в трее Windows. ## Настройка Veeam Backup Agent Сначала он попросит установить файл лицензии, нажмите No и затем «Add new job». Откроется мастер. Здесь нам нужно указать имя задания и нажать Next. После этого нужно выбрать тип резервного копирования. В нашем примере я буду делать полную резервную копию всей системы. Нажмите Next выберите место назначения резервной копии, в нашем примере мы сделаем резервную копию на общий диск. Опция хранение резервных копий в течение 7 дней определяет глубину архива. Это количество дней, в течение которых вы хотите хранить резервные копии на сервере. Если вы делаете резервное копирование каждый день и указываете 8 дней, то резервные копии системы будут сохранены за последние 8 дней. Если вы делаете резервное копирование каждый второй день, то за 4 дня и так далее. Можно создать несколько заданий с разной глубиной резервного копирования. Например: каждый день 7 дней, раз в неделю 30 и раз в месяц 365. Таким образом, у вас всегда будут последние 7 резервных копий системы за эту неделю. Затем одна резервная копия в неделю за последний месяц и 12 резервных копий в месяц за последний год. Нажмите кнопку Дополнительно, чтобы добавить некоторые дополнительные настройки, вам нужно перейти на вкладку Storage и включить шифрование резервных копий: Создайте, введите, а затем сохраните надежный пароль в менеджере паролей. Нажмите Ок, затем Next. Теперь нам нужно настроить расписание, в этом примере я буду делать только одну резервную копию. Поэтому я сниму флажок с опции Daily. Нажмите кнопку Apply, проверьте Summary и отметьте опцию » Run the job when I click Finish «. И нажмите Finish. Резервное копирование сразу же начнется, и мы можем проверить его состояние, нажав на задание, а затем на «Processing». После завершения задания мы можем просмотреть нашу резервную копию на сетевом диске. https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-sozdanie-i-udalenie-grupp.md Группы необходимы для авторизации прав пользователей. В этом гайде вы узнаете как создавать, изменять и удалять группы в AD. В типичных лесах Active Directory группы необходимы для авторизации прав пользователей. Они могут использоваться для распространения информации через почту или предоставлять доступ к файловым ресурсам, службам или даже делегации прав в AD. Группы бывают встроенными, это те группы, которые доступны сразу после установки, к примеру Domain Admins или Account Operators. Active Directory Users and Computers (ADUC) и Active Directory Administrative Center (ADAC) — это инструменты, которые предоставляют вам графический пользовательский интерфейс для взаимодействия с группами и управления ими. ADAC отличается от ADUC тем, что в нем есть история команд PowerShell, которая дает возможность видеть PowerShell команды выполняемые за графическим интерфейсом. Для управления группами необходимо войти на доменный контроллер, сервер в домене или устройство с установленными средствами удаленного администрирования сервера (RSAT). Говоря о необходимых правах доступа, нам нужно состоять в группе Domain Admins, Account Operators или иметь делегированную учетную запись, на создание групп в домене или в конкретной OU. ## Область применения групп Таких существует три вида: - Глобальные группы - Универсальные группы - Локальные группы домена Решая, какую группу создать, необходимо знать, какие существуют типы и чем они отличаются. Глобальные и универсальные группы могут состоять в локальных группах, а глобальные группы могут состоять в универсальных. Поэтому очень часто можно увидеть, что глобальные группы создаются для отделов, универсальные группы — для групп распространения, а локальные группы домена — для доступа к различным ресурсам. # Типы групп Существует два типа групп: - Группы распределения - Группы безопасности Группы распределения не имеют секьюрити идентификатора (SID) и, следовательно, не могут быть использованы для предоставления прав доступа к ресурсам, за исключением Microsoft Exchange Server. А группы безопасности имеют SID и следовательно используются для назначения доступов. Так же возможно преобразовать группу распределения в группу безопасности, и наоборот. # Как создать группу Существует несколько методов создания группы. ## Создание группы в ADUC Откройте ADUC (dsa.msc). Найдите OU или контейнер, где вы хотите создать группу. Щелкните правой кнопкой мыши на эту OU и выберите **New->Group**. В окне «**New Object — Group**» укажите следующие значения: - Имя группы. - Область действия группы или примите значение по умолчанию — Глобальная группа. - Тип группы или примите значение по умолчанию — группа безопасности. Нажмите OK, чтобы создать группу. ## Создание группы с помощью ADAC Откройте ADAC (dsac.exe). Щелкните правой кнопкой мыши на имени домена и выберите в меню пункт **New->Group**. В окне «Создание группы» укажите следующие значения: - Имя группы - Область действия группы или примите значение по умолчанию — Глобальная группа. - Тип группы или примите значение по умолчанию — группа безопасности. Нажмите OK, чтобы создать группу. ## Создание группы в cmd.exe Используйте следующий скрипт cmd.exe для создания группы в AD: ``` dsadd.exe group "CN=IT,OU=OfficeCorp,DC=office,DC=local". ``` ## Создание группы через Windows PowerShell [step num=»6″]Используйте следующий код PowerShell: ``` Import-Module ActiveDirectory ``` ``` New-ADGroup -GroupCategory Security -GroupScope Global -Name "ITGroup" -Path "OU=OfficeCorp,DC=office,DC=local" -SamAccountName "ITGroup" ``` # Как удалить группу в AD Вот несколько методов, как это сделать. ## Удаление пользователя с помощью ADAC Откройте ADUC (dsa.msc). Найдите OU или контейнер, где находится группа, которую вы собираетесь удалить. В меню **Action** выберите **Find** В поле Name введите имя группы, которую вы собираетесь удалить, а затем нажмите **Find Now**. В списке результатов поиска выберите нужную вам группу. Щелкните правой кнопкой мыши по группе и выберите Delete. Нажмите Yes в окне подтверждения. ## Удаление группы с помощью ADAC Откройте программу ADAC (dsac.exe). Найдите OU или контейнер, где находится группа, которую вы собираетесь удалить. На панели главного меню в разделе **Global Sea****rch** введите имя группы, которую вы собираетесь удалить, и нажмите Enter. В списке результатов глобального поиска выберите группу, щелкните по ней правой кнопкой мыши и выберите **Delete**. Нажмите **Yes** во всплывающем окне подтверждения. ## Удаление группы в cmd.exe Используйте следующую команду в cmd для удаления группы: ``` dsrm.exe "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local". ``` Введите «y» для подтверждения и нажмите Enter. ## Удаление группы с помощью Windows PowerShell Используйте следующий код PowerShell: ``` Import-Module ActiveDirectory ``` ``` Remove-ADObject -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" ``` Введите «y» для подтверждения и нажмите Enter. ### Другие части инструкции: - [Как управлять группами в AD. Часть 2: Управление членcтвом в группах](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-2-upravlenie-chlenctvom-v-gruppah/) - [Как управлять группами в AD. Часть 3: Управление группами с истекающим сроком действия и просмотр вложенных групп](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-3-upravlenie-gruppami-s-istekayushhim-srokom-dejstviya-i-prosmotr-vlozhennyh-grupp/) https://serverspace.by/support/help/shpargalka-po-run-komandam-windows.md Представляем шпаргалку с более 30 run командами Microsoft Windows, которые помогут системным администраторам быстрее выполнять свою работу. Утилита Run — «Выполнить» в Windows – это хороший способ быстрого запуска различных окон настроек системы и приложений. Для их запуска можно использовать сочетания клавиш или команды. Ниже приведен список наиболее популярных команд для запуска самых популярных приложений и настроек в Windows. ## Запуск диалогового окна "Выполнить" Но сначала нам нужно знать, как открыть диалоговое окно «Выполнить». В Windows есть два способа сделать это: - — Нажмите комбинацию клавиш «Windows+R» на клавиатуре. - — Щелкните правой кнопкой мыши на меню «Пуск» и выберите в меню пункт «Выполнить». ## Шпаргалка по run командам Windows - **msconfig** — Системные настройки. - **msinfo32** — Информация о системе. - **resmon** — Монитор ресурсов. - **main.cpl** — Свойства мыши. - **mstsc** — Подключение к удаленному рабочему столу. - **cmd** — Командная строка. - **explorer** — Проводник Windows. - **taskmgr** — Диспетчер задач. - **shutdown** — Выключение компьютера. - **chkdsk** — Проверка диска. - **cleanmgr** – Очистка диска. - **dxdiag** — Параметры - **powershell** — Консоль Windows PowerShell. - **winver** — Версия - **controlfolders** — Параметры папок. - **diskmgmt.msc** – Управление дисками. - **eventvwr.msc** – Журнал событий. - **gpedit.msc** — Редактор локальной групповой политики. - **regedit** — Редактор реестра. - **sysdm.cpl** — Свойства системы. - **powercfg.cpl** — Параметры питания. - **magnify** – Экранная лупа. - **charmap** — Таблица символов Windows. - **ncpa.cpl** — Сетевые подключения. - **mrt** — Средство удаления вредоносных программ Microsoft Windows. - **devmgmt.msc** — Диспетчер устройств. - **netplwiz** — Учетные записи пользователей. - **services.msc** — Службы. - **appwiz.cpl** — Программы и компоненты. - **control** — Панель управления. - **«.»** — открыть папку текущего пользователя. - **osk** — Экранная клавиатура. - **snippingtool** — Ножницы. - **mdsched** — Проверка оперативной памяти. ## Самые популярные run команды - **msconfig** — Системные настройки. В настройках системы пользователь может изменить параметры загрузки Windows и возможности ее фоновых служб. Это может помочь, если на компьютере установлены две операционные системы, или если вам необходим доступ к безопасному режиму загрузки. - **resmon** — Resource Monitor (Монитор ресурсов). Приложение, с помощью которого вы можете в реальном времени получать информацию о доступных системных ресурсах, таких как процессор, оперативная память, диск и сеть. - **msinfo32** — Информация о системе. Содержит подробную информацию об аппаратном и программном обеспечении вашего компьютера. - **main.cpl** — Свойства мыши. В этом меню можно изменить настройки, связанные с работой мыши. - **mstsc** — Подключение к удаленному рабочему столу. С помощью этого окна вы можете удаленно подключиться к другому компьютеру и управлять им. - **cmd** — Командная строка. Консоль, в которой можно вводить команды для настройки Windows или запуска приложений. Шпаргалку по ней можно посмотреть здесь. - **explorer** — Проводник Windows. Открывает проводник Windows в месте быстрого доступа. - **taskmgr** — Диспетчер задач. Открывает диспетчер задач, в котором можно остановить зависшие программы, перезапустить службы и следить за системными ресурсами. - **shutdown** — Выключение компьютера. Выключает компьютер без предупреждения. - **chkdsk** – Проверка диска. Запускает утилиту, которая может проверить диск на наличие ошибок и исправить их. - **cleanmgr** – Очистка диска. Позволяет освободить место на диске путем удаления временных файлов или очистки корзины. - **dxdiag** — Параметры DirectX. Позволяет получить полные данные об установленных компонентах и драйверах DirectX. - **powershell** — Консоль Windows Powershell. Открывает консоль Microsoft Powershell, в которой можно запускать различные команды для получения данных или настройки Windows и приложений. - **winver** — Версия Windows. Открывает окно с полной информацией о версии Windows. - **contro****lfolders** — Параметры папок. Открывает окна параметров папок, в которых можно изменить такие параметры как «показывать скрытые файлы и папки» или «показывать расширения файлов». - **diskmgmt.msc** – Управление дисками. Открывает утилиту Disk Management, в которой можно создавать тома и разделы, изменять буквы дискам и т.д.. - **eventvwr.msc** – Просмотр событий. Показывает консоль с событиями безопасности, приложений, системы и другими событиями, генерируемыми Windows и приложениями. - **gpedit.msc** — Редактор локальной групповой политики. Открывает редактор, в котором можно управлять параметрами локальной групповой политики. - **regedit** — Редактор реестра. Предоставляет доступ к реестру Windows для настройки параметров. - **sysdm.cpl** — Свойства системы. Окно настроек для управления безопасностью системы, функциями удаленного подключения, переименования компьютера или ввода его в домен. - **powercfg.cpl** — Параметры питания. В этом меню вы найдете различные опции для управления настройками питания компьютера. - **magnify** – Экранная лупа. Эта команда открывает лупу в Windows. - **charmap** — Таблица символов Windows. Дает вам доступ ко всем символам выбранного вами шрифта. - **ncpa.cpl** — Сетевые подключения. В этом меню вы можете управлять текущим сетевым подключением и устранять любые проблемы, связанные с работой сетевых устройств. - **mrt** — Средство удаления вредоносных программ Microsoft Windows. Эта команда запускает средство удаления вирусов от Microsoft. Она сканирует компьютер на наличие вредоносных программ. - **devmgmt.msc** — Диспетчер устройств. Меню, в котором можно узнать сведения о подключенных устройствах и версии установленных драйверов. - **netplwiz** — Учетные записи пользователей. В этом меню вы можете управлять учетными записями пользователей, например, добавить новую учетную запись или изменить тип существующей, повысив или понизив ее привилегии. Также есть возможность изменить пароль для выбранной учетной записи и настроить параметры политики безопасности. - **services.msc** — Службы. В этом окне перечислены все службы, которые работают в фоновом режиме и являются основой функционирования системы Windows. - **appwiz.cpl** — Программы и компоненты. Хотя в Windows есть и другие способы удаления ненужных программ, эта команда отображает список, состоящий только из сторонних приложений. - **control** — Панель управления. Содержит все основные настройки Windows - — «.» — открывает папку текущего пользователя. Нам довольно часто приходится открывать папку пользователя в Windows. Чтобы сделать этот процесс быстрее и проще, просто введите точку в диалоговом окне «Выполнить», и вы мгновенно перейдете в нужное вам место. - **osk** — Экранная клавиатура. Если вы хотите использовать экранную клавиатуру, эта команда пригодится вам. - **snippingtool** — Ножницы. Snippingtool по-прежнему является основным инструментом для создания скриншотов в Windows без использования сторонних приложений. - **mdsched** — Проверка оперативной памяти. Если вам кажется, что присутствуют проблемы с производительностью вашей оперативной памяти, этот инструмент поможет вам проверить свои подозрения и, возможно, устранить существующие проблемы https://serverspace.by/support/help/probros-mikrofona-po-rdp.md В этой инструкции вы узнаете как настроить так, что на удаленном рабочем столе Windows у вас работал микрофон и звук. Иногда есть необходимость использовать микрофон на терминальном сервере, для разных задач. По умолчанию Remote Desktop Connection не включает такую возможность, поэтому ее нужно включить вручную. Эта инструкция расскажет вам как это сделать. Запускаем **gpedit.msc** на локальной машине, с которой будем подключаться к удаленному терминалу. Идем по пути: Политика "Локальный компьютер" -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов-> Перенаправление устройств -> Включаем «**Разрешить перенаправление воспроизведения звука**» и «**Разрешить перенаправление записи звука**«. **Такую же политику необходимо применить и на удаленном сервере.** В службах на обоих машинах необходимо включить Windows Audio. В настройках подключения к удаленному рабочему столу необходимо перейти на вкладку "**Локальные ресурсы**", нажать на кнопку "**Параметры**" и настроить воспроизведение звука удаленного рабочего стола на "**Проигрывать на этом компьютере**", а также настроить запись звука удаленного рабочего стола на "**Записать с этого компьютера**". Нажимаем "ОК" и подключаемся к удаленному рабочему столу. Идем в "**Звуки**" во вкладку "**Запись**". И проверяем наличие "Удаленного аудио". Успех! Теперь можно пользоваться микрофоном на удаленном терминале. Главное в приложениях использовать микрофон по умолчанию. https://serverspace.by/support/help/kak-uznat-prichinu-blokirovki-uchetnyh-zapisej-v-active-directory.md Причины блокировки учетных записей в Active Directory. Три шага настройки политики блокировки учетных записей. Какие события отслеживать в журнале безопасность. ## Возможные причины блокировки пользователя в Active Directory Данная ситуация существует в компаниях, где настроена политика блокировки учетной записи при вводе определенного количества не правильных паролей, это правильно с точки зрения кибербезопасности так как помогает защититься от брутфорса. Из основных причин блокировки можно выделить: - — Постоянный маппинг дисков со старыми учетными данными - — Мобильные устройства, использующие корпоративные сервисы - — Учетные записи служб, использующие кэшированные пароли, которые были изменены в ходе технического обслуживания - — Запланированные задачи с устаревшими паролями - — Программы, использующие сохраненные пароли, которые были изменены - — Отключенные сеансы сервера терминалов - — Проблемы с репликацией Active Directory - — Неправильно настроенные параметры политики домена - — Вредоносная активность, например, атака перебора паролей. ## Где настраивается политика блокировки учетных записей Открываем редактор групповой политики, создаем новую политику, называем ее например Account Lockout Policy и щелкаем на нее правой кнопкой мыши и выбираем "Изменить". - Ставим время до сброса счетчика блокировки на 30 минут - Пороговое значение блокировки – 5 ошибок входа в систему - Продолжительность блокировки учетной записи – 30 минут. Закрываем, применяем политику на домен и на целевой машине запускаем gpupdate /force ## Как выяснить причину блокировки учетной записи Теперь, когда политика включена нам нужно определять из-за чего может все лочиться, и с какого компьютера или устройств, это происходит. Чтобы ответить на этот вопрос нужно настроить специальную политику аудита, призванную следить за соответствующими событиями, по которым вы сможете найти причину блокировок. По умолчанию данный вид аудита не настроен. Снова открываем редактор групповой политики, создаем политику Audit Policy открываем ее и переходим по такому пути. Конфигурация компьютера -> Политики -> Конфигурация Windows -> Параметры безопасности -> Локальные политики -> Политика аудита Нам нужно включить аудит входа в систему, именно данная политика генерирует события 4771 и 4624. Настраиваем ее на "Успех и отказ". Так же нужно задать политику аудита событий входа в систему на "Успех и отказ", а так же "Аудит управления учетными записями", чтобы видеть события 4740. Принудительно обновляем политику и запускаем gpupdate /force на целевой машине ## Какие события отслеживать в журнале безопасность При некорректном вводе данных генерируется событие 4740, на всех контроллерах домена если он не один. С кодами отказов Kerberos: - 6 – имя пользователя не существует - 12 – Ограничение времени входа в систему - 18 – Учетная запись деактивирована, заблокирована или истек срок ее действия - 23 – Истек срок действия пароля пользователя - 24 – Предварительная аутентификация не удалась(неверный пароль) - 32 – Истек срок действия тикета - 37 – Время компьютера давно не синхронизировалось с доменным и кодами ошибок NTLM Код ошибки (десятичная система) — Код ошибки (16-ричная система) — Описание - 3221225572 — С0000064 — Такого имени пользователя не существует - 3221225578 — С000006А — Верное имя пользователя, но неверный пароль - 3221226036 — С0000234 — Учетная запись пользователя заблокирована - 3221225586 — С0000072 — Учетная запись деактивирована - 3221225583 — С000006Е — Пользователь пытается войти в систему вне обозначенного периода времени - 3221225584 — С0000070 — Ограничение рабочей станции - 3221225875 — С0000193 — Истек срок действия учетной записи - 3221225585 — 0000071 — Истек срок действия пароля - 3221226020 — С0000224 — Пользователь должен поменять пароль при следующем входе в систему ## Как расследовать причину блокировки Открываем журнал событий и идем в журнал безопасность (Security)" именно в нем собираются EventID которые могут помочь определить причину блокировки. Там очень много событий, так что отфильтруем их с помощью "Filter Current Log (Фильтр текущего журнала)", она позволит нам выбрать только те события, которые нам нужны. В поле Logged указываем за какой срок нужны данные, в поле Event ID указываем 4740 и нажимаем "Ок" В отфильтрованных записях с помощью поиска (Find) находим имя интересующей нас учетной записи. В итоге должны отфильтроваться события по указанному логину с кодом 4740 в котором можно найти причину блокировки, например в поле Caller Computer Name будет указано имя компьютера с которого идут феилд логоны и который этим вызывает блокировку. Затем нужно перейти на этот компьютер и смотреть евент логи там, чтобы определить почему данная машина пытается залогиниться под некорректными кредами. В событиях 4740 можно встреть еще такие причины блокировки как имя сервера, где происходит блокирование Exchange сервер организации – это значит, что проблема в Outlook, почтовом мобильном клиенте или его календарем. Чтобы расследовать данную блокировку нужно смотреть логи IIS на Exchange сервере. Так же можно использовать команду Get-ActiveSyncDeviceStatistics в PowerShell, чтобы увидеть проблемные мобильные устройства. ## Microsoft ALTools У компании Microsoft есть собственный инструмент для помощи в устранения проблем с блокировкой учетных записей — Microsoft Account Lockout and Management Tool (AlTools.exe). [Download Account Lockout Status (LockoutStatus.exe) from Official Microsoft Download Center](https://www.microsoft.com/en-us/download/details.aspx?id=15201). Этот инструмент отображает информацию о заблокированной учетной записи с ее состоянием пользователя и временем блокировки на каждом контроллере домена и позволяет разблокировать ее, щелкнув правой кнопкой мыши на соответствующей записи. Запустите LockoutStatus.exe > File > Select target > Введите имя учетной записи и домен > OK Он покажет все статусы связанные с блокировкой по данному аккаунту. ### Инструмент EventCombMT EventCombMT Tool собирает определенные события с нескольких различных серверов в одно центральное место. Запустите EventCombMT.exe > Щелкните правой кнопкой мыши на поле Select to search > Выберите Get DCs in Domain > Отметьте контроллеры домена для поиска. — Нажмите меню Searches (Поиск) > Built In Searches (Встроенный поиск) > Account Lockouts (Блокировка учетных записей). ## Другие причины блокировок пользовательских учетных записей Если проблема локаута кроется в сервисах Google Workspaces (Gmail, Gdrive) то в логах будет отображаться, что феилд логоны идут с компьютера WORKSTATION. Так же подробную информацию о блокировке можно посмотреть в событии 4771. Там можно найти Керберос коды, которые были описаны выше и IP адрес устройства с которого идут фейлд логоны. **Если в полях ****Caller ****Computer ****Name ивента 4770 и ****Client ****Address 4771 пусто – это значит что вас скорее всего брутфорсят! ** Чтобы определить источник фейлд логонов в этом случае необходимо включить netlogon и смотреть его логи. NETLOGON Netlogon — это процесс Windows Server, который аутентифицирует пользователей и другие службы в домене. Включите ведение журнала Netlogon: Пуск > Выполнить > введите: ``` nltest /dbflag:2080ffff > OK ``` После перезапуска службы Netlogon соответствующая активность может быть записана в %windir%/debug/netlogon.log. Можно так же разобрать журналы Netlogon с помощью скрипта: ``` type netlogon.log |find /i "0xC000006A" > failedpw.txt type netlogon.log |find /i "0xC0000234" > lockedusr.txt ``` Внимание! Не забудьте отключить Netlogon после того, как вы зафиксировали события, так как производительность системы может быть немного снижена из-за процесса дебаггинга. Отключите ведение журнала Netlogon: Пуск > Выполнить > введите: ``` nltest /dbflag:0 > OK ``` В логах можно найти айпишники тех компьютеров, с которых идут скрытые фейлд логоны, это могут быть терминальные сервера или RDP на которые ведется атака по перебору паролей. Возвращаемся к журналу событий безопасности. Еще может быть полезным событие с кодом 4776, тут тоже можно найти с какой рабочей станции была попытка ввода учетных данных. Если айпи вам неизвестен можно посмотреть его mac на на DHCP сервере или же на сетевом оборудовании, далее с помощью специальных сервисов, которые легко можно найти в интернете можно определить, что за производитель у данного mac-адреса. Это полезно, когда феилд логоны идут с какого-то смартфона или планшета. Еще полезным будет изучение события 4625, там вы можете обнаружить процесс, из-за которого происходит блокировка учетных записей. Используйте Process Hacker или Process Monitor для просмотра учетных данных активных процессов. Проблемой блокировки может быть планировщик задач Windows — возможно, есть задача, настроенная на запуск с использованием учетной записи, пароль к которой поменялся. На локальной машине могут быть сохраненные учетные данные, найти которые можно так: Пуск> Выполнить > rundll32 keymgr.dll, KRShowKeyMgr > OK. Или Netplwiz: Пуск> Выполнить > введите: netplwiz > OK Перейдите на вкладку Дополнительно, а затем нажмите Управление паролями. Блокировку может вызывать сессия сервера терминалов с устаревшими учетными данными. Для отключения RDP сессии выполните следующие команды в командной строке (Win+R > «cmd»), заменив «server_ip», «name» и «password» на необходимые учетные данные: ``` net use \server_ip /USER:name password ``` Это позволит вам войти на удаленный сервер без использования RDP. ``` query session /server:name ``` Замените «name» на имя сервера. Здесь вы получите идентификатор сессии. ``` reset session id /server:server_ip ``` Это завершает активную сессию на удаленном сервере. Блокировку учетки может вызывать репликация AD, когда обновление пароля не было реплицировано на все контроллеры домена. Для принудительной репликации выполните следующую команду на вашем DC: ``` repadmin /syncall /AdeP ``` https://serverspace.by/support/help/kak-ustanovit-menedzher-paketov-chocolatey-na-windows-server.md В этой инструкции вы узнаете как легко установить бесплатный менеджер пакетов Chocolatey на Microsoft Windows Server. Эта инструкция покажет вам, как установить менеджер пакетов Chocolatey на Windows Server, который сделает установку и удаление программ в Windows таким же простым и удобным, как в операционных системах на базе Linux. Кроме того, вы сможете легко обновлять установленные приложения одним щелчком мыши или командой. ## Что такое Chocolatey Были времена, когда ОС на базе Linux имели очень сложный механизм установки приложений, он сохранился до сих пор, и сейчас вы можете скомпилировать любое приложение из исходного кода с помощью make или magic. Из-за этого разработчики Linux представили очень удобный способ установки приложений — менеджеры пакетов. Теперь у вас есть возможность сравнить компиляцию и современный механизм управления пакетами — apt-get, yum для ОС и pip, gem для языков программирования, где приложения с зависимостями устанавливаются простой командой и так же легко обновляются или удаляются. Windows в данном случае не сделала никаких революционных улучшений, она просто сделала свой магазин, но он по-прежнему не пользуется популярностью. В Windows по-прежнему приходится искать программы в Интернете и обновлять их вручную, что не только неудобно, но и более опасно, так как можно нарваться на программу с трояном. В данном случае Chocolatey был создан для того, чтобы сделать управление программами в Windows более удобным и похожим на то, как это делается в Linux. Он создал хранилище программ и специальный клиент для Windows, который способен загружать, устанавливать и обновлять программы из этого каталога автоматически. ## Установка Chocolatey Клиент Chocolatey представляет собой утилиту PowerShell. Чтобы установить его, откройте Windows PowerShell с правами администратора и введите следующий код: ``` Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))) ``` Дождемся завершения процесса, и программа будет готова к использованию. После этого вы можете ознакомиться с основными возможностями программы. Для этого введите команду **choco /?**, которая покажет вам, как пользоваться программой и основными командами. Как вы уже, наверное, поняли, все операции выполняются путем ввода специальных команд в PowerShell. Например, если вам нужно установить программу, просто введите: ``` choco install имя_пакета ``` Чтобы обновить ее: ``` choco update имя_пакета ``` Чтобы просмотреть весь список доступных программ в хранилище, введите: ``` choco list ``` или воспользуйтесь поиском в онлайн-версии каталога — https://community.chocolatey.org/packages?q=. ## ChocolateyGUI Если вам не очень нравится набирать команды вручную, вы можете получить графический интерфейс для Chocolatey. Он называется ChocolateyGUI и устанавливается путем ввода в PowerShell: ``` choco install chocolateygui ``` Процесс займет некоторое время и потребует ввести «**a**» для подтверждения установки. Чтобы запустить ChocolateyGUI, просто введите ее название в Поиск Windows, и он выдаст установленную программу. Программа имеет очень простой и интуитивно понятный интерфейс. Установка программ очень проста — просто щелкните правой кнопкой мыши на нужное приложение из списка и нажмите кнопку install. Затем немного подождите, пока установка завершится. После завершения установки вы можете найти программу с помощью Поиска Windows. Чтобы удалить программу, просто щелкните ее правой кнопкой мыши и выберите удалить. Чтобы автоматически обновить все программы, просто запустите в PowerShell: ``` choco upgrade all ``` https://serverspace.by/support/help/kak-vosstanovit-windows-server-s-pomoshhyu-veeam-agent.md Из этой инструкции вы узнаете как легко восстановить Windows Server с помощью бесплатного приложения Veeam Agent. После создания резервной копии тома на сервере Windows с помощью агента Veeam необходимо иметь возможность восстановить его, если у вас возникнут проблемы с данными, такие как повреждение данных или их потеря. Ниже приведена инструкция по восстановлению тома диска. Вы можете выполнить ее с любой машины Windows с установленным агентом Veeam. Нажмите кнопки Windows+S и введите Veeam, в появившемся поиске выберите Volume Restore. В появившемся окне выберите Network Storage и нажмите Next. Выберите **Shared folder** и нажмите **Next.** Введите путь к общему ресурсу с образом резервной копии и введите учетные данные к нему. Нажмите **Next**. Выберите образ резервной копии для восстановления. Нажмите кнопку **Next**. Выберите точку восстановления, к которой вы хотите откатить данные. Нажмите кнопку **Next**. Выберите диск, на который нужно восстановить том. Обратите внимание, что восстановление на основной системный диск невозможно. Если такого диска нет в списке, его нужно сначала создать, а затем снова выполнить процесс восстановления. Нажмите **Next**, затем нажмите **Restore**. После завершения процесса восстановления нажмите **Finish**, чтобы закрыть мастер. Теперь вы можете перейти на восстановленный диск и просмотреть восстановленные файлы. https://serverspace.by/support/help/kak-vosstanovit-linux-server-s-pomoshhyu-veeam-agent.md Из этой инструкции вы узнаете как можно легко восстановить Linux Server с помощью бесплатной версии Veeam Agent. После резервного копирования тома в Linux Server с помощью агента Veeam вам нужно иметь возможность восстановить его, если у вас возникнут проблемы с данными, например, повреждение или потеря. Ниже приведена инструкция по восстановлению. Вы можете выполнить ее с любой Linux-машины с установленным агентом Veeam. Необходимо, чтобы агент Veeam был установлен в системе. Введите veeam в терминале, и откроется приложение Veeam agent. Нажмите «R», и сразу же откроется окно импортированных резервных копий. Нажмите «i», чтобы загрузить резервную копию с сетевого диска. Выберите «**Add shared folder**» и нажмите «**Enter**«. Введите путь к общему диску и учетные данные для доступа к нему. Выберите нужную резервную копию из списка и нажмите «**Enter**«. Резервная копия будет смонтирована по пути **/mnt/backup**. Нажмите «**Enter**«, чтобы закрыть окно. Теперь вы можете просматривать этот путь с помощью команд bash или файлового менеджера, например, midnight commander, и копировать поврежденные или потерянные файлы вручную в исходные места. Когда вы закончите работу с восстановленными файлами и папками, вы можете отсоединить резервную копию из папки **/mnt/backup**. В панели управления Veeam Agent нажмите клавишу ‘u’, чтобы размонтировать резервную копию. Veeam Agent остановит сеанс монтирования резервной копии и отобразит окно уведомления. Нажмите Enter, чтобы закрыть окно и вернуться в панель управления Veeam Agent. https://serverspace.by/support/help/avtomatizacija.md Эта инструкция поможет вам настроить автоматизированное развертывание инфраструктуры на serverspace используя CLI, API и Terraform. ## Список API ключей API ключи для доступа к вашему проекту. ## API [Serverspace Public API](https://docs.serverspace.by/public_api.html) — публичный API для взаимодействия с услугами [Serverspace](https://serverspace.by/index.md). Действия, выполняемые в панели управления Serverspace, также могут быть выполнены с помощью публичного API. ### Авторизация Для работы с публичным API создайте API-ключ для проекта и передавайте его при каждом запросе в заголовке X-API-KEY. Например, при использовании утилиты cURL, заголовок будет выглядеть следующим образом: ``` -H "X-API-KEY: lmGwbvllpIqIrKROOCLgE5Z941MKP5EYfbkgwtqJZGigfXUTpuYRpNQkCqShmm6r" ``` Все запросы API необходимо выполнять через протокол HTTPS, эндпоинт публичного API находится по следующему URL: ``` https://api.serverspace.io/ ``` ### Примеры использования Получим информацию о проекте, для этого отправим запрос, воспользовавшись утилитой cURL: ```bash curl -X GET https://api.serverspace.io/api/v1/project -H 'content-type: application/json' -H 'x-api-key: lmGwbvllpIqIrKROOCLgE5Z941MKP5EYfbkgwtqJZGigfXUTpuYRpNQkCqShmm6r' ``` В результате будет возвращена информация о проекте: ```json { "project": { "balance": 400.07, "created": "2019-04-08T10:35:53.7021047Z", "currency": "EUR", "id": 1, "state": "Active" } } ``` Создадим сервер со следующей конфигурацией: Амстердам, название "api-example", операционная система Debian 10.7, конфигурация сервера 1 ГБ RAM, 1 CPU, загрузочный диск 25 ГБ SSD, 50 Мбит/с: | curl -X POST https://api.serverspace.io/api/v1/servers -H 'content-type: application/json' -H 'x-api-key: lmGwbvllpIqIrKROOCLgE5Z941MKP5EYfbkgwtqJZGigfXUTpuYRpNQkCqShmm6r' -d '{ "location_id": "am2", "image_id": "Debian-10.7-X64", "cpu": 1, "ram_mb": 1024, "volumes": [ { "name": "boot", "size_mb": 25600 } ], "networks": [ { "bandwidth_mbps": 50 } ], "name": "api-example" }' | | --- | В результате возвращается ID задачи, по которой можно отследить процесс создания сервера: | { "task_id" : "lt1507097" } | | --- | ## CLI s2ctl – это Serverspace в командной строке. CLI даёт возможность контролировать вашу инфраструктуру в терминале, так же как через панель управления. Инструмент можно получить на нашем [Github](https://github.com/itglobalcom/s2ctl). ### Установка s2ctl доступен для Linux и Windows как отдельный бинарный файл. Скачайте архив с [Github](https://github.com/itglobalcom/s2ctl/releases) и распакуйте его. Установка на Linux - Загрузите архив из репозитория GitHub: | wget https://github.com/itglobalcom/s2ctl/releases/download/vX.X.X/s2ctl-vX.X.X-linux.tar.gz | | --- | Здесь X.X.X это номер последней версии утилиты. - Разархивируйте загруженный архив: | tar -xzf s2ctl-vX.X.X-linux.tar.gz | | --- | - Перейдите в созданную директорию и запустите утилиту s2ctl: | cd s2ctl-vX.X.X-linux ./s2ctl --help | | --- | - (Опционально) Вы также можете добавить каталог, в который вы поместили исполняемый файл s2ctl, в переменную среды $PATH, чтобы получить доступ к утилите из любой точки операционной системы. Чтобы увидеть, что находится в переменной $PATH прямо сейчас, введите команду: | echo $PATH | | --- | Для добавления новой директории в список используйте команду: | export PATH=$PATH:"" | | --- | Переменная $PATH устанавливается оболочкой при каждом ее запуске, но вы можете сделать, так чтобы она всегда включала путь до утилиты в каждой новой оболочке, которую вы открываете. Точный способ зависит от того, какую оболочку вы используете. Например, для bash нужно добавить строку о соответствующем файле следующим образом: | echo 'export PATH=$PATH:""' >> .bashrc | | --- | Для применения изменений используйте команду: | source ~/.bashrc | | --- | Установка на Windows - Загрузите файл s2ctl-vX.X.X-windows.zip с [Github](https://github.com/itglobalcom/s2ctl/releases) и разархивируйте его. - Запустите командную строку: - 1. Нажмите Win+R или Start → Поиск → Введите run → OK - 2. Введите команду cmd → OK - По умолчанию в командной строке отображается домашняя директория текущего пользователя. Перейдите в директорию с извлечённым файлом: | cd | | --- | - Перейдя в нужную директорию, запустите команду: | s2ctl --help | | --- | - (Опционально) Вы также можете добавить каталог, в который вы поместили бинарный файл s2ctl, в переменную среды PATH, чтобы получить доступ к утилите из любой точки операционной системы. - 1. В поиске откройте и выберите: **System (Control Panel)**. - 2. Нажмите ссылку **Advanced system settings**. - 3. Нажмите **Environment Variables**. В разделе **System Variables** Найдите переменную PATH и выберите её. Кликните **Edit**. Если переменная PATH не существует, то нажмите **New**. - 4. В окне **Edit System Variabl**e (или **New System Variable**), укажите значение переменной окружения PATH . Нажмите **OK**. Закройте все оставшиеся окна, нажав **OK**. ### Авторизация Для работы с CLI необходимо создать API-ключ для проекта и создать контекст или передавать API-ключ при каждом запросе. Создание контекста Использование контекстов упрощает использование утилиты s2ctl, т.к. не приходится для каждой команды в явном виде указывать API-ключ. Для создания контекста используйте следующую команду: | s2ctl context create -k -n | | --- | Например: | s2ctl context create -k lmGwbvllpIqIrKROOCLgE5Z941MKP5EYfbkgwtqJZGigfXUTpuYRpNQkCqShmm6r -n example | | --- | Передача ключа Для передачи API-ключа в явном виде, его необходимо указывать в конце команды с помощью опции —apikey: | s2ctl --apikey | | --- | Например: | s2ctl images --apikey lmGwbvllpIqIrKROOCLgE5Z941MKP5EYfbkgwtqJZGigfXUTpuYRpNQkCqShmm6r | | --- | ### Примеры использования Получим информацию о проекте с помощью следующей команды: | s2ctl project show | | --- | В результате будет возвращена информация о проекте: | id: '1' balance: '400.24' currency: EUR state: Active created: '2019-04-08T10:35:53.7021047Z' | | --- | Создадим сервер: | s2ctl server create --name test-cli --location nj3 --image Ubuntu-20.04-X64 --cpu 2 --ram 2048M --volume boot:30720M --volume volume:10240M --public-network 50 --public-network 60 | | --- | В результате возвращается ID задачи, по которой можно отследить процесс создания сервера: | task_id: lt1512053 | | --- | ## Terraform [Terraform-провайдер Serverspace](https://registry.terraform.io/providers/itglobalcom/serverspace/latest) позволяет управлять облачными ресурсами используя подход Infrastructure as Code. Управление осуществляется с помощью специальных конфигурационных файлов, в которых вы описываете желаемое состояние вашей инфраструктуры. ### Установка Terraform Для начала установите Terraform на вашу операционную систему. Рекомендуем воспользоваться [инструкцией](https://learn.hashicorp.com/tutorials/terraform/install-cli#install-terraform) разработчика Terraform. ### Конфигурация провайдера - Для работы с Terraform создайте API-ключ для проекта. - Создайте и перейдите в каталог, в котором вы будете работать с Terraform-провайдером. - Создайте и откройте конфигурационный файл provider.tf. - Вставьте в файл информацию о провайдере, где это ваш API ключ, и сохраните изменения: | terraform { required_providers { serverspace = { source = "itglobalcom/serverspace" version = "0.2.0" } } }variable "s2_token" { type = string default = "" }provider "serverspace" { key = var.s2_token } | | --- | - Откройте командную строку и перейдите в каталог, в котором вы создали файл. Выполните инициализацию для проверки корректности: | terraform init | | --- | В случае успеха вы увидите следующее сообщение: | Initializing the backend... Initializing provider plugins — Finding itglobalcom/serverspace versions matching "0.2.0" — Installing itglobalcom/serverspace v0.2.0 — Installed itglobalcom/serverspace v0.2.0 (self-signed, key ID 062XXXXXXXXXXXX) Partner and community providers are signed by their developers. If you'd like to know more about provider signing, you can read about it here: https://www.terraform.io/docs/cli/plugins/signing.html Terraform has created a lock file .terraform.lock.hcl to record the provider selections it made above. Include this file in your version control repository so that Terraform can guarantee to make the same selections by default when you run "terraform init" in the future. Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. | | --- | ## Описание вашей инфраструктуры С помощью Terraform-провайдера Serverspace вы можете создавать инфраструктуру разной конфигурации. Подробную документацию вы можете найти в [Terraform Registry](https://registry.terraform.io/providers/itglobalcom/serverspace/latest/docs). Рассмотрим пример создания простой инфраструктуры из двух серверов, объединенных в изолированную сеть: - Сервер в Амстердаме под названием "server-1" с операционной системой Ubuntu 20.04, конфигурация сервера 2 ГБ RAM, 2 CPU, загрузочный диск 40 ГБ SSD, дополнительный диск 20 ГБ SSD, 50 Мбит/с. Подключение к серверу будет осуществляться через SSH-ключ. На сервер будет установлено хранилище данных Redis. - Сервер в Амстердаме под названием "server-2" с операционной системой Ubuntu 20.04, конфигурация сервера 8 ГБ RAM, 4 CPU, загрузочный диск 40 ГБ SSD, 70 Мбит/с. - Изолированная сеть в Амстердаме с адресацией 192.168.0.0/24 Для создания инфраструктуры выполните следующие шаги. - Создайте и откройте файл ssh_key.tf, в котором будет находиться публичная часть ssh-ключа для создания сервера. - Вставьте в файл информацию о публичной части ssh-ключа и сохраните изменения, замените содержимое переменной public_key своим значением: | resource "serverspace_ssh" "terraform" { name = "terraform-key" public_key = "ssh-rsa AAAAB3Nza...JUDjlM= root@CentOS.local" } variable "pvt_key" {type = stringdefault = ""} | | --- | - Создайте и откройте файл main.tf, в котором будет находиться описание инфраструктуры. - Вставьте в файл описание вашей инфраструктуры. | resource "serverspace_server" "server1" { image = "Ubuntu-20.04-X64" name = "server-1" location = "am2" cpu = 2 ram = 2048boot_volume_size = 40*1024volume { name = "bar" size = 20*1024 }nic { network = "" network_type = "PublicShared" bandwidth = 50 } nic { network = resource.serverspace_isolated_network.my_net.id network_type = "Isolated" bandwidth = 0 }ssh_keys = [ resource.serverspace_ssh.terraform.id, ]connection { host = self.public_ip_addresses[0] user = "root" type = "ssh" private_key = file(var.pvt_key) timeout = "2m" }provisioner "remote-exec" { inline = [ "export PATH=$PATH:/usr/bin", "sudo apt-get update", "sudo apt-get install -y redis-server", "exit 0" ] }resource "serverspace_server" "server2" { image = "Ubuntu-20.04-X64" name = "server-2" location = "am2" cpu = 4 ram = 8192 boot_volume_size = 40*1024 nic { network = "" network_type = "PublicShared" bandwidth = 70 } nic { network = resource.serverspace_isolated_network.my_net.id network_type = "Isolated" bandwidth = 0 } } resource "serverspace_isolated_network" "my_net" { location = "am2" name = "my_net" description = "Example for Terraform" network_prefix = "192.168.0.0" mask = 24 } | | --- | - Для создания инфраструктуры описанной выше выполните команду: | terraform apply | | --- | В результате появится диалоговое окно: | Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + createTerraform will perform the following actions:# serverspace_isolated_network.my_net will be created + resource "serverspace_isolated_network" "my_net" { + description = "Example for Terraform" + id = (known after apply) + location = "am2" + mask = 24 + name = "my_net" + network_prefix = "192.168.0.0" }# serverspace_server.server1 will be created + resource "serverspace_server" "server1" { + boot_volume_id = (known after apply) + boot_volume_size = 40960 + cpu = 2 + id = (known after apply) + image = "Ubuntu-20.04-X64" + location = "am2" + name = "server-1" + public_ip_addresses = (known after apply) + ram = 2048 + ssh_keys = (known after apply)+ nic { + bandwidth = 0 + id = (known after apply) + ip_address = (known after apply) + network = (known after apply) + network_type = "Isolated" } + nic { + bandwidth = 50 + id = (known after apply) + ip_address = (known after apply) + network_type = "PublicShared" }+ volume { + id = (known after apply) + name = "bar" + size = 20480 } }# serverspace_server.server2 will be created + resource "serverspace_server" "server2" { + boot_volume_id = (known after apply) + boot_volume_size = 40960 + cpu = 4 + id = (known after apply) + image = "Ubuntu-20.04-X64" + location = "am2" + name = "server-2" + public_ip_addresses = (known after apply) + ram = 8192 + ssh_keys = (known after apply)+ nic { + bandwidth = 0 + id = (known after apply) + ip_address = (known after apply) + network = (known after apply) + network_type = "Isolated" } + nic { + bandwidth = 70 + id = (known after apply) + ip_address = (known after apply) + network_type = "PublicShared" } }# serverspace_ssh.terraform will be created + resource "serverspace_ssh" "terraform" { + id = (known after apply) + name = "terraform-key" + public_key = "ssh-rsa AAAAB3Nza...JUDjlM= root@CentOS.local" } Plan: 4 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. | | --- | - Для создания инфраструктуры введите _yes_. | Enter a value: yes serverspace_ssh.terraform: Creating... serverspace_isolated_network.my_net: Creating... serverspace_ssh.terraform: Creation complete after 1s [id=3181] serverspace_isolated_network.my_net: Creation complete after 8s [id=l2n403] serverspace_server.server2: Creating... serverspace_server.server1: Creating... serverspace_server.server1: Still creating... [10s elapsed] serverspace_server.server2: Still creating... [10s elapsed] ... serverspace_server.server1 (remote-exec): (Reading database ... serverspace_server.server1 (remote-exec): (Reading database ... 5% serverspace_server.server1 (remote-exec): (Reading database ... 10% ... serverspace_server.server1: Creation complete after 1m3s [id=l2s190038] Apply complete! Resources: 4 added, 0 changed, 0 destroyed. | | --- | - Для просмотра текущей инфраструктуры выполните команду: | terraform show | | --- | - В результате будет отображена текущая конфигурация инфраструктуры: | # serverspace_isolated_network.my_net: resource "serverspace_isolated_network" "my_net" { description = "Example for Terraform" id = "l2n403" location = "am2" mask = 24 name = "my_net" network_prefix = "192.168.0.0" }# serverspace_server.server1: resource "serverspace_server" "server1" { boot_volume_id = 58909 boot_volume_size = 40960 cpu = 2 id = "l2s190038" image = "Ubuntu-20.04-X64" location = "am2" name = "server-1" public_ip_addresses = [ "45.138.24.19", ] ram = 2048 ssh_keys = [ 3181, ]nic { bandwidth = 0 id = 59576 ip_address = "192.168.0.1" network = "l2n403" network_type = "Isolated" } nic { bandwidth = 50 id = 59575 ip_address = "45.138.24.19" network_type = "PublicShared" }volume { id = 58910 name = "bar" size = 20480 } }# serverspace_server.server2: resource "serverspace_server" "server2" { boot_volume_id = 58911 boot_volume_size = 40960 cpu = 4 id = "l2s190039" image = "Ubuntu-20.04-X64" location = "am2" name = "server-2" public_ip_addresses = [ "31.44.3.68", ] ram = 8192 ssh_keys = []nic { bandwidth = 0 id = 59578 ip_address = "192.168.0.2" network = "l2n403" network_type = "Isolated" } nic { bandwidth = 70 id = 59577 ip_address = "31.44.3.68" network_type = "PublicShared" } }# serverspace_ssh.terraform: resource "serverspace_ssh" "terraform" { id = "3181" name = "terraform-key" public_key = "ssh-rsa AAAAB3Nza...JUDjlM= root@CentOS.local" } | | --- | https://serverspace.by/about/news/refaktoring-paneli-upravleniya-oblachnogo-provajdera-serverspace.md Облачный провайдер Serverspace перевел на SPA четыре новых раздела и ускорил загрузку страниц для пользователей. Облачный провайдер Serverspace провел рефакторинг панели управления и перевел на SPA четыре новых раздела: "SSL-сертификаты", "Мониторинг", "Биллинг" и "Техническая поддержка". Обновление позволило ускорить загрузку страниц и подготовить панель управления к будущему масштабному обновлению UI. С технической точки зрения одним из главных плюсов стало снижение нагрузки на серверную часть. Это стало возможным за счет перераспределения функции обработки JSON с backend-стороны на сторону frontend. В очереди на рефакторинг остался последний раздел, обновление которого позволит приступить к полноценному редизайну панели управления. https://serverspace.by/about/news/obnovlenie-dlya-partnerov-serverspace.md Теперь партнеры Serverspace могут использовать баннеры в восьми форматах. Стиль и цветовая схема, заголовок пересекается с дизайном сайта. Serverspace расширяет перечень маркетинговых инструментов для партнеров. Теперь участникам партнерской программы доступны брендированные рекламные баннеры в популярных разрешениях. Рекламные баннеры выполнены в изометрическом стиле и визуально сохраняют узнаваемость бренда. В целях их наиболее эффективного восприятия были учтены все рекомендации по расположению элементов со стороны специалистов по графическому дизайну. Баннеры размещены в панели управления в разделе "Партнерам". Их можно вставлять в веб-интерфейсы в виде готового кода, который уже содержит реферальную ссылку. Помимо этого партнерам все еще доступны персональные реферальные ссылки и отправка приглашений на email рефералов прямо из панели управления. Чтобы стать партнером Serverspace достаточно просто [зарегистрироваться](https://panel.serverspace.by/) в панели управления. Персональная реферальная ссылка будет сгенерирована сразу после регистрации. https://serverspace.by/about/news/usluga-managed-kubernetes-perevedena-v-rezhim-vnutrennego-testirovaniya.md После завершения первой стадии бета-тестирования к закрытому тесту присоединятся пользователи Serverspace. Serverspace переводит услугу Managed Kubernetes в режим внутреннего тестирования. После завершения первой стадии к закрытому тесту присоединятся пользователи Serverspace. **Kubernetes **— это система управления контейнерами с открытым исходным кодом и постоянно растущей экосистемой. Использование этого решения в качестве управляемой услуги позволяет строить микросервисную архитектуру и реализовывать гибкий подход к разработке. Благодаря этому компании смогут быстрее выпускать релизы и быстрее реагировать на изменения рынка. На данный момент Serverspace поддерживает Kubernetes версии 1.21.5 и позволяет: - создавать кластеры в одиночном и высокодоступном режиме, - управлять группами узлов кластера, - устанавливать контроллер для Ingress. https://serverspace.by/about/news/serverspace-zapustil-sobstvennyj-terraform-provajder.md Terraform – это инструмент для создания декларативного кода, который позволяет эффективно и безопасно управлять облачной инфраструктурой. Serverspace добавил поддержку [Terraform](https://registry.terraform.io/providers/itglobalcom/serverspace/latest) — инструмента автоматизированного управления облачными ресурсами. Теперь у пользователей нет необходимости вручную создавать свою облачную инфраструктуру, нужно лишь описать ее желаемое состояние, а об остальном позаботится программа. ## Что такое Terraform? Terraform — это программный инструмент от компании HashiCorp, позволяющий декларативно управлять облачной инфраструктурой, используя подход "Инфраструктура как код". Управление осуществляется с помощью специальных файлов конфигурации, в которых пользователем описывается желаемое состояние будущей инфраструктуры. ## Как пользоваться? - Установите Terraform в вашу операционную систему; - Создайте ключ API для проекта, который будет работать с Terraform; - Задайте описание вашей будущей инфраструктуры; - Наслаждайтесь процессом. Подробная информация по настройке и использованию Terraform описана в настройках вашего профиля в панели управления во вкладке "[Автоматизация](https://panel.serverspace.by/account/api-key)". https://serverspace.by/about/news/serverspace-dobavil-reakczii-na-otvety-podderzhki.md Облачный провайдер Serverspace добавил возможность реагировать на ответы специалистов технической поддержки: ставить лайки и дизлайки. Serverspace продолжает оптимизировать качество технической поддержки. Помимо круглосуточной экспертной помощи и оперативного реагирования на инциденты в течение часа, клиенты получили возможность ставить лайки и дизлайки на ответы специалистов, тем самым показывая свои впечатления от их ответов. Реакции будут не только показывать, насколько ответы специалистов удовлетворяют ожиданиям пользователей, но и позволят выработать еще более индивидуальный подход к решению вопросов каждого клиента. https://serverspace.by/about/news/refaktoring-razdela-ssl-sertifikatov-na-spa.md Serverspace перевел раздел «SSL-сертификаты» на SPA. Теперь страницы загружаются быстрее, и их повторная полная перезагрузка не требуется. Serverspace перевел раздел "SSL" на Single Page Application (SPA), сделав его частью экосистемы. Теперь страницы загружаются быстрее, ведь благодаря этой функции их повторная полная загрузка не требуется. В разделе "SSL-сертификаты" также была оптимизирована страница с описанием процесса валидации. Для более комфортной работы в панели управления был обновлен дизайн интерфейса, и теперь он соответствует стилю других разделов. https://serverspace.by/about/news/oblachnyj-provajder-serverspace-obnovil-api.md Serverspace продолжает повышать удобство управления инфраструктурой. У пользователей появились новые возможности в работе с Serverspace API. Serverspace продолжает повышать удобство управления инфраструктурой. У пользователей появились новые возможности в работе с [Serverspace API](https://serverspace.by/services/api.md). Теперь при создании сервера vStack можно подключить его к изолированным сетям. Они нужны, чтобы организовать частный доступ к своим приложениям, а также обеспечить повышенную безопасность. Используя Serverspace API теперь можно увеличивать размер диска и редактировать имя. Также пользователь может изменять пропускную способность публичной сети, увеличивать и уменьшать ширину канала интерфейса. https://serverspace.by/support/help/kak-upravlyat-uchetnymi-zapisyami-polzovatelej-v-active-directory-chast-1-sozdanie-i-udalenie-polzovatelej.md Аккаунты пользователей одни из самых популярных объектов. В этой инструкции вы узнаете как создать учетную запись AD несколькими способами Пользовательские учетные записи одни из самых популярных объектов в AD. Они нужны для аутентификации и авторизации на рабочих компьютерах и во многих сервисах, интегрированных с AD. Решение различных проблем связанных с УЗ пользователей, а так же управление ими является одной из главных рутин для администраторов и специалистов хелпдеска. Данное руководство поможет вам сделать это несколькими способами. Чтобы управлять УЗ пользователей, необходимо войти на контроллер домена или сервер или устройство с установленными средствами удаленного администрирования сервера (**RSAT**) для **Active Directory Domain Services**. Для того чтобы не было ошибок доступа, нам нужен аккаунт администратора домена или группы операторов учетных записей (**Account Operators group**), либо УЗ, которая делегирована на создание пользовательских объектов в домене или в нужной нам организационной единице (**OU**), которую мы будем использовать для хранения аккаунтов. ## Как создать учетную запись пользователя Давайте создадим учетную запись пользователя AD несколькими способами. ### Создание учетной записи пользователя с помощью ADUC Запустите **Active Directory Users and Computers** (**dsa.msc**). Перейдите в нужную вам OU (organizational unit) или контейнер. На панели задач нажмите на значок **New User**, или щелкните правой кнопкой мыши пустое место в главном окне и выберите **New -> User** из меню, или щелкните правой кнопкой по выбранному вами OU или контейнеру и выберите **New -> User**. Появится окно **New Object — User**, укажите параметры для вашего пользователя: - **Full Name**, введите полное имя в поле **Full Name** или введите отдельно фамилию и имя в поля **First Name** и **Last Name**. - **User logon name** — Имя логина пользователя, данный параметр создаст атрибут userPrincipalName и атрибут sAMAccountName, которые пользователь будет вводить при входе в систему. Нажмите **Next** и укажите Пароль, затем наберите его во втором поле и отметьте нужные настройки, обычно для нового пользователя нужно отметить «**User must change password at next logon**«(Пользователь должен сменить пароль при следующем входе). Нажмите **Next** и **Finish**. Поздравляем, учетная запись пользователя успешно создана! ### Создание УЗ пользователя с помощью cmd.exe Используйте следующую команду с необходимыми параметрами для создания объекта пользователя в контейнере «**Users**«, имя пользователя в примере будет GSoul: ``` dsadd.exe user "CN=GSoul,CN=Users,DC=office,DC=local" -upn GSoul@office.local -fn "Gordon" -ln "Soul" -display "Gordon Soul" -pwd "P@&&W0rd" ``` ### Создание учетной записи пользователя с помощью Windows PowerShell Запустите следующий код PowerShell с правами администратора: ``` Import-Module ActiveDirectory New-ADUser -Name FRobinson -Path "CN=Users,DC=office,DC=local" -GivenName "Frank" -Surname "Robinson" -sAMAccountName FRobinson ``` ## Как удалить учетную запись пользователя Для того чтобы удалить пользователя из Active Directory, используйте один из следующих методов. Обратите внимание, что это не приведет к полному удалению УЗ, если у вас настроена корзина **AD Recycle Bin**. ### Удаление учетной записи пользователя с помощью Active Directory Users and Computers Чтобы удалить пользователя из домена, откройте Active Directory Users and Computers (dsa.msc). Нажмите на меню **View**, включите **Advanced Features**. Перейдите в OU или контейнер, где находится объект пользователя, который вы собираетесь удалить. В меню **Action** выберите **Find**. В поле Name введите имя пользователя, которого вы хотите удалить, и нажмите кнопку «**Find now**«. В списке результатов поиска выберите нужного пользователя. Щелкните правой кнопкой мыши на пользователя и выберите из списка пункт «**Delete**«, а затем «**Yes**«. ### Удаление учетной записи пользователя с помощью командной строки Следующая команда удаляет пользователя «GSoul» из контейнера "Users" из домена office.local: ``` dsrm.exe "CN=Gregory Soul,CN=Users,DC=office,DC=local" ``` ### Удаление учетной записи пользователя с помощью Windows PowerShell Используйте следующий PowerShell код для удаления пользователя из AD, синтаксис для примера использован такой же, как и в примере выше: ``` Import-Module ActiveDirectory Remove-ADUser -Identity "CN=GSoul,CN=Users,DC=office,DC=local" ``` https://serverspace.by/support/help/kak-vklyuchit-korzinu-recycle-bin-v-active-directory.md Active Directory Recycle Bin позволяет администраторам восстанавливать объекты AD, которые были удалены из домена, узнайте как это сделать! **Active Directory Recycle Bin** позволяет администраторам восстанавливать объекты AD, которые были удалены из домена. Как включить корзину Recycle Bin в Active Directory: - [Определите сервер с ролью Domain Naming Master](#stepone) - [Включите корзину Recycle Bin в Active Directory Administrative Center (ADAC)](#steptwo) - [Включите Recycle Bin в консоли PowerShell](#stepthree)[#stepthree](#stepthree) ## Определение Сервера с Ролью Domain Naming Master Рекомендуется включать функцию **Recycle Bin** на контроллере домена, который имеет роль **Domain Naming Master**. Чтобы узнать, на каком контроллере домена находится эта роль, выполните следующую команду в командной строке на любом устройстве, подключенном к домену: ``` netdom.exe query fsmo ``` В качестве альтернативы можно использовать команды PowerShell на подключенной к домену системе, на которой установлен модуль **Active Directory для Windows PowerShell**: ``` Import-Module ActiveDirectory Get-ADForest | Format-List DomainNamingMaster ``` ## Включение корзины Recycle Bin в Active Directory Administrative Center (ADAC) Войдите на контроллер домена, используя учетную запись, которая является членом **Enterprise Admins**. Откройте Active Directory Administrative Center (пуск->выполнить dsac.exe). Нажмите на имя леса доменов в левой верхней части панели. Затем в панели «**Tasks**» справа нажмите на «**Enable Recycle Bin**«. В качестве альтернативы можно щелкнуть правой кнопкой мыши на имя домена в левой панели, и выбрать опцию «**Enable Recycle Bin**«. Появится окно подтверждения, в котором говорится, что Recycle Bin включается один раз и отключению не подлежит. Чтобы включить ее, нажмите OK. Центр администрирования AD предупредит вас о необходимости обновить его окно: Нажмите OK и обновите ADAC, нажав на кнопку «**Refresh**» в правом верхнем углу: Через секунду рядом с контейнером «Computers» появится еще один — «Deleted Objects». ## Включение Recycle Bin в консоли PowerShell Работу Recycle Bin так же можно настроить через консоль PowerShell. Запустите **PowerShell.exe** от имени администратора и выполните следующий код: ``` Import-Module ActiveDirectory Enable-ADOptionalFeature -Identity "CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=office,DC=local" -Scope ForestOrConfigurationSet -Target "office.local" ``` Замените office, local и office.local на имена соответствующие вашему домену. Система запросит подтверждение, введите «y», чтобы продолжить. После этого появится контейнер «**Deleted Objects**«. Теперь, когда мы удалим что-нибудь из AD, атрибут этого объекта «**isDeleted**» будет "**true"**, а параметр «**isRecycled**» не изменится. При этих параметрах данный объект переносится в «**Deleted Objects**» откуда он легко восстанавливается, щелкнув на нем правой кнопкой мыши и нажав восстановить. По умолчанию через 60 дней атрибут «**isRecycled**» также поменяется на «**true**» и в этом случае объект будет удален из AD навсегда. Время окончательного удаления объекта можно поменять. https://serverspace.by/support/help/kak-ustranit-nepoladki-replikaczii-ad-s-pomoshhyu-repadmin.md Эта инструкция поможет вам диагностировать неисправности репликации в Active Directory с помощью приложения Repadmin. ## Что такое Repadmin? **Repadmin **— это cmd-приложение для диагностики проблем с репликацией AD. С помощью Repadmin можно легко просмотреть топологию репликации для каждого контроллера домена и использовать эти знания, чтобы вручную изменить ее и инициировать репликацию между контроллерами. С помощью Repadmin можно легко проверить метаданные репликации и векторы релевантности (up-to-dateness (UTDVEC)). Repadmin.exe является встроенной функцией в среде Windows Server, начиная с версии 2008. Она поставляется с ролью AD Directory Services, а также может быть настроена в клиентских ОС, таких как Windows 10 с RSAT. ## Список команд **Repadmin.exe** имеет множество команд, давайте остановимся на самых популярных: - **/syncall **— используется для синхронизации определенного DC с другими - **/prp — **если у вас есть политика репликации паролей (PRP), эта команда помогает управлять ею - **/queue — **показывает текущую очередь репликации - **/replicate — **эта команда помогает выполнить репликацию с одного DC на другой - **/replsingleobj — **эта команда удобна, если вам нужно реплицировать только один определенный объект между доменными контроллерами - **/replsummary — **показывает отчет о текущем состоянии репликации и доступности AD - **/showattr — **используется, когда вам нужно просмотреть атрибуты объекта - **/showbackup — **этот параметр отображает время последнего резервного копирования - **/showrepl — **если вам нужно знать текущее состояние репликации, используйте этот параметр. ## Как просмотреть общее состояние репликации Для того чтобы смотреть состояние репликации у вас она должна быть настроена, как минимум, между двумя доменными контроллерами. Начнем с общего состояния репликации, запустите cmd.exe (**start->run->cmd.exe**) и введите следующую команду: ``` repadmin /replsummary ``` В результате вы увидите все сбои репликации, которые существуют в вашей среде AD. ## Как принудительно выполнить репликацию Предположим, у вас есть сбои в репликации, и вам нужно принудительно выполнить репликацию после устранения сбоя в сети. В командной строке (**cmd.exe**) с админскими правами на любом DC запустите: ``` repadmin.exe /syncall /Aped ``` В дополнение к команде **/syncall** у нас есть несколько флагов, которые позволят синхронизировать все разделы (/A), использовать push-уведомления для того, чтобы админ мог прервать выполнение команды на каждом этапе (/p), через все сайты Active Directory (/e) используя имена хостов (/d). ## Как управлять входящей и исходящей репликацией Вы можете отключить входящую и/или исходящую репликацию с возможностью повторного включения позже. Для этого выполните следующие команды в командной строке, запущенной под администратором (**cmd.exe**): ``` repadmin.exe /options DC01 +DISABLE_INBOUND_REPL ``` Отключает входящую репликацию на контроллере домена DC01 ``` repadmin.exe /options DC01 +DISABLE_OUTBOUND_REPL ``` Отключает исходящую репликацию на контроллере домена DC01 ``` repadmin.exe /options DC01 -DISABLE_INBOUND_REPL ``` Включает входящую репликацию на контроллере домена DC01 ``` repadmin.exe /options DC01 -DISABLE_OUTBOUND_REPL ``` Включает исходящую репликацию на контроллере домена DC01. Например, опция отключения исходящей репликации — это хороший способ выполнить обновление схемы без необходимости перестраивать весь лес Active Directory. https://serverspace.by/support/help/kak-delegirovat-kontrol-nad-ou-v-active-directory.md В этой инструкции описывается, как делегировать права в Active Directory, например, права на создание и удаление пользователей. В крупных организациях существует несколько команд ИТ-администраторов и специалистов службы поддержки и в этом случае необходимо делегирование полномочий. Например, специалисты службы поддержки или руководители групп могут сбрасывать пароли, системные администраторы могут изменять членство в группах, а управлять OU могут только ИТ-архитекторы. Такое разделение обязанностей действительно полезно для оптимизации операций и безопасности. Чтобы выполнить делегирование управления, администраторы домена должны иметь разрешения или полные привилегии управления над OU. Это можно сделать несколькими способами: через **Active Directory Users and Computers**, командную строку, группы и пр. ## Делегирование через Active Directory Users and Computers Для того чтобы делегировать управление через Active Directory Users and Computers (**dsa.msc**). Выполните следующие действия: Запустите **Active ****Directory ****Users ****and ****Computers**. Щелкните правой кнопкой мыши на OU, которому вы хотите делегировать управление, и выберите **Delegate ****Control** Появится мастер делегирования контроля, где вам нужно нажать «**Next**«. В появившемся окне нужно нажать «**Add**» и выбрать пользователей или группы, которым вы хотите делегировать управление, и нажать «**Next**«. В окне «**Tasks ****to ****Delegate**» выберите задачи, которые вы хотите делегировать, вы также можете создать пользовательскую задачу с нуля. Нажмите **Next** и **Finish** Разрешения на делегирование можно просмотреть в свойствах OU на вкладке Security. ## Делегирование через командную строку Для делегирования прав доступа компания Microsoft разработала сервис **dsacls.exe**. Он хорошо подходит для назначения делегирования посредством скриптов. Он также хорошо подходит для отображения текущих прав доступа. Вы можете использовать параметр **/a** для отображения всех прав доступа у OU, например: ``` dsacls.exe "OU=Employees,DC=office,dc=local" /a ``` Здесь мы видим права доступа **KJenkins**, которые мы делегировали в нашем предыдущем примере. Чтобы добавить новые делегированные привилегии для учетной записи, нам нужно назначить ей разрешения в соответствии с определенным синтаксисом. Синтаксис состоит из основных и дополнительных прав доступа, вот список основных: - — GR — чтение - — GE — исполнение - — GW — запись - — GA – полный доступ Наиболее популярные расширенные права: - — SD — Удаление - — DT — Удаление объекта и всех дочерних объектов - — RC — Чтение информации о безопасности - — WD — Изменение доступа - — WO – Изменение владельца - — CC — Создание дочерних объектов - — DC — Удаление дочерних объектов - — RP — Чтение свойств - — WP — Запись свойств Давайте делегируем нашему пользователю KJenkins права на удаление OU Employees: ``` dsacls.exe "OU=Employees,DC=office,DC=local" /G OFFICEKJenkins:SD; ``` ## Делегирование через встроенные группы По умолчанию существуют встроенные группы, такие как Account Operators и Server Operators, которые выполняют административные задачи в Active Directory. Вы можете включить любого пользователя в эти группы и получить дополнительные полномочия в домене без необходимости предоставления полного доступа к управлению. Но имейте в виду, что встроенная группа **Account Operators** предоставляет больше разрешений, чем требуется на самом деле. Они могут создавать, изменять и удалять все объекты, кроме членов группы Domain Admins, во всех OU, кроме OU Domain Controllers. ## Лучшие практики по делегированию прав в OU — Постройте матрицу управления делегированием, чтобы документировать все права доступа к AD — Всегда используйте группы при делегировании прав, не используйте отдельные учетные записи пользователей. Так вам будет проще и безопаснее предоставлять делегированный доступ — Избегайте запрещающих разрешений, поскольку они имеют приоритет над разрешенными, и это может сделать ваши списки доступа слишком сложными для управления. — Попробуйте протестировать настройки делегирования на предмет нежелательных эффектов. https://serverspace.by/support/help/kak-upravlyat-kompyuterami-v-active-directory-chast-1-sozdanie-i-udalenie-uchetnyh-zapisej-kompyuterov.md В этой инструкции вы узнаете как создавать и удалять учетные записи пользователей в домене Active Directory. Учетные записи компьютеров представляют собой устройства, подключенные к AD. Они хранятся в базе данных AD после того, как их подключат к домену. Это необходимо для применения к ним различных GPO и отслеживания их обновлений, если у вас установлен WSUS. И что еще более важно, это нужно для установки безопасной аутентификации для пользователей, входящих в Windows. Чтобы управлять компьютерами, вам нужны права администратора домена, оператора учетной записи (Account Operators) или делегированные права на OU в котором хранятся компьютеры. Управлять можно с рабочей станции с установленными инструментами RSAT или на контроллере домена. ## Как создать учетную запись компьютера в AD Давайте создадим учетную запись компьютера, используя несколько методов. Эта учетная запись может быть использована для присоединения к ней устройства. ### Создание учетной записи компьютера с помощью ADUC Запустите **ADUC (dsa.msc)**. Перейдите к OU, в которой вы хотите хранить такие объекты, щелкните правой кнопкой мыши на этой **OU -> New-> Computer:** Или вы можете сделать это, нажав на **Action -> New -> Computer**. В окне **New Object – Computer** введите имя компьютера и имя **pre Windows 2000** в соответствии с вашей политикой именования. Выберите, какая группа может ввести эту машину в домен и нажмите OK. Поздравляю учетная запись компьютера создана! ### Создание учетной записи компьютера с помощью ADAC Запустите **ADAC(dsac.exe)**, щелкните правой кнопкой мыши на имени домена, выберите **New->Computer**. Появится окно **Create** **Computer**, где вам нужно ввести имя компьютера, имя NetBIOS, в соответствии с вашей политикой именования. Укажите OU, где вы хотите хранить компьютер, нажав на **Change** Вы также можете указать, какая группа может ввести этот компьютер в домен и защитить его от удаления. В конце нажмите OK. ### Создание учетной записи компьютера с помощью Cmd.exe Для этой задачи нам необходимо использовать **dsadd.exe**. Используйте следующую команду для создания объекта компьютера в Active Directory: ``` dsadd.exe computer "CN=WKS033,CN=Computers,DC=office,DC=local" ``` ### Создание учетной записи компьютера с помощью PowerShell Используйте следующие строки кода PowerShell для создания учетной записи компьютера с именем «WKS033» в домене office.local. ``` Import-Module ActiveDirectory New-ADComputer -Name "WKS033″ -sAMAccountName " WKS033″ -Path "CN=Computers,DC=office,DC=local" ``` ## Как удалить учетную запись компьютера в AD Важно периодически удалять старые компьютеры из домена, чтобы избежать беспорядка в отчетах WSUS и применения политик GPO. Существует несколько способов добиться этого. ### Удаление учетной записи компьютера из AD с помощью ADUC Запустите **ADUC (dsa.msc).** Перейдите в OU, содержащую нужные компьютеры, в меню **Action** выберите Find. Введите имя компьютера в поле Name и нажмите **Find ****now** В результате поиска, щелкните правой кнопкой мыши на компьютере, который вы хотите удалить и выберете опцию Delete. Нажмите **Yes** в окне подтверждения. Если после этого вы получите следующую ошибку: Снова щелкните на компьютер правой кнопкой мыши, перейдите в **Properties -> ****Object** снимите флажок «"**Protect** **object** **from** **accidental** **deletion**» и выполните операцию удаления снова. ### Удаление учетной записи компьютера из AD с помощью ADAC Запустите **ADAC (dsac.exe)**. Переключите левую панель в **Tree ****view** и выделите нужную OU. Введите имя компьютера в панели **Filter** и нажмите **Enter**. Выберите компьютер для удаления в результатах поиска, щелкните его правой кнопкой мыши и выберите **Delete**. Нажмите **Yes** для подтверждения. Если вы получите сообщение об ошибке: Щелкните правой кнопкой мыши на учетную запись компьютера **->****Properties** и снимите флажок » **Protect** **from** **accidental** **deletion**«. После этого повторите процесс удаления. ### Удаление учетной записи компьютера из AD с помощью cmd.exe Для этой задачи нам понадобится **dsrm.exe.** Используйте его со следующими параметрами для удаления учетной записи компьютера, в нашем случае это WKS033. ``` dsrm.exe "CN=WKS033,CN=Computers,DC=office,DC=local" ``` ### Удаление учетной записи компьютера из AD с помощью Windows PowerShell Эту задачу также можно легко выполнить с помощью Powershell, вот код для удаления учетной записи компьютера. В нашем примере имя компьютера WKS033 ``` Import-Module ActiveDirectory Remove-ADComputer -Identity "CN=WKS033,CN=Computers,DC=office,DC=local" ``` https://serverspace.by/support/help/kak-upravlyat-kompyuterami-active-directory-chast-2-pereimenovanie-i-prisoedinenie-kompyuterov-k-domenu.md Из этой инструкции вы узнаете как переименовывать компьютеры с ОС Windows и вводить их в домен Microsoft Active Directory. Учетные записи компьютеров представляют собой устройства, подключенные к AD. Они хранятся в базе данных AD после подключения к домену. Это необходимо для применения к ним различных GPO и отслеживания их обновлений, если у вас установлен **WSUS**. И что еще более важно – настроить безопасную аутентификацию для пользователей, при входе в систему Windows. Для того чтобы присоединить рабочую станцию к домену, устройство должно находиться в одной сети с контроллерами домена. Также можно присоединить устройство через **VPN**. В этом случае устройство должно иметь возможность зарезолвить имя среды AD. **DHCP** может в этом помочь, но вы также можете сделать это, добавив информацию о домене в файл **hosts**. ## Как присоединить компьютер к домену Присоединить компьютер к домену можно тремя различными способами, давайте рассмотрим, как это сделать на практике. ### Присоединение к домену с помощью графического интерфейса Для того чтобы присоединить Windows server к AD, выполните следующие действия: Нажмите кнопку **Пуск **или одновременно нажмите кнопку **Пуск** на клавиатуре и клавишу **X** и выберите пункт **System**. Прокрутите вниз до самого низа и нажмите на » **System** **Info** «. После этого нажмите на » **Change** **settings**» рядом с именем компьютера, а в появившемся окне нажмите **Change****** В окне » **Member** **of** **Domain** » введите имя домена в поле » **Member** **of** **Domain**» и нажмите **OK**. Введите учетные данные администратора домена и трижды нажмите **OK**. Нажмите **Close**, а затем **Restart Now****.** Поздравляем, ваша рабочая станция присоединилась к домену! ### Присоединение к домену с помощью Windows PowerShell Самый простой способ добавить устройство на базе Windows в Active Directory — это Powershell и команда **Add-Computer**: ``` Add-Computer -DomainName office.com -Credential OFFICE\Administrator Restart-Computer ``` ## Как переименовать учетную запись компьютера Переименование компьютера — довольно простая задача, которую можно выполнить тремя различными способами. ### Переименование компьютера в настройках В Windows Server это можно сделать аналогично введению в домен, но в этот раз мы сделаем это немного по-другому. Нажмите правой кнопкой мыши кнопку **Пуск** или одновременно нажмите кнопку **Пуск** на клавиатуре и клавишу **X**, выберите пункт **System**. Нажмите на **Rename** **this** **PC** и введите новое имя устройства в соответствии с политикой именования. Нажмите **Next**, введите учетные данные администратора домена, если ваш компьютер уже находится в домене, а затем перезагрузите сервер. После перезапуска у вас будет сервер с новым именем. ### Переименование компьютера с помощью Cmd.exe Переименование компьютера в командной строке — простая задача, просто введите следующий код на целевом компьютере: ``` netdom.exe renamecomputer localhost /newname WKS033 /reboot ``` ### Переименование компьютера с помощью Windows PowerShell Windows PowerShell позволяет переименовать компьютер за считанные секунды, набрав две короткие команды на целевой машине: ``` Rename-Computer WKS001 Restart-Computer ``` https://serverspace.by/support/help/kak-upravlyat-ou-v-active-directory.md Из этой инструкции вы узнаете как создавать, изменять и удалять подразделения (Organizational Units) в домене Active Directory. **Организационная единица или, как обозначено в русской версии ****Windows ****server, подразделение** (Organizational Unit) — это субконтейнер в Active Directory, в который можно помещать пользователей, группы, компьютеры и другие объекты AD. Подразделения (OU) управляются администраторами домена. Вы также можете настроить делегирование управления над подразделением с помощью мастера делегирования управления. OU могут быть вложенными, и к ним можно применять групповые политики. ## Создание подразделения (OU) OU можно создать с помощью Active Directory Administrative Center (ADAC), Active Directory Users and Computers (ADUC), командной строки и PowerShell. ### Создание подразделения с помощью Active Directory Administrative Center Давайте создадим подразделение с помощью ADAC: Запустите Active Directory Administrative Center (dsac.exe). Переключитесь в режим просмотра дерева и разверните домен или подразделение, в котором вы хотите разместить новое. Щелкните правой кнопкой мыши на OU или домен, выберите "**New"**, а затем выберите **Organizational Unit**. Появится окно создания подразделения: Введите имя OU и нажмите OK, чтобы его создать. ### Создание подразделения с помощью командной строки Чтобы создать OU с помощью cmd, запустите **dsadd.exe** со следующими параметрами: ``` dsadd.exe ou "OU=testorg,DC=office,DC=local" -desc "TestOU" ``` Эта строчка создаст TestOU в домене с описанием «TestOU». ### Создание подразделения с помощью Windows PowerShell Для создания нового подразделения с помощью PowerShell нам нужно использовать команду **New-ADOrganizationalUnit**. Запустите PowerShell от имени администратора и введите следующее: ``` Import-Module ActiveDirectory New-ADOrganizationalUnit "TestOU" -Description "TestOU" ``` Эта строчка создаст TestOU в домене с описанием «TestOU». ## Удаление подразделения AD Подразделения по умолчанию защищены от случайного удаления. Чтобы удалить его, нам нужно снять флажок **Protected from Accidental Deletion** в свойствах. ### Удаление подразделения с помощью Active Directory Administrative Center Откройте **Active Directory Administrative Center** (dsac.exe). Переключитесь в режим просмотра дерева, разверните свой домен и найдите OU, которое вы хотите удалить. Щелкните OU правой кнопкой мыши и выберите "**Delete**". Появится окно подтверждение удаления: Нажмите **Yes** для подтверждения. Если OU содержит дочерние объекты, нажмите еще раз. ### Удаление подразделения с помощью командной строки Для удаления OU с помощью командной строки необходимо использовать инструмент **dsrm.exe** в cmd, запущенном от имени администратора, со следующим синтаксисом: **_ _** ``` dsrm.exe "OU=TestOU,DC=office,DC=local" -subtree ``` Эта строчка полностью удалит OU с любыми объектами внутри. ### Удаление подразделения с помощью Windows PowerShell Для удаления подразделения нам нужно использовать команду **New-ADOrganizationalUnit** в PowerShell запущенном от имени администратора: ``` Import-Module ActiveDirectory Remove-ADObject -Identity "OU=TestOU,DC=office,DC=local" -Recursive -Confirm:$False ``` Эта строчка полностью удалит OU TestOU со всеми существующими в ней объектами. ## Изменение подразделения AD Иногда вам нужно изменить OU. Вот как это сделать тремя различными способами. ### Изменение подразделения с помощью Active Directory Administrative Center Откройте Active Directory Administrative Center (dsac.exe). Переключитесь в режим просмотра дерева и найдите OU, которую вам нужно изменить. Щелкните на нем правой кнопкой мыши и выберите «**Properties:**«. Измените свойства, которые вам нужны. Например, вы можете изменить описание или добавить менеджера. Снимите флажок с параметра «**Защищен от случайного удаления**» и нажмите OK. ### Изменение подразделения с помощью командной строки Для того чтобы изменить OU, необходимо использовать **dsmod.exe** в cmd от имени администратора. Но в этом случае вы можете изменить только описание. ``` dsmod.exe ou "OU=TestOU,DC=office,DC=local" -desc "New Description" ``` Здесь мы назначаем » **_New _****_Description_** » для TestOU. ### Изменение подразделения с помощью Windows PowerShell Команда **Set-ADOrganizationalUnit** используется для изменения OU. Она очень мощная, в отличие от **dsmod.exe**. Вы можете легко изменить множество параметров OU, таких как DistinguishedName, LinkedGroupPolicyObjects или ManagedBy. Вот пример того, как изменить параметр ManagedBy в OU: ``` Import-Module ActiveDirectory Set-ADOrganizationalUnit -Identity "OU=TestOU,DC=office,DC=local" -ManagedBy "CN=User,CN=Users,DC=office,DC=local" ``` https://serverspace.by/support/help/kak-upravlyat-uchetnymi-zapisyami-polzovatelej-v-active-directory-chast-2-peremeshhenie-i-pereimenovanie-polzovatelej.md Из этой инструкции вы узнаете как перемещать и переименовывать учетные записи пользователей в домене Active Directory. Пользовательские учетные записи одни из самых популярных объектов в AD. Они нужны для аутентификации и авторизации на рабочих компьютерах и во многих сервисах, интегрированных с AD. Решение различных проблем связанных с УЗ пользователей, а также управление ими является одной из главных рутин для администраторов и специалистов хелпдеска. Данное руководство поможет вам сделать это несколькими способами. Чтобы управлять УЗ пользователей, необходимо войти на контроллер домена или сервер или устройство с установленными средствами удаленного администрирования сервера (**RSAT**) для **Active Directory Domain Services**. Для того, чтобы не было ошибок доступа нам нужен аккаунт администратора домена или группы операторов учетных записей (**Account Operators group**) или нам нужна УЗ, которая делегирована на создание пользовательских объектов в домене или в нужной нам организационной единице (**OU**), которую мы будем использовать для хранения аккаунтов. ## Как переместить учетную запись пользователя После создания пользователя вы можете захотеть переместить его в другую OU или контейнер, вот несколько инструкций для этого. ### Перемещение учетной записи пользователя через Active Directory Users and Computers В Active Directory Users and Computers (dsa.msc) включите «Advanced Features» в меню «View». Перейдите к OU или контейнеру с нужной учетной записью пользователя. В меню «**Actions**» выберите «**Find**". В поле "**Name**" введите имя учетной записи пользователя и нажмите кнопку "**Find ****now**" В списке результатов поиска выберите нужный объект пользователя. Щелкните правой кнопкой мыши на учетной записи пользователя. В меню выберите **Move** Откроется окно Перемещения: ### В этом окне перейдите к OU или контейнеру, в который вы хотите переместить пользователя, выберите его и нажмите **OK**. ### Перемещение учетной записи пользователя через командную строку Чтобы переместить объект пользователя (в нашем случае GSoul) в OU «**Employees**«, запустите **dsmove.exe** в cmd со следующими параметрами: ``` dsmove.exe "CN=GSoul,CN=Users,DC=office,DC=local" -newparent "OU=Employees,DC=office,DC=local" ``` ### Перемещение учетной записи пользователя с помощью Windows PowerShell Используйте следующий код Powershell для перемещения учетной записи пользователя (GSoul в нашем примере) в OU «**Employees**«. ``` Import-Module ActiveDirectory Move-ADObject -Identity:"CN=GSoul,CN=Users,DC=office,DC=local" -TargetPath:"OU=Employees,DC=office,DC=local" ``` ## Как переименовать учетную запись пользователя в Active Directory Для того чтобы переименовать учетную запись пользователя, выполните следующие инструкции. ### Переименование учетной записи пользователя в Active Directory Users and Computers В Active Directory Users and Computers (dsa.msc) в меню View включите **Advanced Features**. Перейдите к OU или контейнеру, в котором находится нужный объект пользователя. Щелкните его правой кнопкой мыши и выберите **Find** В поле **Name** введите имя пользователя и нажмите «**Find ****now**«. В результатах поиска щелкните правой кнопкой мыши нужную учетную запись пользователя и выберите **Rename**. Введите новое имя и нажмите **Enter**. В появившемся окне введите новые данные для других атрибутов и нажмите **OK**. ### Переименование учетной записи пользователя через командную строку Для переименования пользователя используйте команду **dsmove.exe** со следующими параметрами: ``` dsmove.exe "CN=GSoul,CN=Users,DC=office,DC=local" -NewName "Gordon Gates" ``` ### Переименование учетной записи пользователя с помощью PowerShell Чтобы переименовать пользователя в AD, введите этот код в Windows PowerShell: ``` Import-Module ActiveDirectory Rename-ADObject -Identity "CN=GSoul,CN=Users,DC=office,DC=local" -NewName "Gordon Gates" ``` https://serverspace.by/support/help/kak-upravlyat-uchetnymi-zapisyami-polzovatelej-v-active-directory-chast-3-vklyuchenie-vyklyuchenie-i-ustanovka-sroka-dejstviya-dlya-polzovatelej.md Из этой инструкции вы узнаете как включать, выключать и устанавливать срок действия учетной записи пользователя в домене Active Directory. Пользовательские учетные записи одни из самых популярных объектов в AD. Они нужны для аутентификации и авторизации на рабочих компьютерах и во многих сервисах, интегрированных с AD. Решение различных проблем связанных с УЗ пользователей, а также управление ими является одной из главных рутин для администраторов и специалистов хелпдеска. Данное руководство поможет вам сделать это несколькими способами. Чтобы управлять УЗ пользователей, необходимо войти на контроллер домена или сервер или устройство с установленными средствами удаленного администрирования сервера (RSAT) для Active Directory Domain Services. Для того, чтобы не было ошибок доступа нам нужен аккаунт администратора домена или группы операторов учетных записей (Account Operators group) или нам нужна УЗ, которая делегирована на создание пользовательских объектов в домене или в нужной нам организационной единице (OU), которую мы будем использовать для хранения аккаунтов. ## Как включить и отключить учетную запись пользователя в Active Directory Когда вы хотите убрать возможность логина в AD для учетной записи пользователя, вы можете отключить ее. В том случае если объект пользователя отключен, но он вам снова нужен по какой-то причине, например, сотрудник вернулся из декретного отпуска, вы можете включить его снова. Вот руководство, как это сделать несколькими способами. ### Включение и отключение УЗ пользователя с помощью Active Directory Users and Computers Чтобы включить или отключить пользователя с помощью ADUC, сделайте следующее: Войдите в Active Directory Users and Computers (**dsa.msc**). Найдите OU или контейнер, где содержится нужный вам аккаунт, щелкните правой кнопкой по OU и выберите "**Find**". В поле «Name» введите имя объекта и нажмите кнопку **Find Now**. В поле «**Search**» щелкните правой кнопкой мыши на юзера и выберите **Enable account** для включения УЗ или **Disable account** для ее отключения в зависимости от того, что вам нужно, и нажмите OK. ### Включение и отключение аккаунта пользователя с помощью cmd.exe Это задача для dsmod.exe, для включения учетной записи используйте его со следующими параметрами: ``` dsmod.exe "CN=GSoul,CN=Users,DC=office,DC=local" -disabled no ``` А эта команда отключит учетную запись: ``` dsmod.exe user "CN=GSoul,CN=Users,DC=office,DC=local" -disabled yes ``` ### Включение и отключение учетной записи пользователя с помощью Windows PowerShell Ниже приведен код PowerShell для включения учетной записи пользователя: ``` Import-Module ActiveDirectory Enable-ADAccount -Identity "CN=GRobinson,CN=Users,DC=office,DC=local" ``` А эта предназначена для отключения учетной записи пользователя: ``` Import-Module ActiveDirectory Disable-ADAccount -Identity "CN=GRobinson,CN=Users,DC=office,DC=local" ``` ## Как установить срок действия учетной записи для пользователя Учетные записи пользователей могут быть настроены с истечением срока действия после определенного периода времени. ### Установка срока действия учетной записи с помощью Active Directory Users and Computers Чтобы установить срок действия учетной записи в ADUC, выполните следующие простые шаги: Откройте ADUC (**dsa.msc**), перейдите к OU или контейнеру, в котором находится нужный пользователь, щелкните правой кнопкой мыши на белом пространстве и выберите **Find**. В поле **Name** введите имя или начало имени и нажмите кнопку **Find Now**. В результатах поиска выберите юзера, которому нужно установить срок действия. Щелкните правой кнопкой мыши на пользователя и выберите **Properties**. Перейдите на вкладку **Account**, в нижней части вкладки измените параметр **Account expires** (Истечение срока действия учетной записи) на **End of:** и выберите нужную дату. Нажмите **OK**, чтобы сохранить изменения. ### Установка срока действия учетной записи с помощью командной строки Используйте dsmod.exe для установки истечения срока действия учетной записи в Active Directory: ``` dsmod.exe user "CN=GSoul,CN=Users,DC=office,DC=local" -acctexpires 90 ``` ### Установка срока действия учетной записи с помощью Windows PowerShell Чтобы установить срок действия учетной записи для пользователя в Employees OU, выполните следующий PowerShell скрипт: ``` Import-Module ActiveDirectory Set-ADAccountExpiration -Identity "CN=GSoul,OU=Employees,DC=office,DC=local" -DateTime "11/11/2021 12:00:00″ ``` https://serverspace.by/support/help/kak-upravlyat-uchetnymi-zapisyami-polzovatelej-v-active-directory-chast-4-nahozhdenie-zablokirovannyj-polzovatelej-i-ih-razblokirovka.md Из данной инструкции вы узнаете как находить заблокированные учетные записи пользователей в Active Directory и разблокировать их. Пользовательские учетные записи одни из самых популярных объектов в AD. Они нужны для аутентификации и авторизации на рабочих компьютерах и во многих сервисах, интегрированных с AD. Решение различных проблем связанных с УЗ пользователей, а также управление ими является одной из главных рутин для администраторов и специалистов хелпдеска. Данное руководство поможет вам сделать это несколькими способами. Чтобы управлять УЗ пользователей, необходимо войти на контроллер домена или сервер или устройство с установленными средствами удаленного администрирования сервера (RSAT) для Active Directory Domain Services. Для того, чтобы не было ошибок доступа нам нужен аккаунт администратора домена или группы операторов учетных записей (Account Operators group) или нам нужна УЗ, которая делегирована на создание пользовательских объектов в домене или в нужной нам организационной единице (OU), которую мы будем использовать для хранения аккаунтов. ## Как найти заблокированные учетные записи пользователей Учетные записи пользователей могут быть по какой-то причине заблокированы, и вам нужно устранить причину блокировки учетной записи, но сначала вам нужно получить список заблокированных пользователей. Есть несколько способов получить такой список. ### Поиск заблокированных учетных записей пользователей с помощью Active Directory Administrative Center Запустите Active Directory Administrative Center (**dsac.exe**). Выберите OU или контейнер, в котором вы хотите найти заблокированных пользователей. Разверните верхнюю панель, нажав на кнопку со стрелкой в правом верхнем углу. Нажмите на кнопку **Add criteria** и выберите критерий **Users with enabled but locked accounts** (Пользователи с включенными, но заблокированными учетными записями). Нажмите **Add**, и заблокированные учетные записи будут отображены. ### Поиск заблокированных учетных записей пользователей с помощью Windows PowerShell Чтобы найти заблокированные учетные записи в AD, используйте следующий PowerShell скрипт: ``` Import-Module ActiveDirectory Search-ADAccount -LockedOut -UsersOnly | Format-Table Name,LockedOut -AutoSize ``` ## Как разблокировать учетную запись пользователя Блокировка учетной записи — один из самых частых случаев, с которым сталкиваются системные администраторы в организациях. Иногда трудно установить ее причину, поэтому требуется глубокое расследование. Но это не повод отключать политику блокировки учетных записей, поскольку она помогает защитить учетные записи пользователей от брутфорс атак. В этом руководстве мы рассмотрим простые методы разблокировки пользователей. ### Разблокирование учетных записей пользователей через Active Directory Administrative Center Чтобы разблокировать объект пользователя, откройте Active Directory Administrative Center (**dsac.exe**), перейдите к OU или контейнеру, в котором содержатся пользователи. Щелкните правой кнопкой мыши на пользователя, которого вы хотите разблокировать, и выберите Properties. В появившемся окне нажмите **Unlock account** (Разблокировать учетную запись) и затем **OK**. Чтобы разблокировать все заблокированные учетные записи в определенном OU или контейнере, выберите OU или контейнер, в котором вы хотите найти заблокированных пользователей. Разверните верхнюю панель, нажав на кнопку со стрелкой в правом верхнем углу. Нажмите на кнопку **Add criteria** и выберите критерий **Users with enabled but locked accounts** (Пользователи с включенными, но заблокированными учетными записями). Нажмите **Add**, и заблокированные учетные записи отобразятся. Выберите все отображенные учетные записи, зайдите в свойства и нажмите **Unlock account** (Разблокировать учетную запись). ### Разблокировка учетных записей пользователей с помощью Windows PowerShell Чтобы разблокировать учетную запись пользователя, необходимо выполнить следующий код PowerShell: ``` Import-Module ActiveDirectory Unlock-ADAccount -Identity "CN=User,CN=Users,DC=office,DC=local" ``` А для того, чтобы разблокировать все заблокированные учетные записи, используйте команду Search-ADAccount: ``` Import-Module ActiveDirectory Search-ADAccount -LockedOut -UsersOnly | Unlock-ADAccount ``` https://serverspace.by/support/help/kak-upravlyat-uchetnymi-zapisyami-polzovatelej-v-active-directory-chast-5-izmenenie-neskolkih-polzovatelej-odnovremenno.md Из этой инструкции вы узнаете как изменить несколько учетных записей пользователей в домене Active Directory одновременно. Пользовательские учетные записи одни из самых популярных объектов в AD. Они нужны для аутентификации и авторизации на рабочих компьютерах и во многих сервисах, интегрированных с AD. Решение различных проблем связанных с УЗ пользователей, а также управление ими является одной из главных рутин для администраторов и специалистов хелпдеска. Данное руководство поможет вам сделать это несколькими способами. Чтобы управлять УЗ пользователей, необходимо войти на контроллер домена или сервер или устройство с установленными средствами удаленного администрирования сервера (RSAT) для Active Directory Domain Services. Для того, чтобы не было ошибок доступа нам нужен аккаунт администратора домена или группы операторов учетных записей (Account Operators group) или нам нужна УЗ, которая делегирована на создание пользовательских объектов в домене или в нужной нам организационной единице (OU), которую мы будем использовать для хранения аккаунтов. ## Как изменить несколько пользователей одновременно Иногда возникает необходимость изменить один атрибут для нескольких объектов. Изменение нескольких объектов одновременно немного отличается от редактирования одного пользователя, есть несколько способов добиться этого. ### Изменение нескольких пользователей одновременно с помощью Active Directory Users and Computers ADUC хорош, когда вам нужен простой фильтр для группировки пользователей. В нем есть механизм выбора, например, вы можете выбрать несколько пользователей, зажав кнопку **ctrl**, или группу, зажав кнопку **shift**. Вы также можете легко выбрать всех пользователей в OU или контейнере нажав **Ctrl + A**. Чтобы изменить несколько пользователей с помощью ADUC, выполните следующие действия: В Active Directory Users and Computers (dsa.msc) перейдите к OU или контейнеру, в котором находятся нужные пользователи. Выберите пользователей, выделив их, удерживая кнопку **Shift**. Щелкните объекты правой кнопкой мыши и выберите **Properties**. Измените атрибуты, которые вы хотите изменить, и нажмите OK. ### Изменение нескольких пользователей одновременно с Active Directory Administrative Center Active Directory Administrative Center отличается от ADUC тем, что предоставляет дополнительные фильтры. Запустите Active Directory Administrative Center и выберите OU в качестве базовой области для фильтра. Разверните верхнюю панель, нажав на кнопку с маленькой стрелкой в правом верхнем углу. Нажмите кнопку **Add criteria**: Добавьте критерии, которые вы хотите использовать, например, пользователей с истекшим сроком действия паролей, или вы можете создать фильтр по одному из атрибутов. Выберите фильтр и нажмите кнопку **Add**, чтобы добавить его. Вы можете использовать такие соответствия, как "**начинается с**"(starts with), "**равно**"(equals), "**не равно**"(does not equal) и прочие. После получения списка объектов на основе вашего фильтра нажмите **Ctrl+A**, чтобы выделить их все, и нажмите **Properties**. Измените атрибуты, которые вы хотите, и нажмите OK. ### Изменение нескольких пользователей одновременно с помощью Windows PowerShell Настройка фильтра в PowerShell более сложна, ее лучше всего использовать для многократного изменения нескольких пользовательских объектов. В нашем примере мы отфильтруем все учетные записи с именем, начинающимся на «admin», и включим функцию предотвращения случайного удаления(**Prevent** **from** **accidental** **deletion**) для всех этих учетных записей: ``` Import-Module ActiveDirectory Get-ADUser -ldapfilter "(sAMAccountName=admin*)" | Set-ADObject — ProtectedFromAccidentalDeletion $true ``` https://serverspace.by/support/help/dobavlenie-toma-i-sozdanie-razdelov-v-windows.md Эта инструкция поможет вам создать раздел l диска и добавить диска в Windows Server с помощью утилиты управления дисками. ## Инструкция по монтированию новых томов и созданию разделов на виртуальных серверах с операционной системой семейства Windows. После добавления тома в панели управления, необходимо сделать его доступным для операционной системы. Подключитесь к серверу с правами суперпользователя. Перейдите в консоль управления Server Manager. В верхнем меню выберите "Tools" → "Computer Management". Примечание: для Windows Server 2008 откройте Server Manager и в вертикальном меню слева выберите "Storage" → "Disk Management". В левом меню в каталоге "Storage", выберите "Disk Management" (1). В правой нижней панели будет отображаться добавленный том (Disk1) с неразмеченной областью (2) (Unallocated — на примере ниже эта область в 40 Gb). Далее необходимо сделать добавленный том видимым для операционной системы. Если том находится в состоянии "Offline", предварительно щелкните по нему правой кнопкой мыши, в контекстном меню выберите пункт "Online". В модуле управления томами щелкните правой кнопкой мыши том, который требуется инициализировать, а затем выберите пункт "Initialize Disk". В появившемся диалоговом окне нажмите кнопку ОК, чтобы принять стиль раздела по умолчанию или измените стиль раздела (GPT или MBR). Примечание: MBR (Master Boot Record) и GPT (GUID Partition Table) представляют собой два разных способа хранения информации о разделах на жестком диске. Данная информация включает в себя как сведения о принципе работы накопителей, так и определяет какой раздел станет загрузочным для системы. Для создания простого тома — щелкните правой кнопкой мыши по области неразмеченного пространства, выберите в появившемся меню пункт "New Simple Volume". В появившемся окне мастера установки щелкните "Next" и укажите размер тома (вы можете принять вариант по умолчанию и использовать максимальное значение), затем снова щелкните "Next". Назначьте для тома букву или примите вариант по умолчанию, затем еще раз щелкните "Next". Укажите файловую систему, которую вы хотите использовать (обычно это NTFS), затем щелкните "Next" и "Finish". Добавленный том отобразится в списке устройств, а в нижней панели размеченная область. В файловом менеджере можно также увидеть добавленное устройство, размером 40 ГБ. https://serverspace.by/support/help/shpargalka-po-komandam-linux.md Данная шпаргалка содержит около 100 терминальных команд для операционной системы Linux, которые помогут системному администратору. Бывает, что некоторые команды терминала_ Linux_ сложно вспомнить, и сохранение их на компьютере или на бумаге в качестве шпаргалки является хорошей практикой. Этот список не является полным, но он содержит наиболее часто используемые команды. Не стесняйтесь добавить свои наиболее часто используемые команды в комментариях ниже, а так же поделиться этим списком. ## Пользователи - **Id** — Подробная информация о пользователе (uid, gid и группа). - **last** — Список информации о последних входах в систему, включая время, имя пользователя, ip-адрес и длительность сеанса. - **who** — Просмотр авторизованных пользователей - **groupadd «testgroup»** — Создает группу с именем «testgroup». - **adduser NewUser **— Добавляет пользователя с именем «NewUser». - **userdel NewUser **— Удаляет пользователя с именем «NewUser». - **usermod NewUser** — изменяет информацию о пользователе «NewUser». ## Навигация по каталогам - **cd /.** — Переход в основной каталог - **cd —** Переход в домашний каталог (переменная $HOME) - **cd /root** — Переход в каталог /root - **cd ..** — Переход на один уровень ниже - **cd /root/.ssh** — Переход в скрытую папку .ssh ## Работа с файлами - **ls -al** – Показывает файлы и каталоги в текущей папке - **pwd **— Отображает текущий рабочий каталог - **mkdir NewFolder** — Создает новый каталог с именем «NewFolder». - **rm NewFile** — Удаляет файл с именем «NewFile» - **rm -f NewFile** — Принудительное удаление файла с именем «NewFile» - **rm -r NewFolder** — Рекурсивно удаляет каталог с именем «NewFolder» - **rm -rf NewFolder** — Принудительное удаление каталога с именем «NewFolder» рекурсивно - **cp oldfile1 newfile2** — Копирует содержимое oldfile1 в newfile2 - **cp -r olddir1 newdir2** — Рекурсивно копирует каталог «olddir1» в «newdir2». Dir2 будет создан, если он не существует. - **mv oldfile1 newfile2** — Переименовывает «oldfile1» в «newfile2». - **ln -s /etc/log/file logfile** — Создает ярлык на файл - **touch newfile** — Создает пустой файл с именем newfile - **cat > newfile** — Помещает STDIN в newfile - **more newfile** — Выводит содержимое newfile по частям - **head newfile** — Выводит первые 10 строк файла newfile - **tail newfile** — Вывод последних 10 строк newfile - **gpg -c newfile** — Шифрует newfile в формат gpg с помощью пароля и сохраняет его в том же каталоге. - **gpg newfile.gpg** – Расшифровывает gpg файл - **wc newfile** — Выводит количество байт, слов и строк нового файла. ## Права доступа к файлам/каталогам - **chmod 777 /root/ssh** — устанавливает права rwx(чтение, запись, выполнение) на файл ssh для всех, кто имеет доступ к серверу (владелец, группа, другие) - **chmod 755 /root/ssh** — Настраивает разрешения rwx для владельца и r_x для группы и других. - **chmod 766 /root/ssh** — Устанавливает права rwx для владельца и rw для группы и других. - **chown newuser newfile** — Меняет владельца newfile на newuser - **chown newuser:newgroup newfile** — Изменяет владельца и группу-владельца для newfile на newuser и newgroup - **chown newuser:newgroup newfolder** — Меняет владельца и группу-владельца каталога newfolder на newuser и newgroup - **stat -c «%U %G» newfile** — отображает владельцев пользователей и групп newfile ## Поиск - **grep searchargument newfile** — Поиск аргумента searchargument в newfile - **grep -r searchargument newfolder** — рекурсивно просматривает все файлы в папке newfolder на наличие поискового аргумента - **locate newfile** — Показывает все местоположения нового файла - **find /etc/ -name «searchargument»** — Находит файлы с именем, начинающимся с searchargument, в каталоге /etc - **find /etc/ -size +50000k** — Найти файлы размером более 50000k в каталоге /etc. ## Архивирование - **tar -cf archive.tar newfile** — Создать архив ‘archive.tar’ из файла ‘newfile’ - **tar -xf archive.tar** — Распаковать файл ‘archive.tar’ - **tar -zcvf archive.tar.gz /var/log/** — Создать архив из каталога /var/log - **gzip newfile** — Сжать новый файл (он будет иметь расширение .gz). ## Установка программ из пакетов - **rpm -i pkg_program.rpm** — Устанавливает пакет rpm (CentOS, RHEL) - **rpm -e pkg_name** — Удаляет пакет rpm (CentOS, RHEL) - **dnf install pkg_name** — Устанавливает пакет с помощью dnf из репозитория. Ранее использовался YUM, но недавно YUM был заменен на DNF. (CentOS, RHEL) - **dpkg -i pkg_name** — Установка из deb-пакета (Debian, Ubuntu, Mint) - **dpkg -r pkg_name** — Удаляет deb-пакет (Debian, Ubuntu, Mint) - **apt install pkg_name** — Устанавливает пакет из репозитория (Debian, Ubuntu, Mint) - **apt remove pkg_name** — Удаляет пакет (Debian, Ubuntu, Mint) - **apt upgrade && apt update** — Обновление пакетов в системе (Debian, Ubuntu, Mint) и последующее обновление репозиториев. ## Процессы - **ps** — Выводит текущие запущенные процессы - **ps aux | grep ‘bash’** — Найти идентификатор процесса ‘bash’ - **pmap -x 11** — Сопоставить процесс с PID = 11 в памяти процесса - **top** — Показывает все запущенные процессы - **kill pid** — Завершить процесс по pid - **killall process** — Завершить все процессы с именем «process» - **pkill process-name** — Послать сигнал процессу - **bg** — Отправить приостановленный процесс на фоновое выполнение - **fg** — Вывести запущенный процесс из фона - **fg process** — Вывести процесс с именем «process» из фонового режима - **lsof** – Показать списки файлов, которые используют процессы - **renice 19 PID** — Устанавливает самый низкий приоритет процесса - **pgrep bash** — найти идентификатор процесса bash - **pstree** — Показывает древовидное представление процессов ## Система - **uname** — Показать информацию о системе - **uname -r** — Показывает информацию о ядре Linux - **uptime** — Продолжительность работы системы и средняя загрузка - **hostname** — Показывает имя хоста - **hostname -i** — Показывает IP-адрес хоста - **last reboot** — Показывает историю перезагрузок - **date** — Показывает дату и время - **timedatectl** — Выводит и изменяет дату и время - **cal** — Выводит календарь - **w** — Отображает пользователей, работающих в системе - **whoami** — Отображает ваше имя пользователя - **finger root** — Показывает информацию о пользователе root (требуется установка с помощью «apt-get install finger»). ## Аппаратное обеспечение - **dmesg** — Отображает системные сообщения при загрузке системы - **cat /proc/cpuinfo** — Показывает информацию о процессоре - **cat /proc/meminfo** — Показывает информацию об оперативной памяти - **lshw** — Показывает информацию об устройствах - **lsblk** — Показать информацию о жестком диске - **free -m** — Освобождает память: RAM и swap (переключатель -m в MB) - **lspci -tv** — Показывает информацию об устройствах PCI в виде дерева - **lsusb -tv** — Отображает USB-устройства в древовидном виде. - **dmidecode** — Показывает информацию об устройствах BIOS - **hdparm -i /dev/xda** — Показывает информацию о диске - **hdparm -tT /dev/xda** — Показывает скорость чтения и записи xda - **badblocks -s /dev/xda** — Показывает тест на наличие битых секторов. ## Использование диска - **df -h** — Показывает свободное пространство на смонтированных разделах (в байтах) - **df -i** — Показывает свободные inodes в файловой системе - **fdisk -l** — Показывает информацию о диске, разделах и файловой системе - **du -sh** — Отображает нераспределенное пространство на смонтированных разделах в MB, GB, TB - **findmnt** — Отображает все точки монтирования - **mount /dev/sdb1 /mnt** — Монтирует раздел 1 диска sdb в /mnt ## Сеть - **ip addr show** — Показывает IP-адреса всех доступных сетевых интерфейсов - **ip address add 192.168.0.1/24 dev eth0** — Присваивает адрес 192.168.0.1 интерфейсу eth0 - **ifconfig** — Показывает IP-адреса всех доступных сетевых интерфейсов - **ping 192.168.0.1** — Отправляет запрос по протоколу ICMP для подключения к узлу 192.168.0.1. - **whois domain** — Показывает информацию о доменном имени - **dig domain** — Получает информацию DNS о домене - **dig -x 192.168.0.1** — Инвертирует разрешение имен - **host serverspace.us** — Резолвит адрес хоста - **hostname -I** — Показывает локальные адреса - **wget имя_файла(ссылка на файл)** — Загружает файл - **netstat -pnltu** — Показывает все порты, прослушиваемые на хосте (требуется «apt-get install net-tools») ## Удаленное подключение - **ssh root@host** — Подключение к удаленному хосту по ssh от имени root - **ssh -p port_number user@host** — Подключается к удаленному хосту, если используется порт ssh, отличный от 22. - **ssh host** — Использует соединение по умолчанию в качестве текущего пользователя - **telnet host** — Использует соединение telnet (порт 23). https://serverspace.by/support/help/shpargalka-po-cmd-komandam-v-windows.md Данная статья содержит описание более 50 часто используемых команд в командной строке Windows, которые помогут системному администратору. Бывает, что некоторые команды _Windows cmd_ сложно вспомнить, и сохранение их на компьютере или на бумаге в качестве шпаргалки является хорошей практикой. Этот список не является полным, но он содержит наиболее часто используемые команды. Не стесняйтесь добавить свои наиболее часто используемые команды в комментариях ниже, а так же поделиться этим списком. ## Управление файлами и папками - **COPY** — Копирование файлов в другое место - **DIR** — Отображение файлов и папок в текущем каталоге - **DEL или ERASE** — Удаление файлов - **EDIT** — Запуск редактора файлов - **CD** — Изменить каталог - **EXPAND** — Распаковать сжатые файлы - **FC** — Сравнивает файлы и показывает различия между ними - **FIND** — Найти текстовую строку в файле - **MD или MAKEDIR** — Создать папку - **MOVE** — Переместить файлы из одной папки в другую - **PRINT** – отобразить содержимое текстового файла - **RD или RMDIR** — удалить папку - **REN или RENAME** — переименовать файл или папку - **REPLACE** — Замена файлов в одном каталоге на файлы с тем же именем в другом каталоге - **ROBOCOPY** — Использует программу робокопи для копирования файлов и каталогов - **TREE** — Показывает структуру каталогов диска или папки - **TYPE** — Отображает содержимое текстовых файлов - **OPENFILES** — Управление открытыми локальными или сетевыми файлами - **XCOPY** — Копирование файлов и деревьев каталогов ## Приложения и процессы - **SCHTASKS** – Запланированный запуск приложения приложения (планировщик задач) - **SHUTDOWN** — Выключение или перезагрузка компьютера - **TASKLIST** — Список выполняемых задач - **TASKKILL** — Остановить или прекратить выполнение задачи (для остановки задачи используется PID, который можно узнать из TASKLIST). - **REG** — Запустить редактор реестра - **RUNAS** — Запуск задачи от имени другого пользователя ## Управление дисками - **CHKDISK** — Проверяет диск и показывает статистику - **DEFRAG** — Запуск дефрагментации диска - **CHKNTFS** — Отображает или изменяет выполнение проверки диска при загрузке - **COMPACT** — Отображает и изменяет сжатие файлов в разделах NTFS - **CONVERT** — преобразование дискового тома FAT в NTFS - **DISKPART** — Отображение и настройка свойств разделов диска - **FORMAT** — Форматирование диска - **FSUTIL** — Отображение и настройка свойств файловой системы - **LABEL** — Создание, изменение или удаление метки тома диска - **RECOVER** — Восстановление данных с поврежденного или испорченного диска - **VOL** — Отображение метки тома и серийного номера диска ## Системная информация - **DATE** — Выводит или устанавливает текущую дату - **TIME** — Выводит или устанавливает системное время - **DRIVERQUERY** — Отображает текущее состояние и свойства драйвера устройства - **HOSTNAME** — Отображает имя компьютера - **SYSTEMINFO** — Отображает информацию о конфигурации компьютера - **VER** — Позволяет просмотреть версию Windows - **GPRESULT** — Отображает текущие примененные групповые политики (RSoP) - **GPUPDATE** — Обновление групповых политик ## Сеть - **IPCONFIG **— Отображает информацию о сетевых интерфейсах - **PING** — Отправляет ICMP-запросы на целевой хост, проверяет его доступность - **TRACERT** – Отображение пути пакетов в сети - **NSLOOKUP** — Поиск IP-адреса по имени ресурса - **ROUTE** — Отображает таблицы сетевых маршрутов - **ARP** — Показывает таблицу с IP-адресами, преобразованными в физические адреса - **NETSH** — Запускает программу управления сетевыми настройками - **GETMAC** — Показывает MAC-адрес сетевого адаптера - **TFTP** — Запускает TFTP-клиент в консоли ## Настройка командной строки - **CLS** — Очистить экран - **CMD** — Отображает другую командную строку - **COLOR** — Устанавливает цвет текста и фона в консоли - **PROMPT** – Изменение начального текста командной строки - **TITLE** — Присвоение заголовка для текущего сеанса - **HELP** — Запуск справки CMD - **EXIT** — Выход из командной строки https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-3-upravlenie-gruppami-s-istekayushhim-srokom-dejstviya-i-prosmotr-vlozhennyh-grupp.md В AD группы нужны для авторизации прав. Узнайте как добавлять пользователя в группу временно, а так же как просмотреть вложенные группы В типичных лесах Active Directory группы необходимы для авторизации прав пользователей. Они могут использоваться для распространения информации через почту или предоставлять доступ к файловым ресурсам, службам или даже делегации прав в AD. Группы бывают встроенными, это те группы, которые доступны сразу после установки, к примеру Domain Admins или Account Operators. Active Directory Users and Computers (ADUC) и Active Directory Administrative Center (ADAC) — это инструменты, которые предоставляют вам графический пользовательский интерфейс для взаимодействия с группами и управления ими. ADAC отличается от ADUC тем, что в нем есть история команд PowerShell, которая дает возможность видеть PowerShell команды выполняемые за графическим интерфейсом. Для управления группами необходимо войти на доменный контроллер, сервер в домене или устройство с установленными средствами удаленного администрирования сервера (RSAT). Говоря о необходимых правах доступа, нам нужно состоять в группе Domain Admins, Account Operators или иметь делегированную учетную запись, на создание групп в домене или в конкретной OU. ## Управление группами с временным членством Членство в группе может быть временным. Чтобы использовать эту опцию, Active Directory FFL должен быть не ниже Windows Server 2012 R2. А так же должна быть включена функция управления привилегированным доступом. Этого можно добиться с помощью следующих строк PowerShell кода: ``` Import-Module ActiveDirectory ``` ``` Enable-ADOptionalFeature "Privileged Access Management Feature" -Scope ForestOrConfigurationSet -Target office.local ``` Введите «y» для подтверждения этого действия. Обратите внимание, что эта функция необратима и не может быть отключена. ## Установка истекающих сроков членства в группах с помощью Windows PowerShell Обычно для добавления объекта пользователя в группу используются следующие строки PowerShell: ``` Import-Module ActiveDirectory ``` ``` Add-ADGroupMember -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Members "GSoul" ``` Однако, чтобы добавить в группу пользователя временно, необходимо использовать другой PowerShell код: ``` Import-Module ActiveDirectory ``` ``` Add-ADGroupMember -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Members "GSoul" -MemberTimeToLive (New-TimeSpan -Days 14) ``` Чтобы просмотреть оставшееся время у пользователя на пребывание в группе, используйте следующие строки кода PowerShell: ``` Import-Module ActiveDirectory ``` ``` Get-ADGroup "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Property member -ShowMemberTimeToLive ``` Обратите внимание на параметр TTL, это и будет оставшееся время. Данный параметр отображается в секундах. ## Просмотр членства во вложенных группах Эта инструкция покажет вам, как отобразить всех членов группы, даже членов вложенных групп. С помощью ADUC Для отображения списка пользователей можно зайти во вкладку Members и войти в свойства каждой вложенной группы, чтобы просмотреть всех их членов. Однако, когда вложенных групп много, выполнить такое действие становится очень сложно. Просмотр всех членов группы, включая вложенные, с помощью PowerShell Используйте следующие строки кода PowerShell для перечисления всех членов группы: ``` Import-Module ActiveDirectory ``` ``` Get-ADGroupMember -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Recursive | Out-GridView ``` ## Поиск пустых групп Это руководство поможет вам найти группы без членов. Каждый объект в Active Directory занимает ресурсы. Когда группа не используется, вы можете рассмотреть возможность ее удалить, чтобы освободить место для других, более важных объектов. ## Поиск пустых групп с помощью PowerShell Используйте следующие строки PowerShell, чтобы найти все группы без членов в Active Directory: ``` Import-Module ActiveDirectory ``` ``` Get-ADGroup -Filter * -Properties members | Where-Object {$_.Members.count -eq 0} | Out-GridView ``` ### Другие части инструкции: - [Как управлять группами в AD. Часть 1: Создание и удаление групп.](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-sozdanie-i-udalenie-grupp/) - [Как управлять группами в AD. Часть 2: Управление членcтвом в группах](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-2-upravlenie-chlenctvom-v-gruppah/) https://serverspace.by/support/help/kak-dobavit-tom-i-sozdat-razdeli-v-linux.md Инструкция по монтированию новых томов и созданию разделов на виртуальных серверах с операционной системой семейства Linux. После добавления тома в панели управления, необходимо сделать его доступным для операционной системы. Подключитесь к серверу с правами суперпользователя и выполните просмотр всех томов, введите команду: ``` fdisk -l ``` Пример результата: ``` Disk /dev/vda: 25 GiB, 26843545600 bytes, 52428800 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: 775D7B55-7C02-4DAE-AC79-B81AAA1BECE3 ``` ``` Device Start End Sectors Size Type /dev/vda1 2048 104447 102400 50M EFI System /dev/vda2 104448 52428766 52324319 25G Linux filesystem ``` ``` Disk /dev/vdb: 40 GiB, 42949672960 bytes, 83886080 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes ``` В данной инструкции будет рассмотрено монтирование добавленного устройства /dev/vdb, размером 40 GB, и разбиение его на три раздела: ● 1 основной (primary), размером 10GB ● 1 расширенный (extended), размером 30 GB ● 1 логический (logical) раздел внутри расширенного, размером 20 GB На одном физическом жестком диске можно создать только 4 основных (primary) раздела. Расширенный (extended) раздел — это особый тип раздела, который содержит «свободное пространство», в котором может быть создано более четырех основных разделов. Разделы, созданные в расширенном разделе, называются логическими (logical) разделами. Запустите утилиту fdisk для создания разделов: ``` fdisk /dev/vdb ``` Для добавления нового раздела, используйте команду n: ``` Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended ``` Для выбора основного типа используйте опцию p: ```sql Select (default p): p ``` Примечание: для выбора значений, установленных по-умолчанию (default), нажмите Enter. Укажите номер раздела: ``` Partition number (1-4, default 1): 1 ``` Введите первый сектор: ``` First sector (2048-83886079, default 2048): 2048 ``` Введите последний сектор: ``` Last sector, +sectors or +size{K, M, G} (2048-83886079, default 83886079): +10G ``` Далее необходимо добавить расширенный (дополнительный) раздел, при выборе типа указав опцию е: ```sql Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): e ``` Укажите номер раздела: ``` Partition number (2-4, default 2): 2 ``` Чтобы размер раздела 2 занял всё оставшееся дисковое пространство, при выборе секторов, можно оставить значения по-умолчанию, нажав клавишу Enter: ``` First sector (2099200-83886079, default 2099200): ``` ``` Last sector, +sectors or +size{K, M, G} (2099200-83886079, default 83886079): ``` Далее необходимо создать логический раздел внутри расширенного (логический раздел будет определен автоматически). Для этого в утилите fdisk необходимо ввести команду n, затем выбрать логический раздел при помощи опции l: ```sql Command (m for help): n Partition type: p primary (1 primary, 1 extended, 2 free) l logical (numbered from 5) Select (default p): l ``` Начало сектора, выберете по-умолчанию, нажав клавишу Enter: ``` First sector (2101248-83886079, default 2101248): ``` Введите последний сектор, согласно требуемому размеру логического раздела: ``` Last sector, +sectors or +size{K, M, G} (2101248-83886079, default 83886079): +20G ``` Для отображения добавленных разделов, воспользуйтесь командой p: ``` Command (m for help): p Device Boot Start End Sectors Size Id Type /dev/vdb1 2048 20973567 20971520 10G 83 Linux /dev/vdb2 20973568 83886079 62912512 30G 5 Extended /dev/vdb5 20975616 62918655 41943040 20G 83 Linux ``` Примечание: на расширенном разделе осталось 10 GB свободного пространства, на котором можно создать еще несколько логических разделов. Используйте команду w для сохранения внесенных изменений: ``` Command (m for help): w ``` Теперь на основном и логическом разделах необходимо создать файловую систему с помощью утилиты mkfs, указав после точки тип файловой системы:[/step] ``` mkfs.ext4 /dev/vdb1 mkfs.ext4 /dev/vdb5 ``` Примечание: расширенный раздел не может быть отформатирован с файловыми системами, такими как ext3, FAT или NTFS, и не может непосредственно содержать данные. Далее необходимо создать точку монтирования для каждого раздела: Примечания: — обычно точка монтирования создается в директориях /mnt или /media; — для расширенного раздела точку монтирования создавать не нужно. ``` mkdir /mnt/volume1 mkdir /mnt/volume2 ``` Для изменения режима доступа к разделам, необходимо выполнить следующую команду: ```bash chmod -R 660 /mnt/volume1 chmod -R 660 /mnt/volume2 ``` Для автоматического монтирования разделов после перезагрузки сервера внесите изменения в файл /etc/fstab. С помощью текстового редактора, например nano, откройте этот файл: ``` nano /etc/fstab ``` В открывшийся файл необходимо добавить следующие строки и сохранить изменения: ``` /dev/vdb1 /mnt/volume1 ext4 defaults 0 0 /dev/vdb5 /mnt/volume2 ext4 defaults 0 0 ``` Для монтирования разделов используйте команду: ``` mount -a ``` Для вывода информации о списке подключенных устройств и занятом пространстве, воспользуйтесь командой: ``` df -h Filesystem Size Used Avail Use% Mounted on /dev/vdb1 9.8G 37M 9.3G 1% /mnt/volume1 /dev/vdb5 20G 45M 19G 1% /mnt/volume2 ``` https://serverspace.by/support/help/kak-sozdat-rezervnuyu-kopiyu-servera-linux-s-pomoshhyu-veeam-agent.md Инструкция о том, как создавать резервные копии Linux-сервера на сетевом или локальном диске с помощью агента Veeam Agent. В нашем примере мы будем использовать ОС Ubuntu 20.04. Поэтому вам нужно скачать программное обеспечение агента Veeam отсюда [Veeam Software for Enterprise](https://www.veeam.com/linux-backup-download.html?ad=in-text-link) и скопировать deb-файл на машину ubuntu, на которой вы планируете установить агента. ## Установка агента Veeam Перейдите в каталог, где вы сохранили пакет veeam-release, и установите пакет с помощью следующих команд для Debian / Ubuntu ``` dpkg -i ./veeam-release* && apt-get update ``` И просто запустите установку пакета ```bash sudo apt-get install veeam -y ``` После завершения установки просто запустите ``` veeam ``` Запустится руководство агента veeam. ## Конфигурация агента Veeam Резервное копирование с помощью Veeam Agent для Linux это достаточно просто. В нашем случае я буду делать полную резервную копию всей системы и перемещать ее на samba шару. Итак, давайте создадим задачу для резервного копирования нашего сервера на наше хранилище с помощью smb. Запускаем вим: ``` veeam ``` Нам сразу же предлагается указать файл лицензии. Поскольку у нас нет лицензии, мы просто жмем Enter и проваливаемся в главное окно программы. Нажимаем C (configure) для настройки задания резервного копирования. Даем заданию имя и выбираем, что мы хотим создать резервную копию всей машины. В качестве места назначения для резервного копирования системы мы выбираем Shared Folder. Далее необходимо ввести параметры доступа к месту резервного копирования. В моем примере я использовал общую папку на сервере Windows, поэтому я выбрал SMB share. В пункте Restore points указывается глубина архива. Это количество копий, которые вы хотите сохранить на сервере. Если вы делаете резервное копирование каждый день и укажете 14, то будут сохранены резервные копии системы за последние 14 дней. Если вы делаете резервное копирование каждый второй день, то 28 дней и так далее. Можно создать несколько заданий с разной глубиной резервного копирования. Например: каждый день — 7 резервных копий, раз в неделю — 4, раз в месяц — 12. Таким образом, у вас всегда будут последние 7 резервных копий системы за эту неделю. Затем по одной резервной копии в неделю за последний месяц и 12 резервных копий в месяц за последний год. Нажмите Enter для продолжения. Дополнительные опции отключены по умолчанию в бесплатной версии, но если у вас есть лицензия, я рекомендую включить опцию Backup encryption чтобы зашифровать резервные копии. Нажмите Enter для продолжения и увидите расписание резервного копирования, в бесплатной версии вы также не можете его редактировать. Нажмите Enter и finish. Резервное копирование сразу начнется. Если вы получите ошибку: ``` The current system does not support cifs. Please install the cifs client package. ``` Установите пакет cifs: ```bash sudo apt-get install cifs-utils ``` Перезапустите veeam и продолжайте. Теперь вы запустили процесс резервного копирования и можете следить за его ходом. Если вы получаете ошибку о том, что snapshot creation failed. Попробуйте сделать следующее: Нам нужно докопаться до первопричины, поэтому мы перейдем в папку журнала резервного копирования VEEAM – ``` cd /var/log/veeam/Backup ``` Перейдите к журналу заданий и откройте его с помощью текстового редактора, например nano. Мы обнаружили, что modeprobe не смог загрузить модуль veeamsnap. Для этого нам нужно сначала установить linux-headers, сначала проверьте версию вашего ядра: ``` uname -r ``` И установите нужные linux-headers: ```bash sudo apt-get install linux-headers-5.4.0.-74-generic -y ``` А теперь нам нужно загрузить veeamsnap: ``` modprobe veeamsnap ``` Запустите veeam снова и нажмите S. Теперь все должно работать. После завершения резервного копирования системы вы можете проверить содержимое общего диска, обратившись к нему непосредственно из Windows.[/step] На этом настройка полного резервного копирования сервера завершена. Резервная копия системы теперь находится в безопасном месте. https://serverspace.by/support/help/dobavlenie-toma-i-sozdanie-razdelov-v-freebsd.md Инструкция по монтированию новых томов и созданию разделов на виртуальных серверах с операционной системой семейства FreeBSD. После добавления тома в панели управления, необходимо сделать его доступным для операционной системы. Подключитесь к серверу с правами суперпользователя и выполните просмотр всех томов, введите команду: ``` geom disk list ``` Пример результата: ``` Geom name: vtbd0 Providers: Name: vtbd0 Mediasize: 26843545600 (25G) Sectorsize: 512 Stripesize: 4096 Stripeoffset: 0 Mode: r1w1e3 descr: (null) ident: BHYVE-72B8-3EC6-7459 rotationrate: unknown fwsectors: 0 fwheads: 0 Geom name: vtbd1 Providers: Name:vtbd1 Mediasize: 42949672960 (40G) Sectorsize: 512 Stripesize: 4096 Stripeoffset: 0 Mode: r0w0e0 descr: (null) ident: BHYVE-679A-4260-62AE rotationrate: unknown fwsectors: 0 fwheads: 0 ``` В данной инструкции будет рассмотрено монтирование добавленного устройства /dev/vtbd1, размером 40 GB на примере стандартных разделов с файловой системой типа ufs (Unix Fast File System — быстрая файловая система UNIX) и с добавлением swap-раздела (раздела подкачки). (не забыть перекрёстные ссылки) Примечание: если добавленный том не отображается в списке, следует перезагрузить сервер. Создайте разметку тома со схемой GPT, при помощи команды: ``` gpart create -s gpt /dev/vtbd1/code> ``` Примечание: GPT — GUID Partition Table, формат таблицы разделов, использующая систему адресации логических блоков (LBA). Для просмотра тома выполните команду: ``` gpart show vtbd1 ``` ``` => 40 83886000 vtbd1 GPT (40G) 40 83886000 — free — (40G) ``` **Пример 1** Для добавления первого раздела размером 10 GB, используйте команду: ``` gpart add -t freebsd-ufs -s 10G /dev/vtbd1 ``` ``` vtbd1p1 added ``` В данном примере будет добавлен второй раздел, размером 20 GB: ``` gpart add -t freebsd-ufs -s 20G /dev/vtbd1 ``` ``` vtbd1p2 added ``` Третий раздел может быть добавлен без указания начального LBA и размера, таким образом он будет создан на всем свободном пространстве: ``` gpart add -t freebsd-ufs /dev/vtbd1 ``` ``` vtbd1p3 added ``` Для проверки получившихся разделов: ``` gpart show vtbd1 40 83886000 vtbd1 GPT (40G) 40 20971520 1 freebsd-ufs (10G) 20971560 41943040 2 freebsd-ufs (20G) 62914600 20971440 3 freebsd-ufs (10G) ``` Для создания файловой системы на разделах тома выполните следующие команды. Опция _-U_ указывает использование механизма Soft Update, который увеличивает скорость создания и удаления файлов путём кэширования: ``` newfs -U /dev/vtbd1p1 newfs -U /dev/vtbd1p2 newfs -U /dev/vtbd1p3 ``` Далее необходимо создать точку монтирования для каждого раздела: ``` mkdir /mnt/volume1 mkdir /mnt/volume2 mkdir /mnt/volume3 ``` Для изменения режима доступа к разделам, необходимо выполнить следующую команду: ```bash chmod -R 660 /mnt/volume1 chmod -R 660 /mnt/volume2 chmod -R 660 /mnt/volume3 ``` Для автоматического монтирования разделов после перезагрузки сервера внесите изменения в файл /etc/fstab. С помощью текстового редактора, например vi, откройте этот файл: ``` vi /etc/fstab ``` В открывшийся файл необходимо вставить следующие строки и сохранить изменения: ``` /dev/vtbd1p1 /mnt/volume1 ufs rw 0 0 /dev/vtbd1p2 /mnt/volume2 ufs rw 0 0 /dev/vtbd1p3 /mnt/volume3 ufs rw 0 0 ``` Для монтирования разделов используйте команду: ``` mount -a ``` Для вывода информации о списке подключенных устройств и занятом пространстве, воспользуйтесь командой: ``` df -h ``` ``` Filesystem Size Used Avail Capacity Mounted on /dev/vdbd1p1 9.7G 8.0K 8.9G 0% /mnt/volume1 /dev/vdbd1p2 19G 8.0K 18G 0% /mnt/volume2 /dev/vdbd1p3 9.7G 8.0K 8.9G 0% /mnt/volume3 ``` **Пример 2 (добавление swap-раздела)** Для начала необходимо добавить swap-раздел размером 1 GB, при помощи команды: ``` gpart add -t freebsd-swap -s 1G /dev/vtbd1 ``` ``` vtbd1p1 added ``` Второй раздел может быть добавлен без указания начального LBA и размера, таким образом он будет создан на всем свободном пространстве: ``` gpart add -t freebsd-ufs /dev/vtbd1 ``` ``` vtbd1p2 added ``` Для проверки получившихся разделов: ``` gpart show vtbd1 40 83886000 vtbd1 GPT (40G) 40 2097152 1 freebsd-swap (1.0G) 2097192 81788848 2 freebsd-ufs (39G) ``` Для создания файловой системы на разделах тома выполните следующую команду. Опция _-U_ указывает использование механизма Soft Update, который увеличивает скорость создания и удаления файлов путём кэширования: ``` newfs -U /dev/vtbd1p2 ``` Примечание: раздел типа swap не требует форматирования. Далее необходимо создать точку монтирования для каждого раздела, кроме swap: ``` mkdir /mnt/volume1 ``` Для изменения режима доступа к разделам, необходимо выполнить следующую команду: ```bash chmod -R 660 /mnt/volume1 ``` Для автоматического монтирования разделов после перезагрузки сервера внесите изменения в файл /etc/fstab. С помощью текстового редактора, например vi, откройте этот файл: ``` vi /etc/fstab ``` В открывшийся файл необходимо вставить следующие строки и сохранить изменения: ``` /dev/vtbd1p1 none swap sw 0 0 /dev/vtbd1p2 /mnt/volume1 ufs rw 0 0 ``` Для монтирования разделов используйте команду: ``` mount -a ``` Далее необходимо примонтировать swap-раздел: ``` swapon /dev/vtbd1p1 ``` Используя команду swapinfo, можно проверить успешное монтирование раздела: ``` swapinfo ``` ``` Device 1K-blocks Used Avail Capacity /dev/vtbd1p1 1048576 0 1048576 0% ``` Для вывода информации о списке подключенных устройств и занятом пространстве, воспользуйтесь командой: Примечание: раздел типа swap в данном списке не отображается. ``` df -h ``` ``` Filesystem Size Used Avail Capacity Mounted on /dev/vdbd1p2 38G 8.0K 35G 0% /mnt/volume ``` https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-2-upravlenie-chlenctvom-v-gruppah.md В этой инструкции вы узнаете как добавлять и удалять пользователей из групп с помощью ADUC, ADAC и Windows PowerShell. В типичных лесах Active Directory группы необходимы для авторизации прав пользователей. Они могут использоваться для распространения информации через почту или предоставлять доступ к файловым ресурсам, службам или даже делегации прав в AD. Группы бывают встроенными, это те группы, которые доступны сразу после установки, к примеру Domain Admins или Account Operators. Active Directory Users and Computers (ADUC) и Active Directory Administrative Center (ADAC) — это инструменты, которые предоставляют вам графический пользовательский интерфейс для взаимодействия с группами и управления ими. ADAC отличается от ADUC тем, что в нем есть история команд PowerShell, которая дает возможность видеть PowerShell команды выполняемые за графическим интерфейсом. Для управления группами необходимо войти на доменный контроллер, сервер в домене или устройство с установленными средствами удаленного администрирования сервера (RSAT). Говоря о необходимых правах доступа, нам нужно состоять в группе Domain Admins, Account Operators или иметь делегированную учетную запись, на создание групп в домене или в конкретной OU. ## Управление членством в группах Управлять членством в группе можно несколькими способами: ## Управление членством в группе через ADUC ### Добавление пользователей в группу Откройте ADUC (dsa.msc). Перейдите в OU, где находится нужный пользователь. В меню **Action** выберите **Find**. В поле **Name **введите имя пользователя, которого вы хотите добавить в группу, а затем нажмите Enter. Щелкните правой кнопкой мыши на нужном пользователе и выберите в меню пункт «**Add ****to ****a ****group**«. В окне «**Select ****Group**» введите имя нужной группы, или нажмите кнопку «**Advanced**» для поиска нужной группы. Нажмите кнопку «Check Names», а затем OK, чтобы добавить пользователя в группу. ### Удаление пользователя из группы Перейдите к нужной OU или контейнеру, в котором хранится нужная группа. В меню «**Action**» выберите «**Find**«. В поле «**Name**» введите имя нужной группы и нажмите Enter. Щелкните группу правой кнопкой мыши и выберите «**Properties**«. Переключитесь на вкладку «**Members**«. В окне «**Group ****Properties**» выберите пользователя и нажмите «**Remove**«, для удаления. Нажмите «Да» в окне подтверждения, а затем OK и все готово. ## Управление членством в группах с помощью ADAC ### Добавление пользователя в группу Запустите ADAC, в левой панели навигации переключитесь на "**Tree ****view**«. Перейдите к OU или контейнеру, в котором находится пользователь и в поле **Global ****Search** найдите нужного пользователя, для этого введите имя объекта пользователя в область поиска, а затем нажмите **Enter**. В списке результатов глобального поиска выберите нужного пользователя. Щелкните правой кнопкой мыши по нему и выберите **Add ****to ****a ****group**. В окне «**Select ****Groups**» введите имя группы, в которую вы хотите добавить учетную запись. Нажмите «Check Names», a затем OK, чтобы завершить добавление пользователя. ### Удаление пользователя из группы Чтобы удалить пользователя перейдите в OU или контейнер, в котором находится группа. В разделе «Global Search» введите название группы, а затем нажмите Enter. В списке результатов глобального поиска выберите нужную группу. Щелкните по ней правой кнопкой мыши и выберите в **Properties**. Слева выберите пункт **Members**, как показано на следующем скриншоте экрана: В разделе Выберите нужного пользователя и нажмите **Remove**, чтобы удалить пользователя из группы. Будьте внимательны, в этом случае подтверждающего окна показано не будет. ## Использование Windows PowerShell Используйте следующую команду для того чтобы добавить пользователя в группу: ``` Import-Module ActiveDirectory ``` ``` Add-ADGroupMember -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Members "GSoul" ``` Используйте следующие строки кода PowerShell для удаления пользователя из группы в Active Directory: ``` Import-Module ActiveDirectory ``` ``` Remove-ADGroupMember -Identity "CN=ITGroup,OU=OfficeCorp,DC=office,DC=local" -Members "GSoul" ``` Нажмите "y" для подтверждения действия. ### Другие части инструкции: - [Как управлять группами в AD. Часть 1: Создание и удаление групп.](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-sozdanie-i-udalenie-grupp/) - [Как управлять группами в AD. Часть 3: Управление группами с истекающим сроком действия и просмотр вложенных групп](https://serverspace.by/support/help/kak-upravlyat-gruppami-v-ad-chast-3-upravlenie-gruppami-s-istekayushhim-srokom-dejstviya-i-prosmotr-vlozhennyh-grupp/) https://serverspace.by/support/help/install-mysql-debian-10.md Процесс установки сервера MySQL в Debian 10.x., который также может работать с другими системами Linux (например, Ubuntu). В этом руководстве описан процесс установки сервера MySQL в Debian 10.x., который также может работать с другими системами Linux (например, Ubuntu). Как бесплатно установить сервер MySQL в Debian 10: - [Добавьте репозиторий MySQL](#stepone) - [Установите сервер MySQL](#steptwo) ## Шаг **1. Добавим репозиторий MySQL** Прежде всего обновите пакеты: ```bash apt updateapt install gnupg ``` Затем загрузите MySQL [с официального сайта](https://dev.mysql.com/downloads/repo/apt/) или используйте wget: ```bash wget ``` где **x.x.x-x** — версия MySQL: Скриншот 1. Загрузка MySQL Установите .deb: ``` sudo dpkg -i mysql-apt-config_x.x.x-x_all.deb ``` где **x.x.x-x** — версия MySQL. При установке пакета выберите продукт и версию MySQL, которую будете использовать; а также инструменты, коннекторы и preview packages. После выбора вы переместитесь в предыдущее меню — нажмите **Ok**: Скриншот 2. Выбор версии Обновите репозиторий: ```bash apt-get update ``` Пакет для установки сервера — **mysql-community-server**. Версия — та же, что выбиралась в установщике. ## Шаг **2. Установим сервер MySQL** Для установки MySQL используйте команду: ```bash sudo apt-get install mysql-community-server ``` Скриншот 3. Установка Когда **apt** завершит загрузку, установщик запросит root-пароль: Скриншот 4. Ввод root-пароля У вас есть два варианта на выбор: - Оставить поле пустым: сервер будет использовать аутентификацию через сокеты unix. Это означает, что вы сможете получить доступ к серверу только как пользователь root или как пользователь с sudo; - Установить пароль: метод аутентификации будет одинаковым для всех пользователей. Если вы выберете второй вариант, установщик запросит выбор плагина аутентификации — надежно зашифрованный пароль (MySQL 8.x) или устаревший метод (MySQL 7.x и ранее). Вы должны выбрать метод, совместимый с вашим клиентом / программой. Как только вы выберете все параметры, процесс установки будет завершен, и служба запустится автоматически: Скриншот 5. Выбор плагина аутентификации по умолчанию Теперь проверьте статус службы с помощью **systemctl**: ```bash systemctl status mysql.service ``` Скриншот 6. Проверка статуса службы Если вы видите статус **active**, это означает, что сервер работает без ошибок. Для выхода нажмите **Q** или **Ctrl + C**. Затем запустите команду от имени root-пользователя для безопасной настройки службы SQL: ``` mysql_secure_installation ``` Программа задаст вам вопросы, на которые необходимо ответить Да (кнопка Y / Y) или Нет (любая другая): Скриншот 7. Запуск mysql_secure_installation Для разрешения удаленного доступа, вам потребуется отредактировать файл **mysqld.conf**: ``` sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf ``` В конце файла добавьте **bind_address** со значением локального хоста: ``` bind-address=127.0.0.1 ``` Сохраните файл и перезапустите службу с помощью **systemctl**: ```bash systemctl restart mysql ``` **Важно:** не забудьте открыть порт MySQL (желательно указать стандартный порт MySQL). Если вы используете **ufw**: ``` ufw allow $yoursqlport ``` где вместо **yoursqlport** пропишите свой порт MySQL Если вы используете **iptables**: ``` iptables –A INPUT –p tcp –dport $yoursqlport –j ACCEPT ``` где вместо **yoursqlport** пропишите свой порт MySQL https://serverspace.by/support/help/lets-encrypt-ubuntu-20-04.md Шифрование SSL / TLS - важная часть сетевой инфраструктуры. В этой статье мы расскажем, как получить бесплатный SSL-сертификат Let's Encrypt. Шифрование SSL / TLS является неотъемлемой частью сетевой инфраструктуры. Все web и почтовые сервера позволяют включить шифрование данных. В этой статье мы расскажем, как получить бесплатный SSL-сертификат Let’s Encrypt. Как получить бесплатный сертификат Let's Encrypt: - [Установите пакет "Let's Encrypt"](#stepone) - [Используйте опцию автономного сервера для получения SSL-сертификата "Let's Encrypt"](#steptwo) - [Используйте автоматическую установку SSL-сертификата на web-серверах nginx и Apache](#stepthree) - [Создайте и установите Wildcard-сертификат "Let's Encrypt"](#stepfour) В качестве начальных условий вам потребуется доменное имя. Его A-запись DNS должна содержать публичный адрес вашего сервера. Если брандмауэр включен, откройте доступ для трафика HTTP и HTTPS. ``` sudo ufw allow 80 sudo ufw allow 443 ``` ## Шаг 1. Установка пакета "Let’s Encrypt" Процесс установки пакета "Let's Encrypt" со всеми его зависимостями предельно прост — достаточно ввести команду: ```bash sudo apt install letsencrypt ``` Вместе с пакетом "Let’s Encrypt" эта команда также устанавливает утилиту "certbot.timer" для автоматического продления сертификата. Она проверяет действительность SSL-сертификатов в системе два раза в день и продлевает те, срок действия которых истекает в следующие 30 дней. Для проверки запуска утилиты введите: ```bash sudo systemctl status certbot.timer ``` Существуют разные конфигурации и условия получения сертификата. Далее рассмотрим некоторые из них. ## Step 2 – Автономный сервер для получения SSL-сертификата "Let’s Encrypt" Самый простой способ получить SSL-сертификат — использовать отдельную опцию в Certbot. Замените domain-name.com на свое доменное имя, выполните команду и следуйте инструкциям: ``` sudo certbot certonly —standalone —agree-tos —preferred-challenges http -d domain-name.com ``` Параметр **certonly** означает, что сертификат будет получен только без установки на каком-либо web-сервере, **standalone **позволяет запускать собственный web-сервер для аутентификации, **agree-tos** — принятие ACME соглашения о подписке на сервер, являющемся предварительным условием, а **preferred-challenges http** — выполнение авторизации с использованием HTTP. ## Step 3 – Автоматическая установка SSL-сертификата на web-серверах nginx и Apache Certbot может автоматически устанавливать сертификат на web-серверы nginx и Apache. Для этого вам необходимо установить и выбрать подходящий дополнительный пакет для вашего сервера. ```bash apt install python3-certbot-nginx apt install python3-certbot-apache ``` Команда для nginx: ``` sudo certbot —nginx —agree-tos —preferred-challenges http -d domain-name.com ``` Для Apache: ``` sudo certbot —apache —agree-tos —preferred-challenges http -d domain-name.com ``` Следуйте инструкциям, и Certbot установит SSL-сертификат. ## Step 4 – Wildcard-сертификат "Let's Encrypt" Единственный возможный метод создания Wildcard-сертификата — это DNS. В параметре d необходимо указать как пустой домен, так и wildcard. ``` sudo certbot certonly —manual —agree-tos —preferred-challenges dns -d domain-name.com -d *.domain-name.com ``` После этого поместите указанную запись TXT на свой DNS-сервер и нажмите "continue". Если все в порядке, вы увидите путь хранения вашего нового Wildcard-сертификата и другую информацию. https://serverspace.by/support/help/postfix-ubuntu-20-04.md Postfix - довольно распространенный почтовый сервер. Рассмотрим установку и базовую настройку Postfix и сервера для него. Postfix — довольно распространенный почтовый сервер, что объясняется его функциональностью для большинства задач и простотой настройки. В этой статье будет рассмотрена установка и базовая настройка Postfix и сервера для него. ## Подготовка Сервер должен иметь статический общедоступный IP-адрес, а также вам требуется знать доменное имя. В первую очередь необходимо настроить записи DNS. Для почтового сервера обычно используется домен 3-го уровня. В качестве примера мы будем использовать **mail.domain-name.com**. Вам требуется заменить **domain-name.com** своим доменным именем. Доменное имя 3-го уровня может быть произвольным. Записи DNS обычно можно настроить в панели управления регистратора доменных имен или на вашем DNS-сервере. Добавьте A-запись DNS для вашего домена с именем **mail** и "**target**" — IP-адрес будущего почтового сервера. ``` mail A xxx.xxx.xxx.xxx ``` Добавьте MX-запись DNS для корневого домена со значением, равным доменному имени почтового сервера: ``` @ MX mail.domain-name.com ``` Если в результате служба возвращает ошибку, постарайтесь ничего не использовать вместо **@**. ## Настроим сервер При выбранном доменном имени 3-го уровня **mail.domain-name.com** имя хоста будет **mail**. ``` sudo hostnamectl set-hostname mail ``` Далее откройте файл **hosts**. ``` sudo nano /etc/hosts ``` Добавьте строку для этого сервера с его IP-адресом, вашим доменом и именем хоста. Эта запись должна быть размещена непосредственно под записью для **localhost**. ``` xxx.xxx.xxx.xxx domain-name.com mail ``` ## Установим Postfix Установите Postfix и почтовый пакет **mailutils**. ```bash sudo apt install postfix mailutils ``` Во время установки вам будет предложено указать параметры в интерактивном режиме. Установите в **mail server configuration** значение **Internet Site**. Скриншот 1. Установка типа конфигурации почтового сервера. **System mail name **должно совпадать с доменным именем, для которого настраивается почтовый сервер. В нашем случае это **domain-name.com**. Скриншот 2. Зададим системную почту. ## Протестируем Теперь почтовый сервер Postfix готов к работе. Протестируйте его и отправьте первое письмо. Поместите свою почту в следующую команду и запустите ее: ``` echo "Postfix test" | mail -s "Subject" mail@server.com ``` Поскольку шифрование, DKIM и прочее еще не настроено, ваше письмо, скорее всего, попадет в папку "Спам". Некоторые почтовые серверы (к примеру, gmail.com) вообще не примут письмо — вернемся к исправлению этого позже. Сейчас же вы можете ответить на это письмо в своем почтовом ящике и увидеть ответ на почтовом сервере. ``` mail ``` Результат: ``` "/var/mail/root": 1 message 1 new >N 1 Sender Name Wed Mar 17 04:32 66/2877 RE: Subject ? ``` Введите **1** и увидите ваш ответ. Следующий шаг — [настройка Postfix для использования виртуальных почтовых ящиков](https://serverspace.by/support/help/postfix-dlya-virtualnyh-pochtovyh-yashhikov-ubuntu-20-04/). https://serverspace.by/support/help/repozitorii-ubuntu-20-04.md Зачастую необходимого софта нет в комплекте репозиториев в Linux, тогда можно добавить требуемый репозиторий и произвести установку из него. Установка ПО в системах Linux выполняется из репозиториев, которые по умолчанию содержат большое количество пакетов. Однако иногда необходимого софта нет в комплекте или его версия устарела. В этом случае вы можете добавить требуемый репозиторий и произвести установку из него. Как настроить репозитории в Ubuntu 20.04: - [Как просмотреть список репозиториев Ubuntu](#stepone) - [Как добавить репозиторий в Ubuntu](#steptwo) - [Как удалить репозиторий в Ubuntu](#stepthree) - [PAA-репозитории в Ubuntu](#stepfour) Ниже мы настроим репозитории на сервере Ubuntu 20.04. ## Список репозиториев в Ubuntu Просмотреть все репозитории: ``` nano /etc/apt/sources.list ``` Они также могут находиться в одном из файлов в папке /etc/apt/sources.list.d/ Чтобы отключить один репозиторий, добавьте следующий комментарий в его строку: ``` # deb http://archive.ubuntu.com/ubuntu focal multiverse ``` ## Добавление репозиториев в Ubuntu Чтобы добавить репозиторий, необходимо узнать его адрес у разработчика ПО и использовать команду **apt-add-repository** с подобным синтаксисом: ```bash apt-add-repository 'deb http://repository_address version branch' ``` Иногда требуется сначала установить ключ GPG. В качестве примера возьмем MariaDB. ```bash apt-key adv —fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc' ``` Команда, используемая для добавления репозитория: ``` add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.mephi.ru/mariadb/repo/10.5/ubuntu focal main' ``` ## Удаление репозиториев Команда, используемая для удаления: ``` add-apt-repository —remove 'deb [arch=amd64,arm64,ppc64el] http://mirror.mephi.ru/mariadb/repo/10.5/ubuntu focal main' ``` ## PPA-репозиторий в Ubuntu Во время установки PPA-репозитория система автоматически распознает репозиторий и скачивает необходимые ключи. ```bash apt-add-repository ppa:repository/ppa ``` Для удаления PPA-репозитория: ```bash apt-add-repository —remove ppa:repository/ppa ``` После редактирования списка репозиториев не забудьте обновить список пакетов. ```bash apt update ``` https://serverspace.by/support/help/repozitorii-centos-8.md В этой статье мы расскажем, как подключать дополнительные репозитории в CentOS 8, так как в предустановленных доступно немного пакетов. В предустановленных репозиториях CentOS доступно сравнительно небольшое количество пакетов. При этом их версии зачастую устаревшие. Именно поэтому требуется подключать дополнительные репозитории. Как это сделать, мы расскажем в этой статье. Для просмотра установленных репозиториев в CentOS используйте команду: ```bash yum repolist ``` А для вывода списка всех пакетов с их версиями (замените BaseOS на любое имя): ```bash yum repo-pkgs BaseOS list ``` ## Установка популярных дополнительных репозиториев на CentOS 8 EPEL (Extra Packages for Enterprise Linux) — наиболее популярный из дополнительных репозиториев для CentOS 8, содержащий огромное множество пакетов. Команда, используемая для установки: ```bash yum install epel-release ``` Remi — другой популярный репозиторий. Его использование требует наличия EPEL. **Будьте внимательны**: пакеты в Remi имеют имена, совпадающие с именами из официальных репозиториев, что может приводить к нежелательным обновлениям. Команда: ``` rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-8.rpm ``` ## Установка отдельного репозитория Рассмотрим установку отдельного репозитория на примере Mysql. Этот метод позволяет получать последние обновления намного раньше, чем они появляются в других репозиториях пакетов (BaseOS или EPEL). Загрузите пакет: ```bash wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm ``` И установите его: ``` rpm -Uvh mysql80-community-release-el8-1.noarch.rpm ``` ## Отключение или удаление Чтобы не использовать репозиторий во время текущего обновления системы, используйте команду: ```bash yum update —disablerepo=remi-modular ``` Для отключения без удаления репозитория в системе используйте: ```bash yum-config-manager —disable epel ``` После этого снова включите его: ```bash yum-config-manager —enable epel ``` Для удаления репозитория используйте следующую команду с указанием соответствующего имени: ```bash yum remove epel-release ``` https://serverspace.by/support/help/neskolko-setevyh-interfejsov-v-centos-8.md В данной инструкции мы настроим доступность нескольких сетевых интерфейсов извне в CentOS 8 за счет source-based routing При наличии в системе 2 и более сетевых интерфейсов с публичными IP адресами для обеспечения их доступности из сети Интернет мало сделать правильные сетевые настройки. Минус применяемой по умолчанию маршрутизации в том, что все сетевые пакеты будут уходить с хоста через шлюз по умолчанию. И при этом не важно на какой из интерфейсов они попали изначально. В данной инструкции мы настроим доступность нескольких сетевых интерфейсов извне в CentOS 8 за счет source-based routing. ## Параметры сетевых интерфейсов [Облачные серверы в Serverspace](https://serverspace.by/services/cloud-servers.md) обладают функцией автоматической настройки сетевых интерфейсов в момент их добавления или создания сервера. Поэтому, в случае их использования, переходите к следующему шагу. В противном случае для начала необходимо прописать правильные параметры сетевых интерфейсов. Откройте файл настроек сетевого интерфейса. Их имена можно посмотреть с помощью команды **ip a** или же задать новые, если они не настроены. ``` nano /etc/sysconfig/network-scripts/ifcfg-enp0s5 ``` Конфигурацию ниже можно скопировать и заменить следующие значения на свои: - имя интерфейса (enp0s5) - шлюз (GATEWAY) - MAC-адрес (HWADDR) - IP адрес (IPADDR) - маска подсети (NETMASK) ``` BOOTPROTO=none DEFROUTE=yes DEVICE=enp0s5 GATEWAY=34.56.78.1 HWADDR=99:88:77:66:55:44 IPADDR=34.56.78.90 MTU=1500 NETMASK=255.255.255.0 ONBOOT=yes STARTMODE=auto TYPE=Ethernet ``` Подобным образом настройте все сетевые интерфейсы. **GATEWAY** для второго, третьего и т.д. интерфейсов не указывается, т.к. это шлюз по умолчанию и должен быть только один. ## Отключение NetworkManager Настройку маршрутизации на основе политик мы будем осуществлять с помощью **network-scripts**, поэтому отключим **NetworkManager** и связанные службы: ```bash systemctl mask NetworkManager.service systemctl stop NetworkManager.service systemctl mask NetworkManager-wait-online.service systemctl mask NetworkManager-dispatcher.service ``` Установим пакет **network-scripts** ```bash dnf install network-scripts ``` Запустим сетевую службу: ```bash systemctl enable network systemctl start network ``` ## Настройка source based routing Проверим присутствует ли пакет **iproute**. Если нет, установите его. ```bash dnf install iproute ``` Создадим новые таблицы для настройки политик маршрутизации. ``` nano /etc/iproute2/rt_tables ``` В конец файла добавим записи: ``` 300 300 301 301 ``` Каждая строка — это новая таблица. Формат записи — **приоритет** пробел **название таблицы**. Данные значения должны быть уникальны относительно других записей в файле. **Приоритет** имеет числовое значение, а **название таблицы** может содержать и буквы. Добавьте столько новых таблиц, сколько интерфейсов Вы настраиваете. В следующих файлах будут указаны настройки маршрутизации. Для каждого интерфейса нужно создать по паре файлов: **rule-eth-name**, **route-eth-name**, где **eth-name** заменить на имя интерфейса. Пример для интерфейса **enp0s5**: ``` nano /etc/sysconfig/network-scripts/rule-enp0s5 ``` Вставляем в него следующую строку с актуальным IP адресом вместо 34.56.78.90 и именем таблицы, созданной на предыдущем шаге вместо 300: ``` from 34.56.78.90 lookup 300 ``` Второй файл: ``` nano /etc/sysconfig/network-scripts/route-enp0s5 ``` Заменяем 34.56.78.0/24 на адрес своей подсети, enp0s5 — на имя интерфейса, 300 на название соответствующей таблицы, а 34.56.78.1 на шлюз для маршрутизации трафика и вставляем в открытый файл: ``` 34.56.78.0/24 dev enp0s5 table 300 default dev enp0s5 via 34.56.78.1 table 300 ``` После создания таких файлов для каждого сетевого интерфейса перезагрузим сетевую службу и наша цель достигнута. ```bash systemctl restart network ``` https://serverspace.by/support/help/neskolko-setevyh-interfejsov-ubuntu-20.md В данном руководстве мы рассмотрим как настроить несколько сетевых интерфейсов в Ubuntu 20.04 с использованием Netplan В ситуациях, когда на сервере Ubuntu 20.04 присутствует 2 и более сетевых интерфейса с публичными IP адресами необходимо произведение дополнительных настроек для обеспечения доступности сервера по этим дополнительным адресам. Виной всему применяемая по умолчанию политика маршрутизации, отправляющая все сетевые пакеты через 1 интерфейс, у которого прописан маршрут по умолчанию. При этом не важно через какой интерфейс пакет попал на сервер. Поэтому, даже при правильных настройках Netplan сервер не будет отвечать по дополнительным адресам без дополнительных настроек. Рассмотрим как же настроить несколько сетевых интерфейсов в Ubuntu 20.04. Как настроить несколько сетевых интерфейсов с публичным IP на Ubuntu 20.04: - [Автоматически настройте Netplan](#stepone) - [Настройте маршруты на основе политик](#steptwo) ## Автоматическая настройка Netplan [Linux серверы Serverspace](https://serverspace.by/services/cloud-servers.md) призваны упрощать жизнь пользователей. В них присутствует функция настройки сетевых интерфейсов в автоматическом режиме при их добавлении в панели управления или во время создания сервера. Но для обеспечения работы маршрутизации на основе политик и как результат доступности сервера сразу по нескольким сетевым интерфейсам нам необходимо внести изменения в настройки Netplan. Чтобы наши настройки не перезаписались во время перезагрузки, необходимо отключить автоматическую настройку сети. После того, как Вы убедитесь, что необходимое количество интерфейсов добавлено на сервер, создайте на нём файл: ``` nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg ``` И добавьте в него параметр: ``` network: {config: disabled} ``` Теперь последующие изменения в Netplan не будут перезаписываться в автоматическом режиме при перезагрузке. ## Настройка маршрутов на основе политик В основе маршрутизации на основе политик лежат таблицы. Для каждой таблицы настраиваются свои маршруты и политики. Проверим наличие в системе пакета iproute2. Если его нет, произведите его установку. ```bash apt install iproute2 ``` Откройте файл с таблицами маршрутизации ``` nano /etc/iproute2/rt_tables ``` И добавьте в его конец количество таблиц, соответствующее количеству настраиваемых интерфейсов: ``` 700 700 701 701 ``` Формат записи: **приоритет** (число) пробел **название таблицы** (число). Теперь откройте файл Netplan с настройками сетевых интерфейсов. Он расположен по пути **/etc/netplan/** и имеет расширение **.yaml**. В моём случае путь такой: ``` nano /etc/netplan/50-cloud-init.yaml ``` Каждый интерфейс имеет в данном файле блок настроек. В конец данного блока мы и будем добавлять настройки политик и правил маршрутизации для интерфейса. В данном файле важно соблюсти количество пробелов перед каждым параметром и значением, а также не использовать табуляции вместо пробелов. Ориентируйтесь на отступы в уже имеющихся записях и добавляйте по аналогии. Для каждого сетевого интерфейса добавляем блоки **routes** и **routing-policy**. Итоговая запись для 1 интерфейса будет выглядеть так: ```yaml ```yaml network: version: 2 ethernets: enp0s5: addresses: - 78.89.90.12/24 gateway4: 78.89.90.1 match: macaddress: 54:43:32:21:10:09 mtu: 1500 nameservers: addresses: - 8.8.8.8 - 1.1.1.1 - 8.8.4.4 search: [] set-name: enp0s5 routes: - to: 0.0.0.0/0 via: 78.89.90.1 table: 700 routing-policy: - from: 78.89.90.12 table: 700 priority: 300 ``` ``` Для других интерфейсов запись будет аналогична, начиная с имени интерфейса (**enp0s5**), но у других должен отсутствовать параметр **gateway4**, т.к. шлюз по умолчанию должен быть один. Настройки **routes** и **routing-policy**: - to — адрес назначения пакета. Для наших целей — любой (0.0.0.0/0) - via — адрес шлюза для данного интерфейса - table — имя таблицы маршрутизации. Должны быть указаны одинаковые значения в **routes** и **routing-policy** для одного интерфейса, но быть различными от интерфейса к интерфейсу. Данные таблицы мы создали в файле **rt_tables** - from — адрес источника пакета. Для целей данного руководства — это IP адрес интерфейса - priority — обязательное числовое значение После внесения настроек и сохранения файла проверим конфигурацию на ошибки: ``` netplan generate ``` Подобный вывод укажет на ошибку при их наличии (в данном случае пропущен пробел): ``` /etc/netplan/50-cloud-init.yaml:23:12: Invalid YAML: inconsistent indentation: routes: ^ ``` Если конфиг составлен верно, то вывод будет отсутствовать. Это значит, что пора применить изменения: ``` netplan apply ``` После применения изменений настроенные таким образом сетевые интерфейсы станут доступны извне по своим публичным IP адресам. https://serverspace.by/support/help/neskolko-setevyh-interfejsov-ubuntu-18.md В данном руководстве мы добавим необходимые настройки в Netplan для корректной работы нескольких сетевых интерфейсов в Ubuntu 18.04 Для корректной работы нескольких сетевых интерфейсов с публичными IP адресами на Ubuntu 18.04 одновременно не достаточно просто прописать базовые параметры для них в Netplan. Ведь при этом все пакеты будут уходить с сервера через шлюз по умолчанию, а значит и доступности сервера по всем его IP адресам не будет. Это минус маршрутизации на основе адреса получателя. Здесь мы добавим необходимые настройки в Netplan для корректной работы нескольких сетевых интерфейсов в Ubuntu 18.04. ## Отключение автонастройки Netplan При создании [сервера Ubuntu 18.04 в Serverspace](https://serverspace.by/services/cloud-servers.md) или добавлении к нему новых сетевых интерфейсов из панели управления происходит автоматическая настройка параметров подключений. Кроме того, во время перезагрузки системы файл конфигурации Netplan тоже перезаписывается актуальными параметрами. Поэтому любые его изменения, сделанный в ручном режиме, будут потеряны. Чтобы этого избежать, можно отключить данную функцию. Для начала убедитесь, что Вы добавили необходимое количество сетевых адаптеров к серверу, а затем создайте файл: ``` nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg ``` Со следующим содержимым: ``` network: {config: disabled} ``` После сохранения файла функция автоматической настройки сетевых интерфейсов будет отключена. ## Маршрутизация для несколько сетевых интерфейсов Задача обеспечения доступности сервера через несколько сетевых подключений и IP адресов будет решена с использованием маршрутизации на основе политик, а именно на основе адреса отправителя. Таким образом, каждый пакет будет отправлен с сервера через тот же адрес, через который и попал на него. В первую очередь нужно создать таблицы маршрутизации для данной цели, а для этого нужен пакет **iproute2**. Если он отсутствует в системе, необходимо его установить: ```bash apt-get install iproute2 ``` Теперь откройте файл: ``` nano /etc/iproute2/rt_tables ``` В его конец необходимо добавить столько таблиц, сколько сетевых интерфейсов настраивается. Одна таблица — это отдельная строка, состоящая из двух чисел, разделенных пробелом. Первое число — это **приоритет**, а второе — это **имя таблицы**. Например: ``` 50 50 51 51 52 52 ``` Таким образом, мы добавим 3 таблицы. Теперь пришло время добавить настройки маршрутизации в Netplan, откройте его конфиг по пути **/etc/netplan/** с расширением **.yaml** (имя файла может отличаться в Вашей системе): ``` nano /etc/netplan/50-cloud-init.yaml ``` Netplan чувствителен к форматированию в файле конфигурации. Очень важно соблюсти правильное количество пробелов и не использовать табуляции, иначе результат не пройдёт проверку. Корректный пример приведен ниже. В нём показан блок настроек для одного интерфейса (enp0s5), такие же блоки Вы увидите в конфиге для каждого из подключений. В каждый из блоков надо добавить настройки **routes** и **routing-policy**, а остальные настройки оставить как есть. Расшифровка добавляемых значений: - to — IP подсети назначения любой — 0.0.0.0/0 - via — IP шлюза текущего сетевого подключения - table — имя одной из добавленных в **rt_tables** таблиц. Должно совпадать в **routes** и **routing-policy** каждого подключения. Но для разных интерфейсов — разные таблицы. - from — IP адрес данного интерфейса - priority — можно не менять ```yaml ```yaml network: version: 2 ethernets: enp0s5: addresses: - 11.22.33.44/24 gateway4: 11.22.33.1 match: macaddress: 00:99:88:77:66:55 mtu: 1500 nameservers: addresses: - 8.8.8.8 - 1.1.1.1 - 8.8.4.4 search: [] set-name: enp0s5 routes: - to: 0.0.0.0/0 via: 11.22.33.1 table: 50 routing-policy: - from: 11.22.33.44 table: 50 priority: 300 ``` ``` После завершения редактирования конфигурации, убедимся в ее корректности: ``` netplan generate ``` Если вывод пустой, значит всё сделано верно. Если же есть ошибки, Вы увидите нечто подобное: ``` /etc/netplan/50-cloud-init.yaml:24:1: Invalid YAML: tabs are not allowed for indent: — to: 0.0.0.0/0 ^ ``` В данном примере обнаружены табуляции. После исправления ошибок и успешного прохождения проверки примените изменения: ``` netplan apply ``` Теперь сервер будет доступен по всем настроенным таким образом IP адресам. https://serverspace.by/support/help/openvpn-ubuntu-20-04.md Процесс установки OpenVPN на Ubuntu 20.04, или же на любую другую Linux машину. А также первичная настройка, подключение и удаление клиентов. В этой статье описан процесс установки OpenVPN на Ubuntu 20.04. Для начала требуется произвести вход в систему с root-правами, при этом зная публичный IP сервера, с которым устанавливается VPN. ## Установим и настроим OpenVPN Для установки и последующей настройки пакетов, требуемых при запуске OpenVPN, будет использован соответствующий скрипт. Вам следует предоставить ему корректный IP-адрес сервера. Загрузим данный скрипт: ```bash wget https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh ``` Далее необходимо сделать его исполняемым: ```bash chmod +x openvpn-install.sh ``` А затем запустить: ``` ./openvpn-install.sh ``` Некоторые из параметров по умолчанию оптимальны — просто подтвердите их. Единственное, что требует проверки и возможного редактирования — публичный IP. Остальное редактируйте только в случае знания и понимания желаемого варианта установки. Скриншот 1. Параметры установки OpenVPN Последним шагом укажите имя клиента и сделайте выбор — необходим ли пароль для защиты конфигурации или нет. Из соображений безопасности рекомендуем установить его. После завершения процесса сделаем проверку — прослушиваются ли входящие подключения. ``` ss -tupln | grep openvpn ``` Скриншот 2. Прослушивание OpenVPN входящих подключений ## Подключим клиент Для отображения процесса подключения клиента отлично подойдет альтернативная машина Ubuntu. Аналогично можно настроить и другие Linux-системы или же загрузить Windows: [https://openvpn.net/community-downloads/](https://openvpn.net/community-downloads/) В завершении, после создания конфигурации и указания пути, загрузите ее. ```bash scp user@vpn-server:/path/to/configuration.ovpn /home/user ``` Установим OpenVPN клиент. ```bash sudo apt install openvpn ``` Запустим клиент и укажем путь к конфигурации, загруженной с сервера. ``` openvpn —config /path/to/configuration.ovpn ``` Следующая строка покажет, что подключение успешно. ## ## ## Добавление и удаление клиентов Для добавления / удаления клиентов, а также удаления OpenVPN необходимо вновь запустить скрипт и выбрать подходящий вариант. ``` ./openvpn-install.sh ``` Результат: https://serverspace.by/support/help/podklyuchenie-servera-pfsense-2-4-k-seti.md Инструкция по подключению сервера с операционной системой PFSense 2.4 к сети с использованием командной строки и веб интерфейса. Инструкция по подключению сервера с операционной системой PFSense 2.4 к сети с использованием командной строки и веб интерфейса. Рассмотрим подключение виртуального сервера PFSense на примере изолированной сети. Для начала требуется подключить сервер к изолированной сети в панели управления. В вертикальном меню справа кликните **Сети**, в списке сетей выберите нужную (или создайте новую) и подключите сервер. При подключении, сервер должен быть выключен. **Подключение через командную строку** Включите сервер и откройте терминал под пользователем root. **DHCP Выключен:** В пользовательском меню pfSense введите команду 1 (Assign Interfaces). ``` Enter an option: 1 ``` Для подтверждения настройки сети введите y. ``` Valid interfaces are: vmx0 00:50:56:01:d2:13 (up) VMware VMXNET3 Ethernet Adapter vmx1 00:50:56:01:d2:16 (down) VMware VMXNET3 Ethernet Adapter Do VLANs need to be set up first? If VLANs will not be used, or only for optional interfaces, it is typical to say no here and use the webConfigurator to configure VLANs later, if required. Should VLANs be set up now [y|n]? y ``` В некоторых случаях возможна опциональная настройка имени родительского интерфейса для VLAN. Если вы не знаете, какое значение указывать — нажмите Enter. ``` VLAN Capable interfaces: vmx0 00:50:56:01:d2:13 (up) vmx1 00:50:56:01:d2:16 Enter the parent interface name for the new VLAN (or nothing if finished): ``` Введите имя внешнего интерфейса. Данный интерфейс уже настроен. ``` If the names of the interfaces are not known, auto-detection can be used instead. To use auto-detection, please disconnect all interfaces before pressing 'a'; to begin the process. Enter the WAN interface name or 'a' for auto-detection (vmx0 vmx1 or a): vmx0 ``` Введите имя локального интерфейса. Далее будет выполнена настройка данного интерфейса. ``` Enter the LAN interface name or 'a' for auto-detection NOTE: this enables full Firewalling/NAT mode. (vmx1 a or nothing if finished): vmx1 ``` Для подтверждения назначения интерфейсов нажмите y. ``` The interfaces will be assigned as follows: WAN -> vmx0 LAN -> vmx1 Do you want to proceed [y|n]? y ``` После успешного сохранения настроек, в командной строке отобразится следующая запись. ``` Writing configurationdone. One moment while the settings are reloading done! VMware Virtual Machine — Netgate Device ID: XXXXXXXXXXXXXXXXXXXX *** Welcome to pfSense 2.4.2-RELEASE-p1 (amd64) on pfsense24 *** WAN (wan) -> vmx0 -> v4: XXX.XXX.XXX.XXX/24 LAN (lan) -> vmx1 -> ``` Для установки IP-адреса LAN интерфейсу введите команду 2 (Set interface(s) IP address). ``` Enter an option: 2 ``` Введите номер интерфейса, который требуется настроить. ``` Available interfaces: 1 — WAN (vmx0 — static) 2 — LAN (vmx1) Enter the number of the interface you wish to configure: 2 ``` Введите локальный IP-адрес сети, указанный в панели управления. ``` Enter the new LAN IPv4 address. Press for none: > 10.0.0.2 ``` Укажите маску подсети. Примечание: маска подсети определяет неизменную часть адреса и влияет на ёмкость сети (количество доступных адресов). Указывается в виде количества старших бит, не меняющихся от адреса к адресу. К примеру, 24 эквивалентно записи «255.255.255.0» и означает 256 доступных (254 рабочих) адреса. ``` Subnet masks are entered as bit counts (as in CIDR notation) in pfSense. e.g. 255.255.255.0 = 24 255.255.0.0 = 16 255.0.0.0 = 8 Enter the new LAN IPv4 subnet bit count (1 to 31): > 24 ``` На следующих двух шагах нажмите Enter. ``` For a WAN, enter the new LAN IPv4 upstream gateway address. For a LAN, press for none: > Enter the new LAN IPv6 address. Press for none: > ``` На вопрос о включении DHCP-сервера в локальной сети нажмите n. ``` Do you want to enable the DHCP server on LAN? (y/n) n ``` Для завершения нажмите Enter. ``` The IPv4 LAN address has been set to 10.0.0.2/24 You can now access the webConfigurator by opening the following URL in your web browser: http://10.0.0.2/ Press to continue. ``` После успешного присвоения IP-адреса отобразится следующая запись. ``` WAN (wan) -> vmx0 -> v4: XXX.XXX.XXX.XXX/24 LAN (lan) ->; vmx1 -> v4: 10.0.0.2/24 ``` **DHCP Включен****:** Для динамического получения IP-адреса, необходимо выбрать опцию 8 (Shell). ``` Enter an option: 8 ``` Выполните команду dhclient с указанием имени локального интерфейса. ``` dhclient vmx1 ``` Для просмотра полученного IP-адреса и настроек, воспользуйтесь утилитой ifconfig. **Подключение через веб интерфейс** Перейдите в панель управления интерфейса pfSense, введите логин и пароль, указанные под адресом. Для добавления LAN-интерфейса необходимо выбрать в горизонтальном меню **Interfaces, **затем** Assignments**. В появившемся окне выбрать требуемый интерфейс, нажать кнопку **Add**, сохранить выбранный параметр нажатием кнопки** Save**. Для настройки интерфейсов в горизонтальном меню выбрать **Interfaces**, затем **LAN**. В появившемся окне выбрать **Enable interface**. **DHCP ****выключен****:** В поле** IPv4 Configuration Type** выбрать **Static IPv4**. В поле** IPv4 Address** указать локальный адрес сети и маску. Сохранить внесенные изменения, нажав кнопку **Save** внизу страницы. Примечание: маска подсети определяет неизменную часть адреса и влияет на ёмкость сети (количество доступных адресов). Указывается в виде количества старших бит, не меняющихся от адреса к адресу. К примеру, 24 эквивалентно записи «255.255.255.0» и означает 256 доступных (254 рабочих) адреса. Применить сохраненные изменения нажав **Apply Changes**. **** **DHCP включен:** В поле** IPv4 Configuration Type** выбрать **DHCP**. Сохранить внесенные изменения, нажав кнопку **Save**, затем** Apply Changes**. Присвоенный IP-адрес можно увидеть внизу на главной странице справа от системной информации. https://serverspace.by/support/help/ustanovka-domena-active-directory-na-windows-server-2019.md В этой статье мы рассмотрим процесс установки нового домена для среды Active Directory в Windows Server 2019. В этой статье мы рассмотрим процесс установки нового домена для среды Active Directory с помощью Windows Server 2019. Это будет реализовано путем установки соответствующей роли, а затем путем повышения роли сервера до главного контроллера домена (DC). В то же время мы установим роль DNS, чтобы использовать возможности зон, интегрированных в Active Directory. По сути, процесс выполняется в два этапа: установка роли Active Directory Domain Services и повышение статуса сервера до главного контроллера домена. ## Установка роли Active Directory Domain Services Прежде чем приступить к выполнению этого шага, необходимо настроить на сервере статический IP-адрес, а также изменить имя Windows Server в соответствии со стандартами именования вашей компании. После того как сделаете это, приступайте к установке ADDS. Откройте управление сервером (Server Manager), нажмите Управление (Manage), а затем "Добавить роли и компоненты" (Add Roles and Features). Сразу после этого откроется окно мастера. В разделе "**Before You Begin**" нажмите "**Next"**, чтобы продолжить. В разделе "Тип установки" (**Installation ****Type**) выберите установку на основе ролей сервера или на основе функции виртуальной инфраструктуры и нажмите **Next**, чтобы продолжить. В нашем случае используем первый вариант. В разделе "Выбор сервера" (**Server ****selection**) убедитесь, что выбран нужный сервер, обычно он выделен по умолчанию и нажмите **Next**. В разделе "Роли сервера" (**Server Roles**) выберите Доменные службы Active Directory (Active Directory Domain Services). После этого вам будет предложено добавить некоторые дополнительные функции. Нажмите кнопку Add Features, а затем нажмите **Next**, чтобы продолжить. В разделе "Компоненты" ("**Features**") вам не нужно ничего выбирать, просто нажмите **Next** для продолжения. В разделе AD DS отображается некоторая информация о AD DS, просто нажмите **Next**. Наконец, в разделе "Подтверждение" ("**Confirmation**") нажмите кнопку **Install**, чтобы перейти к установке роли. ## Повышение сервера до контроллера домена После завершения установки роли, если вы не закроете окно, вам будет предложено повысить сервер до контроллера домена (DC). Ссылка будет выделена синим текстом. В качестве альтернативы можно открыть то же окно через сервер менеджер, как показано на рисунке ниже. Нажмите на "Повысить роль этого сервера до уровня контроллера домена" (Promote server to domain controller). По сути, это мастер конфигурации развертывания Active Directory, который поможет вам создать первый лес в Active Directory. В разделе "Конфигурация развертывания" (**Deployment Configuration**), включите опцию "Добавить новый лес" "**Add a new forest**", а затем введите желаемое имя домена. В моем случае это office.local, и нажмите **Next**. В разделе "Параметры контроллера домена" (**Domain ****Controller ****Options**) выберите функциональный уровень леса и домена. Если это ваш первый лес на **Windows Server 2016**, оставьте значения по умолчанию. В противном случае, если в вашей бизнес-инфраструктуре есть другие контроллеры домена, вам следует узнать их функциональный уровень, прежде чем приступать к необходимым действиям. Включите опцию сервера системы доменных имен (DNS), чтобы также установить роль DNS на том же сервере, если вы не сделали этого раньше. Также введите (дважды) пароль **Directory Services Restore Mode** (DSRM), обязательно запишите его в документации и нажмите **Next**, чтобы продолжить. В подразделе "Параметры DNS" (**DNS ****Options**) вы увидите предупреждающее сообщение, но в данный момент оно не должно вас беспокоить. Просто нажмите "**Next**", чтобы продолжить. В разделе "Дополнительные параметры" (Additional Options) оставьте имя NetBIOS по умолчанию и нажмите **Next**, чтобы продолжить. В разделе "Пути" (**Paths)** выберите, где на вашем сервере будут располагаться папки NTDS, SYSVOL и LOG. В моем случае я оставлю значения по умолчанию, вы можете выбрать другой диск в зависимости от ваших предпочтений и настроек. В разделе "Просмотреть параметры" (**Review Options**) вы увидите сводку выбранных вами параметров. Убедившись, что вы не допустили ошибок, нажмите **Next**. В разделе "Проверка предварительных требований" "**Prerequisites ****Check**" будут проверены предварительные условия. Здесь, если возникнет хотя бы одна ошибка, вы не сможете продолжить, и вам нужно будет ее исправить. В противном случае, если отображаются только предупреждающие сообщения (которые являются наиболее распространенными), но проверка прошла успешно, как показано на рисунке, нажмите кнопку **Install**, чтобы продолжить. На этом этапе вам нужно будет подождать несколько минут, пока завершится процесс установки. Сразу после этого сервер автоматически перезагрузится. После перезагрузки ваш первый контроллер домена будет готов и вы можете пользоваться всеми функциональностями, таким как например ADUC и ADAC. https://serverspace.by/services/dns-hosting.md Делегируйте домен на отказоустойчивый сервер и управляйте его ресурсными записями. Автоматическая миграция записей. Делегируйте домен на отказоустойчивый сервер и управляйте его ресурсными записями https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_centos_7.md Инструкция по расширению диска в CentOS 7 после расширения дискового пространства в панели управления. Откройте терминал под пользователем root и введите следующие команды. После увеличения диска в панели управления, необходимо сделать его доступным для операционной системы: Откройте терминал (см. [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/)) под пользователем root и введите следующие команды: ``` [root@CentOSx64 ~]# echo 1 > /sys/block/sda/device/rescan ``` Запустите fdisk: ``` [root@CentOSx64 ~]# fdisk /dev/sda ``` Далее выполните команды в интерфейсе утилиты fdisk. Удаляем раздел /dev/sda2: ``` Command (m for help): d ``` ``` Partition number (1,2, default 2): 2 ``` Создаем раздел: ``` Command (m for help): n ``` Выбираем тип раздела — основной (p): ```sql Select (default p): p ``` ``` Partition number (2-4, default 2): 2 ``` Принимаем значения по умолчанию — нажимаем два раза Enter: ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Меняем тип раздела: ``` Command (m for help): t Partition number (1-**2**): **2** Hex code (type L to list all codes): 8e Command (m for help): w ``` Сообщаем ядру об изменениях: ``` [root@CentOSx64 ~]# partx -u /dev/sda2 ``` Изменяем физический том: ``` [root@CentOSx64 ~]# pvresize /dev/sda2 ``` Узнаем название логического тома: ``` lvdisplay ``` Нас интересует том называющийся /dev/XXXXXXX/root (в примере ниже это /dev/vgroup01/root) запоминаем данное название. ``` --- Logical volume --- LV Path /dev/vgroup01/swap .... --- Logical volume --- LV Path /dev/vgroup01/var ... --- Logical volume --- LV Path /dev/vgroup01/root ... ``` Расширяем логический том: (XXXXXXX — заменяем на название тома, которое мы запомнили) ``` [root@CentOSx64 ~]# lvextend -l +100%FREE /dev/XXXXXXX/root ``` ``` Size of logical volume XXXXXXX/root changed from 8.71 GiB (2229 extents) to 98.71 GiB (25269 extents). Logical volume root successfully resized ``` Расширяем файловую систему: XXXXXXX — заменяем на название тома, которое мы запомнили) ``` [root@CentOSx64 ~]# xfs_growfs /dev/XXXXXXX/root ``` Готово. https://serverspace.by/support/help/how-to-configure-xrdp-server-on-ubuntu-18-04.md Подробная инструкция по настройке сервера xRDP для подключения к Ubuntu 18.04 с легковесным окружением xfce или mate по протоколу RDP (Remote Desktop Protocol). В инструкции описано как настроить сервер xRDP для подключения к Ubuntu 18.04 с легковесным окружением Xfce или MATE по протоколу RDP. Это может быть очень удобно при соединении из операционных систем семейства Windows без использования специальных инструментов. ## Что такое xRDP? xRDP — это бесплатная реализация RDP (протокола удаленного рабочего стола) Microsoft с открытым исходным кодом, которая позволяет операционным системам, отличным от Microsoft Windows (таким как Linux и BSD), предоставлять полностью функциональный RDP-совместимый удаленный рабочий стол. ## Установка и настройка Подключитесь к виртуальному серверу по протоколу SSH и выполните обновление системы: ```bash sudo apt-get update ``` Установите и включите утилиту xRDP: ```bash sudo apt-get install xrdp sudo systemctl enable xrdp ``` Установите окружение на выбор, xfce или mate, и разрешите xRDP его использовать: xfce: ```bash sudo apt-get install xfce4 xfce4-terminal sudo sed -i.bak '/fi/a #xrdp multiple users configuration n xfce-session n' /etc/xrdp/startwm.sh ``` mate: ```bash sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon sudo sed -i.bak '/fi/a #xrdp multiple users configuration n mate-session n' /etc/xrdp/startwm.sh ``` Откройте порт RDP для возможности удаленного подключения: ``` sudo ufw allow 3389/tcp ``` Перезагрузите xRDP сервер, чтобы изменения вступили в силу: ``` sudo /etc/init.d/xrdp restart ``` ## Подключение к рабочему столу Для подключения откройте приложение Windows Подключение к удаленному рабочему столу. Введите IP-адрес сервера и имя пользователя и нажмите Подключить: Скриншот №1. Подключение к рабочему столу При подключении появится предупреждение безопасности, это связано с тем, что происходит соединение с ОС семейства Linux. Нажмите Да: Скриншот №2. Предупреждение безопасности В открывшемся окне в качестве сессии выборе Xorg, введите пароль для пользователя, нажмите OK: Скриншот №3. Сессия Xorg В результате произойдет подключение к рабочему столу. Рабочий стол окружения Xfce: Скриншот №4. Рабочий стол окружения Xfce Десктоп с окружением MATE: Скриншот №5. Десктоп с окружением MATE https://serverspace.by/support/help/how-to-recovery-root-password.md В инструкции описано как с помощью образа для восстановления выполнить восстановление пароля для root-пользователя. В инструкции описано как с помощью образа для восстановления выполнить восстановление пароля для root-пользователя. ## Восстановление пароля Для начала необходимо открыть сервер из списка, для которого требуется восстановить root-пароль. Откройте вкладку **Восстановление** и выберите **Загрузиться с образа для восстановления**. Подтвердите подключение образа для восстановления. Тип загрузки будет изменён. **Важно**: после загрузки с образа для восстановления сервер будет доступен через Web-консоль! Для загрузки с образа для восстановления необходимо выполнить перезагрузку сервера через панель управления или средствами ОС. Далее рассмотрим пример перезагрузки через панель управления. Перейдите во вкладку **Действия** —> **Питание** и выполните перезагрузку сервера. Подтвердите перезагрузку сервера. После перезагрузки сервера необходимо открыть **Web консоль**. Выберете первый пункт по умолчанию ***Boot SystemRescueCd using default option.** Если в консоли уже отображается командная строка, то опция загрузки была была выбрана по умолчанию. Далее необходимо узнать на каком разделе диска находится система: fdisk -l В данном случае это /dev/vda2/. Создайте временный каталог для новой системы: mkdir /tmp/reset Смонтируйте к созданному каталогу системный раздел: mount /dev/vda2 /tmp/reset Измените корневой каталог на новый: chroot /tmp/reset Для смены root-пароля выполните следующую команду: passwd Введите и подтвердите новый пароль. ОБРАТИТЕ ВНИМАНИЕ: При вводе пароля символы пароля не отображаются, но всё равно вводятся! В панели управления измените образ загрузки на вкладке **Восстановление** на системный. Выполните перезагрузку сервера с помощью панели управления. После перезагрузки сервера подключитесь к серверу с новым паролем привычным способом. https://serverspace.by/support/help/diagnostika-winmtr-windows-server-2019.md WinMTR - это приложение с графическим интерфейсом для диагностики сетевого соединения с удаленным узлом на Windows машинах Существует инструмент, сочетающий в себе простоту и удобство приложения с графическим интерфейсом и большие возможности, чем у классических инструментов командной строки для диагностики сетевого соединения с удаленным узлом. Имя ему WinMTR, и в данном руководстве мы рассмотрим как им пользоваться. В качестве операционной системы будет выступать Windows Server 2019. Для начала скачайте WinMTR. Для этого необходимо перейти по ссылке [https://sourceforge.net/projects/winmtr/](https://sourceforge.net/projects/winmtr/) и нажать кнопку "**Download**". Распакуйте скачанный архив в удобное место, откройте папку и запустите **WinMTR.exe** из папки с соответствующей Вашей операционной системе разрядности. Для Windows Server 2019 — это **x64**. Соответственно, использовать будем файл из папки **WinMTR_x64**. Для простой диагностики сетевого соединения с удаленным узлом достаточно вписать его IP адрес или доменное имя в поле **Host** и нажать **Start**. Все параметры можно оставить по умолчанию. После этого Вы увидите как WinMTR отправляет запросы каждую секунду и какие узлы проходят сетевые пакеты на своём пути. Для лучше точности рекомендуем подождать 1-2 минуты пока накопится некоторая статистика. Результаты можно передать для анализа техническому специалисту или в службу поддержки. Для удобства экспорта присутствуют кнопки, позволяющие как скопировать данные, так и создать текстовый или html документ. Скриншот №1. Диагностика сетевого соединения с помощью WinMTR на Windows Server 2019. Расшифровка имён столбцов: - Hostname — имя промежуточного узла. Если убрать галочку "Resolve names" в настройках, то будут отображаться только IP адреса узлов. - Nr — номер узла в маршруте. - Loss % — соотношение потерянных пакетов и отправленных в процентах. - Sent — количество отправленных пакетов. - Recv — количество полученных ответов. - Best — наименьшее время получения ответа после отправки запроса. - Avrg — среднее время получения ответа после отправки запроса. - Worst — наибольшее время получения ответа после отправки запроса. - Last — время получения ответа после отправки последнего запроса. https://serverspace.by/support/help/neskolko-setevyh-interfejsov-v-centos-7.md В данном руководстве мы рассмотрим процесс настройки маршрутизации на основе адреса источника (source based routing) в CentOS 7 Для настройки доступности сервера через разные сетевые интерфейсы и публичные IP адреса не достаточно просто прописать параметры для каждой сетевой карты. Т.к. шлюз по умолчанию может быть только один, то и все сетевые пакеты будут уходить с сервера через него, даже если изначально были получены на другой адрес. Это минус используемой по умолчанию политики маршрутизации на основе адреса получателя. В данном руководстве мы рассмотрим процесс настройки маршрутизации на основе адреса источника (source based routing). ## Настройка сетевых интерфейсов Если Вы используете [сервер в Serverspace](https://serverspace.by/services/cloud-servers.md), то настройка параметров сетевых интерфейсов происходит автоматически при их добавлении или создании сервера. В противном же случае необходимо привести параметры к приведенному ниже виду. Приведенный пример можно скопировать, подставив свои значения для имени интерфейса (eth0), шлюза (GATEWAY), MAC-адреса (HWADDR), IP адреса (IPADDR) и в некоторых случаях маски подсети (NETMASK): ``` nano /etc/sysconfig/network-scripts/ifcfg-eth0 ``` ``` BOOTPROTO=none DEFROUTE=yes DEVICE=eth0 GATEWAY=55.66.77.1 HWADDR=aa:bb:cc:dd:ee:ff IPADDR=55.66.77.88 MTU=1500 NETMASK=255.255.255.0 ONBOOT=yes STARTMODE=auto TYPE=Ethernet ``` Шлюз прописывается только для одного сетевого интерфейса, т.к. он должен быть только один в системе. Настройка второго интерфейса: ``` nano /etc/sysconfig/network-scripts/ifcfg-eth1 ``` ``` BOOTPROTO=none DEVICE=eth1 HWADDR=bb:cc:dd:ee:ff:gg IPADDR=66.77.88.99 MTU=1500 NETMASK=255.255.255.0 ONBOOT=yes STARTMODE=auto TYPE=Ethernet ``` Аналогичным образом производится настройка того количества интерфейсов, которое подключено к системе. ## Настройка source based routing На всякий случай стоит проверить установлен ли пакет iproute и установить его, если нет. ```bash yum install iproute ``` Теперь откройте следующий файл: ``` nano /etc/iproute2/rt_tables ``` Добавьте в его конец следующие строки: ``` 100 table100 101 table101 ``` Запись должна быть в формате **число** пробел **название таблицы**. Оба значения могут быть произвольными. Единственное условие — их уникальность относительно значений других записей в файле. Количество строк должно соответствовать количеству сетевых интерфейсов, для которых настраиваем доступность. Теперь создадим файлы с параметрами таблиц маршрутизации. Нужно создать отдельный такой файл для каждого интерфейса, заменив в названии файла **eth0** на актуальное имя сетевого соединения. ``` nano /etc/sysconfig/network-scripts/rule-eth0 ``` Ниже содержимое файла, где вместо **55.66.77.88** надо поставить IP адрес сетевого интерфейса, а вместо **table100** — добавленные выше таблицы, по 1 для каждого интерфейса: ``` from 55.66.77.88 lookup table100 ``` И соответствующие файлы с правилами маршрутизации. Создаются по тем же принципам, что и файлы параметров таблиц маршрутизации. ``` nano /etc/sysconfig/network-scripts/route-eth0 ``` Нужно подставить актуальные значения **адреса подсети**, **шлюза**, **имени интерфейса** и **значение таблицы**, соответствующее значению из предыдущего файла. ``` 55.66.77.0/24 dev eth0 table table100 default dev eth0 via 55.66.77.1 table table100 ``` Такие пары файлов создаются для каждого сетевого интерфейса в системе с соответствующими ему значениями. Перезагрузим сетевую службу, чтобы изменения применились: ```bash systemctl restart network ``` https://serverspace.by/support/help/bind9-secondary-dns-ubuntu-20-04.md Вторичный (secondary) DNS-сервер необходим в качестве резервного. На случай, если по какой-то причине перестанет работать первичный. Вторичный (secondary) DNS-сервер необходим в качестве резервного. Если по какой-то причине перестанет работать первичный, вторичный обеспечит работоспособность сайта и других указанных в нем ресурсов. В первую очередь вам необходимо установить и выполнить [базовую настройку DNS-сервера BIND9](https://serverspace.by/support/help/dns-server-bind9-ubuntu-20-04/). ### Начальные настройки - IP первичного DNS-сервера — 10.1.1.9 - IP вторичного DNS-сервера — 10.1.1.10 - Пример доменного имени — domain-name.com ## Дополнительные настройки для первичного DNS-сервера BIND9 Если вы настраивали первичный DNS-сервер по нашей [инструкции](https://serverspace.by/support/help/bind9-primary-dns-ubuntu-20-04/), можете пропустить этот шаг. Мы должны разрешить первичному DNS-серверу передавать данные DNS-зоны вторичному серверу. Откройте файл конфигурации BIND9. ``` sudo nano /etc/bind/db.domain-name.com ``` Добавьте в настройки зоны 2 параметра: **allow-transfer** и **also-notify**, подставив в них IP-адрес вторичного сервера. Результат будет примерно таким. ``` zone "domain-name.com" { type master; file "/etc/bind/db.domain-name.com"; allow-transfer { 10.1.1.10; }; also-notify { 10.1.1.10; }; }; ``` Сохраните файл и перезагрузите BIND9. ```bash sudo systemctl reload bind9 ``` ## Настройка BIND9 в качестве вторичного DNS-сервера Откройте файл настройки BIND9. ``` sudo nano /etc/bind/named.conf.local ``` Добавьте к нему следующую директиву. ``` zone "domain-name.com" { type slave; file "db.domain-name.com"; masters { 10.1.1.9; }; }; ``` Параметр **masters** должен содержать IP-адрес первичного DNS-сервера. Сохраните файл и перезагрузите BIND9. ```bash sudo systemctl reload bind9 ``` Чтобы проверить, правильно ли работает вторичный DNS-сервер, используйте команду на любом удаленном компьютере. ``` nslookup domain-name.com 10.1.1.10 ``` Используйте свое полное доменное имя вместо domain-name.com и IP-адрес вашего вторичного DNS-сервера вместо 10.1.1.10. Результат: ``` Server: 10.1.1.10 Address: 10.1.1.10#53 ``` ``` Name: domain-name.com Address: 10.1.1.10 ``` https://serverspace.by/support/help/bind9-primary-dns-ubuntu-20-04.md В этом руководстве мы настроим BIND9 в качестве первичного DNS-сервера для доменного имени. После этого вы сможете указать IP-адреса различных доменных служб. Вы можете использовать DNS-сервер по-разному. В этом руководстве мы настроим BIND9 в качестве первичного DNS-сервера для доменного имени. После этого вы сможете указать IP-адреса различных доменных служб, например, почтового сервера, а также доменов третьего уровня. Перед началом работы выполните [установку и базовую настройку BIND9](https://serverspace.by/support/help/dns-server-bind9-ubuntu-20-04/). ## Создадим зону DNS Мы будем использовать в качестве примера "**domain-name.com**". При настройке просто измените его на свое доменное имя, а свои реальные IP-адреса укажите вместо **10.1.1.xxx**. Добавьте информацию о зоне в конфигурацию. ``` sudo nano /etc/bind/named.conf.local ``` Затем добавьте следующие строки. ``` zone "domain-name.com" { type master; file "/etc/bind/db.domain-name.com"; allow-transfer { 10.1.1.10; }; also-notify { 10.1.1.10; }; }; ``` - type — master, slave, forward или hint; - file — указывает путь к файлу новой зоны; - allow-transfer — список DNS-серверов, которым разрешено передавать зону; - also-notify — первичный DNS-сервер будет уведомлять эти серверы об изменениях зоны. Выполните перезапуск службы. ```bash systemctl reload bind9 ``` ## Конфигурационный файл зоны Создайте файл зоны из шаблона и откройте его. ``` sudo cp /etc/bind/db.local /etc/bind/db.domain-name.com sudo nano /etc/bind/db.domain-name.com ``` Замените localhost в записи SOA полным доменным именем вашего сервера с указанием "." в конце. В примере это "**ns.domain-name.com.**". А root.localhost замените на свой действующий адрес электронной почты администратора с указанием "." вместо "@" и "." в конце. Serial — порядковый номер изменения. Его необходимо увеличивать вручную каждый раз, когда меняется файл зоны. Вторичный сервер отслеживает изменения в зоне с помощью этого параметра. ``` ; ; ; $TTL 604800 @ IN SOA ns.domain-name.com. admin.domain-name.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns.domain-name.com. @ IN A 10.1.1.1 ns IN A 10.1.1.9 ns2 IN A 10.1.1.10 mx IN A 10.1.1.15 ``` Внизу файла находятся записи DNS. Формат записи: hostnameclassDNS record typevalue. Где: - hostname — чаще всего это значение является доменным именем третьего уровня, и "domain-name.com" заполняется автоматически. @ или none означает запись для имени зоны (в данном случае domain-name.com). Вы также можете указать полное доменное имя с точкой в конце (например, ns.domain-name.com.); - class — IN (Internet) — указывает на тип сети; - Наиболее распространенные типы DNS-записей: A, NS, MX, CNAME, TXT. "A" содержит IP-адрес доменного имени, "NS" — IP-адрес DNS-сервера зоны, "MX" — почтовый сервер, "CNAME" — псевдоним, относящийся к значению указанной записи, "TXT" — произвольная запись; - value — IP-адрес, имя хоста, текстовая информация. Перезапустите rndc. ``` sudo rndc reload ``` Затем проверьте DNS-сервер. Введите эту команду с любого удаленного компьютера. ``` nslookup domain-name.com 10.1.1.9 ``` Замените domain-name.com своим полным доменным именем, а 10.1.1.9 — адресом только что настроенного сервера имен. В качестве ответа будет использоваться A-запись DNS вашего домена. В данном примере это 10.1.1.1. **Следующий шаг** — [BIND9 — вторичный DNS-сервер](https://serverspace.by/support/help/bind9-secondary-dns-ubuntu-20-04/). https://serverspace.by/support/help/dns-server-bind9-ubuntu-20-04.md В этой инструкции мы рассмотрим установку и базовую настройку DNS-сервера BIND9. В этой инструкции мы рассмотрим установку и базовую настройку DNS-сервера BIND9. Как установить и настроить DNS-сервер BIND9: - [Установите BIND9](#stepone) - [Настройте BIND9](#steptwo) - [Протестируйте BIND9](#stepthree) ## Установим BIND9 Первое, что вам нужно сделать, это обновить список пакетов и установить BIND9. ```bash sudo apt update sudo apt install bind9 ``` После завершения процесса установки вы можете проверить работу BIND9: ``` nslookup google.com 127.0.0.1 ``` Ответ должен быть похожим на такой: ``` Server: 127.0.0.1 Address: 127.0.0.1#53 ``` ``` Non-authoritative answer: Name: google.com Address: 64.233.164.138 ``` ## Настроим BIND9 DNS-сервер работает сразу после установки. Теперь необходимо настроить его в соответствии с целями использования. Во-первых, разрешите BIND9 работать через брандмауэр. ``` sudo ufw allow Bind9 ``` Затем откроем главный файл настройки — **named.conf.options ** ``` sudo nano /etc/bind/named.conf.options ``` Далее перечислим некоторые из доступных опций. Добавьте необходимые в блоке "options". "**listen-on**" позволяет указать сети, которые будет обслуживать DNS-сервер. Для работы по всем адресам не указывайте параметр или же задайте "any;" ``` listen-on { 10.10.10.0/24; 10.1.0.0/16; }; ``` "**allow-query**" указывает, кому разрешено выполнять запросы. BIND9 по умолчанию разрешает только локальные запросы, поэтому добавьте необходимые IP-адреса или пропишите "any;", чтобы разрешить все запросы. ``` allow-query { any; }; ``` Серверы пересылки содержат IP-адреса DNS-серверов, на которые перенаправляется запрос в случае, если наш сервер не содержит необходимых данных. ``` forwarders { 8.8.8.8; 8.8.4.4; }; ``` Сохраните и закройте файл. Проверьте настройку: ``` sudo named-checkconf ``` Если ошибок не появилось, значит все в порядке. Выполните перезапуск службы, чтобы изменения вступили в силу. ```bash sudo systemctl restart bind9 ``` ## Протестируем BIND9 Чтобы проверить корректность работы DNS-сервера, введите следующую команду на любом другом удаленном компьютере. Перед вводом замените dns-server-ip-address на IP-адрес DNS-сервера: ``` nslookup ubuntu.com dns-server-ip-address ``` Результат: ``` Server: dns-server-ip-address Address: dns-server-ip-address#53 ``` ``` Non-authoritative answer: Name: ubuntu.com Address: 91.189.88.181 ``` Таким образом, кэширующий сервер BIND9 работает. **Следующие шаги:** - [BIND9 — первичный DNS-сервер](https://serverspace.by/support/help/bind9-primary-dns-ubuntu-20-04/) - [BIND9 — вторичный DNS-сервер](https://serverspace.by/support/help/bind9-secondary-dns-ubuntu-20-04/) https://serverspace.by/support/help/postfix-dlya-virtualnyh-pochtovyh-yashhikov-ubuntu-20-04.md В этом руководстве мы настроим Postfix для использования виртуальных почтовых ящиков на Ubuntu 20.04. После [установки и базовой настройки Postfix](https://serverspace.by/support/help/postfix-ubuntu-20-04/) может отправлять и получать письма, отправленные зарегистрированным в системе пользователям. В этом руководстве мы настроим Postfix для использования виртуальных почтовых ящиков на Ubuntu 20.04. ## Настройка системы В первую очередь требуется подготовка системы для работы виртуальных почтовых ящиков. Для этого создадим папку **virtualmailboxes** (для вашего доменного имени) — ее имя может быть произвольным, однако если вы его измените, не забудьте использовать соответствующее значение при дальнейшей настройке. В эту папку Postfix будет добавлять файлы, соответствующие каждому виртуальному пользователю, после получения этим пользователем первого письма. ``` sudo mkdir -p /home/virtualmailboxes/domain-name.com ``` Теперь давайте настроим пользователя **virtualmail**, группу и права на работу с этими папками. ```bash sudo groupadd -g 2000 virtualmail sudo useradd -g virtualmail -u 2000 virtualmail -d /home/virtualmailboxes -m chown -R virtualmail:virtualmail /home/virtualmailboxes ``` ## Настройка Postfix Откроем файл настройки Postfix: ``` sudo nano /etc/postfix/main.cf ``` Postfix может работать в одном из двух режимов при обработке почты для одного домена: - доставлять почту пользователям системы, как было настроено ранее; - работать с виртуальными почтовыми ящиками и доставлять почту виртуальным пользователям — что нам и требуется. Так как для настройки первого варианта целевой домен добавляется в переменную **mydestination**, то мы удалим его оттуда и приведем к следующему виду: ``` mydestination = localhost.com, localhost ``` Далее добавим следующие настройки в файл конфигурации: ``` virtual_mailbox_domains = domain-name.com virtual_mailbox_base = /home/virtualmailboxes virtual_mailbox_maps = hash:/etc/postfix/virtualmaps virtual_minimum_uid = 500 virtual_uid_maps = static:2000 virtual_gid_maps = static:2000 ``` - **virtual_mailbox_domains** указывает на то, что Postfix работает в режиме виртуального почтового ящика, а также содержит в себе домен, для которого обрабатывается почта; - **virtual_mailbox_base** указывает путь для хранения почты; - **virtual_mailbox_maps** указывает файл со списком виртуальных пользователей; - **virtual_minimum_uid**, **virtual_uid_maps**, **virtual_gid_maps** — настройки системного пользователя, который будет управлять почтовой папкой. Теперь создадим список виртуальных почтовых ящиков, путь к которым был указан в **virtual_mailbox_maps**. Каждая строка этого файла должна содержать адрес электронной почты в формате **user@domain** и быть разделена пробелом. **Домен/папка** — путь к файлу для хранения почты относительно **virtual_mailbox_base**. ``` sudo nano /etc/postfix/virtualmaps ``` ``` user1@domain-name.com domain-name.com/user1 user2@domain-name.com domain-name.com/user2 support@domain-name.com domain-name.com/support ``` Сохраним файл. Для применения настроек нужно выполнить две команды: ``` postmap /etc/postfix/virtualmaps postfix reload ``` ## Теперь протестируем Чтобы проверить корректность настройки, отправим электронное письмо виртуальному пользователю от имени другого пользователя, созданного нами, и укажем его почту в качестве обратного адреса (параметры -u и -r): ``` sudo echo "Postfix virtual mailboxes test" | mail -r user2@domain-name.com -u user2@domain-name.com -s "Subject" user1@domain-name.com ``` Чтобы просмотреть сообщения, полученные пользователем user1, используйте команду: ``` sudo cat /home/virtualmailboxes/domain-name.com/user1 ``` Результат: ``` From user2@domain-name.com Wed Mar 31 12:55:19 2021 Return-Path: X-Original-To: user1@domain-name.com Delivered-To: user1@domain-name.com Received: by domain-name.com (Postfix, from userid 0) id 260A481421; Wed, 31 Mar 2021 12:55:19 +0000 (UTC) Subject: Subject To: X-Mailer: mail (GNU Mailutils 3.7) Message-Id: Date: Wed, 31 Mar 2021 12:55:19 +0000 (UTC) From: root Postfix virtual mailboxes test ``` Если письма нет, попробуйте посмотреть журналы отправки почты с помощью команды: ``` sudo cat /var/log/mail.log ``` При возникновении ошибки письмо может быть возвращено отправителю, именно поэтому мы отправляли его от имени уже созданного виртуального пользователя. Для того, чтобы просмотреть почтовый ящик отправителя (user2), используйте команду: ``` sudo cat /home/virtualmailboxes/domain-name.com/user2 ``` https://serverspace.by/support/help/linux-active-directory.md В этой статье будет описан процесс добавления Linux-машины (Ubuntu 20.04) в домен Windows Active Directory. В этой статье будет описан процесс добавления Linux-машины (Ubuntu 20.04) в домен Windows AD. ## Шаг 1. Установка пакетов и подготовка Сначала обновите пакеты. ```bash sudo apt updatesudo apt upgrade ``` После этого установите требуемые пакеты. ```bash sudo apt -y install realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin oddjob oddjob-mkhomedir packagekit ``` Далее мы настроим все инструменты. Вам требуется знать: - Домен: office.local - IP DNS-сервера: 192.168.0.1 - IP второго DNS-сервера: 192.168.0.2 ## Шаг **2. Настройка DNS** Откройте конфигурационный файл **netplan: **[/step] **** ``` sudo nano /etc/netplan/*.yaml ``` Если вы видите там "dhcp4: true", то есть ваш DHCP-сервер настроен корректно, переходите к следующему шагу. Если вы настраиваете параметры сетевого подключения вручную, ознакомьтесь с примером настройки: ``` network:ethernets:enp0s3:addresses:- 192.168.0.15/24gateway4: 192.168.0.10nameservers:addresses: [192.168.0.1, 192.168.0.2]search:- office.localoptional: trueversion: 2 ``` - addresses — это IP, назначаемый сетевой карте; - gateway4 — IP роутера; - nameservers — DNS-сервера; - search — целевой домен. Примените изменения. ``` sudo netplan apply ``` ## Шаг **3. Обнаружение домена, присоединение к нему и проверка результата.** В первую очередь требуется обнаружить домен: ``` realm discover office.local ``` Вы увидите что-то подобное. Это означает, что настройки сети верны и машина получила ответ от домена. Если нет, вам необходимо проверить настройки сети, домен и работоспособность DNS. ``` office.localtype: kerberosrealm-name: OFFICE.LOCALdomain-name: office.localconfigured: no ``` Затем присоединитесь к домену AD. Замените **admin1** на имя администратора и укажите пароль. ``` realm join -U admin1 office.localPassword for admin1: ``` Проверьте, возможен ли прием информации о пользователе AD. Замените **user1** на имя пользователя вашего домена. ``` id user1@office.localuid=687821651(user1@office.local) gid=687800512(user1@office.local) groups=687800512(domain users@office.local) ``` ## Шаг **4. Последние настройки и авторизация.** Необходимо произвести настройку, чтобы в будущем каждый раз не добавлять имя домена к имени пользователя. ``` sudo nano /etc/sssd/sssd.conf ``` Измените значение **use_fully_qualified_names** на **False**. Перезагрузите и проверьте: ```bash sudo systemctl restart sssdid useruid=687821651(user1@office.local) gid=687800512(user1@office.local) groups=687800512(domain users@office.local) ``` Теперь нужно настроить создание домашних каталогов для пользователей AD при входе в систему. ``` sudo nano /etc/pam.d/common-session#add this line in the end of filesession optional pam_mkhomedir.so skel=/etc/skel umask=077 ``` Войдите в систему как пользователь AD. ``` su – userPassword:Creating directory '/home/user1@office.local'.user1@ubuntu-server:~$ ``` Это означает, что вы успешно вошли в систему как пользователь AD. Также вы можете разрешить авторизацию для некоторых пользователей и групп AD или же ограничить других. В приведенном ниже примере настроен запрет для всех пользователей, кроме **user0**, **user1** и группы **Main Admins**. ``` sudo realm deny –allsudo realm permit user0@office.local user1@office.localsudo realm permit -g 'Main Admins' ``` Настройка пользователей AD для получения root-прав такая же, как и для локальных, но выполняется в другом файле. ``` sudo nano /etc/sudoers.d/admins ``` Добавьте к нему нужные строки. Например: ``` user ALL=(ALL) ALL%Domain\ Admins ALL=(ALL) ALL ``` https://serverspace.by/about/news/usluga-administrirovaniya-oblachnyh-serverov-po-podpiske.md Облачный провайдер Serverspace сообщает о запуске услуги по администрированию виртуальных серверов. Минск, Беларусь — 11 марта 2021 г. — Облачный провайдер Serverspace сообщает о запуске услуги по администрированию виртуальных серверов. Она предназначена для тех, кто уже пользуется инфраструктурой провайдера. Услуга позволяет привлекать к обслуживанию серверов технических экспертов Serverspace, которые будут заниматься их настройкой, следить за их состоянием и безопасностью, устранять возникающие инциденты и др. В составе услуги три тарифа, в каждый из которых входит определенный набор опций: - **Базовый тариф** Включает в себя работы по обновлению и обслуживанию инфраструктуры: установку и настройку ПО, установку обновлений, настройку резервного копирования и др. - **Расширенный тариф** Включает в себя возможности базового тарифа, персонального аккаунт-менеджера, а также работы по улучшению инфраструктуры. - **Профессиональный тариф** Этот тариф объединяет в себе возможности базового и расширенного тарифа, и дополнительно включает в себя комплекс работ по обеспечению безопасности инфраструктуры. ### Тарификация услуги - Услуга работает в формате ежемесячной подписки на выбранный тариф. - По умолчанию в стоимость каждого тарифа включено администрирование 1 сервера. При администрировании 2 и более серверов, стоимость тарифа увеличивается на соответствующую сумму. - Активация услуги платная. Стоимость активации составляет половину стоимости выбранного тарифа и взимается дополнительно 1 раз в момент активации. - Если по истечении месяца подписка на администрирование не отменена, она автоматически продлевается на следующий месяц. https://serverspace.by/about/news/generacziya-ssh-klyucha-v-paneli-upravleniya.md Serverspace добавил возможность формировать SSH-ключ в панели управления, при создании сервера. При создании сервера на ОС Linux вы можете выбрать один из двух способ аутентификации. По умолчанию это логин-пароль, но для большей безопасности лучше выбрать SSH-ключ. ### Что изменилось? До последнего обновления SSH-ключ нужно было генерировать самостоятельно. Чтобы сэкономить вам время мы добавили возможность формировать его в панели управления. При генерации вы можете выбрать формат ключа, который вам больше подходит — pem или ppk. Они отличаются совместимостью: ppk подходит только для аутентификации через PuTTY, а pem для большинства других способов подключения. Важно: приватный SSH-ключ не хранится на наших серверах, поэтому не теряйте его, мы не сможем его восстановить. https://serverspace.by/about/news/novaya-funkczionalnost-tegi-dlya-serverov-i-setej.md Serverspace упростил поиск заказанных услуг в панели управления. Теперь их можно группировать с помощью тегов. У нас появилась возможность назначать теги. Эта функциональность доступна для серверов и сетей. ### Зачем это нужно Когда у вас заказано много виртуальных серверов, в них становится сложно ориентироваться. Особенно, если у вас есть несколько серверов под разные задачи. Теги помогают их группировать. ### Как это работает - Выберите сервер, которому нужно назначить тег, и откройте его настройки, кликнув на название. - В настройках под описанием конфигурации нажмите кнопку "Добавить тег". - Придумайте тег, по которому вам будет удобно искать сервер или группу серверов. Он должен быть до 32 символов длиной. Можно использовать любые символы, кроме пробела. - Используйте строку поиска на главной странице, чтобы найти серверы с нужным тегом. ### А еще - Если вы работаете с несколькими проектами, для каждого из них будет отдельный набор тегов. - Управлять тегами можно не только в панели управления, но и через публичный API. О том, как это делать, написано в [документации](https://docs.serverspace.by/public_api.html). https://serverspace.by/about/news/obnovlennyj-interfejs-upravleniya-infrastrukturoj.md «‎Мы провели масштабный рефакторинг и сделали полностью независимыми процессы представления данных и их обработки.» Мы полностью обновили интерфейс управления инфраструктурой. Теперь он соответствует новой дизайн-концепции, как и другие разделы в панели Serverspace. ### Что было раньше Мы провели исследование и выяснили, что для пользователей прежний интерфейс был несовременным, а инструменты находились не там, где их хотели видеть. Необходимо было расширить возможности сервиса, и мы начали с нового дизайна и архитектуры панели управления. ### Что мы поменяли У разработчиков ушло три месяца на то, чтобы внедрить новый дизайн в интерфейс управления. Со стороны пользователя может показаться, что это просто новый стиль. Но на самом деле изменения **более глобальные**. Мы перевели главные услуги на SPA. Это помогло избежать загрузки данных при каждом переходе на новую страницу. Так мы **ускорили работу интерфейса и упростили разработку** новых функциональностей. Быструю скорость загрузки заметят те, кто особенно активно пользуется панелью. Основные изменения коснулись backend-части. Она была адаптирована под SPA. Теперь бэкенд отдает сырой JSON, что экономит серверные ресурсы. Это важно, когда сервисом пользуются десятки тысяч пользователей одновременно. Теперь только фронтенд знает, как отрисовать полученный с бэкенда JSON. Когда пользователь переходит с одной страницы на другую, данные не загружаются полностью на каждой из этих страниц. Нужно только дополнить содержимое недостающим контентом. ### Как сервис выглядит сейчас Кроме нового стиля и оптимизации загрузки страниц, мы частично перенесли функциональности для управления серверами в другие разделы. Теперь набор инструментов для работы с сервером расположен так: Есть отдельная вкладка "Статус". Здесь можно увидеть параметры для подключения к серверу и динамику нагрузки на CPU, RAM, канал связи и заполненность дискового пространства. В **"Настройках"** можно: - изменить конфигурацию; - добавить или удалить дисковый том; - заказать дополнительную публичную подсеть или изменить пропускную; - способность существующей; - настроить правила Firewall; - заказать лицензии (RDP, SQL, MS Office). При переходе в раздел **"Действия"** можно выключить, перезагрузить, копировать, пересоздать или удалить сервер. Снапшоты и резервные копии размещены на отдельных вкладках. Появился новый раздел — **"Администрирование"**. Это новая услуга, о которой мы рассказывали в [отдельной статье](https://serverspace.by/about/news/usluga-administrirovaniya-oblachnyh-serverov-po-podpiske.md). ### Что будет дальше Мы продолжаем редизайн панели управления. Совсем скоро новая концепция Serverspace будет реализована во всех разделах сайта. О том, как проходила ее разработка, мы расскажем в другой новости. https://serverspace.by/about/news/upravlenie-domenami-po-api-i-cli.md Теперь доменами, которые были делегированы на DNS-хостинг Serverspace, можно управлять, используя интерфейсы API и CLI. У пользователей Serverspace появились два новых способа управлять доменами, которые были делегированы на DNS-хостинг Serverspace. Теперь, кроме интерфейса панели управления, можно использовать API и CLI. Команды для управления доменами через API есть в [документации](https://docs.serverspace.by/public_api.html#tag/DNS), для работы через командную строку — в [репозитории на GitHub](https://github.com/itglobalcom/s2ctl). DNS-хостинг — бесплатная услуга размещения домена на DNS-серверах Serverspace. С ее помощью можно управлять доменами и их записями в едином интерфейсе вместе с инфраструктурой. Подробные инструкции по DNS-хостингу опубликованы в [базе знаний](https://serverspace.by/support/help/category/dns/). https://serverspace.by/support/help/rasshirenie-razdela-pfsense22.md Пошаговое руководство по увеличению дискового пространства сервера PfSense 2.3. После увеличения диска в панели, необходимо сделать его доступным для ОС. Ниже рассмотрен алгоритм действий для увеличения дискового пространства. - Подключаемся к необходимому нам серверу (более подробно см. [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/)). - Заходим под пользователем root(при вводе пароля, он не отображается на мониторе в целях безопасности). - Выбираем пункт меню «Shell» ``` Enter an option: 8 ``` - Отключаем файл подкачки ``` swapoff /dev/label/swap0 ``` - Удаляем раздел с файлами подкачки ``` gpart delete -i 2 da0s1 ``` - Расширяем первый физический раздел диска ``` gpart resize -i 1 da0 ``` - Применяем изменения ``` gpart commit da0s1 ``` - Расширяем первый раздел диска ``` gpart resize -i 1 -s XG da0s1 ``` - Добавляем раздел с файлом подкачки ``` gpart add -t freebsd-swap da0s1 ``` - Ставим метку на раздел с файлом подкачки ``` glabel label swap0 /dev/da0s1b ``` ``` sed -i "" 's/dev/ufsid/[a-z0-9]*/dev/da0s1a/g' /etc/fstab ``` - Перезагружаем сервер с помощью команды ``` reboot ``` - Расширяем файловую систему раздела с помощью команды ``` growfs -y /dev/da0s1a ``` - ``` gpart show -p ``` -по данной команде можно посмотреть правильность выполненных операций. https://serverspace.by/support/help/ustanovka-docker-compose-na-centos-7.md В этой статье будет разобран процесс установки Docker Compose на существующий Docker хост, а затем будет затронута тема развертывания контейнеров. Docker Compose — это инструмент командной строки для определения и настройки многоконтейнерных приложений Docker. Иначе говоря, Docker Compose используется для связывания нескольких контейнеров и развертывания приложения из одного файла. Инструмент Docker Compose может использоваться в среде разработки, тестирования и подготовки, и, кроме того, может быть легко использован в рабочем процессе CI (Continuous Integration). Предположим, вам требуется развернуть сайт на WordPress внутри контейнера — для его развертывания потребуется один контейнер веб-сервера (Apache/Nginx) и один контейнер базы данных (MySQL/MariaDB). С помощью Docker Compose есть возможность легко включить несколько контейнеров в файл docker-compose, а также любую другую конфигурацию, которая требуется для полноценной работы приложения. В этой инструкции будет разобран процесс установки Docker Compose на существующий хост, содержащий Docker, а также будет затронута тема развертывания контейнеров командой docker-compose. Предполагается, что хост с Docker уже настроен и работает. Перейдем к этапам установки Docker Compose Tool. ## Этапы установки Docker Compose Зайдите на свой хост, содержащий Docker, и по порядку запустите команды, перечисленные ниже: ``` [root@dockerserver ~]# yum install epel-release -y [root@dockerserver ~]# yum install python-pip -y [root@dockerserver ~]# pip install docker-compose ``` Проверьте версию Docker командой: ```bash [root@dockerserver~]# docker-compose —version docker-compose version 1.25.4, build 8d51620a [root@dockerserver ~]# ``` ## Развертывание контейнеров инструментом Docker Compose Создайте каталог и в нем же файл compose с именем "docker-compose.yml" или "docker-compose.yaml". В файле compose мы определим сервисы для приложений и образы контейнеров. Прежде чем приступить к созданию compose-файла, скачайте образы контейнеров WordPress и MySQL: ```bash [root@dockerserver ~]# docker pull wordpress [root@dockerserver ~]# docker pull mysql [root@dockerserver ~]# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE wordpress latest d44c65e8e9a3 9 days ago 540MB mysql latest 9b51d9275906 3 weeks ago 547MB ``` Затем создайте каталог с именем "siteonwordpress": ``` [root@dockerserver ~]# mkdir siteonwordpress [root@dockerserver ~]# cd siteonwordpress/ [root@dockerserver siteonwordpress]# ``` Далее создайте файл docker-compose.yml с перечисленным содержимым: ``` version: '3.0' services: frontserver: image: wordpress container_name: wp_cont ports: — 8080:80 links: — databaseserver:mysql environment: WORDPRESS_DB_PASSWORD: erf6UiwkzjTH databaseserver: image: mysql:latest container_name: wordpressdb_cont environment: MYSQL_ROOT_PASSWORD: erf6UiwkzjTH ``` [https://serverspace.by/wp-content/uploads/2020/06/1_windowsterminal_avevunscjc.png](https://serverspace.by/wp-content/uploads/2020/06/1_windowsterminal_avevunscjc.png) В приведенном выше файле compose были определены два сервиса с именами "frontserver" и "databaseserver". Для этих сервисов также указаны образы контейнера. Помимо этого были определены переменные среды и упомянуты пароли root mysql и db wordpress. Обращаем внимание, что отступы осуществляются пробелами, в соответствии с YAML-разметкой. Давайте развернем наше приложение, то есть сайт на WordPress, с помощью команды: ``` [root@docker-host siteonwordpress]# docker-compose up ``` Команда выше развернет два контейнера с именами "wp_cont" и "wordpressdb_cont". Попробуйте получить доступ к своему сайту WordPress, используя следующий URL: ``` http://{dockerserver-ip}:8080 ``` Следуйте инструкциям на экране, чтобы завершить установку WordPress. Это подтверждает, что сайт WordPress был успешно развернут внутри контейнеров благодаря использованию утилиты docker-compose. Далее рассмотрим параметры команды "docker-compose". ## Вывод контейнеров, развернутых для нашего приложения Для вывода выполните следующую команду: ``` [root@dockerserver siteonwordpress]# docker-compose ps Name Command State Ports ——————————————————————————— wordpressdb_cont docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp wp_cont docker-entrypoint.sh apach Up 0.0.0.0:8080->80/tcp [root@dockerserver siteonwordpress]# ``` ## Остановка и запуск контейнеров и их служб Можно нажать Ctrl+C во время выполнения "docker-compose up" или выполнить команду: ``` [root@dockerserver siteonwordpress]# docker-compose stop Stopping wp_cont done Stopping wordpressdb_cont done [root@dockerserver siteonwordpress]# ``` Выполните команду "docker-compose start", чтобы запустить контейнеры и их службы: ``` [root@dockerserver siteonwordpress]# docker-compose start Starting databaseserver done Starting frontserver done [root@dockerserver siteonwordpress]# ``` ## Просмотр журналов контейнеров Чтобы просмотреть журналы контейнеров и журналы определенного контейнера, запустите команду "docker-compose logs {service-name}": ``` [root@dockerserver siteonwordpress]# docker-compose logs [root@dockerserver siteonwordpress]# docker-compose logs databaseserver ``` ## Остановить и удалить контейнеры вместе с созданной сетью С помощью команды "docker-compose down" можно останавливать и удалять контейнеры, выполняя всего одну команду: ``` [root@dockerserver siteonwordpress]# docker-compose down Stopping wp_cont done Stopping wordpressdb_cont done Removing wp_cont done Removing wordpressdb_cont done Removing network compose_default [root@dockerserver siteonwordpress]# ``` Дополнительные параметры можно узнать в разделе помощи, выполнив команду "docker-compose –help". https://serverspace.by/support/help/uvelichenie-diskovogo-prostranstva-v-centos-7.md После увеличения дискового пространства в панели управления, необходимо также сделать доступным диск для операционной системы - рассмотрим этот процесс подробнее. После увеличения дискового пространства в панели управления, необходимо также сделать доступным диск для операционной системы. Под пользователем root и вводим следующие команды: ``` [root@Serverspace ~]# echo 1 > /sys/block/sda/device/rescan ``` С помощью fdisk выполним: ``` [root@Serverspace ~]# fdisk /dev/sda ``` Удалим раздел /dev/sda2: ``` Command (m for help): d Partition number (1,2, default 2): 2 ``` Создадим раздел: ``` Command (m for help): n ``` Выбираем тип раздела (p) — основной ```sql Select (default p): p Partition number (2-4, default 2): 2 ``` Нажимаем два раза Enter — принимаем значения по умолчанию ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Изменяем тип раздела ``` Command (m for help): t Partition number (1-2): 2 Hex code (type L to list all codes): 8e ``` Сохраним изменения: ``` Command (m for help): w ``` Известим ядро об изменениях: ``` [root@Serverspace ~]# partx -u /dev/sda2 ``` Внесем изменения в физический том: ``` [root@Serverspace ~]# pvresize /dev/sda2 ``` Теперь необходимо узнать название логического тома, для этого выполним: ``` lvdisplay ``` Нас интересует название тома оканчивающееся на XXXXXXX/root (в примере ниже это /dev/centos_vg/root) запоминаем данное название ``` — Logical volume — LV Path /dev/centos_vg/swap . — Logical volume — LV Path /dev/centos_vg/var — Logical volume — LV Path /dev/centos_vg/root ``` Расширяем логический том: ``` [root@Serverspace ~]# lvextend -l +100%FREE /dev/XXXXXXX/root Logical volume root successfully resized ``` Расширяем файловую систему: ``` [root@Serverspace ~]# xfs_growfs /dev/XXXXXXX/root ``` https://serverspace.by/support/help/uvelichenie-diskovogo-prostranstva-v-ubuntu-16-04.md После того, как мы увеличили размер диска из панели управления, нам также нужно расширить этот диск на уровне ОС Ubuntu 16.04. Рассмотрим процесс подробно. После того как мы увеличили размер диска из панели управления, нам также нужно расширить этот диск на уровне ОС. Для этого, в терминале с административными правами root выполнив команду: ``` root@Serverspace:~# echo 1 /sys/block/sda/device/rescan ``` Проверим информацию о дисках С помощью утилиты для работы с разделами и дисками parted, получим информацию о разделах: ``` root@Serverspace:~# parted (parted) p Model: VMware Virtual disk (scsi) Disk /dev/sda: %size%GB ``` Запомним размер %size%GB. Далее, изменим размер раздела воспользовавшись командой resizepart утилиты parted, указав номер раздела %partnum% ``` (parted) resizepart %partnum% ``` В качестве значения "End" используем значение %size% полученное ранее из (Parted) p ``` End? [XX.X GB]? %Size%GB ``` Завершим работу утилиты parted командой quit: ``` (parted) quit ``` После чего получим информацию о необходимости внести изменения в fstab: ``` Information: You may need to update /etc/fstab. ``` Теперь воспользуемся утилитой для работы с разделами — fdisk: Получив список разделов параметром -l, выберем нужный нам раздел(в нашем примере /dev/sda) ``` root@Serverspace:~# fdisk -l root@Serverspace:~# fdisk /dev/sda ``` Создадим раздел — тип раздела (L) — логический ```sql Command (m for help): n Select (default p): l Adding logical partition %lpart% ``` Запоминаем номер раздела, созданный в ходе выполнения fdisk (в примере обозначено как %lpart%). Нажимаем два раза Enter, соглашаясь со значениями по умолчанию : ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Изменяем тип раздела, при этом указываем номер раздела, который мы запомнили как %lpart%. ``` Command (m for help): t Partition number (1-X): %lpart% Hex code (type L to list codes): 8e Command (m for help): w ``` Сообщим ядру системы о наших изменениях: ``` root@Serverspace:~# partx -v -a /dev/sda ``` В ответ увидим строку. /dev/sda: partition %lpart% added Инициализируем раздел, где %lpart% — номер раздела, который мы запомнили ранее. ``` root@Serverspace:~# pvcreate /dev/sda%lpart% Physical volume "/dev/sda%lpart" successfully created ``` Добавим физический раздел к уже существующей группе томов: ``` root@Serverspace:~# vgextend ubuntu-vg /dev/sda%lpart% Volume group "ubuntu-vg" successfully extended ``` Теперь расширим логический том c помощью lvextend. ``` root@Serverspace:~# lvextend -l +100%FREE //dev/ubuntu-vg/root Extending logical volume root to YY.ZZ GiB Logical volume root successfully resized ``` И также расширим файловую систему утилитой resize2fs. ``` root@Serverspace:~# resize2fs /dev/ubuntu-vg/root ``` https://serverspace.by/support/help/chto-takoe-docker.md Docker — это инструмент, представляющий собой систему управления контейнерами. Такая система полезна при масштабировании, обновлении и миграции на другой сервер. [https://serverspace.by/wp-content/uploads/2020/06/43_do-1.png](https://serverspace.by/wp-content/uploads/2020/06/43_do-1.png) Docker — это инструмент, представляющий собой систему управления контейнерами, официальный релиз которого состоялся в 2013 году. Такая система крайне полезна при масштабировании, обновлении и особенно при миграции на другой сервер. Docker функционирует на программном языке Go. Несмотря на то, что изначально инструмент мог использоваться исключительно на оборудовании, работающем на операционной системе Linux, теперь он совместим также и с устройствами на Windows и macOS. Говорить о нишевости проекта не приходится. За относительно краткий срок он стал популярен среди широкого круга специалистов и уже используется для целого ряда решений, а тенденция к обретению еще большей популярности ожидается и в будущем. Одна из главных причин этого — Docker Hub, репозиторий предварительно созданных образов контейнеров со свободным доступом. Заполняют его не только фрилансеры, но и энтузиасты, увлекающиеся программированием. Официальные разработчики также оставляют в открытом доступе десятки готовых приложений. К примеру, сейчас там можно найти Jenkins, Redmine, GitLab, MySQL, Apache, Elasticsearch и множество других решений. ## Как работать с Docker Система проста и удобна в использовании. В качестве примера рассмотрим запуск WordPress с нуля. C помощью Docker для начала работы с этой системой управления сайтами достаточно выполнить команды: ```bash docker run —name wp-mysql -e MYSQL_ROOT_PASSWORD=wpmsqlpsswd -d mysql:5.7 docker run —name my-wordpress —link wp-mysql:mysql -d -p 80:80 wordpress ``` После чего открыть в веб-обозревателе страницу http://localhost, где вместо localhost следует указать внешний IP-адрес вашего сервера, и приступать к настройке WordPress. ## Структура Docker При работе с экосистемой пользователи на постоянной основе сталкиваются с тремя основополагающими терминами: - **Image (образ)**. Под этим понимают макет, использующийся для создания новых контейнеров. Фактически это слепок файловой системы с программным кодом и окружением внутри. - **Registry (реестр)**. Реестром в экосистеме называют Docker Hub, о котором мы рассказывали ранее. - **Container (контейнер)**. Готовое к использованию запущенное приложение. ## Преимущества использования Docker Удобство — вот за что Docker полюбился пользователям. Установка дополнительного программного обеспечения или создание готового приложения с использованием Docker несравненно быстрее, нежели настройка вручную. Это позволяет оптимизировать работу команды и многократно снизить временные затраты. Допустим, вам понадобилось установить Github, Jenkins, Redmine или что-либо еще. Вместо того, чтобы собственноручно заниматься настройкой среды, установкой пакетов и веб-сервера, можно запустить контейнер, где огромная часть работы уже сделана за вас. Репозиторий [hub.docker.com](https://hub.docker.com/) содержит сотни тысяч таких программ. Все они устанавливаются вместе с требуемыми для работы библиотеками, что исключает возможность конфликта с другим ПО. Использовать Docker можно и для переноса собственного приложения в другую среду. Для этого нужно просто загрузить ваш контейнер в репозиторий и выгрузить его на новый сервер. https://serverspace.by/support/help/ustanovka-lemp-steka-na-centos-7.md Подробная инструкция по установке LEMP-стека на CentOS 7. Настройка Firewall, установка Nginx, MariaDB, установка и настройка PHP 7.3. LEMP — это акроним, обозначающий набор программного обеспечения, широко используемого на веб-серверах. Рассмотрим его установку на CentOS 7, однако перед этим произведем обновление системы и выполним перезагрузку: ```bash sudo yum update -y reboot ``` ## **Настройка Firewall** Так как по умолчанию порты 80 и 443 закрыты настройками файрвола, следует выполнить несколько команд для получения доступа к веб-серверу из интернета. Открываем порт 80: ``` sudo firewall-cmd —permanent —zone=public —add-service=http ``` Открываем порт 443: ``` sudo firewall-cmd —permanent —zone=public —add-service=https ``` Перезагружаем службу: ```bash sudo systemctl restart firewalld ``` Проверяем внесенные изменения: ``` sudo firewall-cmd —zone=public —list-services ``` В итоге должно отобразиться следующее: ``` dhcpv6-client http https ssh ``` ## **Установка Nginx** Включаем репозиторий EPEL, если это не было сделано ранее. EPEL содержит некоторые пакеты, которые не вошли в стандартный набор RHEL (CentOS), в том числе Nginx. Вводим следующую команду для подключения репозитория: ```bash sudo yum install epel-release -y ``` Установим непосредственно сам Nginx: ```bash sudo yum install nginx -y ``` Запускаем сервис и добавляем его в автозапуск: ```bash sudo systemctl start nginx sudo systemctl enable nginx ``` ## **Установка MariaDB** Теперь перейдем к установке и первоначальной настройке СУБД: ```bash sudo yum install mariadb-server mariadb -y ``` Запускаем службу аналогично Nginx: ```bash sudo systemctl start mariadb sudo systemctl enable mariadb ``` Следующей командой запустим базовую настройку безопасности: ``` sudo mysql_secure_installation ``` Процесс заключается в установке пароля root-доступа к базам, отключении анонимного и удаленного доступа и удалении тестовых баз. Если не требуется иное, читаем запрос и соглашаемся нажатием клавиши «Y». ## **Установка PHP 7.3** Поддерживаемые версии PHP можно посмотреть на официальном [сайте](https://www.php.net/supported-versions.php). В нашем случае устанавливаем PHP версии 7.3 и подключаем репозиторий Remi следующей командой: ``` sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm ``` Далее устанавливаем пакет yum-utils для работы с репозиторием Remi: ```bash sudo yum install yum-utils ``` Теперь нужно активировать репозиторий и запустить установку пакетов PHP 7.3: ```bash sudo yum-config-manager —enable remi-php73 sudo yum install php73 -y ``` Завершим процесс установки подключением часто используемых модулей и запуском php-fpm: ```bash sudo yum install php-fpm php-mysql php-cli php-mbstring php-opcache php-curl php-gd -y systemctl start php-fpm systemctl enable php-fpm ``` ## **Настройка PHP** Открываем файл настроек php.ini: ``` nano /etc/php.ini ``` Меняем значение cgi.fix_pathinfo. Данное изменение внесет запрет на исполнение произвольного кода на сервере с правами PHP-процесса при загрузке файла: ``` .. cgi.fix_pathinfo=0 #Убираем комментарий ";" в начале строки и меняем 1 на 0 .. ``` Далее меняем группу и пользователя с Apache на Nginx в конфигурационном файле php-fpm: ``` sudo nano /etc/php-fpm.d/www.conf ``` Получаем: ``` ; RPM: apache user chosen to provide access to the same directories as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx ``` Перезапускаем php-fpm: ```bash sudo systemctl restart php-fpm ``` ## **Настройка Nginx** Откроем файл конфигураций Nginx: ``` sudo nano /etc/nginx/nginx.conf ``` Вносим следующие изменения в файл: ```css server { listen 80 default_server; listen [::]:80 default_server; server_name 46.243.182.96; #_Пишем имя сервера или IP адрес_ root /usr/share/nginx/html; include /etc/nginx/default.d/*.conf; location / { root /usr/share/nginx/html; index index.php index.html index.htm; #_Добавляем index.php_ } error_page 404 /404.html; location = /40x.html { root /usr/share/nginx/html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ .php$ { #_Добавляем возможность обрабатывать запросы PHP_ root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } ``` Настало время проверить наш веб-сервер. Создадим страницу по следующему пути: ``` nano /var/www/html/info.php ``` Вставим следующую строку и сохраним файл: ```php ``` Перезапустим Nginx командой: ```bash sudo systemctl restart nginx ``` Теперь, если вы зайдете через браузер на ваш веб-сервер по адресу http://server_name/info.php (http://xxx.xxx.xxx.xxx/info.php, где xxx.xxx.xxx.xxx — адрес), то увидите информационную страницу: https://serverspace.by/support/help/ustanovka-google-authenticator.md Инструкция по установке и настройке приложения Google Authenticator на различные мобильные операционные системы (Android, iOS, Windows Phone) В инструкции описан процесс установки приложения Google Authenticator на различные мобильные операционные системы (Android, iOS, Windows Phone) и в качестве расширения веб-браузера, а также его использование при подключении к панели управления. ## Что это такое? Google Authenticator обеспечивает двухфакторную аутентификацию (2FA). 2FA — дополнительный уровень безопасности, используемый для подтверждения пользователей, пытающихся получить доступ к онлайн-учетной записи. Сначала, пользователь вводит свои логин и пароль. Затем, вместо того, чтобы немедленно получить доступ, он должен будет предоставить другую информацию, например: - дополнительные сведения (персональный идентификационный номер (ПИН), пароль, ответы на "секретные вопросы" или конкретная последовательность нажатия клавиш); - подтверждение владения (как правило, пользователь имеет что-то в своем распоряжении, например, кредитную карту, смартфон или небольшой аппаратный токен); - биометрические данные (эта категория немного более продвинута и может включать биометрический рисунок отпечатка пальца, сканирование диафрагмы или голосовую печать). Таким образом, даже если у вас украден пароль или потерян телефон, вероятность того, что кто-то другой получит доступ к вашей информации маловероятен. ## Установка Google Authenticator на Android Для установки приложения на операционную систему Android достаточно просто скачать его в магазине [GooglePlay](https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2): Скриншот №1. Скачать приложение в GooglePlay После установки на первой странице нажмите **Начать**: Скриншот №2. Начало работы При желании вы можете настроить 2FA в своем аккаунте Google, если в этом нет необходимости, то нажмите **Пропустить**: Скриншот №3. Настройки 2FA в аккаунте Google Теперь можно перейти к добавлению аккаунта. Доступно два способа: сканировать штрихкод и ввести ключ. Наиболее удобным является сканирование — перед вами откроется камера, где в выделенный квадрат необходимо поместить QR-код, который будет распознан автоматически, а аккаунт сразу добавлен: Скриншот №4. Добавление аккаунта ## Установка Google Authenticator на iOS Для установки приложения на операционную систему iOS также достаточно скачать его в [AppStore](https://itunes.apple.com/ru/app/google-authenticator/id388497605?mt=8): Скриншот №5. Скачать приложение в AppStore После установки откройте приложение и нажмите **Приступить к настройке**: Скриншот №6. Настройки приложения Можно перейти к добавлению аккаунта. Доступно два способа: сканировать штрихкод и ввести ключ. Наиболее удобным является сканирование — перед вами откроется камера, где в выделенный квадрат необходимо поместить QR-код, который будет распознан автоматически, а аккаунт сразу добавлен: Скриншот №7. Добавление аккаунта ## Установка Google Authenticator на Windows Phone Использование аутентификатора на Windows Phone возможно только благодаря Google-совместимых приложений, например Authenticator+. Также у Microsoft есть собственное приложение Microsoft Authenticator. Рассмотрим установку приложения Authenticator+, для установки этого достаточно скачать его в магазине приложений [Microsoft](https://www.microsoft.com/ru-ru/store/p/authenticator/9nblggh08h54?cid=msft_web_search#): Скриншот №8. Скачать приложение в магазине Microsoft После установки можно открыть приложение и перейти к добавлению аккаунта. Доступно два способа: сканировать штрихкод и ввести ключ. Наиболее удобным является сканирование — перед вами откроется камера, где в выделенный квадрат необходимо поместить QR-код, который будет распознан автоматически, а аккаунт сразу добавлен: Скриншот №9. Добавление аккаунта ## Установка Google Authenticator в Google Chrome Использование аутентификатора на компьютере возможно только благодаря совместимым приложениям. Например: [Authenticator for Windows](https://www.microsoft.com/ru-ru/p/microsoft-authenticator/9nblgggzmcj6?activetab=pivot%3Aoverviewtab), эмулятор [Nox App Player](https://ru.bignox.com/), [WinAuth](https://winauth.github.io/winauth/index.html), на Linux доступен [libpam-google-authenticator](https://github.com/google/google-authenticator-libpam). В инструкции рассмотрен наиболее удобный способ — подключение расширения в веб-браузере [Chrome](https://www.google.ru/chrome/index.html). Чтобы установить расширение, откройте интернет-магазин Chrome и найдите приложение [Authenticator](https://chrome.google.com/webstore/detail/authenticator/bhghoamapcdpbohphigoooaddinpkbai): Скриншот №10. Установка расширения После этого вы будете перенаправлены на страницу разработчика на Github. Расширение появится в вашем браузере в правом верхнем углу. Для добавления аккаунта нажмите на **Карандаш**, а затем на **Плюс**: Скриншот №11. Добавление аккаунта Здесь также доступно два способа: сканировать штрихкод и ввести ключ. В первом случае необходимо сделать скриншот части экрана с QR-кодом. Во втором — нужно ввести секретный ключ вручную: Скриншот №12. Выбор способа активации ## Использование приложения Google Authenticator для подключения к панели управления После установки приложения на вашу систему откройте в панели управления раздел **Настройка профиля** -> **Безопасность**. На открывшейся странице выберите Двухфакторную аутентификацию через приложение: Скриншот №13. Настройки профиля Перед вами откроется QR-код. Далее в приложении Google Authenticator выберете сканирование штрихкода. После того как откроется камера, поместите штриход в выделенный квадрат на экране приложения, который будет распознан автоматически. В приложении создастся шестизначный код, который необходимо указать: Скриншот №14. Сканирование штрихкода После ввода кода вы увидите, что двухфакторная аутентификация подключена через приложение. Теперь для входа в панель управления необходимо указать код из приложения: Скриншот №15. Указать код из приложения ## Отключение двухуровневой аутентификации для входа в панель управления Для отключения опции Двухфакторная аутентификация в панели управления перейдите в раздел **Настройка профиля** -> **Безопасность**. Чтобы ее отключить нажмите **Отключить**: Скриншот №16. Отключение двухфакторной аутентификации Подтвердите свои действия: Скриншот №17. Подтверждение действий Теперь 2FA отключена. https://serverspace.by/support/help/installing-and-configuring-a-vnc-server-on-centos-7.md В инструкции мы рассмотрим установку и настройку VNC-сервера на ОС CentOS 7.x., чтобы сделать возможными подключения с VNC-клиентов: TightVNC, RealVNC и др. В этом руководстве мы рассмотрим, как установить и настроить VNC-сервер на операционной системе CentOS 7.x, чтобы разрешить удаленные подключения с любых VNC-клиентов, таких как TightVNC, RealVNC и других. В частности, мы сделаем это с помощью программного обеспечения TigerVNC Server — бесплатного инструмента, который позволяет пользоваться автономным виртуальным рабочим столом. ## Введение VNC (Virtual Network Computing) представляет собой клиент-серверный протокол, который позволяет клиентскому компьютеру (под управлением клиента VNC) подключаться и управлять удаленным компьютером (работающим на сервере VNC). Программное обеспечение было разработано исследовательской лабораторией Olivetti & Oracle в Кембридже, Великобритания, и его исходный код по-прежнему актуален и доступен под лицензией General Public License (GNU). В зависимости от программного обеспечения сервера, VNC клиент будет подключаться к активному рабочему столу (например, как программы TeamViewer или AnyDesk) или к автономному виртуальному рабочему столу (как протокол удаленного рабочего стола Windows RDP). Последний, возможно, более мощный и безопасный, особенно если вам необходимо управлять серверным компьютером, потому что каждый сеанс будет уникальной средой, настроенной с разрешениями и правами подключаемого пользователя. Вот почему мы выбираем TigerVNC, который выполняет запуск параллельных сеансов среды рабочего стола компьютера (GNOME, KDE или другой GUI): это значит, что виртуальный рабочий стол будет создан для каждого отдельного подключения — это именно то, чего мы хотим. ## Установка TigerVNC Теперь давайте разберемся, как мы можем установить и настроить TigerVNC в CentOS. Первое, что нужно сделать, это установить программу TigerVNC Server, открыв сеанс терминала и введя следующую команду с правами root: ``` $ sudo yum install tigervnc-server ``` Сразу после этого вам необходимо создать отдельного пользователя VNC, с которого и будет осуществляться подключение (с выделенным паролем). Для этого введите следующее: ``` $ sudo adduser vncuser $ sudo passwd vncuser ``` **Важно:** никогда не делайте этого от имени root-пользователя — это создаст серьезную угрозу безопасности вашей системы. Лучшим решением будет оставить пользователя root без доступа к VNC и настроить выделенную учетную запись с ограниченными правами. После того как вы создали vncuser и задали пароль для входа в систему, вам также необходимо установить уникальный пароль VNC для этого пользователя. Это можно сделать с помощью следующей команды: ``` $ su — vncuser $ vncpasswd ``` (первая строка может быть опущена, если мы уже вошли под пользователем vncuser заранее). Следующее, что нужно сделать, это создать файл конфигурации VNC для vncuser. Самый быстрый способ сделать это — скопировать файл общего шаблона VNC, расположенный в папке **/lib/systemd/system/**, — и затем изменить его: ``` $ cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service ``` Цифра "1", которую мы добавили в новое имя файла, — это номер дисплея, который будет использоваться для этого конкретного экземпляра службы. Это важно знать, потому что он также определит порт TCP, который будет использоваться нашим VNC-сервером, равным 5900 + номер дисплея. Первый будет 5901, затем 5902 и так далее. Сразу после копирования вам нужно отредактировать новый файл с помощью Vi, Nano или другого текстового редактора, и заменить [USER] на имя пользователя, созданного недавно (в нашем случае vncuser). Вот как файл должен выглядеть после обновления (за исключением длинной закомментированной части в начале): ``` Description=Remote desktop service (VNC) After=syslog.target network.target [Service]Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :' ExecStart=/usr/sbin/runuser -l vncuser -c "/usr/bin/vncserver %i -geometry 1280×720" PIDFile=/home/vncuser/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :' WantedBy=multi-user.target ``` Как только вы это сделаете, можете перезагрузить демон VNC и запустить vncserver@1 с помощью следующих команд: ``` $ systemctl daemon-reload $ systemctl start vncserver@:1 ``` Прежде чем продолжить, проверьте, запущена ли служба, введя команду **systemctl status**: ``` $ systemctl status vncserver@:1 ``` и создайте символическую ссылку, чтобы она всегда выполнялась при запуске системы, с помощью следующей команды: ``` $ systemctl enable vncserver@:1 ``` Еще одна проверка, которую вы можете выполнить, прежде чем пытаться подключиться к серверу, — это посмотреть на активные сетевые сокеты с помощью команды **ss**: если все работает правильно, вы должны увидеть, что VNC-сервер работает и использует порт TCP 5901. Выполните команду: ``` $ ss -tulpn| grep vnc ``` Результат должен быть следующим: ``` tcp LISTEN 0 5 *:5901 *:* users:(("Xvnc",pid=38344,fd=9)) tcp LISTEN 0 128 *:6001 *:* users:(("Xvnc",pid=38344,fd=6)) tcp LISTEN 0 5 :::5901 :::* users:(("Xvnc",pid=38344,fd=10)) tcp LISTEN 0 128 :::6001 :::* users:(("Xvnc",pid=38344,fd=5)) ``` Если вы видите это, значит все настроено правильно. ## Настройка файрвола Поскольку наша служба VNC прослушивает порт TCP 5901, вы должны быть уверены, что такой порт открыт и доступен внешним клиентам. Поэтому если у вас установлен брандмауэр, вы должны создать соответствующее правило, позволяющее подключаться клиентам VNC. Сколько открыть портов, будет зависеть от того, сколько экземпляров VNC-серверов вам понадобится. В нашем сценарии мы сделали только 1, поэтому вам нужно открыть только первый выделенный порт VNC: TCP 5901, как мы уже и говорили. Команда, чтобы открыть этот порт на Firewalld: ``` # firewall-cmd —add-port = 5901 / tcp # firewall-cmd —add-port = 5901 / tcp —permanent ``` Не будет лишним упомянуть, что вы также можете ограничить этот порт для определенных групп, IP-адресов, сетевых карт или других простых или сложных правил брандмауэра. ## Установка графического интерфейса (GUI) Если у вас уже есть GNOME, KDE или другие установленные среды рабочего стола, вы можете пропустить этот шаг. В противном случае вам необходимо установить один из них: сервер TigerVNC будет запускать параллельный экземпляр данной среды рабочего стола для каждого сеанса входа в систему, что означает, что у нас должен быть хотя бы один GUI. ### GNOME Если вы хотите действительно отличный, но тяжеловесный интерфейс GNOME, введите следующее: ``` $ sudo yum groupinstall "GNOME Desktop" ``` ### Xfce Если вам нужна легкая альтернатива, мы можем предложить Xfce — бесплатную среду с открытым исходным кодом для Unix-подобных платформ, которая прекрасно работает с TigerVNC. GNOME также отлично работает, но он довольно ресурсоемкий: если вы хотите сэкономить ресурсы на своей серверной машине, Xfce, возможно, будет лучшим выбором. Чтобы установить его, введите следующее: ``` $ yum install epel-release $ yum groupinstall xfce ``` ### Дополнительные настройки для Xfce Если вы решили использовать **Xfce**, вам также потребуется изменить файл, который выполнялся при запуске сеанса VNC. Для этого отредактируйте файл: ``` /home//.vnc/xstartup ``` и измените запись exec (обычно строка 4) с **etc/X11/xinit/xinitrc** на **startxfce4**, как показано ниже: ```bash #!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4 vncserver -kill $DISPLAY ``` ## Соединение с клиентом VNC Теперь, когда все настроено, мы можем попытаться подключиться к нашей службе VNC с помощью клиента VNC, такого как TightVNC, UltraVNC или RealVNC, и посмотреть, что произойдет. Не забудьте указать порт TCP 5901 (если вы следовали нашему руководству). ## Возможные проблемы Если ваш клиент не может установить работающее соединение VNC, вам необходимо проверить следующее: 1. **Проблемы с соединением — Конфигурация брандмауэра**: если вы видите всплывающие ошибки о том, что клиент не может подключиться к удаленному хосту, вам необходимо проверить конфигурацию вашей сети и брандмауэра, чтобы убедиться, что нет проблем с блокировкой, которые могут помешать клиенту подключиться к порту сервера TCP 5901. 2. **Черный экран с мышью — обновление YUM или переустановка графического интерфейса**: если вы видите черный экран с работающим указателем мыши, это, вероятно, означает, что ваше VNC-соединение работает нормально, но есть что-то, что мешает правильному запуску графического интерфейса рабочего стола. Для исправления: - Выполните yum update, чтобы установить новейшие версии TigerVNC и самого графического интерфейса. Обязательно следите за любыми возникающими проблемами на этапе установки. - Удалите и переустановите графический интерфейс, используя команду** yum remove / yum group remove** и **yum groupinstall** снова. Если по-прежнему ничего не работает, вы можете попробовать установить другой графический интерфейс. https://serverspace.by/support/help/peredacha-dannyh-mezhdu-kontejnerom-docker-i-hostom.md В данной инструкции рассматривается связь контейнера Docker и хоста с помощью томов Docker. С помощью контейнеров Docker вы и ваша компания может предлагать приложения и услуги в таких масштабах и с такой скоростью, о которых вы и не могли думать раньше. А поскольку развертывание контейнерных приложений происходит настолько просто, вы сможете невероятно сэкономить на скорости. Одна вещь, которую вы можете вскоре обнаружить (после знакомства с первыми шагами в мире Docker), заключается в том, что после развертывания ваши контейнеры оказываются несколько ограничены в том, как они могут сохранять и использовать данные. Ограничение лежит в пределах файловой системы контейнера. Контейнеры Docker используют Объединенную файловую систему (UFS), которая работает с серией слоев только для чтения, последний слой чтения-записи располагается на самом верхнем слое контейнера. Эта система отлично работает, когда контейнеру не нужно сохранять данные. Но когда вам нужно развернуть службу, которая требует возможности сохранять данные (например, приложение, которое работает с базой данных), что вы собираетесь делать? ## Добро пожаловать в Volumes Том Docker — это каталог (или коллекция файлов), который находится в файловой системе хоста и не является частью UFS контейнера. Именно внутри этих томов контейнеры способны сохранять свои данные. С помощью команды docker volume вы можете легко управлять томами, чтобы расширить ваши контейнеры далеко за пределы их основных возможностей. Давайте узнаем, как развернуть новый контейнер, включающий в себя том, прикрепленный к определенному каталогу на хосте, чтобы контейнер оставался синхронизированным с данными в томе. Я буду демонстрировать на Ubuntu Server 18.04, но процесс будет таким же (независимо от дистрибутива) на любой другой платформе, поддерживающей Docker. Я предположу, что Docker у вас уже установлен и готов к работе, подробнее о процессе его установки можно прочитать в [серии инструкций](https://serverspace.by/support/help/category/docker/). ## Создание тома данных на хосте Первым шагом необходимо создать новый каталог для размещения тома Docker. Для этого откройте окно терминала и введите команду: ``` mkdir ~/container-data ``` Необходимо убедиться, что вновь созданный каталог размещен в том месте, к которому пользователь Docker может получить доступ (с правами на чтение и запись). После того, как вы создали этот каталог, будьте готовы его подключить к контейнеру. Предположим, вы собираетесь развернуть контейнер, основанный на официальном образе Ubuntu, который содержит каталог с именем /data. Чтобы развернуть такой контейнер, который присоединяет внутренний каталог /data к тому в каталоге хоста ~/container-data, необходимо выполнить команду: ```bash docker run -dit -P —name ubuntu-test -v ~/container-data:/data ubuntu ``` Вышеприведенная команда обозначает следующее: - docker run — это основная команда, которая говорит, что мы собираемся запустить команду в новом контейнере. - — dit — это d для режима detached, и он гарантирует, что bash или sh могут быть выделены псевдо-терминалу. - — P публикует порты контейнеров на хосте. - — name говорит, что далее следует имя нового контейнера. - — v говорит, что далее объявляется том. - ubuntu — это образ, который будет использоваться для контейнера. Как только команда завершится, вы получите идентификатор контейнера. Убедитесь, что вы запомнили первые четыре символа этого идентификатора, так как он понадобится вам для получения доступа к оболочке bash внутри контейнера. ``` root@serverspace:~# docker run -dit -P —name ubuntu-test -v ~/container-data:/data ubuntu cca8b77142eb3610a9b4e53d5f2b8e50f264f56343487005739ddae650ac98e3 ``` Теперь вы развернули контейнер, основанный на официальном образе Ubuntu, который включает каталог /data, монтирующийся на том хоста в ~/container-data. ## Тестирование тома Давайте проверим этот том. Если вы забыли идентификатор контейнера, выполните команду ```bash docker ps -a ``` , чтобы увидеть его в списке. Скриншот №1. Проверка тома Получите доступ к вновь развернутому контейнеру с помощью команды: ```bash docker attach ID ``` Где ID — это первые четыре символа развернутого контейнера. Теперь вы должны найти себя в оболочке bash контейнера. Выполните команду ls /, и вы увидите каталог /data, добавленный в контейнер Ubuntu. Давайте создадим тестовый файл в этом каталоге с помощью команды: ``` touch /data/test ``` После создания этого тестового файла выйдите из оболочки bash контейнера введя команду ``` exit ``` Попав обратно в оболочку хоста введите команду ``` ls ~/container-data ``` Вы должны увидеть тестовый файл в этом каталоге. Скриншот №2. Тестовый файл в каталоге Вы только что развернули контейнер, который включает постоянное хранилище, через том на хосте. https://serverspace.by/support/help/hranilishhe-docker-kontejnerov.md В этом руководстве мы познакомим вас с решением Docker для организации хранения данных: Docker volumes (тома Docker). ## Введение Виртуализация на основе процессов Docker имеет много преимуществ, особенно в сочетании с преимуществами слоев образов. Это позволяет невероятно быстро производить генерацию контейнеров и использовать легкий вес ресурсов. Однако одним из побочных эффектов эфемерной модели процесса Docker является то, что вы должны обязательно планировать, когда и как вы хотите сохранить постоянные данные. В этом руководстве мы познакомим вас с собственным решением Docker для этой проблемы: Docker volumes (тома Docker). ## Куда отправляются данные, когда они записываются в контейнер? Предположим, что мы заходим в оболочку внутри busybox контейнера: ```bash docker run -it —rm busybox ``` Затем, давайте запишем некоторые данные, скажем, в /tmp: ``` echo "Data!" > /tmp/data cat /tmp/data ``` ``` Data! ``` Мы видим, что данные определенно записываются. Но куда же на самом деле идут эти данные? Как мы узнали ранее, образы Docker состоят из слоев, уложенных друг на друга, чтобы привести к окончательному образу. Каждый из этих слоев содержит данные, измененные в такой операции, как установка инструмента, добавление исходного кода и т.д. Каждый из этих слоев становится доступным только для чтения после его создания. Когда контейнер создается из образа, тонкий R/W слой добавляется поверх предыдущих слоев образа. Этот слой обрабатывает все вызовы записи из контейнера, которые, в противном случае, были бы направлены на слои ниже, доступные только для чтения. Помните, что контейнеры эфемерны по своей природе. Они предназначены для того, чтобы иметь определенную продолжительность жизни и умереть в какой-то момент, как и любой процесс. Тонкий слой чтения/записи также эфемерен — он исчезает вместе с контейнером. Таким образом, любые записи, которые мы выполняем в контейнере, ограничены временем жизни этого контейнера. Они исчезнут, когда контейнер будет уничтожен. Это очевидное ограничение, которое не способствует хранению статусной информации. Итак, как разработчики и администраторы работают с этим? Они используют Тома Docker. ## Тома Docker Тома Docker — это способ создания постоянного хранилища для контейнеров Docker. Тома Docker не привязаны к времени жизни контейнера, поэтому сделанные в них записи не исчезнут, как это произойдет с контейнером. Они также могут быть повторно подключены к одному или к нескольким контейнерам, чтобы можно было обмениваться данными и подключать новые контейнеры к существующему хранилищу. Тома Docker работают путем создания каталога на главной машине и последующего монтирования этого каталога в контейнер (или в несколько контейнеров). Этот каталог существует вне многослойного образа, который обычно содержит контейнер Docker, поэтому он не подчиняется тем же правилам (только для чтения и т. д.). Давайте создадим том Docker и посмотрим его в действии: ```bash docker volume create ``` ``` 1d358c3fc3750f98345713eee5c294dee52 ``` Простой вызов docker volume create позволит создать новый том. Если мы проверим этот том, мы можем увидеть, где он живет на хост-файловой системе: ```bash docker volume inspect 1d358c3fc3750f98345713eee5c294dee526a3f5d0bd41a0ff4d117218c4af73 ``` ``` [ { "CreatedAt": "2020-05-17T16:25:30Z", "Driver": "local", "Labels": {}, "Mountpoint": "/var/lib/docker/volumes/1d358c3fc3750f98345713eee5c294dee526a3f5d0bd41a0ff4d117218c4af73/_data", "Name": "1d358c3fc3750f98345713eee5c294dee526a3f5d0bd41a0ff4d117218c4af73", "Options": {}, "Scope": "local" } ] ``` С вызовом inspect приходит много информации ,но все, что нас действительно беспокоит прямо сейчас, это Mountpoint. Обратите внимание, что здесь указан путь, начинающийся с /var/lib/docker. Если вы откроете этот путь на своем компьютере, на котором работает Docker, вы можете просмотреть данные, хранящиеся внутри этого тома. Метод, который мы только что использовали для создания тома, не является единственным способом. При запуске контейнера вы можете указать -v, чтобы создать новый том на лету: ```bash docker run -it —rm -v testdata:/data busybox ``` Как вы можете видеть, мы добавили новый аргумент к нашей docker run команде: -v. Существует специальный синтаксис для этого аргумента, с полями, разделенными двоеточиями. Первое поле — это название тома, в данном случае, testdata. Второе поле — это путь в контейнере, куда том будет примонтирован, в нашем случае, /data. Давайте запишем данные на том из контейнера: ``` echo "Hello!" > /data/hello ``` Эти данные видны снаружи контейнера, в пути монтирования тома на хосте: ``` pwd cat hello ``` ``` /var/lib/docker/volumes/testdata/_data Hello! ``` Вы должны были заметить, что в пути название тома больше не является случайной строкой — это теперь имя тома, которое мы указали при использовании -v аргумента. Тома Docker могут иметь либо рандомизированные имена, инициализированные Docker Engine, или имена, назначенные пользователем самостоятельно. Имена должны быть уникальными для каждого хоста. Созданный во время выполнения том Docker теперь становится доступным в команде docker volume ls : ```bash docker volume ls ``` ``` DRIVER VOLUME NAME local 1d358c3fc3750 local c63a0af5c8282 local testdata ``` Это означает, что мы можем использовать этот том снова с другим контейнером или даже несколькими контейнерами. Давайте проверим это прямо сейчас. Во-первых, подключите том к busybox контейнеру: ```bash docker run -it —rm -v testdata:/data busybox ``` Внутри контейнера давайте напечатаем информацию о системе, а затем запишем на том: ``` uname -a echo "Hello 2″ > /data/hello ``` ``` Linux 7e299450b997 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 GNU/Linux ``` Теперь запустите второй busybox контейнер, работающий одновременно с первым: ```bash docker run -it —rm -v testdata:/data busybox ``` Нам доступны данные, которые были записаны в первом контейнере: ``` uname -a cat /data/hello ``` ``` Linux c5bf9ca04d3a 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 GNU/Linux Hello 2 ``` Это подчеркивает еще одно из преимуществ томов Docker: совместное использование данных между контейнерами. ## Варианты Использования Тома Docker Есть много допустимых вариантов использования для контейнеров Docker, но здесь мы рассмотрим два наиболее распространенных. Для каждого из этих примеров давайте представим, что у нас есть простое приложение, которое работает и собирает данные с некоторых датчиков погоды. Мы хотим собрать кучу метеорологических показателей, сохранить их, а затем использовать их снова в будущем. Давайте назовем наше тестовое приложение WeatherMon. ### Сохранение данных за пределами срока службы контейнера Если мы выполняем WeatherMon без использования томов Docker, все данные, которые мы собираем, будут уничтожены при исчезновении контейнера. Нам это не сильно поможет, если наша цель — собрать данные и сделать их доступными для дальнейшего использования. Тома Docker удобны тем, что мы можем сохранить наши данные в томе и оставить их за пределами срока службы контейнера. Допустим, мы создаем наш контейнер, вызывая docker run с аргументом -v weathermon:/opt/weathermon. Тогда наше приложение может хранить свои метрики погоды в каталоге /opt/weathermon непосредственно на эфемерном слое чтения/записи, предоставленном контейнером. Мы также могли бы настроить удаленную базу данных для хранения этой информации, но тома Docker предоставляют альтернативу для хранения локально используемых данных. ### Совместное Использование Данных Между Контейнерами Предположим, что мы уже используем контейнер WeatherMon некоторое время и собрали довольно много данных. Мы хотим проанализировать эти данные, чтобы определить информацию, такую как средняя температура за день, или какая неделя в месяце имела самую высокую среднюю влажность. Используя тома Docker, мы можем смонтировать существующий том в новый контейнер, WeatherMon-Analytics. Этот новый контейнер может считывать данные, не прерывая их сбор контейнером WeatherMon. Затем он может выполнять аналитику, которую мы хотим, и хранить эту информацию в том же томе или в другом томе, если это необходимо. ## Другие Типы Монтирования Есть два других типа томов Docker, которые мы еще не обсуждали: bind mount и tempfs mount. ### Bind Mount Bind mount используются для монтирования существующего пути на хосте в контейнер. Используя —mount совместно с :, вы можете указать существующие каталоги, которые будут монтироваться в контейнер. Это очень удобно при использовании информации о конфигурации, такой как каталоги внутри /etc. Это также полезно, когда у вас есть информация, которую вы хотите использовать в контейнере, например, существующие наборы данных или статические файлы веб-сайта. ### Tempfs Mount Задача tempfs монтирования состоит в том, чтобы обеспечить доступное для записи расположение, которое специально **не **сохраняет информацию после окончания срока службы контейнера. Возможно, вы думаете: «зачем это нужно?" В контейнере, который не имеет подключенного тома, все записи идут в тонкий слой R/W, вставленный во время выполнения. Любая запись, направленная на этот слой, влияет на файловую систему, поскольку эти записи выполняются на базовом хосте. Обычно это не является проблемой, если вы не пишете значительные объемы одноразовых данных (таких как журналы). В этом случае вы можете наблюдать снижение производительности, так как файловая система должна обрабатывать все эти вызовы write. tempfs монтирование было создано для предоставления контейнерам временного пути записи, который не влияет на операции файловой системы. В частности, tempfs это эфемерное монтирование, которое записывается непосредственно в память. Этот том можно создать с помощью —tempfs аргумента. ### Драйвера Томов По умолчанию тома хранят информацию о базовой хост-системе. Docker также имеет концепцию, называемую драйверами томов, которая позволяет указать, как и где хранить тома. Например, вы можете хранить том Docker внутри корзины Amazon S3. Это может быть удобно, если вы хотите, чтобы информация сохранялась не только за пределами срока службы контейнера, но и за пределами срока службы хоста. ## Вывод Все обсуждаемые здесь понятия разбиты на гораздо более подробные части в [документации Docker о хранилище](https://docs.docker.com/storage/). Примеры использования каждого типа монтирования и более подробное введение в концепцию драйверов томов доступны по этой ссылке. https://serverspace.by/support/help/dns-server-unavailable.md Во время интернет-серфинга пользователи часто встречаются с ошибкой DNS-сервер не отвечает при открытии сайтов. Что делать в таких ситуациях и как исправить проблему — расскажем в этой статье. Во время интернет-серфинга пользователи часто встречаются с ошибкой "DNS-сервер не отвечает" при открытии сайтов. Что делать в таких ситуациях и как исправить проблему — расскажем в этой статье. Каждый сайт в интернете обладает уникальным адресом. Для пользователя он представлен в виде осмысленного набора букв, например, yandex.ru, но в глобальной сети используется цифровое значение для обозначения веб-ресурсов. Его называют IP-адрес и он может выглядеть следующим образом: 176.108.10.5. Разумеется, пользователям удобнее запоминать буквы, чем цифры, поэтому существует DNS-сервер, который отвечает за транслирование IP-адреса в символы и наоборот. И если при обращении к странице появляется текст "DNS-сервер не отвечает", значит запрос пользователя не был корректно транслирован. ## Причины появления Причины, по которым возникает такая ошибка, могут быть двух разновидностей: 1. Проблема на стороне провайдера: возможно, DNS-сервер недоступен, отключили электричество, проводятся технические работы и др. 2. Проблема на стороне пользователя: отключен интернет, сбросились параметры роутера, проблемы с драйверами и т.д. ## Как решить проблему Прежде чем приступать к решению, определим, на каком этапе проявляется ошибка, связанная с недоступностью адресов DNS-сервера. Подключим к роутеру другие устройства. Если на них также проявляется ошибка, значит проблема в сетевом устройстве. Если же DNS недоступен только при работе с компьютером, а на планшете работает корректно, начинаем разбираться с ПК. ### Проблема с роутером Начнем проверку с сетевого оборудования, поскольку это наиболее простой и быстрый способ. Выключаем роутер из сети электропитания и ждем 2-3 минуты. Затем включаем вновь и проверяем доступность ресурсов. Далее проверяем не сбились ли настройки роутера: заходим в панель управления роутера и вносим в нее данные которые предоставлял интернет-провайдер. И, наконец, если устарела прошивка роутера, переходим во вкладку, которая отвечает за обновление ПО и выполняем обновление: Скриншот №1. Пример автообновления на TP-Link WR942N. Если в модели роутера не предусмотрено автоматическое обновление, переходим на официальный сайт производителя, находим модель используемого роутера, скачиваем последнюю версию ПО и устанавливаем его. **Важно!** После обновления роутер необходимо перезагрузить. Проверяем выполненную работу: открываем браузер и проверяем доступность сайтов. ### Смена DNS-адреса Ошибка DNS может возникать и из-за проблем на рабочем компьютере. Расскажем об одном из методов, который позволяет исправить ошибку. **Важно!** Так как ручная настройка DNS-сервера на Windows 7, 8 и 10 аналогична, расскажем об этом на примере одной из версий этих ОС. На компьютере нажимаем сочетание клавиш Win + R и вводим команду ncpa.cpl. Откроется окно "Сетевые подключения". Выбираем текущее подключение, открываем контекстное меню, нажав правую кнопку мыши и выбираем "Свойства": Скриншот №2. Свойства подключения. В открывшемся окне выбираем строку, отмеченную на изображении "1", нажимаем "Свойства": Скриншот №3. Настройка протокола. На экране отобразится информация о текущем значении IP и DNS-адресов: Скриншот №4. Смена DNS-сервера. Выбираем пункт, как показано на скриншоте выше. Заполняем строки следующим образом: в качестве предпочитаемого DNS-сервера указываем 8.8.8.8, а в строке ниже — 8.8.4.4. Данные параметры получены с официального сайта Google, но существуют и другие общедоступные адреса крупных компаний: Yandex, Comodo, OpenDNS (Cisco) и др. Они также поставляются парами: основной и альтернативный DNS-сервер. **Важно!** Обязательно указывайте альтернативный адрес. Если предпочитаемый адрес окажется недоступен, обращение пойдет к альтернативному. Для надежности можно указать в качестве основного DNS-сервера адрес, например, компании Google, а в качестве запасного — Comodo. Такая схема гарантирует, что пользователь всегда будет иметь доступ к доступным DNS-серверам. ### Проверка службы DNS Если настройка DNS-сервера выполнена по инструкции, но ошибка осталась, проверяем службу Domane Name System. Одновременно нажимаем на клавиатуре Win+R, вводим services.msc и нажимаем "Enter": Скриншот №5. Перечень сервисов. Откроется рабочая область, которая содержит службы Windows. Выбираем строку, выделенную синим цветом. Открываем контекстное меню и выбираем пункт "Перезапустить" — служба перезагрузится. Можно проверять доступность сайтов. ### Обнуление кэша Еще один вариант решения проблемы — очистка кэша DNS. Запускаем командную строку с правами локального администратора: Скриншот №6. Выбор утилиты. Откроется окно терминала. По очереди прописываем следующие команды: ``` ipconfig /flushdns ipconfig /registerdns ipconfig /renew ipconfig /release ``` По окончанию перезагружаем компьютер и пробуем повторно зайти на недоступный ранее сайт. ### Настройка антивируса Если параметры компьютера настроены правильно, но ошибка по-прежнему проявляется, проверяем настройки антивирусного ПО. Сразу оговоримся — не существует плохого антивируса, просто многие из них блокируют подключения к некоторым сайтам, либо DNS-серверам. К примеру, антивирус Avast блокирует доступ на основе собственной базы знаний. В таких случаях необходимо отключить модуль межсетевого экрана и обновить страницу в браузере. Если это не помогло, полностью отключаем защиту антивируса на 15 минут и пробуем повторно. Чтобы избегать подобных проблем, настраиваем "белый список" в опциях файрвола и добавляем в него только проверенные ресурсы. Или, как вариант, попробуйте другой антивирусный продукт, предварительно удалив старый. ### Общение с интернет-провайдером Также проблема может возникать на стороне интернет-провайдера. Когда появляется сообщение "DNS-сервер не отвечает", в первую очередь необходимо обратиться к своему интернет-провайдеру и описать возникшую проблему. Если провайдер проводит технические работы или на участке вашего проживания наблюдаются проблемы, вам об этом сообщат и, при необходимости, озвучат временной интервал, в течение подключение к интернету будет восстановлено. https://serverspace.by/support/help/installing-the-gnome-gui-on-centos-7.md В этой статье мы объясним, как установить GUI GNOME на базовую версию операционной системы CentOS 7, используя набор команд для терминала. GNOME является частью проекта GNU и представляет собой графический интерфейс (GUI) рабочего стола. Он использует принцип KISS (Keep it simple, stupid) и является стандартным GUI для многих дистрибутивов, таких как Debian, Fedora, Red Hat Enterprise Linux, Kali Linux и т.д. В этой статье мы объясним как установить GUI GNOME на базовую версию операционной системы CentOS 7. Поскольку данная система работает в режиме командной строки (CLI), в качестве примера мы будем использовать набор команд для терминала. ## Установка Предполагаем, что вы уже установили CentOS (если еще нет, можете [арендовать](https://serverspace.by/services/virtual-server-vds/linux/) VPS с этой операционной системой), и вы имеете права root-пользователя или суперпользователя. В данном случае мы будем писать команды от имени пользователя root. Если вы не являетесь пользователем root, просто ставьте sudo перед всеми командами. ### Обновите вашу систему Сначала мы обновляем систему. Это требуется не всегда, но делать так — это хорошая практика: ```bash yum update ``` Ожидаем завершения установки обновлений и переходим к следующему шагу. ### Установите пакеты GNOME Теперь мы устанавливаем пакеты GNOME. Для их установки мы будем использовать команду, которая устанавливает все пакеты, связанные с GNOME GUI: ```bash sudo yum -y groups install "GNOME Desktop" ``` ### Настройте систему X Window System Программа, которая запускает графическую среду в большинстве систем Linux, называется X Window System. Итак, во-первых, вы должны указать X Window System, что GNOME — это графический интерфейс, используемый по умолчанию. Поэтому введите эту команду: ``` echo "exec gnome-session" >> ~/.xinitrc ``` Теперь мы закончили установку GNOME и настройку системы X Window. Давайте проверим это, введя команду: ``` startx ``` После запуска этой команды вы увидите графический интерфейс GNOME, похожий на изображение ниже, что означает, что он работает: Скриншот №1. Графический интерфейс GNOME Теперь GNOME GUI установлен и протестирован. Однако для его запуска необходимо вводить команду startx при каждом запуске операционной системы, что не очень удобно. Давайте сделаем так, чтобы он запускался автоматически. Для этого используйте следующую команду: ```bash systemctl set-default graphical.target ``` https://serverspace.by/about/news/free-vps-for-students-covid.md Акция действует на время пандемии коронавируса для организации удаленной учебы и написания дипломов для технических вузов. **Акция завершена. Акция действовала на время пандемии коронавируса для организации удаленной учебы и написания дипломов.** В условиях распространения COVID-19 и карантина большинство учебных заведений вынуждено перейти на удаленное обучение. У многих технических вузов появилась потребность в виртуальном серверном оборудовании для организации дистанционных занятий и самообучения студентов. Компания Serverspace предложила свою помощь 100 техническим университетам со всего мира, в том числе ведущим российским вузам. На период пандемии студенты могут бесплатно пользоваться облачными VPS-серверами для полноценного обучения: развертывания и тестирования приложений, виртуальных рабочих столов, размещения сайтов и не только. У Serverspace множество вариантов конфигурации VPS-серверов: студенты могут выбрать и настроить виртуальную машину под свой собственный проект. Компания Severspace считает, что в этой беспрецедентной ситуации очень важно, чтобы вузы имели возможность не останавливать учебный процесс. Помощь студентам технических специальностей — это не просто "жест доброй воли", а необходимый вклад в восстановление экономики". **О Serverspace** Компания Serverspace — облачный провайдер, который предлагает услуги для частных клиентов: VPS/VDS-серверы, виртуальную инфраструктуру (IaaS), 1С в облаке, удаленные рабочие столы, DNS-хостинг, объектное хранилище. Облачная инфраструктура Serverspace размещается в надежных ЦОД в Амстердаме, Нью-Джерси и Минске. Виртуальные серверы работают на базе [гиперконвергентной платформы vStack](https://vstack.com/?utm_source=serverspace) и гипервизора bhyve. Если вы являетесь представителем одного из университетов, где есть кафедра ИТ, и хотите поучаствовать в нашей программе, отправьте заявку на почту marketing@serverspace.by для получения более подробной информации. https://serverspace.by/about/news/dvuhfaktornaya-autentifikacziya-sms.md Serverspace добавил поддержку дополнительного способа защиты аккаунтов с помощью бесплатной двухфакторной аутентификации через SMS. Serverspace добавил поддержку дополнительного способа защиты аккаунтов с помощью бесплатной двухфакторной аутентификации через SMS. Теперь клиентам доступно два способа аутентификации на выбор: - через мобильное приложение, доступное в Google Play и App Store, например Google Authenticator или Authy; - с помощью SMS-сообщения на мобильный телефон. Подключить двухфакторную аутентификацию через SMS можно в панели управления Serverspace в разделе "Учетная запись" — "Настройки" — "Безопасность": После включения опции кроме электронной почты и пароля на этапе авторизации потребуется вводить уникальный код подтверждения, который будет приходить на указанный мобильный телефон. https://serverspace.by/about/news/dopolnitelnye-liczenzii-rdp-na-serverah-vstack.md Serverspace добавил возможность активации дополнительных RDP-лицензий на виртуальных серверах vStack под управлением ОС Windows. Serverspace добавил возможность активации дополнительных RDP-лицензий на виртуальных серверах vStack под управлением ОС Windows. Для каждого сервера можно активировать от 3 до 255 дополнительных лицензий. Активация осуществляется службой технической поддержки Serverspace по запросу из панели управления. Для отправки запроса в разделе «VPS vStack» необходимо кликнуть по названию сервера, перейти во вкладку «Лицензии» и нажать на кнопку «Добавить лицензию»: Далее необходимо выбрать тип лицензии «Служба терминалов» и нужное количество лицензий, выбрать желаемую дату и время их активации, указать логин и пароль от сервера и нажать на кнопку «Заказать». На момент активации лицензий на лицевом счете пользователя должна находится достаточная сумма на, как минимум, неделю работы виртуального сервера с учетом стоимости дополнительных лицензий. Стоимость 1 дополнительной RDP-лицензии составляет 14 рублей в месяц. Минимальное количество лицензий для заказа — 3 шт. https://serverspace.by/about/news/dopolnitelnye-diski-na-serverah-vstack.md Serverspace добавил возможность подключения дополнительных SSD-дисков к виртуальным серверам vStack. Serverspace добавил возможность подключения дополнительных SSD-дисков к виртуальным серверам vStack. Подключение выполняется в автоматическом режиме и доступно для серверов с любой операционной системой. - К одному серверу можно подключить до 4 дополнительных дисков. - Минимальный объем одного дополнительного диска составляет 10 ГБ, максимальный — 500 ГБ. Шаг при выборе объема составляет 10 ГБ. - Стоимость дополнительного диска составляет 2.4 рубля в месяц за каждые 10 ГБ его объема. Для подключения дополнительного диска необходимо кликнуть по названию сервера в разделе "VPS vStack", перейти во вкладку "Диски" и нажать на кнопку "Добавить диск". Далее необходимо указать имя добавляемого диска, выбрать нужный объем и нажать на кнопку "Создать": Время создания зависит от операционной системы, установленной на сервере, и в среднем составляет от 10 секунд до 1 минуты. Созданный дополнительный диск можно расширять. Для этого необходимо перейти в список c дисками, кликнуть на иконку с тремя точками, расположенную в строке с нужным диском и нажать на кнопку "Изменить размер": Затем необходимо выбрать объем, который нужно добавить к диску, и нажать на кнопку "Сохранить". После этого для выбранного диска будет добавлена неразмеченная область, которую пользователю необходимо разметить самостоятельно на уровне операционной системы. https://serverspace.by/about/blog/kak-vybrat-os-dlya-virtualnogo-servera-i-na-chto-ona-vliyaet.md Выясняем какая операционная система стабильнее, безопаснее и удобнее при работе с виртуальным сервером. Серверные операционные системы по сравнению с десктопными – более тяжелая весовая категория, в которой за первенство много лет сражаются Windows и Linux. Новичку выбирать между двумя ОС непросто: Linux бесплатная, с разнообразными дистрибутивами, а Windows поддерживает несколько специфических технологий и СУБД. Самая простая формула выбора ОС выглядит так: для обычного веб-ресурса на популярной CMS ставим Linux-систему, для остальных – Windows Server. Но мы пойдем дальше и разберем по пунктам на что стоит обратить внимание при выборе серверной операционной системы. ## Языки программирования Их поддержка понадобится при разработке сайта. Популярные языки программирования вроде JavaScript или HTML поддерживают обе системы, но есть исключения. Для проектов, разработанных с применением технологии ASP.NET или VBScrpt, подойдет только Windows. Эта операционная система нужна для хостинга проектов, в которых используются специфичные для ОС форматы файлов (например, WMA и WMV). Связку PHP + MySQL поддерживают обе ОС, но лучше все-таки выбрать Linux, для которой язык PHP является родным. Windows хоть и позволяет запускать PHP-скрипты, но под ней они будут выполняться медленнее. Если же вам нужно работать с файлами MP3, Flash, Shockwave и Real, а также с сайтами, созданными при помощи Microsoft FrontPage — в этом случае обе ОС проявят себя одинаково хорошо. ## Службы и протоколы Многие службы и протоколы, например FTP и Telnet, работают во всех серверных ОС, но снова есть нюансы. Если в Linux сетевой протокол SSH поддерживается по умолчанию, то в Windows Server его нужно подключать отдельно. Даже если в результате вы получите ОС с одинаковыми возможностями, для Windows компоненты ПО с высокой вероятностью придется покупать, когда для Linux они бесплатны. ## Управление базами данных Популярный MySQL запускается на обеих ОС, но на Linux-ядре связка PHP + MySQL работает более эффективно. С Access, Microsoft Sharepoint и Microsoft SQL ситуация иная: здесь правильнее выбрать Windows Server. Она же хороша там, где нужно развернуть корпоративный портал с высокими требованиями к надежности и стабильности. ## Администрирование Снова возвращаемся к аналогии с десктопными ОС: Windows ближе и понятнее большинству системных администраторов, а для работы с Linux-системами требуются новые знания и опыт. Но если в приоритете скорость и эффективность работы, лучше потратить время и разобраться в функциональности Linux. ## Стоимость Почти все дистрибутивы Linux (например, CentOS, Debian и Ubuntu) распространяются бесплатно. Выбирайте любой из них и платите только за аренду виртуального сервера. За использование же лицензионной Windows Server, как и за установку дополнительных компонентов к ней, вам придется доплачивать. ## На что не влияет выбор серверной ОС Запущенные на виртуальном сервере сервисы будут одинаково доступны вашим клиентам независимо от выбранной операционной системы. Клиенты никогда не узнают какую ОС вы используете для своего проекта, так как будут иметь дело с одними и теми же данными. Разница лишь в среде, в которой эти данные обрабатываются, и увидят эти отличия только IT-специалисты, обслуживающие виртуальный сервер. ## Что выбрать Основными отличиями между Linux и Windows называют стабильность и скорость работы, которые свойственны операционным системам на ядре Linux. Они не требуют регулярного обслуживания и частой перезагрузки, чтобы изменения в конфигурации вступили в силу. Если под Windows развернуть несколько объемных баз данных, Linux-сервер с высокой вероятностью опередит ее в безотказной работе. Но по факту стабильность ОС будет зависеть еще и от методов администрирования, то есть от человеческого фактора. В среднем виртуальный хостинг на Linux-системах обходится на 20% дешевле хостинга на Windows, поэтому если вы не связаны определенными технологиями и техзаданием, выгоднее выбирать Linux. Хостинг на любой Linux-системе оптимален для сайтов на Joomla, WordPress, Drupal. Но там, где стоит задача развернуть проект на ASP или ASP.NET, подойдет только Windows Server. Эта же операционная система нужна для размещения Windows-приложений для биржевой торговли и любого непрерывно работающего сервиса, например программы семейства 1С или игрового сервера. ## Подведем итоги Плюсы Linux-систем: - стабильная и быстрая работа; - безопасная среда (атаки в основном нацелены на Windows-системы); - бесплатное распространение дистрибутивов (за редким исключением); - универсальность – подходит для большинства веб-проектов. Для чего выбирают ОС Windows Server: - поддержки ASP.NET и других технологий, разработанных под Windows; - простого управления и обновления; - размещения специфичных проектов, для работы которых требуется Windows. https://serverspace.by/about/news/novye-shablony-centos-8-1-i-ubuntu-20-04-lts.md Serverspace добавил возможность автоматического развертывания CentOS 8.1 и Ubuntu 20.04 из готовых шаблонов на виртуальных серверах vStack. Serverspace добавил возможность автоматического развертывания операционных систем CentOS 8.1 и Ubuntu 20.04 с архитектурой x64 из готовых шаблонов на виртуальных серверах vStack. При этом сохранена возможность установки на серверы предыдущих версий ОС — Ubuntu 18.04 и CentOS 7.7. ## Что нового в CentOS 8.1 - Модифицированные пакеты, в числе которых yum, anaconda, httpd, dhcp, grub2 и kernel; - Новый стек протоколов маршрутизации FRRouting с поддержкой BGP, IS-IS, OSPF, PIM, и RIP; - Поддержка повторного шифрования блочных устройств LUKS2 во время их использования; - Новый инструмент udica для генерации политик безопасности SELinux для контейнеров и др. Подробная документация к выпуску доступна на [сайте RedHat](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/8.1_release_notes/rhel-8_1_0_release#New-features) и в [справочном разделе CentOS](https://wiki.centos.org/Manuals/ReleaseNotes/CentOS8.1911). ## Нововведения в Ubuntu 20.04 - Аппаратная поддержка двухфакторной аутентификации при подключении через SSH; - Свежие обновления для PHP 7.4, MySQL 8.0, NGINX 1.17, Python 3.8 и др.; - Поддержка WireGuard VPN; - Выпуск обновлений и поддержка безопасности в течение 5 лет для текущей версии и многое другое. С полным списком изменений вы можете ознакомиться в [официальном блоге Ubuntu](https://ubuntu.com/blog/ubuntu-server-20-04). https://serverspace.by/about/news/virtualnoe-privatnoe-oblako-na-baze-vstack.md Serverspace объявляет о запуске услуги создания изолированных сетей, позволяющей объединять виртуальные серверы в приватное облако внутри одного ЦОД. Serverspace объявляет о запуске услуги создания изолированных сетей, позволяющей объединять виртуальные серверы в приватное облако внутри одного ЦОД. Размещение ресурсов в приватном облаке происходит в отдельном изолированном сегменте сети без доступа в Интернет, за счет чего достигается высокий уровень его безопасности и конфиденциальности. - Внутри сети отсутствуют ограничения на объем входящего и исходящего трафика. - Адресацию сети можно настраивать как вручную, так и автоматически. - Пропускная способность локального порта составляет 1 Гбит/с. Услуга предоставляется бесплатно. В рамках 1 проекта можно создавать до 10 сетей. ## Как создать изолированную сеть 1. Перейдите в раздел "Серверы за рубежом" — "Сети", нажмите на кнопку "Добавить сеть" и выберите изолированный тип сети: 2. Выберите центр обработки данных, в котором размещены ваши виртуальные серверы. Затем задайте параметры адресации, указав префикс и емкость сети вручную или сгенерировав их автоматически. Укажите название создаваемой сети, при необходимости добавив ее описание, и нажмите "Создать сеть": 3. После создания сети кликните по ее названию и во вкладке "Подключение" нажмите "Подключить сервер": 4. Выберите виртуальные серверы, которые необходимо подключить к изолированной сети и нажмите "Подключить". https://serverspace.by/about/news/serverspace-sokratil-vremya-razvertyvaniya-oblachnyh-serverov.md Теперь среднее время создания новых виртуальных машин под управлением ОС Windows и Linux составляет 40 секунд. Теперь среднее время создания новых виртуальных машин под управлением ОС Windows и Linux составляет 40 секунд. Это позволяет приступать к работе с облачными серверами практически сразу после запроса на развертывание. Масштабная оптимизация стала возможной благодаря внедрению технологии выдачи серверов из специального пула. После заказа услуги система Serverspace автоматически выбирает новый сервер с подходящей конфигурацией из пула, в котором он предварительно размещен. Такой сервер уже почти готов к работе и пользователю лишь остается дождаться завершения его настройки. Сокращение среднего показателя до 40 секунд является рекордным: до оптимизации скорость создания Windows-серверов составляла 300 секунд, Linux-серверов — 60 секунд. Однако у новой технологии есть дополнительный потенциал и Serverspace планирует продолжить ее развитие для дальнейшего улучшения качества обслуживания своих клиентов. https://serverspace.by/support/help/struktura-fajlovoj-sistemy-linux.md Файловая система в ОС Linux представляет собой иерархическую структуру каталогов и файлов (в виде дерева), но при этом имеет ряд кардинальных отличий от Windows. Файловая система в ОС Linux, как и в ОС Windows, представляет собой иерархическую структуру каталогов и файлов (в виде дерева), но при этом имеет ряд кардинальных отличий. ## Структура каталогов В ОС Windows жесткие диски называются латинскими буквами (С:, D:, ), и каждый из дисков представляет собой корневой каталог с собственным деревом папок. Подключение же нового устройства приведет к появлению нового корневого каталога со своей буквой (например, F:). В ОС Linux файловая система представлена единым корневым каталогом, обозначаемым как слэш (/). Соответственно, при данной файловой структуре не диски содержат каталоги, а каталог — диски. ## Подключение внешних носителей В ОС Linux имеется процедура монтирования: когда подключается съемный носитель или диск, файл устройства будет виден в каталоге /dev (devices). Чтобы увидеть содержимое этого устройства, его нужно смонтировать в отдельную директорию /mnt. Также файловая система позволяет примонтировать его и в любое другое место, например /home. ## Понятие файла Понятие "файл" в Linux имеет несколько другое значение, нежели в Windows. "Файлом" можно назвать обычный файл, содержащий данные, и интерпретируемый программой. Директория также является "файлом", содержащим в себе ссылки на другие директории или файлы с данными. Файлы устройства указывает на драйвер, благодаря которому система взаимодействует с физическими устройствами. Имеются и многие другие типы файлов. ## Принцип установки программ Если в Windows программы, зачастую, хранят все данные в одной папке, например в "C:Program FilesProgramName", то в Linux файлы программы разделяются по каталогам в зависимости от типа. Например, исполняемые файлы в /bin, библиотеки в /lib, файлы конфигураций в /etc, логи и кэш в /var. ## Регистр имен Также стоит отметить чувствительность файловой системы Linux к регистру. Файлы Temp.txt и temp.txt будут интерпретироваться как разные файлы и могут находиться в одной директории, в отличие от ОС Windows, который не различает регистр имен. То же правило действует и на каталоги — имена в разных регистрах указывают на разные каталоги. Назначение каждой директории регламентирует "Стандарт иерархии файловой системы" FHS (Filesystem Hierarchy Standard). Ниже опишем основные директории согласно стандарту FHS: Стандарт иерархии файловой системы - / — root каталог. Содержит в себе всю иерархию системы; - /bin — здесь находятся двоичные исполняемые файлы. Основные общие команды, хранящиеся отдельно от других программ в системе (прим.: pwd, ls, cat, ps); - /boot — тут расположены файлы, используемые для загрузки системы (образ initrd, ядро vmlinuz); - /dev — в данной директории располагаются файлы устройств (драйверов). С помощью этих файлов можно взаимодействовать с устройствами. К примеру, если это жесткий диск, можно подключить его к файловой системе. В файл принтера же можно написать напрямую и отправить задание на печать; - /etc — в этой директории находятся файлы конфигураций программ. Эти файлы позволяют настраивать системы, сервисы, скрипты системных демонов; - /home — каталог, аналогичный каталогу Users в Windows. Содержит домашние каталоги учетных записей пользователей (кроме root). При создании нового пользователя здесь создается одноименный каталог с аналогичным именем и хранит личные файлы этого пользователя; - /lib — содержит системные библиотеки, с которыми работают программы и модули ядра; - /lost+found — содержит файлы, восстановленные после сбоя работы системы. Система проведет проверку после сбоя и найденные файлы можно будет посмотреть в данном каталоге; - /media — точка монтирования внешних носителей. Например, когда вы вставляете диск в дисковод, он будет автоматически смонтирован в директорию /media/cdrom; - /mnt — точка временного монтирования. Файловые системы подключаемых устройств обычно монтируются в этот каталог для временного использования; - /opt — тут расположены дополнительные (необязательные) приложения. Такие программы обычно не подчиняются принятой иерархии и хранят свои файлы в одном подкаталоге (бинарные, библиотеки, конфигурации); - /proc — содержит файлы, хранящие информацию о запущенных процессах и о состоянии ядра ОС; - /root — директория, которая содержит файлы и личные настройки суперпользователя; - /run — содержит файлы состояния приложений. Например, PID-файлы или UNIX-сокеты; - /sbin — аналогично /bin содержит бинарные файлы. Утилиты нужны для настройки и администрирования системы суперпользователем; - /srv — содержит файлы сервисов, предоставляемых сервером (прим. FTP или Apache HTTP); - /sys — содержит данные непосредственно о системе. Тут можно узнать информацию о ядре, драйверах и устройствах; - /tmp — содержит временные файлы. Данные файлы доступны всем пользователям на чтение и запись. Стоит отметить, что данный каталог очищается при перезагрузке; - /usr — содержит пользовательские приложения и утилиты второго уровня, используемые пользователями, а не системой. Содержимое доступно только для чтения (кроме root). Каталог имеет вторичную иерархию и похож на корневой; - /var — содержит переменные файлы. Имеет подкаталоги, отвечающие за отдельные переменные. Например, логи будут храниться в /var/log, кэш в /var/cache, очереди заданий в /var/spool/ и так далее. https://serverspace.by/support/help/ustanovka-lemp-steka-na-centos-7.md Подробная инструкция по установке LEMP-стека на CentOS 7. Настройка Firewall, установка Nginx, MariaDB, установка и настройка PHP 7.3. LEMP — это акроним, обозначающий набор программного обеспечения, широко используемого на веб-серверах. Рассмотрим его установку на CentOS 7, однако перед этим произведем обновление системы и выполним перезагрузку: ```bash sudo yum update -y reboot ``` ## **Настройка Firewall** Так как по умолчанию порты 80 и 443 закрыты настройками файрвола, следует выполнить несколько команд для получения доступа к веб-серверу из интернета. Открываем порт 80: ``` sudo firewall-cmd —permanent —zone=public —add-service=http ``` Открываем порт 443: ``` sudo firewall-cmd —permanent —zone=public —add-service=https ``` Перезагружаем службу: ```bash sudo systemctl restart firewalld ``` Проверяем внесенные изменения: ``` sudo firewall-cmd —zone=public —list-services ``` В итоге должно отобразиться следующее: ``` dhcpv6-client http https ssh ``` ## **Установка Nginx** Включаем репозиторий EPEL, если это не было сделано ранее. EPEL содержит некоторые пакеты, которые не вошли в стандартный набор RHEL (CentOS), в том числе Nginx. Вводим следующую команду для подключения репозитория: ```bash sudo yum install epel-release -y ``` Установим непосредственно сам Nginx: ```bash sudo yum install nginx -y ``` Запускаем сервис и добавляем его в автозапуск: ```bash sudo systemctl start nginx sudo systemctl enable nginx ``` ## **Установка MariaDB** Теперь перейдем к установке и первоначальной настройке СУБД: ```bash sudo yum install mariadb-server mariadb -y ``` Запускаем службу аналогично Nginx: ```bash sudo systemctl start mariadb sudo systemctl enable mariadb ``` Следующей командой запустим базовую настройку безопасности: ``` sudo mysql_secure_installation ``` Процесс заключается в установке пароля root-доступа к базам, отключении анонимного и удаленного доступа и удалении тестовых баз. Если не требуется иное, читаем запрос и соглашаемся нажатием клавиши «Y». ## **Установка PHP 7.3** Поддерживаемые версии PHP можно посмотреть на официальном [сайте](https://www.php.net/supported-versions.php). В нашем случае устанавливаем PHP версии 7.3 и подключаем репозиторий Remi следующей командой: ``` sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm ``` Далее устанавливаем пакет yum-utils для работы с репозиторием Remi: ```bash sudo yum install yum-utils ``` Теперь нужно активировать репозиторий и запустить установку пакетов PHP 7.3: ```bash sudo yum-config-manager —enable remi-php73 sudo yum install php73 -y ``` Завершим процесс установки подключением часто используемых модулей и запуском php-fpm: ```bash sudo yum install php-fpm php-mysql php-cli php-mbstring php-opcache php-curl php-gd -y systemctl start php-fpm systemctl enable php-fpm ``` ## **Настройка PHP** Открываем файл настроек php.ini: ``` nano /etc/php.ini ``` Меняем значение cgi.fix_pathinfo. Данное изменение внесет запрет на исполнение произвольного кода на сервере с правами PHP-процесса при загрузке файла: ``` .. cgi.fix_pathinfo=0 #Убираем комментарий ";" в начале строки и меняем 1 на 0 .. ``` Далее меняем группу и пользователя с Apache на Nginx в конфигурационном файле php-fpm: ``` sudo nano /etc/php-fpm.d/www.conf ``` Получаем: ``` ; RPM: apache user chosen to provide access to the same directories as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx ``` Перезапускаем php-fpm: ```bash sudo systemctl restart php-fpm ``` ## **Настройка Nginx** Откроем файл конфигураций Nginx: ``` sudo nano /etc/nginx/nginx.conf ``` Вносим следующие изменения в файл: ```css server { listen 80 default_server; listen [::]:80 default_server; server_name 46.243.182.96; #_Пишем имя сервера или IP адрес_ root /usr/share/nginx/html; include /etc/nginx/default.d/*.conf; location / { root /usr/share/nginx/html; index index.php index.html index.htm; #_Добавляем index.php_ } error_page 404 /404.html; location = /40x.html { root /usr/share/nginx/html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ .php$ { #_Добавляем возможность обрабатывать запросы PHP_ root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } ``` Настало время проверить наш веб-сервер. Создадим страницу по следующему пути: ``` nano /var/www/html/info.php ``` Вставим следующую строку и сохраним файл: ```php ``` Перезапустим Nginx командой: ```bash sudo systemctl restart nginx ``` Теперь, если вы зайдете через браузер на ваш веб-сервер по адресу http://server_name/info.php (http://xxx.xxx.xxx.xxx/info.php, где xxx.xxx.xxx.xxx — адрес), то увидите информационную страницу: https://serverspace.by/support/help/ustanovka-oblachnogo-hranilishha-seafile-na-windows.md Расскажем на примере программы для размещения файлов Seafile, как провести синхронизацию данных с хранилищем. В качестве примера используется ОС Windows. [Облачные хранилища](https://serverspace.by/services/storage.md) пользуются все большей популярностью не только в корпоративном секторе, но и среди обычных пользователей. Расскажем на примере программы для размещения файлов Seafile, как провести синхронизацию данных с хранилищем. В качестве примера используется ОС Windows. ## Подготовка Программа Seafile разработана на языке Python, поэтому для начала [переходим](https://www.python.org/downloads/) на сайт Python и скачиваем последнюю версию для Windows: Скриншот №1. Загрузка дистрибутива. Важно! Для установки Python необходимы права администратора. Нажимаем "ОК" и ждем завершения процесса. Следующий шаг — установка параметров системного окружения. Для этого открываем "Панель управления" и выбираем раздел, отмеченный красной стрелкой на скриншоте: Скриншот №2. Дополнительные опции. Далее переходим к пункту "Переменные среды": Скриншот №3. Выбор среды. В открывшемся окне отмечаем системную среду Path и нажимаем кнопку "Изменить": Скриншот №4. Отредактировать системную переменную. Добавляем путь, по которому установился Python. По умолчанию это либо системный диск С, либо домашняя папка пользователя. Нажимаем "ОК", чтобы сохранить изменения. ## **Seafile** Скачиваем программу с [официального сайта](https://www.seafile.com/en/download/): Скриншот №5. Выбор версии. На сайте доступна только версия для Linux. Скачиваем актуальный релиз. Далее создаем на локальном диске папку Seafile и разархивируем файл в эту директорию. Теперь переходим в каталог Seafile и активируем файл run.bat. Он откроет рабочую область, в которой укажем путь для установки серверной части Seafile. Установка займет меньше минуты. В системной трее появится значок активного хранилища. Вызовем контекстное меню правой кнопкой мыши и выберем пункт, отмеченный красным на скриншоте: Скриншот №7. Контекстное меню. Откроется рабочее поле, в котором укажем электронный ящик и пароль. Эти учетные данные будут использоваться для подключения к серверу Seafile. Теперь изменим параметры рабочей среды. Перейдем в каталог с установленным сервером, откроем текстовым редактором файл ccnet.conf., найдем строку Service_url и внесем следующие изменения: ``` SERVICE_URL = http://192.168.1.10:8000 ``` В качестве IP-адреса используется адрес сервера, на котором установлен Seafile. Перезапустим серверную часть программы через контекстное меню, чтобы изменения вступили в силу: Скриншот №8. Рестарт сервера. ## Подключение Открываем браузер и в адресной строке прописываем адрес, которой указывали в файле ccnet.conf. Если данные указаны верно, на мониторе появится приветственное окно Seafile. Вводим учетные данные и настраиваем работу с хранилищем. https://serverspace.by/support/help/regulyarnye-vyrazheniya.md Рассмотрим основные понятия регулярных выражений и их использование в Bash с помощью 'grep'. Регулярные выражения (RegEx или RegExp) — это набор символов, которые определяют шаблон поиска. Регулярные выражения (RegEx или RegExp) — это набор символов, которые определяют шаблон поиска. Их можно использовать для выполнения операций "Поиск" или "Поиск и замена", а также для проверки условий, таких как политика паролей, ввод номера телефона и т.д. Приведем пример регулярного выражения: ``` /t[aeiou]l/ ``` Это регулярное выражение будет искать слово, начинающееся с буквы ‘t’, содержащее любую из букв ‘a e i o u’ в середине и оканчивающееся буквой ‘l’. Это может быть ‘tel’, ‘tal’ или ’til’. Совпадение может быть отдельным словом или частью другого слова, например ’tilt’, ‘brutal’ или ‘telephone’. А теперь приступим к рассмотрению основных регулярных выражений на примере командной оболочки Bash. ## Основы регулярных выражений В общем виде синтаксис команды ‘grep’ выглядит следующим образом: ``` $ grep поисковый_запрос_regex расположение_файла ``` Изучим некоторые специальные символы, известные как метасимволы. Они помогают создавать более сложные поисковые выражения: | . | будет соответствовать любому символу; | | --- | --- | | [ ] | будет соответствовать диапазону символов; | | [^ ] | будет соответствовать всем символам, кроме указанных в фигурных скобках; | | * | будет соответствовать любому количеству символов, предшествующих звездочке, в том числе нулю; | | + | будет соответствовать одному или нескольким из стоящих перед ним выражений; | | ? | будет соответствовать нулю или одному из стоящих перед ним выражений; | | {n} | будет соответствовать 'n' повторениям предшествующих выражений; | | {n,} | будет соответствовать не менее 'n' повторениям предшествующих выражений; | | {n m} | будет соответствовать не менее 'n' и не более 'm' повторениям предшествующих выражений; | | {,m} | будет соответствовать не более или равному 'm' повторениям предшествующих выражений; | | | является escape-символом (символом экранирования), используемым, когда нужно включить один из метасимволов. | ## Приведем примеры ### . (точка) Используется для соответствия любому символу, который встречается в поисковом запросе. Например, можем использовать точку как: ``` $ grep "d.g" file1 ``` Это регулярное выражение означает, что мы ищем слово, которое начинается с ‘d’, оканчивается на ‘g’ и может содержать один любой символ в середине файла с именем ‘file1’. Точно так же мы можем использовать символ точки любое количество раз для нашего шаблона поиска, например: ``` Th ``` Этот поисковый термин будет искать слово, которое начинается с ‘T’, оканчивается на ‘h’ и может содержать любые шесть символов в середине. ### [ ] Квадратные скобки используются для определения диапазона символов. Например, когда нужно искать один из перечисленных символов, а не любой символ, как в случае с точкой: ``` $ grep "N[oen]n" file2 ``` Здесь мы ищем слово, которое начинается с ‘N’, оканчивается на ‘n’ и может иметь только ‘o’, ‘e’ или ‘n’ в середине. В квадратных скобках можно использовать любое количество символов. Мы также можем определить диапазоны, такие как ‘a-e’ или ‘1-18’, как список совпадающих символов в квадратных скобках. ### [^ ] Это похоже на оператор отрицания для регулярных выражений. Использование [^ ] означает, что поиск будет включать в себя все символы, кроме тех, которые указаны в квадратных скобках. Например: ``` $ grep "St[^1-9]d" file3 ``` Это означает, что у нас могут быть все слова, которые начинаются с ‘St’, оканчиваются буквой ‘d’ и не содержат цифр от 1 до 9. До сих пор мы использовали примеры регулярных выражений, которые ищут только один символ. Но что делать в иных случаях? Допустим, если требуется найти все слова, которые начинаются или оканчиваются символом или могут содержать любое количество символов в середине. С этой задачей справляются так называемые метасимволы-квантификаторы, определяющие сколько раз может встречаться предшествующее выражение: + * & ? {n}, {n m}, {n, } или { ,m} также являются примерами других квантификаторов, которые мы можем использовать в терминах регулярных выражений. ### * (звездочка) На следующем примере показано любое количество вхождений буквы ‘k’, включая их отсутствие: ``` $ grep "lak*" file4 ``` Это означает, что у нас может быть совпадение с ‘lake’ или ‘la’ или ‘lakkkkk’. ### + Следующий шаблон требует, чтобы хотя бы одно вхождение буквы ‘k’ в строке совпадало: ``` $ grep "lak+" file5 ``` Здесь буква ‘k’ должна появляться хотя бы один раз, поэтому наши результаты могут быть ‘lake’ или ‘lakkkkk’, но не ‘la’. ### ? В следующем шаблоне результатом будет строка bb или bab: ``` $ grep "ba?b" file6 ``` С заданным квантификатором ‘?’ мы можем иметь одно вхождение символа или ни одного. **Важное примечание! **Предположим, у нас есть регулярное выражение: ``` $ grep "S.*l" file7 ``` И мы получаем результаты ‘Small’, ‘Silly’, и ещё ‘Susan is a little to play ball’. Но почему мы получили ‘Susan is a little to play ball’, ведь мы искали только слова, а не полное предложение? Все дело в том, что это предложение удовлетворяет нашим критериям поиска: оно начинается с буквы ‘S’, имеет любое количество символов в середине и заканчивается буквой ‘l’. Итак, что мы можем сделать, чтобы исправить наше регулярное выражение, чтобы в качестве выходных данных мы получали только слова вместо целых предложений. Для этого в регулярное выражение нужно добавить квантификатор ‘?’: ``` $ grep "S.*?l" file7 ``` ### ** или символ экранирования** Символ » используется, когда необходимо включить символ, который является метасимволом или имеет специальное значение для регулярного выражения. Например, требуется найти все слова, заканчивающиеся точкой. Для этого можем использовать выражение: ``` $ grep "S.*?." file8 ``` Оно будет искать и сопоставлять все слова, которые заканчиваются точкой. Итак, вы получили общее представление о том, как работают регулярные выражения. Практикуйтесь как можно больше, создавайте регулярные выражения и старайтесь включать их в свою работу как можно чаще. Проверять правильность использования своих регулярных выражений на конкретном примере можно на специальном [сайте](https://regexr.com/). https://serverspace.by/support/help/shpargalka-po-vim.md Шпаргалка по текстовому редактору Vim/Vi: часто используемые функции, редактирование конфигурационных файлов Linux, полезные команды.с Итак, вам срочно понадобилось отредактировать какой-либо конфигурационный файл и под рукой нет знакомых консольных текстовых редакторов, только Vi (Vim)? Предлагаем следующий алгоритм действий, который выручит вас в данной ситуации: ## Быстрый старт Открываем файл в текстовом редакторе командой vi /путь/имя_файла, например: ``` sudo vi /etc/netplan/99-netcfg-vmware.yaml ``` Команда sudo используется в том случае, если для открытия файла нужны повышенные привилегии (например, редактирование системных конфигурационных файлов). Указанный файл откроется в текстовом редакторе: Скриншот №1. Команда sudo Перемещаем курсор по тексту с помощью стрелок или клавиш **h** (влево), **l** (вправо), **j** (вниз), **k** (вверх) до нужного места в тексте. Переводим открытый файл в режим редактирования текста нажатием клавиши **i** (раскладка клавиатуры должна быть англоязычной). В результате в нижней части экрана появится индикация режима работы — INSERT: Скриншот №2. Режим редактирования текста Вносим в текст необходимые корректировки. Выходим из режима редактирования нажатием клавиши **Esc** — индикатор INSERT в нижней части экрана должен исчезнуть. Теперь необходимо закрыть файл, сохранив внесенные изменения. Для этого набираем: ``` :wq ``` Данный набор символов также должен отобразиться в нижней части окна. Буква **w** помогает сохранить файл на диск (**w**rite), **q** — завершить работу редактора (**q**uit): Скриншот №3. Сохранение изменений в файле Если же что-то пошло не так и вам необходимо закрыть редактор не сохраняя изменения в файле, просто введите команду: ``` :q! ``` ## Дальше — больше Приведенной выше информации вполне достаточно, чтобы открывать, редактировать и сохранять файлы в текстовом редакторе Vim, однако у него есть возможности, которые могут существенно упростить и ускорить работу. Стоит начать с пояснения: Vi был одним из первых визуальных текстовых редакторов, однако начиная с определенной версии программный продукт стал доступен только под коммерческой лицензией. Энтузиасты начали разрабатывать свои аналоги этого текстового редактора, одним из которых является **Vim** (сокращение от **V**i **Im**proved — Vi усовершенствованный). Vim получил широкое распространение в *nix-дистрибутивах и при запуске команды **vi** в консоли вероятнее всего откроется именно он. Прежде всего нужно понять, что Vim может работать в нескольких режимах, каждый из которых обладает своими особенностями и набором поддерживаемых функций. Сразу после запуска редактора вы окажетесь в обычном режиме (normal). Здесь можно не только перемещать курсор по тексту, но и выделять/удалять/копировать/вставлять как отдельные символы, так и целые блоки текста. Эти задачи выполняются нажатием соответствующих букв и цифр (причем регистр букв имеет значение), точка отсчета — текущее положение курсора. Рассмотрим навигацию по файлу: - h — смещение курсора на один символ влево; - j — смещение курсора на один символ вниз; - k – смещение курсора на один символ вверх; - l – смещение курсора на один символ вправо; - w – смещение курсора в начало следующего слова в данной строке; - b – смещение курсора в начало предыдущего слова в данной строке; - G – переместить курсор в конец файла; - gg – вернуться в начало файла. Действия навигации также можно совмещать с цифрами, например, комбинация **3w** сместит курсор вперед на три слова, а **5k** на пять строк вверх. Часто используемые операции c текстом: - x — удалить символ под курсором; - d — удалить символы/строки; - dd — удалить строку целиком; - D — удалить символы от текущего положения курсора до конца строки; - v — включить режим выделения текста; - y — скопировать символы/строки; - yy — скопировать строку целиком; - p — вставить символы/строки; - u — отменить последнее действие. Функции удаления и копирования требуют дополнительного пояснения, ведь при нажатии **d** или **y** вроде бы ничего не происходит. Дело в том, что редактор ожидает дальнейших указаний — сколько строк символов нужно удалить/скопировать и в каком направлении от текущего положения курсора вести отсчет. Чтобы удалить пять символов вправо от курсора, нужно последовательно нажать **d5l**, чтобы скопировать три строки, следующие после курсора — **y5j**. Если имеется выделенный текст, для его копирования достаточно нажать **y**. Имеется в Vim и функция поиска: - /шаблон — все вхождения набора символов, указанного после **/** (слэша) будут подсвечены в тексте; - n — сместить курсор к следующему вхождению; - N — сместить курсор к предыдущему вхождению. Другой режим работы Vim — режим редактирования. Переключиться в него можно несколькими способами: - i — режим вставки (INSERT), ввод начинается с позиции курсора; - a — режим вставки (INSERT), ввод начинается с позиции, следующей за курсором; - A — режим вставки (INSERT), курсор перемещается в конец текущей строки; - R — режим замены (REPLACE), все вводимые символы будут последовательно заменять находящиеся под курсором. Если нужно заменить всего один символ, находящийся под курсором, достаточно нажать **r** и нужный символ — замена будет произведена без перехода в режим редактирования. Внизу экрана появляется соответствующий индикатор режима — INSERT или REPLACE. Вернутся в общий режим можно нажатием кнопки **Esc** (индикатор должен пропасть). Еще один режим работы Vim — командный. Переход в него осуществляется из общего режима нажатием **:** (двоеточия). Соответствующий индикатор появляется в нижнем левом углу окна, после чего можно вводить команды и их сочетания. - :q — выйти из редактора; - :q! — выйти из редактора без сохранения изменений в файле; - :w — сохранить изменения в файл; - :wq — сохранить изменения и закрыть редактор; - :r имя_файла — добавить содержимое указанного файла в редактируемый; - :r! команда_консоли — выполнить команду и добавить ее вывод в файл. ## И еще кое-что В данной статье рассмотрены часто употребляемые функции Vim, которых на самом деле гораздо больше. Чтобы закрепить навыки работы с редактором, освежить в памяти его возможности или узнать что-то новое, набираем в консоли команду **vimtutor** и проходим курс обучения (**vimtutor ru** — если предпочтителен русский язык): Скриншот №4. Курс обучения https://serverspace.by/support/help/debian-superuser-rights-sudo-visudo.md Команда sudo позволяет запускать отдельные команды с повышением привилегий (правами суперпользователя в Debian). Давайте разберемся, что требуется для работы этой утилиты. В операционных системах семейства Linux реализован принцип разграничения пользовательских привилегий, то есть у разных учетных записей разный объем прав доступа к каталогам, файлам и программам. Максимальными правами наделена встроенная учетная запись root. Вновь создаваемые пользовательские аккаунты обычно существенно ограничены в доступе к системным конфигурационным файлам, управлении сервисами, установке и удалении программных пакетов. При этом работа в операционной системе под учетной записью root настоятельно не рекомендуется, прежде всего в целях безопасности. В этом случае на помощь приходит утилита командной строки** sudo**. Команда sudo позволяет запускать отдельные команды с повышением привилегий (по умолчанию с правами root) пользуясь непривилегированной учетной записью. Давайте разберемся, что же требуется для работы этой утилиты. ## Установка и настройка В ОС Ubuntu sudo включена по умолчанию, а в Debian, если в процессе установки не был выбран соответствующий пакет, скорее всего будет следующая картина: ``` sudo ``` ``` #Output -bash: sudo: command not found ``` Значит, требуется установить недостающий пакет. Обновляем информацию о репозиториях и устанавливаем sudo: ```bash apt-get update apt-get install sudo ``` Дожидаемся окончания процесса: Скриншот №1. Процесс установки sudo После успешной установки потребуется сконфигурировать sudo, определив, какие пользователи или группы смогут использовать повышение привилегий и в каком объеме. Все эти настройки хранятся в конфигурационном файле **/etc/sudoers**, однако вносить в него изменения напрямую настоятельно не рекомендуется. Для этих целей используется специальная команда: ``` visudo ``` которая запускает текстовый редактор с конфигурационным файлом: Скриншот №2. Текстовый редактор За предоставление прав здесь отвечают две строки: ``` root ALL=(ALL:ALL) ALL %sudo ALL=(ALL:ALL) ALL ``` Первая строка назначает права для учетной записи root, вторая устанавливает права для членов группы sudo, которая была создана при установке пакета (знак **%** перед названием означает, что имя относится к группе пользователей). Соответственно, у нас есть два основных способа предоставить пользовательской учетной записи право использовать **sudo**: Добавить учетную запись пользователя (например, user) в группу sudo на сервере: ``` usermod –a –G sudo user ``` После изменения членства в группе, потребуется заново авторизоваться в этой учетной записи для применения новой конфигурации. Данный метод рекомендуется в тех случаях, когда пользователю необходимо предоставить полные права. Создать в файле новую запись, например, для учетной записи user. Мы добавляем строку по аналогии с root: ``` user ALL=(ALL:ALL) ALL ``` Добавлять новую запись рекомендуется в тех случаях, когда список привилегий будет корректироваться (об этом чуть позднее). Если мы внесли изменения в файл, нужно их сохранить нажатием сочетания клавиш Ctrl-O и выйти из редактора — Ctrl-X. Теперь можно проверить корректность работы: ``` sudo cat /etc/sudoers ``` Команда sudo запрашивает пароль текущего пользователя (в данном случае это user) — вводим его, и, если все сделано правильно, мы увидим содержание системного конфигурационного файла. ## Тонкая настройка Таким образом, обычный пользователь может запускать команды с правами учетной записи root не зная ее пароль. Это очень удобно, но может быть небезопасно — есть ли возможность ограничить круг команд, которые можно исполнять посредством sudo? Да, и поможет нам в этом тот же самый конфигурационный файл. Снова запускаем visudo и разбираемся дальше. Нас интересуют параметры, указанные после имени пользователя: Скриншот №3. Настройки ограничения команд Разберем их подробнее: - **ALL**=(ALL:ALL) ALL — первый параметр определяет к какому хосту применяется конфигурация. При использовании выделенного сервера параметр можно оставить без изменений; - ALL=**(ALL:ALL)** ALL — параметры в скобках определяют с полномочиями какого пользователя (первый параметр) и/или группы (второй параметр) будет выполняться команда. По умолчанию sudo выполняет команду от имени root, однако при запуске с ключом –u можно указать другую учетную запись, а с ключом –g другую группу, чьи полномочия будут использованы при запуске; - ALL=(ALL:ALL) **ALL** — третий параметр определяет к каким файлам и командам относятся данные настройки. Исходя из вышесказанного, при необходимости определить перечень разрешенных команд заменяем последний параметр **ALL** тем, что нам требуется, перечисляя команды через запятую. Например, строка: ``` user ALL=(ALL:ALL) /sbin/shutdown -r, /bin/cat ``` дает право пользователю user с помощью sudo осуществлять перезагрузку сервера командой sudo /sbin/shutdown -r и просматривать файлы с помощью sudo /bin/cat. Другие команды через sudo выполняться не будут. Например, при попытке выключить сервер командой: ``` sudo /sbin/shutdown -h ``` Получим ответ: ``` Sorry, user user is not allowed to execute '/sbin/shutdown -h' as root on debian10. ``` ## Полезное Увидеть список привилегий можно, запустив sudo -l (будет отображен список для текущего пользователя), либо sudo -l -U user (будет отображен список привилегий пользователя user): Скриншот №4. Список привилегий пользователя В состав sudo входит команда sudoedit, которая запускает текстовый редактор с указанным файлом сразу с повышенными привилегиями, то есть вместо команды: ``` sudo nano /etc/network/interfaces ``` Можно запустить: ``` sudoedit /etc/network/interfaces ``` Если требуется длительная работа в режиме повышенных привилегий и вводить sudo для каждой команды неудобно, можно запустить через sudo экземпляр командного интерпретатора: ``` sudo bash ``` Если продолжить работу в нем, то все команды будут запускаться с повышенными правами. По завершении работы выходим из интерпретатора командой: ``` exit ``` https://serverspace.by/support/help/informacziya-o-zheleze-v-linux.md В этом руководстве мы познакомимся с командами, используемыми для получения информации о параметрах системы Linux включая сведения о программном и аппаратном обеспечении. В этом руководстве мы познакомимся с командами, используемыми для получения информации о параметрах системы, включая информацию о программном и аппаратном обеспечении. Справиться с этой задачей нам поможет инструмент командной строки uname. Получение сведений об оборудовании и программном обеспечении вашей Linux-системы является одним из важных этапов администрирования. В этой статье мы углубимся в команды, используемые для поиска параметров системы, применяя инструмент командной строки uname. Кроме того, мы будем использовать команду lshw для получения более подробной информации об оборудовании. Поскольку команды являются нативными для Linux, они должны работать на любом терминале дистрибутива, использующего ядро Linux. Обратите внимание, что все перечисленные ниже команды должны вводиться в терминале Linux. ## Поиск сведений о программном и аппаратном обеспечении Для начала выясним детали используемого программного обеспечения, такие как ядро Linux, дистрибутив и другие. Команда, используемая для поиска системной информации — **uname**. Синтаксис выглядит следующим образом: ``` uname [option] ``` Мы разберем все параметры команды **uname** с примерами вывода с нашего тестового [VPS на базе CentOS 7](https://serverspace.by/services/vps-server/linux/). Команда uname —help в терминале предоставляет все подробности того, как эту команду можно использовать: Скриншот №1. Команда uname ## Операционная система, имя хоста и ядро Linux Опция -o или —operating-system отображает используемую операционную систему: ``` uname -o ``` Скриншот №2. Опция operating-system Опция -n или —nodename отображает имя хоста: ``` uname -n ``` Скриншот №3. Опция nodename Чтобы найти релиз ядра Linux, используйте параметр -r или —kernel-release: ``` uname -r ``` Скриншот №4. Параметр kernel-release Опция -v или —kernel-version выводит версию ядра: ``` uname -v ``` Скриншот №5. Опция kernel-version Если вам нужна вся вышеуказанная информация в одной команде, используйте параметр -a или —all следующим образом: ``` uname -a ``` Скриншот №6. Параметр all Наконец, чтобы узнать версию утилиты uname, используйте команду —version: ``` uname —version ``` Скриншот №7. Команда version ## Команда lshw Команда List Hardware (lshw) — еще одна популярная команда, используемая системными администраторами для получения очень подробной информации об аппаратных характеристиках машины. Это делается путем чтения различных файлов в каталоге _/proc_ на компьютере с Linux. Для получения информации утилите lshw необходим root-доступ. Она может сообщить о конфигурации RAM, версии прошивки, конфигурации материнской платы, информацию о процессоре, конфигурации кэша, скорости шины и т.д. Эта команда присутствует по умолчанию в большинстве дистрибутивов Linux. Если приведенные ниже команды не работают, значит утилиты в вашем дистрибутиве нет. Для ее установки перейдите на официальную [страницу GitHub](https://github.com/lyonel/lshw). Синтаксис команды: ``` lshw [-format] [-options] ``` Формат вывода может быть любым из следующих: - **html — **вывод аппаратной конфигурации в формате HTML; - **xml — **вывод аппаратной конфигурации в формате XML; - **json — **вывод аппаратной конфигурации как объект JSON; - **short — **отображает только основную информацию; - **businfo — **выводит информацию о шине. Параметры могут быть любыми из следующих: - -class CLASS — показывает только определенный класс оборудования; - -C CLASS — такой же, как '-class CLASS'; - -c CLASS — такой же, как '-class CLASS'; - -disable TEST — отключить тест (например, pci, isapnp, cpuid и т.д.); - -enable TEST — включить тест (например, pci, isapnp, cpuid и т.д.); - -quiet — не отображать статус; - -sanitize — удалить конфиденциальную информацию, такую как серийные номера и т.д.; - -numeric — числовые идентификаторы (для PCI, USB и т.д.); - -notime — исключить изменяемые атрибуты (временные метки) из вывода. Поскольку команда должна выполняться с правами root, используйте sudo перед командой: ``` sudo lshw -short ``` Скриншот №7. Команда sudo https://serverspace.by/support/help/installing-ubuntu-debian-programs-using-the-batch-manager.md Разные методы установки программ в Linux Ubuntu/Debian через пакетный менеджер APT (advanced packaging tool), Dpkg (debian package), install.sh. Одна из самых сложных задач, возникающих в процессе установки Unix-программ — отслеживание зависимостей. Любая более-менее сложная программа в своей работе использует возможности, предоставляемые другими модулями, системными библиотеками и т.д. Таким образом, появляется зависимость — если мы хотим установить программу "А", которая при работе использует библиотеки программы "Б", сначала необходимо установить программу "Б" (у которой, в свою очередь, могут быть свои зависимости). Таким образом, чем больше программ и зависимостей появляется на сервере, тем сложнее их отслеживать и управлять ими. Хорошая новость в том, что это можно делать с помощью пакетного менеджера **APT** (Advanced Packaging Tool). ## Установка с помощью пакетного менеджера Эволюция методов установки и управления программными пакетами со временем дошла до использования пакетных менеджеров, плотно интегрированных с репозиториями. В репозиториях содержатся упакованные файлы программ с данными об их зависимостях. После установки к операционной системе уже подключены системные репозитории: с их помощью можно обновлять ОС и устанавливать программные пакеты, которые были адаптированы и оптимизированы для работы с этой версией операционной системы. Перед началом установки пакетов рекомендуется обновить данные о версиях и зависимостях в репозитории следующей командой: ```bash sudo apt-get update ``` Скриншот №1. Обновление данных о версиях и зависимостях в репозитории Если необходимо уточнить название пакета, который требуется установить — ищем в локальном кэше менеджер по ключевым словам, например, **web server**: ```bash sudo apt-cache search web server ``` В результате получим большой перечень пакетов, где данное ключевое слово присутствует в описании: Скриншот №2. Поиск по ключевым словам Выбираем нужный нам пакет — в данном случае это **apache2**, и устанавливаем его: ```bash sudo apt-get install apache2 ``` Пакетный менеджер проверяет зависимости, версии, сравнивает их с уже установленными через **apt-get** пакетами, после чего выдает список необходимых для установки компонентов и запрашивает разрешение на продолжение операции: Скриншот №3. Установка пакета Нажимаем** y** и дожидаемся окончания установки. Часто используемые команды пакетного менеджера: - **apt-get update** — обновление информации о пакетах и зависимостях в подключенных репозиториях; - **apt-get upgrade** — обновление всех установленных пакетов до актуальной версии, имеющейся в репозитории; - **apt-get install имя_пакета** — установка пакета; - **apt-get remove имя_пакета** — удаление пакета; - **apt-get download имя_пакета** — скачать deb-пакет в локальную папку; - **apt-cache search ключевые слова** — поиск пакета по ключевым словам; - **apt-cache show имя_пакета** — показать информацию о пакете; - **apt-cache depends имя_пакета** — показать от каких компонентов зависит данный пакет; - **apt-cache rdepends имя_пакета** — показать какие компоненты зависят от пакета; - **apt-mark hold имя_пакета** — зафиксировать текущую версию пакета, прекратить обновление пакета; - **apt-mark unhold имя_пакета** — разрешить обновление пакета. ## Установка через Debian package Программные пакеты могут распространяться и не через репозитории. Например, они могут быть доступны на сайтах разработчиков. В таком случае, пакет можно скачать и воспользоваться утилитой **dpkg** (debian package) для установки. При использовании **dpkg** не происходит автоматическое отслеживание зависимостей и скачивание дополнительных пакетов. В случае нехватки каких-либо программ или библиотек установка завершится ошибкой с указанием списка отсутствующих пакетов. Их придется установить отдельно, например, через **apt-get**, если они присутствуют в подключенных репозиториях, либо скачивать с сайтов разработчиков и устанавливать в нужном порядке через **dpkg**. Для примера скачаем из системного репозитория установочный пакет веб-сервера **Nginx** командой: ```bash sudo apt-get download nginx ``` и попробуем установить через **dpkg –i имя_файла.deb**: ``` sudo dpkg –i ./nginx_1.14.0-0ubuntu1.6_all.deb ``` В результате система выдает ошибку с перечнем отсутствующих пакетов: Скриншот №4. Ошибка с перечнем отсутствующих пакетов Основные опции **dpkg**: - **dpkg –i имя_файла.deb** — установка пакета; в качестве параметра указывается полное имя файла; - **dpkg –r имя_пакета** — удаление ранее установленного пакета; - **dpkg –l** — выведение списка установленных в системе пакетов. ## Установка через файлы сценариев Установка программы представляет собой распаковку архива, копирование файлов программы в системные директории и, при необходимости, внесение изменений в системные конфигурационные файлы. Все эти действия могут быть внесены в исполняемый файл сценария и выполнены при его запуске. Сейчас достаточно редко встречается подобный метод установки программы, но, тем не менее, некоторые разработчики его используют. Если возникла необходимость в установке такого пакета, необходимо скачать архив (обычно это файл с расширением .tgz или .tar.gz), распаковать его в отдельную директорию на сервере, изучить распакованные файлы, а также прочитать файл readme, если он имеется. Установка программы запускается, обычно, сценарием** install.sh**, поэтому нужно включить атрибут исполняемого файла командой: ```bash sudo chmod +x ./install.sh ``` после чего запустить непосредственно сценарий: ``` sudo ./install.sh ``` https://serverspace.by/support/help/installing-and-configuring-an-rdp-server-on-centos-7.md В этом руководстве мы расскажем, как установить xRDP на удаленный компьютер CentOS 7 и как подключиться к нему через Remote Desktop Connection. В этом руководстве мы расскажем, как установить xRDP на удаленный компьютер CentOS 7 и как подключиться к нему через Remote Desktop Connection. Мы также покажем вам, как установить и подключиться к различным окружениям рабочего стола на удаленном компьютере CentOS 7. xRDP — это бесплатный сервер протоколов удаленных рабочих столов с открытым исходным кодом, который позволяет другим операционным системам, отличным от Windows, предоставлять полнофункциональные возможности удаленного рабочего стола. xRDP полностью совместим с rdesktop, FreeRDP и даже с клиентом удаленного рабочего стола Microsoft (mstsc.exe). Требования: - Хотя это и не является обязательным требованием, мы рекомендуем действовать от имени пользователя без полномочий root при выполнении каких-либо серьезных изменений в вашей системе. - Машина под управлением CentOS 7 с минимум 2 ГБ оперативной памяти. ## Установите xRDP на CentOS 7 Обновите установленные в системе пакеты: ``` $ sudo yum -y update ``` Затем установите необходимые пакеты: ``` $ sudo yum install -y epel-release $ sudo yum install -y xrdp $ sudo systemctl enable xrdp $ sudo systemctl start xrdp ``` Если вы используете FirewallD, откройте порт 3389/TCP для RDP: ``` $ sudo firewall-cmd —add-port=3389/tcp —permanent $ sudo firewall-cmd —reload ``` ## Установите предпочитаемую среду рабочего стола Теперь мы можем установить среду рабочего стола, которую будем использовать. В этом руководстве мы опробуем Xfce, MATE и GNOME. **Примечание:** если вы не можете подключиться через Remote Desktop Connection после установки среды рабочего стола, откройте порт 3389/TCP с помощью команды firewall-cmd, упомянутой выше. ### Установите рабочую среду XFCE Xfce — одна из самых легких настольных сред. Она быстрая, потребляет мало системных ресурсов, но все же остается визуально привлекательной. Кроме того, у неё очень активное сообщество, поэтому доступно множество вариантов настройки. Чтобы установить Xfce, выполните следующие команды: ``` $ sudo yum install -y epel-release $ sudo yum groupinstall -y "Xfce" $ sudo reboot ``` Затем создайте файл _.Xclients_ в каталоге пользователя, с помощью которого будет осуществлено подключение: ``` $ echo "xfce4-session" > ~/.Xclients $ chmod a+x ~/.Xclients ``` Теперь вы можете подключиться к серверу, используя Remote Desktop Connection. Вот как выглядит Xfce: Скриншот №1. Xfce Удаление Xfce Чтобы удалить Xfce с вашего CentOS 7, выполните следующие команды: ``` $ sudo yum groupremove -y "Xfce" $ sudo yum remove -y libxfce4* ``` ### Установите MATE Desktop Environment Чтобы установить MATE, выполните следующие команды: ``` $ sudo yum install -y epel-release $ sudo yum groupinstall -y "MATE Desktop" $ sudo reboot ``` Затем создайте файл _.Xclients_ в каталоге пользователя, с которым вы соединяетесь: ``` $ echo "mate-session" > ~/.Xclients $ chmod a+x ~/.Xclients ``` Теперь вы можете подключиться к серверу, используя Remote Desktop Connection. Вот как выглядит MATE: Скриншот №2. MATE Удаление MATE Чтобы удалить MATE с CentOS 7, выполните следующие команды: ``` $ sudo yum groupremove -y "MATE Desktop" $ sudo yum autoremove -y ``` ### Установите GNOME Desktop Environment Теперь попробуем установить GNOME 3. Для этого нам необходимо установить группу пакетов GNOME Desktop, которая установит все пакеты, необходимые для установки с графическим интерфейсом: ``` $ sudo yum groupinstall "GNOME DESKTOP" -y ``` Это может занять некоторое время. На минимальной конфигурации дистрибутива CentOS 7 будет установлено около 1000 пакетов. Запустите графический интерфейс Хотя мы установили группу пакетов GNOME Desktop, графический интерфейс не будет загружаться по умолчанию при перезагрузке. Мы можем проверить это, запустив: ``` $ systemctl get-default ``` Вывод: ``` multi-user.target ``` Если значением по умолчанию является _multi-user.target_, это означает, что графический интерфейс не будет загружен. Поменяем значение по умолчанию на _graphical.target_. Для этого выполните следующие команды: ``` $ sudo systemctl set-default graphical.target ``` Вывод: ``` Removed symlink /etc/systemd/system/default.target. ``` Created symlink from /etc/systemd/system/default.target to usr/lib/systemd/system/graphical.target. После этого выполните следующую команду, для незамедлительного перехода к графическому интерфейсу: ``` $ sudo systemctl isolate graphical.target ``` Теперь вы можете подключиться через xRDP к вашему CentOS 7 с помощью GNOME. Вот как выглядит GNOME 3 при первом подключении после установки. Просто следуйте начальным шагам настройки, чтобы завершить настройку: Скриншот №3. GNOME 3 **Примечание:** Если до момента установки графической оболочки GNOME Desktop для подключения к CentOS 7 использовались Xfce или MATE Desktop, выполните следующую команду: ``` $ sudo rm -f ~/.Xclients ``` Удаление GNOME Чтобы удалить GNOME с вашего CentOS 7, выполните следующие команды: ``` $ sudo yum groupremove -y "GNOME Desktop" $ sudo yum autoremove -y ``` ## Подключитесь к компьютеру с помощью подключения к удаленному рабочему столу После установки xRDP и среды рабочего стола вы можете подключаться с локального компьютера к удаленному. Подключение из Windows Чтобы подключиться к серверу из Microsoft Windows, просто найдите и запустите приложение Remote Desktop Connection (mstsc.exe) и введите свое имя хоста или IP: Скриншот №4. Remote Desktop Connection Если вы подключаетесь впервые, вы получите несколько предупреждений безопасности. Предполагая, что это ваш сервер и он безопасен, просто согласитесь с этими предупреждениями: Скриншот №5. Предупреждения безопасности https://serverspace.by/support/help/diagnostika-setevogo-podklyucheniya-ping-arp-traceroute-dig-nslookup.md Диагностика сетевого подключения в Linux, разрешение имен, ping, arp, traceroute, dig, nslookup, ip addr, ip route. Диагностика сетевой связности. Одна из важнейших подсистем, отвечающая за связь любого сервера с внешним миром — сетевая. Через сетевые интерфейсы поступают запросы от удаленных систем и через эти же интерфейсы направляются ответы, что позволяет налаживать коммуникацию и предоставлять/получать сервисы. В связи с этим особенно важно уметь производить диагностику и мониторинг сети хотя бы на базовом уровне, чтобы выявлять проблемы и вносить корректировки в конфигурацию в случае необходимости. Для операционных систем семейства Linux написано множество утилит, помогающих в диагностике и мониторинге. Познакомимся с наиболее часто используемыми из них. ## Диагностика сетевой связности (ping, arp, traceroute) В данной статье мы будем опираться на использование протокола IP версии 4. Согласно стандартам, определяющим работу этого протокола, каждое устройство, подключенное к сети, должно иметь как минимум IP-адрес и маску подсети — параметры, которые позволяют уникально идентифицировать устройство в пределах определенной сети. В такой конфигурации устройство может обмениваться сетевыми пакетами с другими устройствами в пределах той же самой логической сети. Если к этому набору параметров добавить адрес шлюза по умолчанию — наш сервер сможет связываться с хостами, находящимися за пределами локального адресного пространства. В случае каких-либо сетевых проблем в первую очередь проверяем, не сбились ли настройки сетевого интерфейса. Например, команды **ip** **addr** или **ifconfig** выведут IP-адрес и маску сети: Скриншот №1. Проверки настроек сетевого интерфейса В выводе команды виден перечень сетевых интерфейсов, распознанных операционной системой. Интерфейс **lo** — это псевдоинтерфейс (loopback). Он не используется в реальных взаимодействиях с удаленными хостами, а вот интерфейс с именем **ens192** — то, что нам нужно (именование сетевых интерфейсов различается в разных ветках и версиях ОС Linux). IP-адрес и маска сети, назначенные этому интерфейсу, указаны в поле **inet** — /24 после адреса обозначают 24-битную маску 255.255.255.0. Теперь проверим, указан ли шлюз по умолчанию. Команды **ip** **route** или **route** покажут имеющиеся маршруты: Скриншот №2. Проверка маршрута В таблице маршрутизации мы видим, что имеется маршрут по умолчанию (обозначается либо ключевым словом **default**, либо адресом **0.0.0.0**). Все пакеты, предназначенные для внешних сетей, должны направляться на указанный в маршруте адрес через обозначенный сетевой интерфейс. Если в настройках интерфейса есть ошибки, их необходимо исправить — помогут в этом другие статьи, для ОС [Ubuntu 18.04](https://serverspace.by/support/help/configuring-the-network-interface-in-ubuntu-18-04/) или [CentOS](https://serverspace.by/support/help/natrojka_setevogo_adaptera_centos/). Если же все верно — приступаем к диагностике с помощью утилиты ping. Данная команда отправляет специальные сетевые пакеты на удаленный IP-адрес (ICMP Request) и ожидает ответные пакеты (ICMP Reply). Таким образом можно проверить сетевую связность — маршрутизируются ли сетевые пакеты между IP-адресами отправителя и получателя. Синтаксис команды **ping IP/имя опции**: Скриншот №3. Синтаксис команды В данном случае видим, что на оба сетевых пакета, отправленных на адрес нашего шлюза по умолчанию, получены ответы, потерь нет. Это значит, что на уровне локальной сети со связностью все в порядке. Помимо количества полученных/потерянных сетевых пакетов мы можем увидеть время, которое было затрачено на прохождение запроса и ответа – параметр RTT (Round Trip Time). Этот параметр может быть очень важен при диагностике проблем, связанных с нестабильностью связи и скоростью соединения. Часто используемые параметры: - **ping –c количество** — указать количество пакетов, которое будет отправлено адресату (по умолчанию пакеты отправляются до тех пор, пока пользователь не прервет выполнение команды. Этот режим можно использовать, чтобы проверить стабильность сетевого соединения. Если параметр RTT будет сильно изменяться в ходе проверки, значит где-то на протяжении маршрута есть проблема); - **ping –s количество** — указать размер пакета в байтах. По умолчанию проверка производится малыми пакетами. Чтобы проверить работу сетевых устройств с пакетами большего размера, можно использовать этот параметр; - **ping –I интерфейс** — указать сетевой интерфейс, с которого будет отправлен запрос (актуально при наличии нескольких сетевых интерфейсов и необходимости проверить прохождение пакетов по конкретному сетевому маршруту). В случае, если при использовании команды ping пакеты от шлюза (или другого хоста, находящегося в одной локальной сети с сервером-отправителем) в ответ не приходят, стоит проверить сетевую связность на уровне Ethernet. Здесь для коммуникации между устройствами используются так называемые MAC-адреса сетевых интерфейсов. За разрешение Ethernet-адресов отвечает протокол ARP (Address Resolution Protocol) и с помощью одноименной утилиты мы можем проверить корректность работы на этом уровне. Запустим команду **arp –n** и проверим результат: Скриншот №4. Команда arp –n Команда выведет список IP-адресов (так как был использован аргумент **–n**), и соответствующие им MAC-адреса хостов, находящиеся в одной сети с нашим сервером. Если в этом списке есть IP, который мы пытаемся пинговать, и соответствующий ему MAC, значит сеть работает и, возможно, ICMP-пакеты, которые использует команда ping, просто блокируются файрволом (либо со стороны отправителя, либо со стороны получателя). Подробнее об управлении правилами файрвола рассказано [здесь](https://serverspace.by/support/help/nastroika-firewall-iptables-na-linux/) и [здесь](https://serverspace.by/support/help/ispolzovanie-firewalld-na-centos/). Часто используемые параметры: - **arp –n** — вывод содержимого локального arp-кэша в числовом формате. Без этой опции будет предпринята попытка определить символические имена хостов; - **arp –d адрес** — удаление указанного адреса из кэша. Это может быть полезно для проверки корректности разрешения адреса. Чтобы убедиться, что в настоящий момент времени адрес разрешается корректно, можно удалить его из кэша и снова запустить ping. Если все работает правильно, адрес снова появится в кэше. Если все предыдущие шаги завершены корректно, проверяем работу маршрутизатора — запускаем ping до сервера за пределами нашей сети, например, 8.8.8.8 (DNS-сервис от Google). Если все работает корректно, получаем результат: Скриншот №5. Проверка работы маршрутизатора В случае проблем на этом шаге, нам может помочь утилита traceroute, которая используя ту же логику запросов и ответов помогает увидеть маршрут, по которому движутся сетевые пакеты. Запускаем traceroute 8.8.8.8 –n и изучаем вывод программы: Скриншот №6. Утилита traceroute Первым маршрутизатором на пути пакета должен быть наш локальный шлюз по умолчанию. Если дальше него пакет не уходит, возможно проблема в конфигурации маршрутизатора и нужно разбираться с ним. Если пакеты теряются на дальнейших шагах, возможно, есть проблема в промежуточной сети. А, возможно, промежуточные маршрутизаторы не отсылают ответные пакеты. В этом случае можно переключиться на использование другого протокола в traceroute. Часто используемые опции: - **traceroute –n** — вывод результата в числовом формате вместо символических имен промежуточных узлов; - **traceroute –I** — использование ICMP-протокола при отслеживании маршрута. По умолчанию используются UDP-датаграммы; - **traceroute –s адрес**— указать адрес источника для исходящего сетевого пакета; - **traceroute –i интерфейс**— указать сетевой интерфейс, с которого будут отправляться пакеты. ## Диагностика разрешения имен (nslookup, dig) Разобравшись с сетевой связностью и маршрутизацией приходим к следующему этапу — разрешение доменных имен. В большинстве случаев в работе с удаленными сервисами мы не используем IP-адреса, а указываем доменные имена удаленных ресурсов. За перевод символических имен в IP-адреса отвечает служба DNS — это сеть серверов, которые содержат актуальную информацию о соответствии имен и IP в пределах доверенных им доменных зон. Самый простой способ проверить работает ли разрешение имен — запустить утилиту ping с указанием доменного имени вместо IP-адреса (например, ping ya.ru). Если ответные пакеты от удаленного сервера приходят, значит все работает как надо. В противном случае нужно проверить прописан ли DNS-сервер в сетевых настройках и удается ли получить от него ответ. Способы выяснения какой DNS-сервер использует наш сервер различаются в зависимости от используемой версии и дистрибутива ОС Linux. Например, если ОС используется Network Manager для управления сетевыми интерфейсами (CentOS, RedHat и др.), может помочь вывод команды **nmcli**: Скриншот №7. Команда nmcli В настройках сетевого интерфейса, в разделе DNS configuration, мы увидим IP-адрес сервера. В Ubuntu 18.04 и выше, использующих Netplan, используем команду **systemd-resolve —status**: Скриншот №8. Команда systemd-resolve —status Используемый сервер также будет указан в настройках интерфейса, в разделе DNS Servers. В более старых версиях Ubuntu потребуется проверить содержимое файлов **/etc/resolve.conf** и **/etc/network/interfaces**. Если сервер не указан, воспользуйтесь статьей для ОС [Ubuntu 18.04](https://serverspace.by/support/help/configuring-the-network-interface-in-ubuntu-18-04/) или [CentOS](https://serverspace.by/support/help/natrojka_setevogo_adaptera_centos/), чтобы скорректировать настройки. Проверить работу сервиса разрешения имен нам помогут утилиты nslookup или dig. Функционально они почти идентичны: G-вывод утилиты dig содержит больше диагностической информации и гибко регулируется, но это далеко не всегда нужно. Поэтому используйте ту утилиту, которая удобна в конкретной ситуации. Если эти команды недоступны, потребуется доставить пакеты на CentOS/RedHat: ```bash yum install bind-utils ``` для Debian/Ubuntu: ```bash sudo apt install dnsutils ``` После успешной установки сделаем тестовые запросы: ``` dig ya.ru ``` Скриншот №9. Тестовые запросы В разделе **Answer Section** видим ответ от DNS сервера — IP-адрес для A-записи с доменным именем ya.ru. Разрешение имени работает корректно: ``` nslookup ya.ru ``` Скриншот №10. Подтверждение корректной работы Аналогичный запрос утилитой **nslookup** выдает более компактный вывод, но вся нужная сейчас информация в нем присутствует. Что же делать, если в ответе отсутствует IP-адрес? Возможно, DNS-сервер недоступен. Для проверки можно отправить тестовый запрос на другой DNS-сервер. Обе утилиты позволяют эти сделать. Направим тестовый запрос на DNS-сервер Google: ``` dig @8.8.8.8 ya.ru ``` Скриншот №11. Отправка тестового запроса 1 ``` nslookup ya.ru 8.8.8.8 ``` Скриншот №12. Отправка тестового запроса 2 Если имена разрешаются публичным DNS-сервером корректно, а установленным по умолчанию в ОС нет, вероятно, есть проблема в работе этого DNS-сервера. Временным решением данной проблемы может быть использование публичного DNS-сервера в качестве сервера для разрешения имен в операционной системе. В том случае, если разрешение имен не работает ни через локальный, ни через публичный DNS сервер — стоит проверить не блокируют ли правила файрвола отправку на удаленный порт 53 TCP/UDP пакетов (именно на этом порту DNS-серверы принимают запросы). Часто используемые параметры: - **nslookup имя сервер** — разрешить доменное имя, используя альтернативый сервер; - **nslookup –type=тип имя** — получить запись указанного типа для доменного имени (например, **nslookup -type=mx ya.ru** – получить MX-записи для домена ya.ru); - **dig @сервер имя —** разрешить доменное имя, используя альтернативый сервер; - **dig имя тип** — получить запись указанного типа для доменного имени (например, **dig ya.ru mx** — получить MX-записи для домена ya.ru). Как обычно, полный набор опций и параметров для указанных утилит можно найти во встроенной справке операционной системы, используя команду **man**. https://serverspace.by/support/help/installing-the-gnome-gui-on-centos-7.md В этой статье мы объясним, как установить GUI GNOME на базовую версию операционной системы CentOS 7, используя набор команд для терминала. GNOME является частью проекта GNU и представляет собой графический интерфейс (GUI) рабочего стола. Он использует принцип KISS (Keep it simple, stupid) и является стандартным GUI для многих дистрибутивов, таких как Debian, Fedora, Red Hat Enterprise Linux, Kali Linux и т.д. В этой статье мы объясним как установить GUI GNOME на базовую версию операционной системы CentOS 7. Поскольку данная система работает в режиме командной строки (CLI), в качестве примера мы будем использовать набор команд для терминала. ## Установка Предполагаем, что вы уже установили CentOS (если еще нет, можете [арендовать](https://serverspace.by/services/vps-server/linux/) VPS с этой операционной системой), и вы имеете права root-пользователя или суперпользователя. В данном случае мы будем писать команды от имени пользователя root. Если вы не являетесь пользователем root, просто ставьте sudo перед всеми командами. ### Шаг 1 — Обновите вашу систему Сначала мы обновляем систему. Это требуется не всегда, но делать так — это хорошая практика: ```bash yum update ``` Ожидаем завершения установки обновлений и переходим к следующему шагу. ### Шаг 2 — Установите пакеты GNOME Теперь мы устанавливаем пакеты GNOME. Для их установки мы будем использовать команду, которая устанавливает все пакеты, связанные с GNOME GUI: ```bash sudo yum -y groups install "GNOME Desktop" ``` ### Шаг 3 — Настройте систему X Window System Программа, которая запускает графическую среду в большинстве систем Linux, называется X Window System. Итак, во-первых, вы должны указать X Window System, что GNOME — это графический интерфейс, используемый по умолчанию. Поэтому введите эту команду: ``` echo "exec gnome-session" >> ~/.xinitrc ``` Теперь мы закончили установку GNOME и настройку системы X Window. Давайте проверим это, введя команду: ``` startx ``` После запуска этой команды вы увидите графический интерфейс GNOME, похожий на изображение ниже, что означает, что он работает: ### Шаг 4 Теперь GNOME GUI установлен и протестирован. Однако для его запуска необходимо вводить команду _startx_ при каждом запуске операционной системы, что не очень удобно. Давайте сделаем так, чтобы он запускался автоматически. Для этого используйте следующую команду: ```bash systemctl set-default graphical.target ``` https://serverspace.by/infrastructure/panel-upravleniya.md Наша панель разработана с учетом современных стандартов в области UI-дизайна и ее с легкостью освоит даже начинающий пользователь. ## Интерфейс Наша панель разработана с учетом современных стандартов в области UI-дизайна и ее с легкостью освоит даже начинающий пользователь: [slider][slide uri=»/wp-content/uploads/2019/12/panel-page-1.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/12/panel-page-13.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/12/panel-page-14.jpg» caption=»»][/slide][/slider] ## Подключайте услуги [tabs_vertical id=»738″ type=»slides»][tab id=»153″ title=»VPS vStack» active] ### VPS vStack Создавайте виртуальные серверы за 1 минуту. [/tab][tab id=»233″ title=»IaaS VMware»] ### IaaS VMware Арендуйте облачную инфраструктуру и объединяйте ее в сети. [/tab][tab id=»342″ title=»Объектное хранилище»] ### Объектное хранилище Используйте объектное хранилище с поддержкой S3. [/tab][tab id=»486″ title=»SSL»] ### SSL Защищайте сайты надежными SSL-сертификатами. [/tab][tab id=»13″ title=»Мониторинг»] ### Мониторинг Контролируйте работу любых серверов и сайтов. [/tab][/tabs_vertical] ## Следите за расходами [tabs_vertical id=»658″ type=»slides» orientation=»right»][tab id=»183″ title=»Детализация» active] ### Детализация Получайте детальную информацию о списаниях. [/tab][tab id=»21″ title=»Выставление счетов»] ### Выставление счетов Формируйте счета на оплату для организаций. [/tab][tab id=»385″ title=»Пополнение баланса»] ### Пополнение баланса Пополняйте баланс аккаунта с помощью банковских карт. [/tab][/tabs_vertical] ## Управляйте инфраструктурой [tabs_vertical id=»716″ type=»slides»][tab id=»131″ title=»Статистика» active] ### Статистика Контролируйте нагрузку на серверы в режиме онлайн. [/tab][tab id=»237″ title=»Лицензии»] ### Лицензии Приобретайте дополнительные лицензии на программное обеспечение. [/tab][tab id=»349″ title=»Бэкапы и снимки»] ### Бэкапы и снимки Настраивайте резервное копирование и делайте моментальные снимки. [/tab][/tabs_vertical] https://serverspace.by/about/blog/dynamic-dns-chto-eto.md Нередко во время работы в интернете пользователю требуется статический IP-адрес. Его можно получить, воспользовавшись специальным сервисом под названием Dynamic DNS Нередко во время работы в интернете пользователю требуется статический IP-адрес. Его можно получить, обратившись напрямую к интернет-провайдеру, либо воспользовавшись специальным сервисом под названием Dynamic DNS (или, как его еще называют, DynDNS, DDNS или ДинДНС). Расскажем о втором варианте подробнее. Dynamic DNS — это сервис, закрепляющий за сетевым оборудованием определенный IP-адрес, по которому пользователь может подключаться к своему оборудованию из любого места. **Важно:** не путайте Dynamic DNS с Primary и Secondary DNS. Dynamic DNS представляет собой сервис, а Primary и Secondary DNS — это "железо", которое обеспечивает доступ к интернету. ## **Как подключить** В качестве примера используем роутер TP-Link Archer A9, который поддерживает не только DynDNS, но и VPN, IPv6 и т.д. Чтобы активировать сервис, переходим в панель управления роутера, выбираем раздел "Сеть" и пункт DynDNS: Скриншот №1. Панель управления TP-Link. Регистрируем нового пользователя, перейдя по ссылке справа. Настройка DynDNS займет не более 10 минут, после чего вам будет предоставлен логин, пароль и доменное имя, которые необходимо ввести в программном обеспечении роутера. После вышеперечисленных действий сохраняем изменения, перезагружаем роутер и проверяем работоспособность сервиса DDNS: откройте браузер и введите домен, который был получен при регистрации. Откроется панель управления с активированным сервисом. Все функции, имеющиеся в домашней сети пользователя, также будут доступны через DynDNS. Например, если на роутере включен FTP-сервер, то он будет активен и в Dynamic DNS. ## **Другие варианты** Кроме сервиса DynDNS доступны и другие. К примеру, TP-Link предлагает использовать собственный: Скриншот №2. DynamicDNS TP-Link. Принцип его настройки аналогичен настройке работы предыдущего сервиса переходим на сайт, регистрируемся, активируем DDNS-сервер. Другие сервисы: **Hldns.ru** Сервис появился на рынке в 2015 году. Его особенность заключается в предоставлении бесплатного динамического DNS по модели AS-IS. Это значит, что любые претензии клиентов рассматриваются владельцем ресурса по собственному желанию. Среди других преимуществ отметим простоту и прозрачность — регистрация выполняется в 3 клика мышкой. Скриншот №3. Регистрация Дин ДНС. **Важно!** Если у вас отсутствует "белый" IP-адрес, администрация сайта предлагает воспользоваться собственной опцией. **Dynip.com** Второй представитель — DynIP. Сервис предлагает на выбор 3 тарифа: Basic, Professional и Enterprise: Скриншот №4. Тарифы DynIP. Основное отличие от предыдущего поставщика: DynIP не является бесплатным. Для проверки качества сервиса вы можете скачать Free Trial Dynamic DNS и бесплатно использовать программу в течение 30 дней. **DnsIP.ru** Отдельно следует упомянуть отечественный сервис Dyn DNS Secure, который является частью проекта Dyn DNS. Для его подключения достаточно [скачать](http://dnsip.ru/aaa-dyn-dns-secure.php) дистрибутив программы, установить его и зарегистрироваться для активации. Помимо стандартных функций, которые присущи любому DDNS-серверу, DnsIP также предоставляет функции мониторинга сети, проверки сайтов, покупки доменных имен первого уровня и другие возможности. ## **Рекомендации** В заключение оставим 4 совета, которые помогут вам при работе с DynDNS: 1. Часто меняйте пароль от роутера, следуя при этом следующему правилу: минимум 9 символов, добавление заглавных букв, цифр и спецсимволов. 2. При выборе DynDNS внимательно читайте правила оказания услуги. 3. Если на роутере активны дополнительные функции (например, FTP-сервер) или подключено внешнее хранилище — разграничивайте права доступа. Такой подход обезопасит вас от внешних угроз. 4. Во время настройки сетевого оборудования иногда встречается опция "Настроить Динамический DNS" (Configure Dynamic Dns), а в подразделе могут содержаться дополнительные опции. Если вы не до конца понимаете их назначение, оставляйте их без изменений. https://serverspace.by/about/news/proekty-v-paneli-upravleniya.md В панели управления Serverspace появилась новая функция — создание и управление проектами В панели управления Serverspace появилась новая функция — создание и управление проектами. ### **Что такое проекты?** Проекты позволяют владельцу аккаунта предоставлять **полный или ограниченный доступ** к своей панели другим пользователям для совместной работы с ресурсами: серверами, сетями, балансом и др. Существует два типа проектов: - **Личный проект** Создается по умолчанию после регистрации в панели управления и закрепляется за владельцем аккаунта, предоставляя ему полный доступ ко всем ресурсам, доступным в панели. - **Общие проекты** Могут быть созданы владельцем аккаунта путем преобразования личного проекта в общий, либо путем создания отдельных общих проектов, предоставляя определенным пользователям полный или ограниченный доступ ко всем ресурсам, доступным в панели. Каждому пользователю, добавляемому в проект, может быть присвоена роль с определенными правами доступа: - **Владелец** Роль закрепляется по умолчанию за владельцем аккаунта и может быть дополнительно присвоена любому другому пользователю на усмотрение владельца аккаунта. Предоставляет полный доступ к панели управления. - **Администратор** Роль, запрещающая добавлять и удалять пользователей из проектов, создавать, передавать и удалять роль "Владелец", а также удалять любые проекты. Остальные возможности аналогичны роли "Владелец". - **Бухгалтер** Роль с доступом исключительно в разделы "Партнерам", "Биллинг", "Поддержка" и "Настройки юрлиц", а также с возможностью просмотров проекта и списка пользователей проекта. ### **Создание и управление проектами** После авторизации в панели управления в левом верхнем углу будет отображаться логотип и название личного проекта, созданного автоматически. Для создания общего проекта необходимо кликнуть на многоточие рядом с названием личного проекта, и в выпадающем списке выбрать опцию "Добавить проект". Преобразовать личный проект в общий возможно при добавлении общего проекта, поставив галочку в чекбоксе рядом с пунктом "Преобразовать существующий личный проект в общий". Более подробно с информацией о проектах можно ознакомиться в наших инструкциях ["Создание проекта"](https://panel.serverspace.by/help/Details/CreateProject/) и ["Управление участниками проекта"](https://panel.serverspace.by/help/Details/ManagingProjectParticipants/). https://serverspace.by/about/news/obnovlenie-interfejsa-dns.md Небольшое, но приятное UI-преобразование в панели управления: мы обновили раздел услуги DNS-хостинг. Небольшое, но приятное преобразование в панели управления: мы обновили раздел услуги DNS-хостинг, добавив возможность редактирования PTR-записей и приведя интерфейс раздела в соответствие новой дизайн-концепции Serverspace: В ее основе легкость, функциональность и отсутствие лишних шагов — любое действие можно выполнять всего за несколько кликов. Нажав на кнопку "Добавить домен" на приветственном экране, пользователь попадает в интерфейс добавления домена с возможностью произвести миграцию его DNS-записей: Процесс полностью автоматизирован, а отслеживать его стадию позволяет специальный progress bar: Возможность создавать, редактировать и удалять записи для выбранного домена появляется сразу же по завершении процесса его добавления: При этом за использование NS-серверов Serverspace, которые прописываются по умолчанию для добавленных доменов, как и за редактирование DNS-записей, платить не нужно — сервис полностью бесплатен для всех клиентов. https://serverspace.by/about/news/novyj-data-czentr-v-usa.md Список дата-центров, доступных пользователям услуги VPS vStack, пополнился новой площадкой — встречайте автономный ЦОД нового поколения NNJ3 Список дата-центров, доступных пользователям услуги **VPS vStack**, пополнился новой площадкой — встречайте автономный ЦОД нового поколения NNJ3, расположенный в штате **Нью-Джерси, США**! [ПОДОБРАТЬ VPS](https://serverspace.by/services/vps-server.md) ### **Бесперебойный** В рамках SLA дата-центр гарантирует максимальный **уровень доступности 100%**, который обеспечивается работой **четырех полностью независимых N+1 энергосистем** с собственными резервными дизель-генераторами. Дополнительно электропитание поступает от локальной подстанции Нью-Джерси JCP & L. ### **Защищенный** ЦОД NNJ3 построен в небольшом городе Парсиппани, находящемся в 30 милях езды от Манхэттена, Нью-Йорк. За счет исторически выгодного расположения города (~287 футов над уровнем моря) дата-центр** надежно защищен от стихийных бедствий** и остается в безопасности даже во время таких разрушительных ураганов, как "Сэнди". Одновременно с этим ЦОД находится под круглосуточной охраной: на территории ведется непрерывное HD CCTV-видеонаблюдение и действуют пропускные режимы с прохождением трехфакторной аутентификации и многофакторного биометрического сканирования. ### **Инновационный** В дата-центре установлена уникальная **низкоскоростная система охлаждения N+1**, отводящая горячий воздух в отдельную комнату, повышая при этом эффективность работы и не загрязняя оборудование, а также системы предварительного пожаротушения с двойной блокировкой. Сертификация дата-центра: - SOC 1 (SSAE18/ISAE3402); - SOC 2; - HIPAA; - PCI-DSS. [ПОДОБРАТЬ VPS](https://serverspace.by/services/vps-server.md) https://serverspace.by/about/news/dajdzhest-novostej-s-5-po-11-dekabrya.md Свежие релизы Serverspace за прошедшую неделю, не вошедшие в основной пул новостей. Друзья, с сегодняшнего дня мы запускаем еще один формат новостей — еженедельный дайджест, в котором будем рассказывать вам о свежих релизах Serverspace за прошедшую неделю, не вошедших в основной пул новостей. ## Новые обновления: - **Панель управления на английском языке** Добавлена возможность изменения языка панели управления с русского на английский и наоборот. Для смены языка перейдите в раздел "Учетная запись" — "Настройки", далее в поле "Язык интерфейса", расположенном во вкладке "Личные данные", выберите нужный язык и нажмите на кнопку "Сохранить изменения". - **SSD-диски объемом до 2 ТБ** Для пользователей услуги IaaS VMware увеличен максимально возможный объем SSD-накопителей до 2 ТБ (ранее 1 ТБ). Выбор объема в диапазоне от 10 ГБ до 2000 ГБ с шагом в 10 ГБ доступен при создании как основных, так и дополнительных дисков. https://serverspace.by/about/news/registracziya-v-serverspace-cherez-google-yandeks-i-facebook.md Помимо стандартной регистрации через электронную почту клиенты могут регистрироваться в Serverspace через аккаунты Google и Яндекс, а также через социальную сеть Facebook. Serverspace увеличил количество способов регистрации на сервисе. Помимо стандартной регистрации через электронную почту клиенты могут регистрироваться в Serverspace через аккаунты Google и Яндекс, а также через социальную сеть Facebook. Преимущества регистрации через Google, Яндекс и Facebook: - регистрация без подтверждения по ссылке из письма; - предварительное окно выбора доступных аккаунтов пользователя в Google и Яндекс; - моментальная повторная авторизация по кнопке без ввода логина и пароля. Регистрация через Google, Яндекс и Facebook происходит по защищенному протоколу и абсолютно безопасна. https://serverspace.by/support/help/windows-server-versions-editions-licensing.md Данная статья знакомит с множеством выбора версий систем Windows Server, сранивает доступные редакции и затрагивает тему его лицензирования. Задаваясь вопросом, какую версию Windows Server выбрать для своего бизнеса, пользователи, как правило, сталкиваются с большим разнообразием, и далеко не всегда понятно как выбрать наиболее подходящий вариант. У операционной системы Windows Server существуют не только разные версии, но и разные редакции. Давайте разберемcя в чем же отличия между ними. ## Что такое версия Windows Server? В 90-е годы, во времена Windows NT, каждая версия Windows Server имела уникальный номер. Например, у Windows NT были номера 3.1, 3.51 и 4.0. Но начиная с 2000 года Microsoft вместо номера начала добавлять после названия год запуска операционной системы: Microsoft Windows 2000, Windows Server 2003, 2008 (которая также имела версию R2), 2012 (также с R2), 2016 и 2019, и т.д. Каждая новая версия Microsoft Windows Server представляет новые функциональные возможности. Например, виртуализация Hyper-V, Server Core и BitLocker были представлены в Windows Server 2008, контейнеры Windows и Nano Server были представлены в [Windows Server 2016](https://serverspace.by/services/vps-server/windows/), а [Windows Server 2019](https://serverspace.by/services/vps-server/windows/) принес с собой Windows Admin Center — новый способ удаленного администрирования серверной инфраструктуры, улучшения гиперконвергентной инфраструктуры и глубокую поддержку подсистемы Linux. ## Что такое завершение поддержки? Как говорится, ничто не вечно. И в определенный момент Microsoft прекращает выпуск патчей для устаревшего программного обеспечения. Дата, до которой Microsoft выпускает обновления для продукта, называется датой окончания поддержки. И после того, как эта дата пройдет, устаревшая версия ОС станет легкой мишенью для вредоносных программ, поскольку она больше не будет получать обновления безопасности и, следовательно, будет уязвима для новых эксплоитов. Операционные системы Microsoft обычно поддерживаются не менее 10 лет. Например, популярный Windows Server 2003, выпущенный в апреле 2003 года, имел расширенную поддержку, которая закончились в 2015 году. Расширенная поддержка Windows Server 2008 R2 должна закончиться в январе 2020 года, а Windows Server 2012 R2 продолжит получать обновления по крайней мере до октября 2023 года. Версии Server 2016 и 2019 будут получать обновления по 2027 и 2029 год соответственно. Поэтому в целях безопасности организациям на самом деле следует использовать только свежие версии Windows Server. ## Что такое редакция Windows Server? Когда вы покупаете автомобиль, вам доступно, как минимум, несколько комплектаций одной и той же модели. Например, базовый экономичный вариант, роскошный вариант с кожаными сиденьями и люком на крыше, а также спортивный вариант с большими колесами и более мощным двигателем. Другими словами, каждая версия автомобиля имеет свою цену и набор функций для групп клиентов с разными бюджетами и потребностями. То же самое касается выпусков Windows Server. Каждый вариант включает в себя функциональность, которая подходит для разных компаний, в зависимости от их размера и бюджета. Например, разные редакции могут поддерживать разное количество пользователей. ## Различия между редакциями Windows Server 2012 R2 Чтобы помочь понять некоторые различия между редакциями ОС, давайте разберем их на примере Windows Server 2012 R2: - **Foundation** — серверная ОС общего назначения, лучше всего подходящая для серверов нижнего уровня. ОС поддерживает только один процессор и 32 ГБ RAM. Редакция Foundation (недоступная в Windows Server 2016) ограничена 15 пользователями, что делает ее пригодной только для небольших офисов. Foundation доступен только через OEM-производителей, что обычно означает, что он предустановлен на компьютерах, которые вы покупаете у таких компаний, как Dell и HPE. - **Essentials** (ранее SBS или Small Business Server) — это простое в настройке серверное решение, которое поддерживает до 25 пользователей и 50 устройств, что делает его подходящим для небольших офисов. Essentials поддерживает более мощное оборудование с объемом оперативной памяти до 64 ГБ и двумя процессорами. В отличие от других выпусков Windows Server, в Essentials предварительно настроены роли, такие как Active Directory, DNS, файловые службы, IIS и удаленный рабочий стол, что делает его идеальным для организаций с менее развитым ИТ-направлением или менее опытным ИТ-персоналом. - **Standard** не ограничивает пользователей, но в отличие от Foundation и Essentials вам придется отдельно приобретать клиентские лицензии (CAL) в зависимости от того, сколько людей вам нужно поддерживать. Standard поддерживает максимум 4 ТБ RAM, а каждая приобретаемая лицензия распространяется на два процессора. Если вы заинтересованы в виртуализации, этот выпуск позволит вам использовать гипервизор Hyper-V для запуска до двух виртуальных экземпляров операционной системы (дополнительные виртуальные экземпляры Windows Server потребуют дополнительных затрат) на одном физическом оборудовании, что делает редакцию Standard подходящей для легкой виртуализированной среды. - **Datacenter** — это самая лучшая и самая дорогая редакция Windows Server. Windows Server 2012 R2 Datacenter практически идентичен стандартной версии с одним большим исключением. С лицензией Datacenter вы можете запускать неограниченное количество виртуальных экземпляров с Windows Server в качестве гостевой ОС на одном двухпроцессорном компьютере. Эта небольшая разница имеет большое влияние, так как компании могут сэкономить, запустив десятки экземпляров ОС на одном сервере. ## Различия между редакциями Windows Server 2016 и 2019 - **Hyper-V** — это бесплатная редакция Windows Server, предназначенная только для запуска роли гипервизора Hyper-V. Его цель — быть гипервизором для вашей виртуальной среды. У него нет графического интерфейса. По сути, это урезанная версия Server Core. Вы будете использовать sconfig.cmd, чтобы включить гипервизор, а затем управлять средой с помощью диспетчера Hyper-V (как часть RSAT) с рабочей станции Windows 10 в вашей сети. Рекомендуется использовать именно эту редакцию для вашего гипервизора, чтобы сохранить чистоту и простоту лицензирования. - **Essentials** — идеально подходит как для малого и среднего бизнеса, так и для людей с потребностями в базовых функциях сервера. Графический интерфейс в значительной степени такой же, как и в Standard, за исключением мастера настройки Essentials. **Права на виртуализацию** Вам разрешено запускать один физический экземпляр Essentials в качестве хоста Hyper-V, на котором размещен один виртуальный экземпляр Essentials. Вам нужно удалить все роли, кроме роли Hyper-V, из физического экземпляра Essentials для обеспечения соответствия. Essentials также подходит для одного виртуального экземпляра на любом другом гипервизоре. **Модель лицензирования** На базе процессора. Клиентские лицензии не требуются, но вы ограничены 25 пользователями и 50 устройствами, подключающимися к серверу. **Аппаратные ограничения** Essentials ограничен до 64 ГБ RAM и 2 CPU на компьютере, на котором он установлен. - **Standard** — идеально подходит для любой компании или для лиц, которым требуются расширенные функции, но при этом они не будут интенсивно виртуализироваться. **Права на виртуализацию** Разрешено запускать до двух виртуальных машин или контейнеров Hyper-V или один физический экземпляр со стандартной лицензией. Если вы используете роль Hyper-V только на физическом экземпляре, то можете использовать ее в качестве хоста Hyper-V, а затем разместить на этом хосте две виртуальные машины Hyper-V. Если вы хотите использовать несколько ролей на физическом экземпляре, вы не можете запускать виртуальную машину поверх с одной и той же лицензией. **Модель лицензирования** Основанная на ядре. Клиентские лицензии необходимы для каждого пользователя или устройства, которые подключаются косвенно или напрямую к серверу. Например, если вы используете сервер в качестве файлового сервера, вам потребуется лицензия CAL для каждой учетной записи пользователя или компьютера, которые обращаются к этому файловому серверу в сети. **Аппаратные ограничения** Стандарт ограничен максимум 24 ТБ оперативной памяти и 512 ядрами. - **Datacenter** — идеально подходит для любой компании с высокой степенью виртуализации. Вы приобретаете лицензию в зависимости от того, сколько ядер есть у ваших хостов, на которых может жить любая виртуальная машина с версией Datacenter (запускаться или потенциально запускаться после Vmotion). Это лицензирование, на первый взгляд, кажется дорогим, но оно позволяет создавать неограниченное количество виртуальных машин, работающих под управлением Datacenter на хостах, которые вы учитывали. Если у вас небольшое количество хостов (а впоследствии и ядер) и большое количество потенциальных виртуальных машин, тогда эта лицензия не представляет никакой сложности. **Права на виртуализацию** Неограниченное количество виртуальных машин или контейнеров Hyper-V. Как было озвучено выше, вы будете покупать лицензии в зависимости от того, сколько ядер у вас на хостах. На этом этапе вы можете запустить на хостах столько угодно виртуальных машин, используя любые роли. **Модель лицензирования** Основанная на ядрах. Убедитесь, что вы случайно не выбрали этот выпуск при установке на физический сервер, на котором не размещаются виртуальные машины. Клиентские лицензии необходимы для каждого пользователя или устройства, которые подключаются косвенно или напрямую к серверам в вашей среде. ## Различия в лицензировании Windows Server 2016 и новее Хотя цены на Windows Server 2012 R2, 2016, 2019 одинаковы, если вы используете стандартную лицензию или лицензию Datacenter на Windows Server 2016 или новее, есть некоторые ключевые изменения, о которых вам необходимо знать. Прежде всего, в то время как лицензии Windows Server исторически продавались для каждого процессора / сокета, в Windows Server 2016 модель лицензирования переключалась на каждое ядро. Таким образом, если у вас есть сервер, содержащий 2 процессора с 24 ядрами , в Windows Server 2012 вам нужно будет купить только одну лицензию Standard или Datacenter. В Windows Server 2016 вам придется покупать лицензии на все 24 ядра. Это становится довольно сложно, так как есть много правил, но главное — если у вас есть 16-ядерный сервер, затраты будут примерно такими же. Однако лицензирование ОС может быть более дорогим на серверах с более высокой плотностью ядра. Несмотря на изменение лицензии на ядро, правила виртуализации остаются такими же в Windows Server 2016 и новее. После того, как вы лицензировали все свои ядра на сервере, со стандартной версией вы получаете 2 лицензии гостевой ОС Windows Server по сравнению с неограниченным количеством в версии Datacenter. Кроме того, набор функций в Windows Server 2012 Standard и Datacenter был одинаковым. Но некоторые функции Windows Server 2016, например, такие, как Storage Spaces Direct или экранированные виртуальные машины, доступны только в выпуске Datacenter. ## Сравнение параметров установки Windows Server 2016 и 2019 В редакциях Standard и Datacenter можно выбрать различные варианты установки. Эти варианты влияют на то, какие функции будут доступны после установки, такие как наличие графического интерфейса пользователя и набор сервисов. Присутствуют следующие варианты установки: - Desktop Experience (с графическим интерфейсом); - Core; - Nano. **Desktop Experience** — это вариант установки, с которым знакомо большинство людей. Этот параметр устанавливает большинство функций и ролей из коробки, включая интерфейс графического интерфейса рабочего стола. Вы получите Диспетчер серверов, который позволяет добавлять и удалять роли и компоненты. Преимущество в том, что система может быть проще в управлении для людей, привыкших использовать графический интерфейс. Недостаток в том, что у вас появляется больше обновлений, перезагрузок и открытых портов с которыми предстоит иметь дело. Узнайте больше от Microsoft [здесь](https://docs.microsoft.com/en-us/windows-server/get-started/getting-started-with-server-with-desktop-experience). В **Server Core** отсутствует графический интерфейс и несколько ролей, которые устанавливаются по умолчанию под опцией Desktop Experience. Серверное ядро имеет меньший объем занимаемого дискового пространства и, следовательно, меньшую область атаки из-за меньшей кодовой базы. Здесь также меньше обновлений, перезагрузок и открытых портов для работы. Это отличный вариант для серверов инфраструктуры, таких как контроллеры домена Active Directory и DNS-серверы. В этой редакции отсутствуют инструменты специальных возможностей, встроенные инструменты настройки сервера и поддержка звука. Эта версия без излишеств. Не лишним будет убедиться, что вы знакомы с администрированием на основе командной строки. Подробнее об этом можно прочитать [на сайте](https://docs.microsoft.com/en-us/windows-server/administration/server-core/what-is-server-core/) Microsoft. **Nano** Начиная с Windows Server 2019, Nano доступен только как контейнеризированный образ операционной системы. Он предназначен для запуска в качестве контейнера внутри хоста контейнеров, такого как Server Core, упомянутого выше. Если вы опираетесь на контейнерные приложения, предназначенные для серверных ОС, то эту версию вы будете использовать для компиляции этих приложений. Nano можно развернуть с помощью версий Standard или Datacenter, но у вас должна быть прикреплена Software Assurance к лицензированию хост-сервера. Узнать об этом подробнее можно [на сайте](https://docs.microsoft.com/en-us/windows-server/get-started/nano-in-semi-annual-channel/) Microsoft. https://serverspace.by/support/help/install-sql-server-management-studio.md Данная статья поможет установить SQL Server Management Studio и выполнить простой запрос в базу данных для проверки корректности установки. SQL Server Management Studio — это программа с графическим интерфейсом, которая позволяет быстро и легко управлять базами данных, создавать пользователей, устанавливать разрешения для баз данных, создавать резервные копии и многое другое. Данная статья поможет установить программу и выполнить простой запрос в базу данных для проверки корректности установки. SQL Server Management Studio доступен отдельно от Microsoft SQL Server. Для его установки посетите [страницу загрузки Microsoft](https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15) и скачайте последний бинарный файл мастера установки. Инструкция о том, как установить Microsoft SQL Server Express, находится [здесь](https://serverspace.by/support/help/install-and-configure-ms-sql-server-express/). На момент написания статьи последней версией SQL Server Management Studio является версия 18.3.1: Следующим шагом выбираем место установки студии управления и нажимаем **Install:** **[/wp-content/uploads/2019/11/applicationframehost_adgypohc78.png](https://serverspace.by/wp-content/uploads/2019/11/applicationframehost_adgypohc78.png)** После нажатия на кнопку Install процедура установки начнется автоматически: [/wp-content/uploads/2019/11/applicationframehost_klx48gzexp.png](https://serverspace.by/wp-content/uploads/2019/11/applicationframehost_klx48gzexp.png) По завершении установки появится экран, предлагающий выполнить перезагрузку. Перезагружаемся, нажав на **Restart**: **[/wp-content/uploads/2019/11/applicationframehost_t6dp4v2dyb.png](https://serverspace.by/wp-content/uploads/2019/11/applicationframehost_t6dp4v2dyb.png) **[step num=»5″] Программа SQL Server Management Studio готова к запуску. Чтобы подключиться к SQL Server с помощью Microsoft SQL Server Management Studio, выполните следующие действия: 1. Запустите Microsoft SQL Server Management Studio из меню "Пуск": [https://serverspace.by/wp-content/uploads/2020/06/24_applicationframehost_finfqml6ha.png](https://serverspace.by/wp-content/uploads/2020/06/24_applicationframehost_finfqml6ha.png) 2. Откроется окно аутентификации. Вы можете выбрать опцию, на основе которой настроили аутентификацию при установке MS SQL сервера. Далее нажмите **Connect**: **[https://serverspace.by/wp-content/uploads/2020/06/70_applicationframehost_51h1ezjsae.png](https://serverspace.by/wp-content/uploads/2020/06/70_applicationframehost_51h1ezjsae.png) **[step num=»8″] 3. Если соединение установлено успешно, вы увидите панель Object Explorer — обозревателя объектов: [https://serverspace.by/wp-content/uploads/2020/06/45_applicationframehost_b6fjyh706u.png](https://serverspace.by/wp-content/uploads/2020/06/45_applicationframehost_b6fjyh706u.png) 4. Чтобы выполнить запрос в базу данных, кликните правой кнопкой мыши по узлу сервера (в нашем примере это **WIN2019STDSQLEXPRESS**), и выберите пункт меню **New Query**: **[https://serverspace.by/wp-content/uploads/2020/06/74_applicationframehost_jwr6a8skoc.png](https://serverspace.by/wp-content/uploads/2020/06/74_applicationframehost_jwr6a8skoc.png)**** **[step num=»10″] 5. Введите в редакторе следующий запрос: ```sql select @@version; ``` Этот запрос возвращает версию SQL Server. После чего нажмите **Execute** (Выполнить): [https://serverspace.by/wp-content/uploads/2020/06/23_applicationframehost_orctfrt2ul.png](https://serverspace.by/wp-content/uploads/2020/06/23_applicationframehost_orctfrt2ul.png) 6. В окне "**Results**" отобразится версия SQL Server, как показано на снимке экрана ниже. Быстрый способ выполнить запрос — нажать клавишу **F5**: **[https://serverspace.by/wp-content/uploads/2020/06/60_applicationframehost_kjnnsl2jyg.png](https://serverspace.by/wp-content/uploads/2020/06/60_applicationframehost_kjnnsl2jyg.png) **[step num=»13″] Поздравляем! Теперь вы знаете как подключаться к SQL серверу и выполнять запросы из студии управления сервером базы данных. https://serverspace.by/support/help/shpargalka-po-yum-centos.md Yum предоставляет широчайшие возможности управления пакетами и репозиториями – установка, обновление, удаление, инвентаризация и т.д. Рассмотрим установку и команды Yum на CentOS. Установка дополнительных программных пакетов в ОС семейства Linux может быть достаточно нетривиальной задачей, так как зачастую в одном пакете нет всех модулей и библиотек, необходимых для работы. Отслеживать зависимости между пакетами и их версиями задача пакетного менеджера. В операционных системах CentOS/RedHat эту роль исполняет yum. Yum предоставляет широчайшие возможности управления пакетами и репозиториями – установка, обновление, удаление, инвентаризация и т.д. Как и все команды ОС Linux, пакетный менеджер обладает подробной встроенной справкой — запустив в консоли команду yum без параметров можно увидеть подсказку по синтаксису, список поддерживаемых функций с кратким описанием, а также перечень дополнительных опций: Скриншот №1. Запуск справки с помощью команды yum Одна из самых полезных функций в списке команд – help. Можно запустить yum help с указанием какой-либо другой команды из обширного арсенала пакетного менеджера и получить в ответ дополнительную информацию о допустимых параметрах: Скриншот №2. Дополнительная информация о доступных параметрах В данном примере можем увидеть, что команда list выводит список пакетов или их групп. В качестве допустимых параметров можно указать конкретное имя пакета, либо ключевые слова. Например: - вывести список всех пакетов: ```bash yum list all ``` - вывести список доступных для установки пакетов: ```bash yum list available ``` - вывести список установленных пакетов: ```bash yum list installed ``` - вывести список пакетов, добавленных в репозитории за последние 7 дней: ```bash yum list recent ``` - вывести список пакетов, для которых есть обновления: ```bash yum list updates ``` Если нужна более подробная информация о каком-либо пакете, можно воспользоваться функцией info — она поддерживает те же ключевые слова, что и list. Так по выводу команды yum info samba мы увидим, что пакет находится в категории Available Packages (значит он не установлен в системе, но доступен для установки), узнаем версию, архитектуру, репозиторий и назначение пакета (в полях Summary и Description): Скриншот №3. Вывод команды yum info samba Если точное название нужного пакета неизвестно, может помочь функция search — она выведет список пакетов, в названии или описании которых присутствуют заданные ключевые слова. Поищем инструменты для работы с сетью — yum search network tools: Скриншот №4. Функция search Получив информацию об установленных и доступных пакетах, можно переходить к командам действия: - скачать и установить пакет из репозитория: ```bash yum install [имя_пакета] ``` - переустановка пакета: ```bash yum reinstall [имя_пакета] ``` - обновление указанного пакета: ```bash yum update [имя_пакета] ``` - обновление всех установленных пакетов: ```bash yum update ``` - откат обновления указанного пакета: ```bash yum downgrade [имя_пакета] ``` - удаление установленного пакета из операционной системы: ```bash yum erase [имя_пакета] ``` Все пакеты, с которыми может взаимодействовать yum, располагаются в так называемых репозиториях — это специальным образом организованнын хранилища пакетов с метаданными, содержащими информацию о доступных версиях и взаимосвязях. Информация и данные для подключения к репозиториям хранятся в операционной системе в каталоге **/etc/yum.repos.d**. Для работы с репозиториями используются следующие команды: - список подключенных репозиториев: ```bash yum repolist ``` - информация о репозитории: ```bash yum repoinfo [имя_репозитория] ``` - обновить информацию о пакетах в репозитории (скачать метаданные из репозитория в локальное хранилище): ```bash yum check-updates ``` Кроме основных команд пакетный менеджер поддерживает дополнительные опции, расширяющие функциональность, например: - -v #вывод дополнительной информации о результатах выполнения команды; - -q # тихий режим без вывода информации; - -y #ответить "yes", если требуется подтверждение действия; - —assumeno # ответить "no", если требуется подтверждение действия; - —disablerepo=[имя_репозитория] #отключить репозиторий; - —enablerepo=[имя_репозитория] #включить репозиторий. И в завершение еще несколько полезных команд из арсенала пакетного менеджера yum: - список зависимостей указанного пакета: ```bash yum deplist [имя_пакета] ``` - в каком пакете содержится указанный файл: ```bash yum provides [имя_файла] ``` - установка пакета из локального rpm-файла (зависимые пакеты, при необходимости будут загружены из подключенных репозиториев): ```bash yum localinstall [путь_к_rpm] ``` - история операций, совершенных пакетным менеджером: ```bash yum history list ``` - детальная информация об операции: ```bash yum history info [номер_операции] ``` - отменить действия, совершенные в рамках определенной операции: ```bash yum history undo [номер_ операции] ``` - повторить действия, совершенные операцией: ```bash yum history redo [номер_ операции] ``` https://serverspace.by/support/help/osnovnye-komandy-linux.md Linux Shell — это программа, которая также известна как CLI (англ. Command Line Interface). Она передает команды от пользователя операционной системы и отображает выходные данные, если таковые имеются. Linux Shell — это программа, которая также известна как CLI (англ. Command Line Interface). Она передает команды от пользователя операционной системы и отображает выходные данные, если таковые имеются. Многие из дистрибутивов имеют графический интерфейс, называемый GUI (англ. graphical user interface), но в серверных и минимальных версиях Linux используется интерфейс командной строки. Попробуем рассмотреть некоторые команды, которые помогут нам освоить командный интерфейс Linux. При первом входе в терминал мы можем видеть что-то наподобие: ``` root@server:~# ``` если вы вошли в систему с привилегированным пользователем root; ``` user@server:~$ ``` если вы вошли в систему под пользователем с обычными правами. Когда вы только открываете терминал, вы находитесь в домашней папке пользователя. Для того, чтобы узнать, в какой папке вы находитесь в данный момент, вы можете воспользоваться командой **pwd**: ``` root@server:~# pwd /root ``` Чтобы сменить каталог воспользуйтесь командой **cd**: ``` root@server:~# cd /tmp ``` ``` root@server:/tmp# ``` Также вы можете переходить в каталог выше или в корневую директорию используя команды: ``` root@server:~# cd .. ``` вернет вас в предыдущий каталог; ``` root@server:~# cd / ``` перейдет в корень файловой системы. Чтобы увидеть содержимое каталога используйте команду **ls**: ``` root@server:~# ls mybase.sql Downloads site.zip ``` Использование команды **ls** с параметром **-a**_ п_озволит увидеть скрытые файлы: ``` root@server:~# ls -a .htaccess mybase.sql Downloads site.zip ``` Скрытые файлы, начинаются со знака «.» Для создания пустого файла используется команда **touch**: ``` root@server:~# touch readme.txt ``` Если же мы хотим создать файл с некоторым содержимым, воспользуемся командой **echo**: ``` root@server:~# echo Hello, my name is Linux >> readme.txt ``` Данная строка создаст файл readme.txt, содержащий строку Hello, my name is Linux. Для просмотра содержимого файла используем команду **cat**: ``` root@server:~# cat readme.txt Hello, my name is Linux ``` Для просмотра файлов также можно использовать следующие команды: **more** — постраничный просмотр содержимого; **less** — то же самое, но с возможностью пролистывания вверх-вниз; **head** — покажет первые десять строк файла; **tail** — покажет последние десять строк. Также может понадобится создать каталог, для чего есть команда **mkdir**: ``` root@server:~# mkdir backups ``` Для удаления каталога существует команда **rmdir**. Она удалит каталог, если он пуст: ``` root@server:~# rmdir backups ``` Для рекурсивного удаления каталогов и файлов в них используйте команду **rm**: ``` root@server:~# rm -rf backups ``` удалит каталог backups, все файлы и каталоги в нем; ``` root@server:~# rm readme.txt ``` удалит файл readme.txt. Чтобы скопировать файлы применим команду **cp**. В формате **cp** «что копировать»-«куда копировать»: ``` root@server:~# cp readme.txt backups ``` Для того, чтобы переместить файл, используем команду **mv**: ``` root@server:~# mv readme.txt backups ``` Также с помощью этой команды можно переименовать файл: ``` root@server:~# mv readme.txt readme.old ``` **Sudo **(англ. substitute user and do) — это утилита, позволяющая запускать команды от имени другого пользователя: ``` root@server:~$ sudo -i ``` ``` root@server:~$ ``` Она запустит Shell от имени суперпользователя root. **Sudo** используется при необходимости запустить команду с правами суперпользователя: ``` root@server:~$ sudo nano /etc/ssh/sshd_config ``` Данная строка откроет с правами администратора файл sshd_config в текстовом редакторе nano. Также могут возникать задачи, когда необходимо сменить владельца файла. В этом случае на помощь придет команда **chown**: ``` root@server:~# chown -R www-data:www-data /var/www/html/mysite.com ``` Данная строка рекурсивно сменит владельца и группу каталога /var/www/html/mysite.com на www-data. Если же необходимо сменить права доступа на файлы и каталоги, можем использовать утилиту **chmod**: ``` root@server:~# chmod -R 755 /var/www/html/mysite.com/* ``` Она рекурсивно назначит права 755 на все содержимое каталога /var/www/html/mysite.com. Используя более сложную конструкцию, можно раздельно назначить права на файлы и каталоги: ``` root@server:~#chmod 755 $(find /var/www/html/mysite.com -type d) ``` ``` root@server:~#chmod 640 $(find /var/www/html/mysite.com -type f) ``` Для каждой команды можно использовать аргумент —help для получения более подробной информации по ее использованию: ``` root@server:~#cp —help Usage: cp [OPTION] [-T] SOURCE DEST or: cp [OPTION] SOURCE DIRECTORY or: cp [OPTION] -t DIRECTORY SOURCE Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY. .. ``` Также всегда на помощь придет команда **man**. С более подробной инструкцией по запрашиваемой команде можно ознакомиться следующим образом: ``` root@server:~#man ls LS(1) User Commands LS(1) ``` ``` NAME ls — list directory contents ``` ``` SYNOPSIS ls [OPTION] [FILE] ``` ``` DESCRIPTION List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor —sort is speci‐ fied. ``` https://serverspace.by/support/help/dobavlenie-servera-v-sushhestvuyushhij-domen-active-directory.md В инструкции расскажем о том, как добавить сервер в домен Active Directory. Конфигурирование сетевых параметров. Добавление домена. В инструкции расскажем о том, как добавить сервер в домен Active Directory. ## **Подготовка** При создании виртуального сервера необходимо выбрать пункт "Добавить в домен". Время подготовки сервера увеличится на 20 минут, но решение будет подключено в Active Directory: Скриншот №1. Миграция в домен. После подключаемся к серверу через RDP: Скриншот №2. Инструкция. Скачиваем файл по ссылке, открываем его. Вводим имя пользователя и пароль. Они доступны в панели управления виртуальным сервером: Скриншот №3. Учетные данные. Теперь перейдем к настройке. ## **Конфигурирование сетевых параметров** Для начала настроим сеть. Открываем свойства сетевого подключения через панель управления сервером. Вручную припишем IP-адрес и другие параметры. Точные значения указаны на сайте Serverspace, во вкладке свойства сервера: Скриншот №4. Сетевые параметры. **Важно!** В поле "Альтернативный DNS-сервер" прописываем IP-адрес контроллера домена. ## **Добавить в домен** Дальнейшие шаги предполагают, что у администратора сконфигурирован контроллер домена и добавлены пользователи. Открываем панель управления, чтобы сменить рабочую группу на домен: Скриншот №5. Свойства. В открывшемся окне переключаемся на строку "Домен" и вводим его наименование: Скриншот №6. Имя домена. После нажатия кнопки ОК система запросит учетные данные. В поле "Имя пользователя" вводим значение, которое прописано на контроллере домена. После подтверждения операционная система потребует перезагрузить сервер, чтобы изменения вступили в силу. Соглашаемся. Чтобы подключиться к серверу на домене через RDP, прописываем соответствующие данные: ## Скриншот №7. Подключение через RDP. В первой строке вводим имя пользователя, во второй – пароль. Нажимаем ОК для подключения. После успешного входа перейдем в "Панель управления", раздел "Сетевые параметры". Проверим, что межсетевой экран активен. https://serverspace.by/support/help/otvalilis-nastrojki-seti-v-windows-server-2008.md Рассмотрим, как исправить ошибку при установке апдейта KB4088875\KB4088878 для Windows Server: сброс параметров сетевых подключений. Серверная платформа недоступна для подключения по протоколу RDP. Компания Microsoft регулярно выпускает обновления для своих решений. После установки некоторых из них возникают побочные проблемы. Рассмотрим в публикации, как исправить ситуацию при установке апдейта KB4088875/KB4088878 для Windows Server. ## **Как исправить** После установки обновления в операционной системе сбрасываются параметры сетевых подключений. Серверная платформа становится недоступной для подключения по протоколу RDP. Рассмотрим способ решения для виртуального сервера. Подключаемся к нему через Web-интерфейс: Скриншот №1. Подключиться через Web-интерфейс. Система попросит нажать сочетание трех клавиш. Нажимаем кнопку, как показано на изображении: Скриншот №2. Нажать клавиши. Авторизуемся в системе. Заходим в свойства сети. Открываем "Панель управления", переходим к разделу "Центр управления сетями". Открываем свойства подключения, далее переходим к параметрам протокола TCP/IPv4: Скриншот №3. Свойства протокола. В открывшемся окне выставляем ручной режим, вводим в пустые поля информацию, которая доступна на сайте Serverspace во вкладке Настройки: Скриншот №4. Параметры подключения. После внесения изменений нажимаем ОК. Подтверждаем редактирование. Пробуем подключиться через RDP к серверу. https://serverspace.by/support/help/podklyuchenie-epel-rpmforge-i-drugih-repozitoriev-v-centos.md Добавление репозиториев EPEL, RPMForge, Remi и других в CentOS. Есть два основных способа подключения. Наиболее предпочтительный — установка RPM-пакета репозитория. ## Общая информация В одной из [статей](https://serverspace.by/support/help/shpargalka-po-yum-centos/) уже рассматривалось использование пакетного менеджера Yum в операционной системе CentOS. Сейчас же разберемся с репозиториями, которые являются неотъемлемой частью инфраструктуры управления пакетами. Репозиторий представляет собой централизованное хранилище скомпилированных и готовых к установке программ с метаданными об их совместимости и взаимозависимостях. Репозитории бывают: - официальные — поддерживаемые разработчиками дистрибутива ОС. Содержат пакеты, являющиеся частью операционной системы, а также дополнительные программы, тесно в нее интегрированные; - коммерческие — поддерживаемые разработчиками стороннего платного программного обеспечения. Доступ к таким репозиториям обычно требует наличия подписки; - открытые — поддерживаемые энтузиастами, сообществом или разработчиками свободно-распространяемого ПО. Открыты для всех желающих. Так как перечень программного обеспечения, включенного в состав операционной системы ограничен, и разработчики не всегда успевают вовремя тестировать и включать в свои репозитории свежие версии сторонних проектов (веб-серверы, почтовые серверы, СУБД и т.д.), зачастую приходится подключать дополнительные репозитории. Есть два основных способа подключения. Наиболее предпочтительный — установка RPM-пакета репозитория. В ходе этой операции скачиваются и создаются все необходимые файлы, после чего новый репозиторий появится в списке подключенных (команда **yum repolist**). Другой способ — создать файл настроек репозитория самостоятельно в каталоге **/etc/yum.repos.d/**. Файл должен иметь расширение **repo** и содержать следующие параметры: ``` name=repo_name baseurl=repo_url ``` Описание параметров: **[repo]** — краткое имя репозитория; **name** — полное имя репозитория; **baseurl** — ссылка на репозиторий (может быть заменена параметром mirrorlist или metalink — ссылка на список региональных зеркал репозитория); **gpgcheck** — проводить ли проверку цифровой подписи пакетов (если значение параметра 1 — проводить, если 0 — не проводить); **gpgkey** — местоположение открытого ключа репозитория, с помощью которого производится проверка подписи; **enabled** — используется ли репозиторий при поиске и установке пакетов (1 — используется, 0 — репозиторий отключен). Все необходимые значения для указанных параметров обычно можно найти на веб-сайте соответствующего репозитория. ## Подключаем сторонний репозиторий Если говорить о дистрибутивах, основанных на Red Hat Linux, самым популярным репозиторием, рекомендуемым для подключения, является Extra Packages for Enterprise Linux (EPEL). На CentOS-серверах, развернутых из [наших шаблонов](https://serverspace.by/services/vps-server.md), этот репозиторий уже подключен. В случае, если операционная система установлена с нуля, подключить EPEL достаточно просто: ```bash yum install epel-release ``` RPM-пакет с настройками EPEL уже содержится в составе официального репозитория CentOS, поэтому все необходимые файлы и GPG-ключи загрузятся автоматически. Если просмотреть содержимое файла **/etc/yum.repos.d/epel.repo**, то мы увидим уже знакомые параметры: Скриншот №1. Параметры файла Другой распространенный репозитарий — Remi`s RPM repository, содержащий актуальные версии пакетов PHP-стека. Репозиторий EPEL должен быть подключен в ОС, так как пакеты Remi зависят от пакетов репозитория EPEL. Детальную информацию можно найти на сайте https://rpms.remirepo.net/. Для подключения достаточно скачать RPM-пакет и запустить его установку: ```bash wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm ``` Запустим **yum repolist** и убедимся, что репозитории зарегистрированы в операционной системе: Скриншот №2. Yum repolist По умолчанию включен только репозиторий remi-safe — он содержит пакеты, не замещающие пакеты дистрибутива операционной системы, чем минимизируются возможные конфликты и проблемы в работе. Если посмотреть список REPO-файлов, которые появились, увидим достаточно большой перечень: Скриншот №3. Список REPO-файлов Эти репозитории отключены и должны включаться администратором сервера в тех случаях, когда это требуется. Чтобы включить репозиторий на постоянной основе, устанавливаем параметр **enabled=1** в соответствующем REPO-файле. Для разовых операций используем параметр **—enablerepo=repo_name** в соответствующей команде yum, например: ```bash yum —enablerepo=remi install php ``` Одним из широко распространенных ранее сторонних репозиториев был RepoForge (RPMForge), но, к сожалению, на данный момент он уже не поддерживается. Хотя физически репозиторий доступен, пакеты в нем уже давно не обновляются, в связи с чем использовать его не рекомендуется. Если все же по каким-то причинам требуется им воспользоваться, подключить его тоже достаточно просто — на странице http://repoforge.org/use/ находим ссылку на требуемую версию, скачиваем пакет и устанавливаем. Например, для CentOS 7: ```bash wget http://repository.it4i.cz/mirrors/repoforge/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm yum localinstall rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm ``` Скриншот №4. Версия для CentOS 7 https://serverspace.by/support/help/audit-processov-linux-s-pomoshchyu-utility-autrace.md Утилита Autrace является решением для проведения аудита процессов операционной системы. Расскажем о проведении аудита на сервере под управлением Ubuntu Server 18.04 Утилита Autrace представляет собой решение для проведения аудита процессов операционной системы с помощью командной строки, сохраняющее системные события в специальный журнал. Ее используют для отслеживания критических событий: внезапное завершение работы ОС, изменение сетевой конфигурации, редактирование прав доступа к системным файлам и т.д. Утилита является часть продукта auditd, который по умолчанию не установлен в рабочей среде Linux, за исключением ОС CentOS. Расскажем, как провести аудит на сервере под управлением Ubuntu Server 18.04. ## Предварительная подготовка Устанавливаем утилиту: ```bash sudo apt-get install auditd audispd-plugins ``` Процесс займет не более четырех минут. Конфигурация продукта хранится в файле etc/audit/auditd.conf. Для редактирования используем текстовый редактор, например, Nano или Vi. ## Как запустить аудит В общем виде команда выглядит следующим образом: ``` autrace –r name_program [keys] ``` name_program — наименование продукта, который подвергается проверке; keys — дополнительные опции, доступные утилите. Ключ r ограничивает данные, которые собираются утилитой. При его активации autrace соберет только те логи, которые необходимы для анализа по указанным параметрам. Приведем пример: программа DF наблюдает за ресурсами файловой структуры. Запустим аудит для сервиса: ``` sudo autrace -r /bin/df –h ``` Утилита начнет отслеживать операции DF: Скриншот №1. Пример аудита Для просмотра подробной информации используем встроенный журнал. Он открывается через команду ausearch. В зависимости от программы, для которой проводится аудит, синтаксис команды меняется. В нашем примере на изображении выше он выделен красным. Набираем в терминале без кавычек: ``` ausearch –I –p 7946 ``` В результате на мониторе появится подробная информация по журналу. Синтаксис для команды ausearch выглядит следующим образом: ``` ausearch –i –p ``` Ключ id — это цифровое значение процесса, которое доступно после активации команды autrace. Ключ –p указывает утилите на идентификатор, по которому ищется журнал, а опция –i проводит интерпретацию цифровых значений. Если нужна подробная трассировка, используем другой синтаксис: ``` ausearch -p 7946 —raw | aureport -i –f ``` Где ключ –f информирует о файлах и сокетах, а комбинация raw задает формат выводимого отчета. Для вывода информации в зависимости от дня прописываем: ``` ausearch -p 7946 —raw | aureport -i -f ``` Как легко заметить, значение 7946 — это идентификатор процесса, который используется в примере статьи. https://serverspace.by/support/help/nastrojka-i-audit-sistemy-linux.md Для проведения аудита на серверах под управлением Linux-систем используют демон auditd. Расскажем об установке, настройке и использовании Auditd. Для проведения аудита на серверах под управлением Linux-систем используют демон auditd. Он предназначен для комплексной проверки операционной системы Linux, например, для регистрации различных событий, анализа действий программ и предоставления информации администратору по заданным шаблонам. Также auditd проверяет операционную систему на ошибки: при необходимости активируется служба оповещения, которая высылает администратору предупреждения и сообщения. Расскажем о том, как использовать auditd. В качестве примера используется сервер с ОС Ubuntu Server 18.04. ## Установка По умолчанию auditd не интегрирован в операционную систему. Установим его штатными средствами: ```bash sudo apt-get install auditd audispd-plugins ``` Важно! Если серверная платформа находится под управлением CentOS, устанавливать ничего не нужно — демон интегрирован в ОС. ## **Конфигурирование** Системные параметры хранятся в двух файлах. Первый называется auditd.conf и содержит настройки сервиса аудита, второй называется audit.rules. Audit.conf отвечает за сервис auditd по направлению какие события он записывает и в каком моменте времени. Второй файл содержит в себе правила и фильтры, используемые auditd при выполнении операций. В него администраторы вносят изменения, добавляют новые правила, а также правят текущие шаблоны или удаляют устаревшие. Для просмотра установленных шаблонов используем следующий флаг: ``` auditctl –l ``` Если настройки не выполнялись, то таблица будет пустой. Важно! Удаление правил производится через ключ D. Для активации мониторинга за конкретным файлом прописываем следующий синтаксис в терминале: ``` auditctl -a command,action -F path=name_file -F perm=permission ``` - name_file — имя файла, за которым ведется наблюдение со стороны сервиса auditd; - permission — права на доступ. Поле принимает четыре значения: - R — права на чтение; - W — разрешается изменять; - X — используется для исполняемых файлов, сервис запускает его от своего имени; - A — изменить атрибуты объекта. Дополнительные ключи, которые идут совместно с командой, расшифровываются следующим образом: –a: обозначает для демона auditctl список (task, exit, user или exclude) и действие (never или always). Пара перечисляется через запятую. –F: задает путь к файлу и предоставляет права на поиск. Если требуется найти определенное событие или объект, используем команду ausearch с ключом –f. Допустим, необходимо просмотреть информацию о том, кто и когда использовал объект /etc/passwd. Прописываем: ``` uname –m ``` В ответ администратор получит число, которое в дальнейшем можно использовать для получения подробной информации о системном вызове. Прописываем в терминале: ``` ausyscall arch number ``` - arch — архитектура операционной системы; - number — числовое значение, полученное через команду uname. Теперь вернемся к началу раздела. Зная, что такое системный вызов, администраторы использует команду auditctl для получения подробной информации о запускаемых приложениях и активных действиях по учетному имени. ## Просмотр логов Условия заданы, аудит проведен, а как же просмотреть результат? Для этого доступна команда aureport. Собранная информация хранится в директории /var/log/audit/, а файлы имеют расширение .log. Общий вид: ``` aureport option -if filename ``` - option задает ключи, по которым происходит выборка информации; - –if указывает на файл, по которому работает фильтр. Наиболее часто встречается фильтр по датам. За это отвечают опции —start и —end, после которых следует указание даты и точного времени. К примеру: ``` aureport —start 07/15/2008 00:00:00 —end 07/19/2018 00:00:00 ``` Другой пример — просмотр всех отчетов, которые хранятся в каталоге: ``` aureport –x ``` Если нужна сводка событий, произошедших в ОС, добавляем в конце флаг —summary. Последний востребованный вариант — просмотр "неудачных" операций. К таким относятся неудачный вход в ОС, блокировки и т.д. Посмотреть их можно следующим образом: ``` aureport -u —failed —summary –i ``` https://serverspace.by/support/help/ustanovka-i-nastrojka-tripwire.md Программа Tripwire используется для наблюдения за состоянием файловой системы и обнаружения вторжений. Рассмотрим процесс установки Tripwire, запуска и автоматизации процессов. Программа Tripwire используется для наблюдения за состоянием файловой системы и обнаружения вторжений в нее. После установки она сканирует файловую систему и сохраняет информацию о каждом найденном объекте в собственную базу данных. При этом каждый старт операционной системы начинается с мониторинга и текущие значения сравниваются с уже сохраненными. Если программа находит отличия, то оповещает об этом администратора. В качестве контроля используются хэш-суммы, поэтому значения объекта не сохраняются в программе в полном виде. Расскажем подробнее про установку Tripwire. В качестве тестовой ОС используется Ubuntu Server 18.04. ## Установка Для установки программы воспользуемся штатным менеджером: ```bash sudo apt-get install tripwire ``` Во время установки появится диалоговое окно с первичной настройкой ключей: Скриншот №1. Конфигурация ключей. Tripwire генерирует буквенно-числовой код для защиты хэша файлов. Такой подход гарантирует, что злоумышленник не получит доступ к информации, хранящейся внутри программы. Выбираем пункт Yes дважды. Мастер создаст два ключа: site-key и local-key. - Первый ключ гарантирует сохранность и надежность конфигурационных файлов программы. Данный тип защиты используется на разных серверных платформах. - Второй предназначен для защиты бинарных файлов, которые расположены на каждом хосте под наблюдением Tripwire. ## **Первый запуск** Конфигурирование на первом этапе окончено — инициализируем модуль: ``` sudo tripwire —init ``` Процесс занимает 5-7 минут. По окончании продукт сгенерирует хэш-суммы файловых объектов операционной системы, которые в дальнейшем будут использоваться для сравнения. Конфигурация программного обеспечения хранится по следующему адресу: /etc/tripwire/twpol.txt. Чтобы внести изменения открываем файл при помощи текстового редактора и вносим правки. После этого сохраняем новый шаблон и обновляем политику в программе. Далее вводим в терминале: ``` tripwire —update-policy —secure-mode low /etc/tripwire/twpol.txt ``` Важно! Редактирование доступно только с правами суперпользователя. Прежде чем вносить изменения в текущую конфигурацию, рекомендуется выполнить резервное копирование файла, а также ознакомиться с правилами. Для проверки внесенных правок, используем следующий синтаксис: ``` tripwire —check –interactive ``` ## **Автоматизация процессов** Рассмотрим дополнительные возможности программы, в частности, автоматизацию сбора отчетов. Любой процесс в Tripwire автоматизируется с помощью внешнего демона Cron, входящего в состав Linux по умолчанию. Создадим для примера шаблон активации проверки Tripwire два раза в день: ночью и днем. Откроем панель управления с расписанием: ``` crontab –e ``` Операционная система выдаст перечень доступных редакторов для открытия файла, указываем любой. В открывшемся окне прописываем следующую строку: ``` 30 */12 * * * tripwire —check —interactive > system-$(date +"%H:%M:%S_%d-%m-%Y") ``` Теперь отчеты собираются автоматически. https://serverspace.by/support/help/shifrovanie-diskov-windows-s-pomoshhyu-veracrypt.md VeraCrypt — это программа, которая используется для шифрования информации. Рассмотрим ее установку на ОС Windows. Конфигурирование, тестирование. Дешифрация при помощи VeraCrypt. VeraCrypt — это программа, которая используется для шифрования информации. К примеру, на виртуальных дисках с установленной операционной системой [Windows](https://serverspace.by/services/vps-server/windows/). Важно понимать, что в этом случае программа шифрует не только виртуальные носители, но и программу OVM Tools, необходимую для полноценной работы виртуального сервера. В результате пользователям становятся недоступны некоторые функции, например: - Виртуальный сервер выключается только через опцию "Выключить питание". - Редактирование текущей конфигурации недоступно через стандартную панель управления. - Удаленный доступ через гипервизор запрещен. Поэтому подобное шифрование рекомендуется использовать только при необходимости. ## Первоначальное конфигурирование Открываем программу VeraCrypt, выбираем пункт Create Volume: Скриншот №1. Создание тома На следующем шаге программа предложит выбрать вариант шифрования. Доступно три опции: - Программа создаст виртуальное пространство внутри одного файла. Вариант рекомендован для новичков и неопытных пользователей. - Шифрование логического диска, который не является системным, т.е. на нем не установлена операционная система. Операция также применима и для внешних носителей информации (флэшка, внешний жесткий диск, карта памяти и т.д.). - Зашифровать системный диск. VeraCrypt скрывает информацию на системном разделе жесткого диска от посторонних лиц. Для загрузки Windows администратору необходимо вводить пароль. Выберем последний пункт. Далее мастер конфигурирования предложит создать обычное, либо скрытое шифрование. В первом случае информация раскрывается при помощи пароля, а во втором — раздел с ОС становится скрытым. Другими словами, системный логический диск становится недоступен при обычном запуске компьютера. Данная опция редко используется, поэтому выбираем первый вариант: Скриншот №2. Выбираем режим Normal Следующий шаг — выбор области защиты. Программа скроет весь диск, либо только системный раздел. Поскольку в начале настройки будет активна только первая опция: Скриншот №3. Скрыть системный раздел Далее VeraCrypt предложит защитить скрытую область на жестком диске. При использовании облака данный пункт не имеет смысла, так как получить доступ к области невозможно. Поэтому оставляем "Нет". Следующий этап — выбор варианта загрузки ОС. Если установлена единственная операционная система, активируем опцию Single-boot. В противном случае — Multi-boot: Скриншот №4. Выбор загрузки ОС Переходим к выбору типа шифрования и хэширования: программа предлагает более 20 методов. Выберем стандартный вариант AES, а для хэша используем SHA-256: Скриншот №5. Метод шифрации Теперь зададим пароль для снятия защиты с диска: Скриншот №6. Установка ключа Пароль рекомендуется составлять по следующим правилам: минимум 20 символов, наличие заглавных и прописных букв латинского алфавита, а также спецсимволов и цифр. Важно! Строка, выделенная зеленым цветом на изображении, показывает придуманный пароль. Если желаете проверить введенные символы — активируйте опцию. После подтверждения на мониторе пользователя появится анимационное изображение из хаотично передвигающихся элементов: Скриншот №7. Повышение криптостойкости ключа Перемещаем мышь случайным образом внутри области, отмеченной красным прямоугольником на скриншоте. При этом будут созданы случайные элементы, которые повысят надежность шифрования данных. Проводим данные действия, пока полоска внизу меню не заполнится. На скриншоте она подчеркнута зеленой линией. Важно! Рекомендуется полностью заполнить полоску, чтобы получить криптостойкий ключ. После генерации ключа на экране появится часть сгенерированных элементов защиты: Скриншот №8. Cгенерированные элементы защиты Если администратор желает просмотреть сгенерированную часть, выбираем пункт, отмеченный красной стрелкой на изображении. Поскольку носитель или загрузчик программы может быть повреждён, на следующем шаге VeraCrypt предложит создать диск для восстановления. Скриншот №9. Диск для восстановления Выбираем путь для сохранения образа носителя. Указываем метод записи на внешний носитель: флэшка или DVD-диск. На этом настройка завершена. Следующий этап — тестирования заданных параметров. ## **Тестирование** VeraCrypt необходимо протестировать созданную конфигурацию. Нажимаем кнопку "Test". Появится окно с сообщением о перезагрузке ОС. Соглашаемся: Скриншот №10. Перезапуск ОС Переходим в панель управления облачным сервером, подключаемся через web-интерфейс. Система попросит ввести пароль, придуманный на этапе конфигурирования шифрования, а также запросит PIM-код. Мы его не создавали, поэтому просто нажмем "Enter": Скриншот №11. Подключение к серверу Далее гипервизор продолжит конфигурирование операционной системы. Процесс займет максимум 10 минут. По его окончании сервер будет перезагружен. Переподключимся к серверу и увидим сообщение VeraCrypt об успешном окончании тестирования. Следуя подсказкам мастера, подтверждаем операцию шифрования выбранного системного диска. Процедура длительная и может занимать несколько часов. Администратор в любой момент может выключить сервер, а после включения шифрование продолжится с момента остановки — программа сохраняет процесс в режиме реального времени. Важно! Выключать оборудование следует только через пункт "По питанию". В противном случае прогресс не сохранится. ## **Дешифрация** Если требуется расшифровать диск, запускаем VeraCrypt и открываем контекстное меню через правую кнопку мыши в панели управления: Скриншот №12. Дешифрация Активируем пункт, отмеченный красной стрелкой на изображении. Расшифровка также займет довольно много времени. По окончании операции перезагружаем облачный сервер "По питанию". https://serverspace.by/support/help/nastrojka-shifrovaniya-diska-s-dannymi.md Программа VeraCrypt используется для шифрования информации. В инструкции описан процесс настройки шифрования диска с данными на ОС Windows. Программа VeraCrypt используется для шифрования информации. Однако процесс шифрования, несмотря на помощь мастера конфигурирования, нетривиален. Расскажем подробнее. ## Откуда скачать Дистрибутив VeraCrypt можно скачать на [официальном сайте](https://www.veracrypt.fr/en/Downloads.html). У нас в статье в качестве примера рассматривается операционная система семейства Windows, поэтому выберем соответствующий пункт для загрузки (полный функционал программы доступен по первой ссылке): Скриншот №1. Страница загрузки. ## Шифрование диска Выбираем пункт, отмеченный красным: Скриншот №2. Создать диск. Далее выбираем второй пункт — шифрование не системного раздела, т.е. логического диска, на который не установлена операционная система: Скриншот №3. Выбор режима. Переходим к выбору типа защиты: обычная или скрытая: Скриншот №4. Выбор метода. В первом случае происходит обычное шифрование данных. Чтобы получить доступ к системе, пользователь указывает пароль и данные дешифруются. Второй вариант скрывает зашифрованную область, не позволяя злоумышленникам ее обнаружить. Данный метод рекомендуется использовать только в случае повышенной опасности. Следующий шаг — указываем раздел, который шифруется. Нажимаем на кнопку, которая отмечена красной стрелкой. Выбираем раздел из перечня, нажимаем "ОК", а потом "Next": Скриншот №5. Выбор области. Теперь переходим к выбору способа шифрования тома. Первый пункт активирует полную очистку логического диска без возможности восстановить информацию в дальнейшем. После выполнения операции происходит шифрование. Второй способ пропускает форматирование раздела и активирует шифрование. Используем первый способ: Скриншот №6. Шифрование. Теперь выберем протокол и хэширование. Оставляем по умолчанию, если не требуется специальных методов. Нажимаем "Next": Скриншот №7. Выбор дополнительных параметров. Конфигурирование почти закончено и на мониторе пользователя появится информация о выбранном разделе. Если все верно, переходим к следующем пункту. Здесь программа попросит задать пароль для доступа к зашифрованному разделу. Длина пароля должна составлять как минимум 20 символов. Также пароль должен содержать заглавные и прописные буквы латинского алфавита, числа и специальные символы. В качестве дополнительной защиты используем опции, отмеченные красными стрелками на изображении. Зеленым показан пункт, который отображает пароль на мониторе. Опция необходима, чтобы удостовериться в правильности набора секретного ключа. Когда информация будет введена, переходим дальше: Скриншот №8. Создание секретного ключа. Следующий шаг — указываем тип файловой структуры на разделе и размер кластера. Если настройки, указанные программой, подходят, то водим мышкой по полю, которое на скриншоте выделено красной рамкой, чтобы программа сгенерировала рандомные значения для создания ключей шифрования: Скриншот №9. Создание ключей. Когда полоска внизу программы достигнет конечной точки, пользователю придет сообщение об удачном завершении процесса. Подтверждаем операцию шифрования и переходим к монтированию раздела. ## **Монтирование** Если открыть Проводник Windows, то в списке логических дисков появится новый том. Когда пользователь попробует открыть его, система выдаст ошибку: Скриншот №10. Ошибка. Чтобы получить к нему доступ, откроем VeraCrypt и выберем свободную букву (пункт 1). Теперь переходим к выбору устройства для монтирования (пункт 2). Среди перечня томов выбираем зашифрованный логический диск и нажимаем "ОК": Скриншот №11. Выбор зашифрованного раздела. После того, как том будет отображен в строке Volume, нажимаем кнопку "Mount": Скриншот №12. Подключить логический диск. Программа потребует указать пароль, который задавался при шифровании тома. Вводим его и нажимаем "ОК": Скриншот №13. Ввод пароля. Если данные указаны корректно, том подключится к операционной системе и будет доступен пользователю. После работы с зашифрованной информацией можно исключить том из списка доступных. Для этого в меню VeraCrypt выбираем пункт "Unmount". ## **Дешифрация раздела** Если зашифрованный том более не нужен, расшифруем его. Выбираем в списке необходимый раздел, вызываем контекстное меню и активируем пункт, отмеченный красной стрелкой на изображении ниже. Скриншот №14. Дешифрация. Программа запросит подтверждение — соглашаемся. Далее потребуется указать пароль, который придумывался на этапе шифрования логического диска. Процедура дешифрации займет несколько часов, после чего раздел будет доступен в обычном режиме. https://serverspace.by/support/help/sozdanie-zashifrovannogo-luks-razdela.md Шифрование жестких дисков через утилиту LUKS на Linux (Ubuntu Server 18.04). Подготовка, генерация ключа, шифрование раздела, монтирование тома. Операционные системы семейства Linux предоставляют функцию шифрования жестких дисков через специальные утилиты. Рассмотрим одну из них под названием LUKS. В качестве примера используется Ubuntu Server 18.04. ## **Предварительная подготовка** Утилиту LUKS используют в качестве стандарта для защиты дисков в Linux-системах. Ее преимущества: - Она бесплатна. - Совместима с 99% операционных систем Linux/Unix. - Позволяет сбросить пароль или кодовую фразу в случае утери либо компрометации. Прежде чем шифровать диск, необходимо определиться с выбором. Запустим в терминале следующую утилиту: ``` sudo fdisk –l ``` Она отобразит информацию о свободных томах, а также о разделах, которые доступны для защиты: Скриншот №1. Перечень свободных логических дисков. Выберем один из списка и перейдем к редактированию. В качестве примера будем использовать раздел /dev/sdb. Запустим программу parted, указав выбранный том: ``` sudo parted /dev/sdb ``` Администратору будет доступен функционал утилиты через терминал. Важно! Чтобы получить подробную информацию об утилите parted, введите ключ help. Получив доступ к parted, разметим выбранный раздел соответствующим образом. Отредактируем под GPT: ``` mklabel gpt ``` Программа отобразит предупреждение о том, что вся информация будет удалена во время выполнения операции. Вводим "Yes": Скриншот №2. Удаление данных с тома. После окончания операции создадим новый том как основной: ``` mkpart primary 1 -1 ``` Его метка будет отображаться как "1". По окончании выходим из программы через команду quit. ## **Генерация ключа** Создадим ключ шифрования, используя команду DD: ``` sudo dd if=/dev/urandom of=/root/secret.key bs=1024 count=2 ``` , где /root/secret.key — имя генерируемого ключа. Пользователь указывает его самостоятельно. Теперь отредактируем права доступа к файлу: ```bash sudo chmod 0400 /root/secret.key ``` Присвоим ему функцию на чтение "без редактирования". ## **Шифрование раздела** Следующий этап — шифрование данных. По умолчанию LUKS интегрирована в большинство дистрибутивов. Если утилита недоступна, установим её, используя стандартные средства установки. Для примера с Ubuntu Server: ```bash sudo apt-get install cryptsetup ``` После установки создадим шифрованный том с использованием сгенерированного ключа: ``` cryptsetup luksFormat /dev/sdb1 /root/secret.key ``` Программа выдаст предупреждающее сообщение о том, что информация будет удалена после форматирования. Вводим "Yes": Скриншот №3. Стирание диска. Теперь свяжем сгенерированный ключ с томом /dev/sdb1. Это позволит в дальнейшем пропускать процедуру авторизации при каждом обращении к разделу, а также скроет подсказки к паролю от других пользователей: ``` cryptsetup luksAddKey /dev/sdb1 /root/secret.key —key-file=/root/secret.key ``` После выполнения операции перейдем к конфигурированию. Сначала создадим промежуточный вариант подключения к шифрованному объекту. Для этого воспользуемся функцией LuksOpen: ``` cryptsetup luksOpen /dev/sdb1 secret —key-file=/root/secret.key ``` По окончании устройство будет доступно по пути /dev/mapper/secret. Следующим шагом указываем размер тома, который требуется зашифровать: ``` cryptsetup resize secret ``` В нашем примере имя тома — secret. Если для опции resize не указываются дополнительные флаги, она занимает весь раздел. Смонтируем точку доступа для файловой структуры ext4 с именем тома secret: ``` mkfs.ext4 /dev/mapper/secret ``` Для проверки правильности выполненных действий вводим: ``` cryptsetup -v status secret ``` ## **Монтирование тома** Раздел зашифрован — смонтируем его для операционной системы. Указываем точку входа для тома secret, а потом задаем права на доступ: ```bash sudo mkdir -p /secret sudo chmod 755 /secret ``` Через команду mount подключим раздел к ОС: ``` mount /dev/mapper/secret /secret ``` После этого проверим выполнение операции: ``` df –h ``` Чтобы постоянно не подключить LUKS-раздел к операционной системе, активируем автомонтирование тома. Важно! Использование автоматического режима монтирования также автоматически расшифровывает том в момент его подключения к ОС. Определим идентификатор защищенного диска: ``` ls -l /dev/disk/by-uuid ``` Он обозначается термином UUID. Поскольку наименование сложное для запоминания, выгрузим его имя в отдельный файл: ``` export UUID="dc8dbc18-adb0-4258-bac8-73860ec12d50″ ``` Важно! После знака "=" идет идентификатор, который используется в примере. Создадим ссылку на сгенерированный ранее ключ secret.key: ``` sudo echo "secret UUID=${UUID} /root/secret.key luks" >> /etc/crypttab ``` Последний шаг — добавляем соответствующие строки в файл монтирования разделов fstab: ``` sudo echo "/dev/mapper/secret /secret auto" >> /etc/fstab ``` Указав в терминале команду sudo mount –a, зашифрованный раздел автоматически будет подключаться при старте операционной системы. https://serverspace.by/support/help/ustanovka-ruby-on-rails-na-windows-server.md Фреймворк Ruby On Rails обычно устанавливают для серверной платформы с ОС семейства Linux/Unix. Рассмотрим его инсталляцию и конфигурирование на Windows. Фреймворк Ruby on Rails обладает отличным потенциалом и возможностями, и обычно его устанавливают для серверной платформы с операционными системами семейства Linux/Unix. В этой же статье расскажем о том, как установить фреймворк на Windows-системы. ## **Предварительная работа** Изначально фреймворк был разработан для платформ Linux, поэтому чтобы установить его на Windows, воспользуемся сторонней программой [RailsInstaller](http://railsinstaller.org/ru-RU). На странице Rail представлено два релиза: Скриншот №1. Скачиваем дистрибутив. Выбираем нужную версию и загружаем. Далее запускаем мастер установки и следуем подсказкам. Процесс установки займет 3-5 минут. По окончании процесса на мониторе появится следующая надпись: Скриншот №2. Первичная настройка. Отмечаем пункт галочкой, нажимаем Finish. Откроется командная строка, в которой вводим имя пользователя и адрес электронной почты. На этом установка завершена — переходим к настройке. ## **Конфигурирование** Открываем меню "Пуск" и выбираем раздел, выделенный красным на скриншоте: Скриншот №3. Запуск терминала. Откроется терминал для настройки фреймворка. Установим компонент, используя интегрированный менеджер Gem для установки программных пакетов: ``` gem install rails ``` Процесс займет 3 минуты. После этого переходим в директорию todo: ``` cd todo ``` Теперь установим зависимости, которые прописаны в gemfile: ``` bundle install ``` Перенесем БД по новому пути: ``` bundle exec rake db:migrate RAILS_ENV=development ``` Конфигурирование закончено. Запустим фреймворк для проверки. Открываем браузер и вводим в адресной строке: ``` http://localhost:3000/ ``` Если вышеуказанные действия выполнены корректно, на мониторе отобразится приветственная страница. https://serverspace.by/support/help/ustanovka-postgresql-na-windows-server.md Расскажем об инсталляции системы управления базами данных PostgreSQL на Windows Server и установке дополнительных компонентов при помощи Stack Builder. PostgreSQL представляет собой систему управления базами данных, которая поставляется бесплатно. Исходный код системы доступен для любого пользователя на безвозмездной основе. В статье расскажем об установке PostgreSQL и об установке дополнительных компонентов, используя Stack Builder. В качестве примера используется Windows Server 2018. ## **Подготовка** [Скачаем](https://www.enterprisedb.com/downloads/postgres-postgresql-downloads) дистрибутив с официального сайта. На ресурсе представлены релизы в зависимости от разрядности и семейства ОС. Выбираем Windows x64, версию 12.0: Скриншот №1. Скачать дистрибутив. Запускаем установщик и следуем его подсказкам. На одном из этапов потребуется придумать пароль: Скриншот №2. Задать пароль. Вводим его, следуя следующим правилам: не менее 7 символов, заглавные и прописные буквы латинского алфавита, специальные знаки и цифры. Следующий шаг — указываем порт и локализацию. Номер порта оставляем без изменений, а локализацию выбираем "Русская": Скриншот №3. Выбираем локализацию. Процесс установки займет не более 5 минут. ## **Конфигурирование PostgreSQL** По окончании на экране появится следующая надпись: Скриншот №4. Выбор сервера. Система попросит указать адрес сервера, с которого утилита Stack Builder будет скачивать дополнительные библиотеки и инструменты для СУБД. Выбираем как показано на скриншоте и нажимаем "Следующий". Установщик покажет список доступных вариантов для загрузки. Необходимо установить компонент Apache. Он интегрирован в пакет PEM-HTTPD: Скриншот №5. Установка компонента Apache. Далее выбираем директорию для установки — рекомендуется оставить путь по умолчанию, и ожидаем окончания установки. Следующий этап — подключение к СУБД. Открываем командную строку Windows, переходим в раздел с установленной PostgreSQL: ``` cd "C:Program FilesPostgreSQL9.6bin" ``` Подключаемся к консольному режиму: ``` .psql.exe -U postgres ``` Теперь пользователь может управлять СУБД через терминал. https://serverspace.by/support/help/ustanovka-yazyka-r-na-windows-server.md В статье расскажем об установке языка программирования R в рабочую среду под управлением Windows. Пошаговая инструкция со скриншотами. Продукт R разработан для математических расчетов и научных вычислений, и в основном его используют специализированные организации. Чтобы облегчить работу пользователей с этим языком, была разработана специальная программа RStudio. В статье расскажем об установке языка программирования R и программы RStudio в рабочую среду под управлением Windows. ## **Подготовка** Переходим на официальный сайт по ссылке ниже, чтобы [скачать](http://cran.cnr.berkeley.edu) дистрибутив. Решение является кроссплатформенным, но в статье расскажем про установку в среде Windows: Скриншот №1. Скачать дистрибутив. Загружаем дистрибутив по ссылке, отмеченной красной стрелкой на изображении. Далее выбираем конфигурацию base и запускаем загрузку. ## Установка После скачивания открываем папку с дистрибутивом и устанавливаем продукт. На третьем шаге появится окно с выбором компонентов. Рекомендуется выбрать все пункты: Скриншот №2. Выбор опций. Следующее окно — изменение стандартных настроек программы. Выбираем "Нет", нажимаем "Далее": Скриншот №3. Выбор настроек. Отвечаем на тривиальные вопросы мастера-установщика и ожидаем окончания. ## **Установка RStudio** Теперь установим программу RStudio, [скачав](https://rstudio.com/products/rstudio/download) ее с официального сайта. На выбор представлено четыре версии. Загрузим бесплатную для рабочих станций. Она обладает минимальным набором функций, но подойдет для тестирования и обычной работы: Скриншот №4. Выбор ПО. Далее появится перечень дистрибутивов под разные операционные системы. Загружаем Windows-совместимый продукт: Скриншот №5. Выбор дистрибутива под Windows. Запускаем скачанный файл и следуем подсказкам мастера. Никаких дополнительных опций нет, оставляем все по умолчанию. ## **Первый запуск** Открываем программу RStudio. Проведем небольшой тест — установим компонент Rcmdr. Нажимаем Packages и вводим в поисковой строке наименование пакета: Скриншот №6. Установка компонента. Нажимаем Install. Процесс займет 2-3 минуты. Альтернативный вариант — использовать встроенный терминал. Для этого в левой стороне рабочей области вводим команду: ``` install.packages('txtplot') ``` Каким способом устанавливать компоненты — зависит от пользователя. Оба способа рабочие. Компания Serverspace предоставляет услуги Облачных серверов в аренду — ознакомьтесь с нашими [тарифами на VPS](https://serverspace.by/services/vps-server.md). https://serverspace.by/support/help/upravlenie-lokalnymi-gruppovymi-politikami.md Windows Server использует в конфигурациях групповые политики. Рассмотрим, как настроить их в зависимости от требований администратора. Понятие групповая политика используется в операционных системах семейства Windows. Они содержат шаблоны параметров, которые применяются для одной или нескольких групп пользователей. Редактор политик находится на серверной платформе и построен на основе консоли MMC — это гибкий инструмент для создания защищенной корпоративной информационной системы. Рассмотрим, как настроить групповые политики в зависимости от требований администратора. ## Как внести изменения Откроем рабочее окно "Выполнить", введем команду gpedit.msc. На мониторе появится рабочая область: Скриншот №1. Редактор Левая часть окна содержит перечень доступных шаблонов, а правая отображает подробную информацию по каждому пункту. К примеру, запретим пользователям устанавливать программы без прав локального администратора. Перейдем в левой части окна по следующему пути: ``` Computer Configuration —> Administrative Templates —> Windows Components —> Windows Installer. ``` В правой части откроется список доступных дополнительных опций: Скриншот №2. Выбор раздела Откроем дополнительные функции пункта, указанного на изображении. По умолчанию он принимает значение Disabled. Активируем его: Скриншот №3. Включение политики Нажимаем "ОК", сохраняем изменения. Второй пример — запретим пользователям запускать сторонние приложения Windows. В редакторе переходим по пути: ``` User Configuration —> Administrative Templates —> System. ``` С правой стороны выбираем пункт, отмеченный красным на скриншоте ниже: Скриншот №4. Выбор пункта Откроется окно дополнительных настроек: Скриншот №5. Выбор опций Переключаем политику в статус Enabled и далее указываем приложения, к которым она применяется. https://serverspace.by/support/help/configuring-the-remote-desktop-gateway-on-windows.md Расскажем подробно про настройку сервиса Remote Desktop Gateway (RDG) в домене на платформах под управлением Windows Server. Настройка роли, доступ к ресурсам, установка сертификата SSL, подключение. Расскажем подробно, как настроить сервис Remote Desktop Gateway (RDG) на домене на платформах под управлением Windows Server. ## Что такое RDG Компания Microsoft предлагает использовать удаленный доступ к рабочим столам по протоколу [RDP](https://serverspace.by/services/remote-desktop.md) (Remote Desktop Protocol). Для создания защищенного соединения используется сервис RDG (Remote Desktop Gateway). Его особенность в том, что он использует подключение по протоколу HTTPS. При этом создается надежный канал связи, который гарантирует пользователю должный уровень защиты. Соответственно, нет нужды использовать сторонние сервисы по созданию VPN-туннеля. Используя функции разграничения доступа к сетевым ресурсам, администраторы создают соединения в зависимости от роли пользователя в компании. RDG разрешает подключение не только к одной подсети, но и к другим, которые расположены за NAT или межсетевым экраном. Шлюз имеет простой и удобный интерфейс с гибкими настройками. Начинающий администратор с легкостью разберется в настройках, а также создаст необходимые шаблоны подключений в зависимости от внутренней иерархии компании. ## Настройка роли Запускаем "Диспетчер серверов", переходим на правой стороне во вкладку "Добавить роль": Скриншот №1. Выбор опции Для примера используем первый пункт: Скриншот №2. Выбор инсталляции Далее утилита попросит указать сервер, для которого производится выдача роли. Выбираем из списка, нажимаем "Next". На следующем этапе появится перечень доступных ролей для сервера. Для примера проставляем "Службу удаленных рабочих столов": Скриншот №3. Активируем роль После нажатия кнопки "Next" на экране отобразится информация о выбранной роли. Соглашаемся и переходим к следующему шагу. Теперь в разделе Role Server появилась добавленная функция. Заходим в нее и отмечаем опции, которые необходимы администратору. Для примера, активируем RDG: Скриншот №4. Выбор дополнительных функций Мастер настройки проверяет выбранную роль и совместимость с серверной ОС. Если необходима установка дополнительных компонентов, то автоматически откроется рабочая область с отмеченными компонентами. Чтобы RDG работал, в операционной системы должны быть установлены сервисы web-администрирования с полным набором программных инструментов: Скриншот №5. Выбор дополнительных компонентов Рекомендуется оставить по умолчанию выбранные сервисы. Нажимаем "Next", подтверждаем установку. ## Доступ к ресурсам После установки выбранной роли переходим в главное окно "Диспетчера серверов". Выбираем раздел "Инструменты" и переходим к настройке RDG. Откроется новое рабочее окно (RD Gateway Manager). В нем переходим во вкладку с именем сервера, далее выбираем "Политики" и сконфигурируем авторизированные подключения. Нажимаем кнопку "Wizard", чтобы открыть мастер настройки: Скриншот №6. Создание политики Установщик предложит на выбор 3 пункта. Оставляем активным первую опцию: Скриншот №7. Выбор конфигурации Задаем имя новому шаблону, нажимаем "Next". Следующий этап — выбор метода аутентификации и списка пользователей, которые получат доступ к политике. Авторизация разрешена при помощи пароля либо смарт-карты, либо оба варианта. Оставляем только по паролю. Далее нажимаем кнопку "Добавить группу" и добавляем данные в поле: Скриншот №8. Выбор авторизации и пользователей Далее разграничиваем доступ к сетевым ресурсам, к которым пользователи будут подключаться через Remote Desktop Gateway: Скриншот №9. Выбор ресурсов Оставим для примера первый пункт. Нажимаем "Next". Теперь необходимо установить значения таймаутов для сетевых ресурсов. Проставляем в зависимости от требований. На экране появится окно с настроенным шаблоном. Если информация верная, переходим к следующему шагу. Мастер настройки попросит указать политику авторизации для сетевых ресурсов. Для начала придумываем имя конфигурации. Потом добавляем группы пользователей, которые будут подключаться: Скриншот №10. Выбор группы Теперь выбираем группу ресурсов: Скриншот №11. Выбор группы ресурсов Мастер настройки попросит указать номер порта для подключения. Если специальных требований нет, оставляем по умолчанию — 3389. После нажатия "Next" на экране появится информация о созданной политики авторизации. Если все верно, завершаем конфигурирование. ## Установка сертификата SSL Чтобы доступ через RDG был активен, также необходимо создать сертификат. В рабочем окне RDG Manager переходим к разделу "Имя сервера". Через контекстное меню открываем пункт "Просмотреть или изменить свойства сертификата". В открывшемся окне переключаемся на вкладку SSL. Доступно 3 варианта создания. Выбираем пункт, отмеченный красным на скриншоте: Скриншот №12. Выбор метода Теперь прописываем имя сертификата и путь, по которому он будет храниться: Скриншот №13. Импорт Нажимаем "ОК" для генерации. В итоге рабочая область менеджера выглядит следующим образом: Скриншот №14. Общая информация Для повышения уровня безопасности рекомендуется сменить порт по умолчанию для подключения через Remote Desktop Protocol. Открываем в RDG Manager раздел "Действия", пункт "Свойства". Переходим во вкладку "Свойства транспортировки". В поле, отмеченным красным, меняем значение: Скриншот №15. Смена порта Подтверждаем изменения, закрываем окно. ## Как подключиться Теперь необходимо настроить подключение через RDP. Нажимаем сочетание клавиш Win+R, вводим команду mstsc.exe. В открывшемся окне нажимаем "Параметры": Скриншот №16. Настройка RDP В поле, отмеченном красным, прописываем адрес сервера, а через двоеточие в конце отмечаем номер порта. Нажимаем "ОК". Теперь переходим во вкладку "Общие". Прописываем имя домена и пользователя: Скриншот №17. Домен и пользователь Мастер настройки попросит указать пароль для учетного имени. Вводим его. Конфигурирование завершено. https://serverspace.by/support/help/ustanovka-windows-admin-center.md Установка Windows Admin Center (инструмент управления серверами через веб-консоль). Рассмотрим процесс загрузки и подключения к Windows Admin Center. ## Общая информация Одним из новых инструментов администрирования [серверов на базе операционной системы Windows](https://serverspace.by/services/vps-server/windows/) является Windows Admin Center. Он реализует современный подход к управлению, когда с любого устройства через веб-браузер можно подключиться к панели управления инфраструктурой и получить информацию о состоянии сервера или произвести изменение его конфигурации. При подключении пользователя к центру администрирования используются протоколы HTTP/HTTPS. Сам же центр администрирования использует WinRM/PowerShell для подключения к контролируемым серверам, получения от них информации и внесения изменений в конфигурацию. Соответственно, внедряя Windows Admin Center, нужно принимать во внимание каким образом будут производиться подключения компонентов друг к другу, и использовать защищенные версии протоколов (HTTPS и WinRM через HTTPS) когда соединения происходят через публичные сети (интернет). Windows Admin Center устанавливается отдельно. Он не входит в состав операционной системы, поэтому дистрибутив необходимо [скачать](https://docs.microsoft.com/ru-ru/windows-server/manage/windows-admin-center/understand/windows-admin-center) с сайта Майкрософт. Там же можно найти дополнительную информацию об этом продукте. ## Загрузка и установка Windows Admin Center Пройдем по всем шагам, необходимым для успешной установки консоли управления: Открыв [сайт Майкрософт](https://docs.microsoft.com/ru-ru/windows-server/manage/windows-admin-center/understand/windows-admin-center) в браузере, находим и нажимаем на ссылку для скачивания Windows Admin Center: Скриншот №1. Windows Admin Center На открывшейся странице жмем **Continue**: Скриншот №2. Continue Заполняем форму, чтобы получить свою копию дистрибутива и нажимаем **Continue**, после чего начнется загрузка: Скриншот №3. Заполнение формы Дождавшись окончания загрузки запускаем установочный файл, принимаем лицензионное соглашение и жмем **Next**: Скриншот №4. Запуск установочного файла Выбираем использовать или нет службу обновлений Майкрософт (рекомендуется использовать), нажимаем **Next**: Скриншот №5. Обновления На следующей странице содержится общая информация о способах использования устанавливаемого компонента, а также ссылка на статью с возможными сценариями установки. Нажимаем **Next**: Скриншот №6. Общая информация об установке На странице конфигурирования шлюза содержатся два параметра — **Allow Windows Admin Center to modify this machine`s trusted hosts settings** — ставим галку, если серверы, которые будут подключаться к центру администрирования, не входят в домен Active Directory; **Use WinRM over HTTPS only** — ставим галку в том случае, если подключения от центра администрирования к другим серверам будут проходить через публичные сети (интернет). Если мы планируем управлять только локальным сервером, на котором установлен Windows Admin Center, можно оставить настройки по умолчанию и нажать **Next**: Скриншот №7. Страница конфигурирования шлюза Выбираем порт, по которому будут приниматься подключения к веб-консоли (для указанного порта будет создано разрешающее правило в брандмауэре операционной системы), а также указываем сгенерировать ли самоподписанный сертификат или же использовать другой сертификат, установленный на сервере. Чтобы не получать сообщений о недоверенных соединениях, можно использовать приобретенный и установленный заранее [цифровой сертификат](https://serverspace.by/services/ssl/). Не забываем ставить галку **Redirect HTTP port 80 traffic to HTTPS**, чтобы использовались только зашифрованные соединения: Скриншот №8. Выбор порта После нажатия кнопки **Install** ожидаем завершения процесса установки: Скриншот №9. Завершение процесса установки Процесс завершен, нажимаем **Finish**: Скриншот №10. Finish ## Подключение к Windows Admin Center Для подключения к Windows Admin Center требуется использовать поддерживаемый браузер. Internet Explorer для этих целей не подходит. Можно использовать Microsoft Edge, но по умолчанию он может быть не установлен в серверной операционной системе. Самый оптимальный вариант — использовать Google Chrome. При подключении с локального сервера вводим в адресной строке браузера адрес https://localhost (если при установке был указан нестандартный порт для подключения, добавляем номер порта через двоеточие, например https://localhost:10443). Если подключаемся с удаленного компьютера, нужно указать либо внешний IP-адрес сервера, либо доменное имя, сопоставленное с внешним IP-адресом. При использовании нашего сервиса внешний IP-адрес сервера можно увидеть в панели управления сервером. Если при конфигурировании мы выбрали использование недоверенного сертификата и получаем соответствующее предупреждение, чтобы продолжить подключение нажимаем кнопку **Дополнительные**: Скриншот №11. Подключения к Windows Admin Center В новой форме кликаем по ссылке **Перейти на сайт **: Скриншот №12. Переход на сайт Вводим учетные данные для подключения и попадаем на главную страницу административной веб-консоли. Если понадобится сменить язык отображения консоли, кликаем по шестеренке в правом верхнем углу страницы: Скриншот №13. Главная страница административной веб-консоли В настройках переходим в раздел **Язык/Регион** и в выпадающих списках выбираем нужные значения. После чего жмем кнопку **Сохранить и перезагрузить** в самом низу страницы: Скриншот №14. Выбор языка и региона Для возврата на главную страницу нужно кликнуть левой кнопкой по надписи **Windows Admin Center** в левом верхнем углу. С главной страницы можно подключиться к имеющемуся серверу (клик по серверу в списке), либо добавить дополнительные серверы (клик по кнопке **Добавить**): Скриншот №15. Подключение к серверу При добавлении сервера потребуется указать его имя или IP-адрес. Если сервер будет доступен, система запросит реквизиты для подключения. В случае успеха сервер появится в списке подключенных: Скриншот №16. Ввод имени и IP-адреса сервера Кликнув по серверу в списке мы попадем в раздел администрирования. На главной странице будет отображена общая информация о сервере и статистика использования ресурсов (процессорные мощности, оперативная память, пропускная способность сети) в реальном времени в виде графиков: Скриншот №17. Раздел администрирования С левой стороны расположена навигационная панель, с помощью которой можно переключаться между разными разделами административной консоли и получать доступ к управлению: 1. Настройками и правилами брандмауэра: Скриншот №18. Настройки и правила брандмауэра 2. Процессами операционной системы: Скриншот №19. Процессы ОС 3. Локальными каталогами и файлами: Скриншот №20. Каталоги и файлы 4. Учетными записями пользователей и группами пользователей: Скриншот №21. Учетные записи пользователей 5. Интерактивной консолью PowerShell: Скриншот №22. Консоль PowerShell и многим, многим другим. Компания Serverspace предоставляет услуги Облачных серверов в аренду — ознакомьтесь с нашими [тарифами на VPS](https://serverspace.by/services/vps-server.md). https://serverspace.by/support/help/ustanovka-joomla-na-linux.md Рассмотрим установку CMS Joomla на виртуальный VPS Linux-сервер. Необходимым условием установки Joomla на ваш сервер является наличие LAMP, либо LEMP-стека. **Joomla — **это система управления содержимым сайта или, иначе говоря, CMS (англ. Content Management System), в которой используется скриптовый язык PHP и база данных MySQL или PostgreSQL. Joomla проста в установке, предлагает множество функций и настроек, которые делают ее очень гибкой и удобной в использовании для начинающего пользователя. При заказе [VPS/VDS -сервер](https://serverspace.by/services/vps-server.md)а у начинающих пользователей возникают вопросы как создать свой сайт. Рассмотрим установку CMS на Linux-сервер. ## Системные требования Необходимым условием установки Joomla на ваш сервер является наличие так называемого [LAMP](https://serverspace.by/support/help/ustanovka-lamp/) (связка Linux Apache MariaDB/MySQL PHP), либо [LEMP-стека](https://serverspace.by/support/help/ustanovka-lemp-steka-na-ubuntu-16-04/) (Linux Nginx MariaDB/MySQL PHP). Также необходимо изменить некоторые настройки PHP, которые находятся в файле php.ini. Рекомендованные значения параметров php.ini: - **memory_limit**: минимум: **64M**. Рекомендовано: **128M** или больше; - **upload_max_filesize**: минимум: **20M**; - **post_max_size**: минимум: **20M**; - **max_execution_time**: минимум **120**. Рекомендовано: **300**. ## **Настройки и установка** Все действия, описанные в данной статье, выполняются от имени суперпользователя **root**. Скачиваем установочный пакет нашей CMS: ``` root@webserver:~# wget https://downloads.joomla.org/ru/cms/joomla3/3-9-13/Joomla_3-9-13-Stable-Full_Package.zip ``` На момент написания статьи последняя стабильная версия — 3.9.13. Скачать последний стабильный установочный пакет вы можете на [официальном сайте Joomla](https://downloads.joomla.org/ru/latest). С официального сайта есть возможность скачать установочный пакет, упакованный как .tar.bz2, .tar.gz и zip-архив. Необходимо создать новый каталог для сайта на Joomla в корневой директории веб-сервера и распаковать туда архив: Создадим каталог: ``` root@webserver:~# mkdir /var/www/html/mysite.com ``` Распаковываем архив: ``` root@webserver:~# unzip Joomla_3-9-13-Stable-Full_Package.zip -d /var/www/html/mysite.com ``` Для других форматов: ``` root@webserver:~# tar -xvf file.tar.bz2 -C /var/www/html/mysite.com root@webserver:~# tar -xvf file.tar.gz -C /var/www/html/mysite.com ``` После чего изменим владельца каталога и назначим необходимые права на файлы и папки. Если используется **LAMP**: ``` root@webserver:~# chown -R www-data:www-data /var/www/html/mysite.com ``` Если используется **LEMP**: ``` root@webserver:~# chown -R nginx:nginx /var/www/html/mysite.com ``` Разрешения на каталоги: ``` root@webserver:~# find /var/www/html/mysite.com -type d -exec chmod 755 {} ; ``` Разрешения на файлы: ``` root@webserver:~# find /var/www/html/mysite.com -type f -exec chmod 644 {} ; ``` Проведем настройки виртуального хоста в конфигурационном файле веб-сервера. Для **Apache2**: Ubuntu/Debian: ``` root@webserver:~# nano /etc/apache2/sites-enabled/000-mysite.com.conf ``` CentOS: ``` root@webserver:~# nano /etc/httpd/conf.d/joomla.conf ServerAdmin webmaster@localhost DocumentRoot /var/www/html/mysite.com ServerName mysite.com ServerAlias www.mysite.com DirectoryIndex index.php index.html DirectorySlash off RewriteEngine on RewriteBase / AllowOverride all ``` Перезапустим Apache2: Ubuntu/Debian: ``` root@webserver:~# service apache2 restart ``` CentOS: ``` root@webserver:~# service httpd restart ``` Для **Nginx**: ``` root@webserver:~# nano /etc/nginx/sites-enabled/test.com ``` ```css server { listen 80; listen [::]:80; root /var/www/html/mysite.com; index index.php index.html index.htm; server_name mysite.com www.mysite.com; location / { try_files $uri $uri/ =404; } } ``` Перезапустим Nginx: ``` root@webserver:~# service nginx restart ``` Переименуем файл htaccess.txt: ``` root@webserver:~# mv /var/www/html/mysite.com/htaccess.txt /var/www/html/mysite.com/.htaccess ``` Теперь вы можете перейти на ваш сайт http://mysite.com, где будет запущен графический установщик CMS Joomla. Согласно инструкциям завершаем установку Joomla. https://serverspace.by/support/help/ustanovka-firestarter-na-linux.md Firestarter это легкий в использовании firewall для Linux, в котором есть графическая утилита администрирования. Расскажем о графической среде Firestarter для межсетевого экрана, установленного на Ubuntu 18.04.3. Многие утилиты для ОС семейства Linux поставляются без интерфейса, только командная строка. Расскажем о графической среде Firestarter для межсетевого экрана, установленного на Ubuntu 18.04.3. ## **Подготовка** Firestarter является графическим интерфейсом для утилиты iptables. Он упрощает конфигурирование брандмауэра, позволяя системным администраторам тратить на это минимум времени. Решение не интегрировано в дистрибутив Linux и недоступно в репозиториях. Скачаем пакет deb по ссылке ниже: ```bash wget https://launchpad.net/ubuntu/+archive/primary/+files/firestarter_1.0.3-10_amd64.deb ``` Перейдем в папку с загруженным дистрибутивом и установим пакет вручную: ``` sudo dpkg –I firestarter_1.0.3-10_amd64.deb ``` Установка завершена, перейдем к настройкам. ## **Первый запуск** В терминале прописываем: ``` sudo firestarter ``` Выбираем интерфейс, который будем настраивать, нажимаем Вперед: Дальше предлагается активировать подключение к интернету, используя выбранный интерфейс. Если в этом нет необходимости, переходим далее: Подтверждаем активацию межсетевого экрана: Нажимаем Сохранить. Откроется рабочая область программы. ## **Конфигурирование** Перейдем во вкладку "Политики" (Policy). Создадим шаблон действий для входящего трафика (inbound traffic policy). Нажимаем правой кнопкой мыши по рабочей области программы, как показано на скриншоте ниже: В первом поле прописываем произвольное имя. Для примера взяли сервис HTTP. Во втором указывается номер порта, за которым наблюдает межсетевой экран. Третий задает правило обработки запросов. В нашем примере выбрана опция Allow, т.е. разрешить все. Последнее поле предназначено для дополнительной информации. Если в этом нет необходимости, пропускаем его: Для завершения операции нажимаем Добавить и шаблон появится в рабочей области. Чтобы его сохранить, нажимаем на галочку: Дальнейшие шаблоны задаются таким же способом. После создания конфигурации обязательно перезагружаем сервис, чтобы изменения вступили в силу. https://serverspace.by/support/help/copy-files-and-run-commands-through-ssh.md Копирование файлов и запуск команд через SSH на удаленном сервере с локальной ОС семейства Linux или Windows. Инструкция от Serverspace. Подключение к серверу посредством SSH – один из основных методов управления *nix серверами. Довольно часто возникает необходимость загрузить файл на удаленный сервер, либо выгрузить, и других средств кроме SSH-подключения нет. К счастью, копирование файлов через защищенное соединение – одна из штатных функций этого протокола и реализуется с помощь отдельной команды **scp **в Linux-системах, либо с помощью **pscp.****exe**, входящей в состав SSH-клиента Putty для операционной системы Windows. ### **Работаем на ОС семейства ****Linux** Используем следующий формат команд: ```bash scp [модификатор] [источник] [место_назначения] ``` Если в качестве источника или места назначения указывается удаленный сервер, то формат параметра такой: ``` [пользователь]@[сервер]:[путь_к_файлу] ``` После запуска команды потребуется ввести пароль от указанной учетной записи удаленного сервера. Если собрать все вместе, то скопировать локальный файл /home/user/file.tgz в домашний каталог пользователя root удаленного сервера 123.123.123.123 можно командой: ```bash scp /home/user/file.tgz root@123.123.123.123:/root ``` Чтобы скачать этот же файл с удаленного сервера: ```bash scp root@123.123.123.123:/root/file.tgz /home/user ``` За одну операцию можно скопировать несколько файлов, для этого необходимо указать их в качестве источника, разделив пробелом – местом назначения будет считаться последний указанный параметр. Например, загрузить файлы file1.tgz и file2.tgz из локального каталога на удаленный сервер позволит команда: ```bash scp file1.tgz file2.tgz root@123.123.123.123:/root ``` Для копирования каталога потребуется задействовать модификатор команды **–****r**. Копируем локальный каталог /home/user/dir на удаленный сервер: ```bash scp –r /home/user/dir root@123.123.123.123:/root ``` В тех случаях, когда SSH-сервер работает на нестандартном порту, поможет опция **–****P**. Если нужно подключиться через порт 10022: ```bash scp –P 10022 /home/user/file.tgz root@123.123.123.123:/root ``` Чтобы узнать какие еще модификаторы поддерживает команда, можно просто запустить **scp** без параметров и прочитать краткую справку. ### **Работаем на ОС семейства ****Windows** При использовании операционной системы Windows и Putty в качестве клиента, формат команды остается тот же, меняется только название исполняемого файл и используется синтаксис указания путей к файлам и каталогам 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 ``` Как и в случае с scp, запустив **pscp.****exe** без параметров, можно увидеть краткую справку по синтаксису команды и перечень поддерживаемых модификаторов. ### **Запуск команд на удаленном сервере через ****SSH-подключение** Протокол SSH, помимо работы в интерактивном режиме, поддерживает также разовый запуск команд или скриптов на удаленном сервере. ### **Работаем на ОС семейства ****Linux** Синтаксис команды: ```bash ssh [пользователь]@[сервер] '[команда]' ``` При запросе вводим пароль указанного пользователя и в консоли получаем вывод команды, если таковой имеется. Например, получим информацию об установленной на удаленном сервере операционной системе: ```bash ssh root@123.123.123.123 'uname -a' ``` Чтобы запустить несколько команд за одно подключение, можно использовать символ ";" в качестве разделителя. Проверим сетевые настройки и активные сетевые подключения на удаленном сервере: ```bash ssh root@123.123.123.123 'ifconfig; netstat -anp tcp' ``` В случае, если потребуется запустить на удаленном сервере локальный файла сценария, потребуется в SSH-подключении вызвать командный интерпретатор в режиме исполнения сценария (например, bash с ключом -s), и на стандартный ввод передать ему файл сценария. Выглядеть эта конструкция будет так: ```bash ssh root@123.123.123.123 'bash -s' < /home/user/myscript.sh ``` В результате локальный файл /home/user/myscript.sh исполнится на удаленном сервере. Запуск команды SSH без параметров позволит ознакомиться с краткой справкой по синтаксису и списком дополнительных модификаторов, которые позволяют расширить функциональность команды. ### **Работаем на ОС семейства ****Windows** Если мы подключаемся к удаленному серверу с компьютера, работающего на операционной системе Windows, то нам снова потребуется обратиться к терминальному клиенту Putty, в состав которого входит исполняемый файл plink.exe. Работать с этим файлом необходимо из командной строки (cmd.exe) или из PowerShell. Для запуска команды на удаленном сервере используется следующий синтаксис: ``` plink.exe [сервер] -ssh -l [пользователь] "[команда]" ``` Проверим конфигурацию сетевых интерфейсов: ``` plink.exe 123.123.123.123 -ssh -l root "ifconfig" ``` Как и при работе с командой SSH в Linux, plink.exe позволяет использовать ";" в качестве разделителя для запуска нескольких команд: ``` 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 без параметров, можно ознакомиться с краткой справкой по синтаксису и списком дополнительных модификаторов команды. https://serverspace.by/support/help/configuring-a-dns-server-on-windows-server-2012-or-later.md В инструкции описан процесс установки и настройки DNS сервера для Windows Server 2012 и выше, описаны методы проверки работоспособности DNS сервера **DNS (Domain Name System, Система Доменных имен)** – система, позволяющая преобразовать доменное имя в IP-адрес сервера и наоборот. **DNS-сервер** – это сетевая служба, которая обеспечивает и поддерживает работу DNS. Служба DNS-сервера не требовательна к ресурсам машины. Если не подразумевается настройка иных ролей и служб на целевой машине, то минимальной конфигурации будет вполне достаточно. Как настроить DNS-сервер: - [Настройка сетевого адаптера для DNS-сервера](#stepone) - [Установка роли DNS-сервера](#steptwo) - [Создание зоны прямого просмотра](#step3) - [Создание зоны обратного просмотра](#step4) - [Создание A-записи](#step5) - [Описание функции Domain Name System (DNS), которые являются новыми или измененными в Windows Server 2016.](#step6) ### **Настройка сетевого адаптера для DNS-сервера** Установка DNS-сервера предполагает наличие доменной зоны, поэтому необходимо создать частную сеть в личном кабинете и подключить к ней виртуальные машины. После того, как машина будет присоединена к двум сетям, важно не перепутать, какое из подключений требует настройки. Первичный сетевой адаптер настроен автоматически с самого начала, через него открыт доступ к интернету, в то время как на дополнительно подключенных сетевых адаптерах доступа в интернет нет, пока не будет произведена ручная настройка: Наведя курсор на значок сети в системном трее, можно вызвать всплывающую подсказку с краткими сведениями о сетях. Из примера выше видно, что присоединённая сеть это Network 3. Далее предстоит проделать цепочку действий: - Нажать правой клавишей мыши Пуск, в выпадающем меню выбрать пункт Сетевые подключения; - Правой кнопкой мыши нажать на необходимый сетевой адаптер, в меню выбрать Свойства; - В окне свойств выбрать IPv4 и нажать на кнопку Свойства; - Заполнить соответствующие поля необходимыми данными: Здесь в качестве предпочитаемого DNS-сервера машина назначена сама себе, альтернативным назначен dns.google [8.8.8.8]. ### **Установка роли DNS-сервера** Для установки дополнительных ролей на сервер используется Мастер Добавления Ролей и Компонентов, который можно найти в Диспетчере Сервера. На верхней навигационной панели Диспетчера сервера справа откройте меню Управление, выберите опцию Добавить Роли и Компоненты: Откроется окно Мастера, в котором рекомендуют убедиться что: 1. Учётная запись администратора защищена надёжным паролем. 2. Настроены сетевые параметры, такие как статические IP-адреса. 3. Установлены новейшие обновления безопасности из центра обновления Windows. Убедившись, что все условия выполнены, нажимайте Далее; Выберите Установку ролей и компонентов и нажмите Далее: Выберите необходимы сервер из пула серверов и нажмите Далее: Отметьте чек-боксом роль DNS-сервер и перейдите Далее: Проверьте список компонентов для установки, подтвердите нажатием кнопки Добавить компоненты: Оставьте список компонентов без изменений, нажмите Далее: Прочитайте информацию и нажмите Далее: В последний раз проверьте конфигурацию установки и подтвердите решение нажатием кнопки Установить: Финальное окно Мастера сообщит, что установка прошла успешно, Мастер установки можно закрыть: ### **Создание зон прямого и обратного просмотра** **Доменная зона** — совокупность доменных имён в пределах конкретного домена. **Зоны прямого просмотра** предназначены для сопоставления доменного имени с IP-адресом. **Зоны обратного просмотра** работают в противоположную сторону и сопоставляют IP-адрес с доменным именем. Создание зон и управление ими осуществляется при помощи Диспетчера DNS. Перейти к нему можно в правой части верхней навигационной панели, выбрав меню Средства и в выпадающем списке пункт DNS: Создание зоны прямого просмотра - Выделите каталог Зоны Прямого Просмотра, запустите Мастер Создания Новой Зоны с помощью кнопки Новая зона на панели инструментов сверху: - Откроется окно Мастера с приветствием, нажмите Далее: - Из предложенных вариантов выберите Основная зона и перейдите Далее: - Укажите имя зоны и нажмите Далее: - При необходимости поменяйте название будущего файла зоны и перейдите Далее: - Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее: - Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово: Создание зоны обратного просмотра - Выделите в Диспетчере DNS каталог Зоны Обратного Просмотра и нажатием кнопки Новая зона на панели инструментов сверху запустите Мастер Создания Новой Зоны: - Выберите тип Основная Зона, перейдите Далее: - Выберите назначение для адресов IPv4, нажмите Далее: - Укажите идентификатор сети (первые три октета сетевого адреса) и следуйте Далее: - При необходимости поменяйте название будущего файла зоны и перейдите Далее: - Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее: - Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово: Создание A-записи Данный раздел инструкции в большей степени предназначен для проверки ранее проделанных шагов. **Ресурсная запись** — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными. **Запись A** — запись, позволяющая по доменному имени узнать IP-адрес. **Запись PTR** — запись, обратная A записи. - В Диспетчере DNS выберите каталог созданной ранее зоны внутри каталога Зон Прямого Просмотра. В правой части Диспетчера, где отображается содержимое каталогов, правой кнопки мыши вызовите выпадающее меню и запустите команду «Создать узел (A или AAAA)»: - Откроется окно создания Нового Узла, где понадобится вписать в соответствующие поля имя узла (без доменной части, в качестве доменной части используется название настраиваемой зоны) и IP-адрес. Здесь же имеется чек-бокс Создать соответствующую PTR-запись — чтобы проверить работу обеих зон (прямой и обратной), чек-бокс должен быть активирован: Если поле имени остается пустым, указанный адрес будет связан с именем доменной зоны. - Также можно добавить записи для других серверов: - Добавив все необходимые узлы, нажмите Готово. Проверка - Проверьте изменения в каталогах обеих зон (на примере ниже в обеих зонах появилось по 2 новых записи): - Откройте командную строку (cmd) или PowerShell и запустите команду nslookup: Из вывода команды видно, что по умолчанию используется DNS-сервер example-2012.com с адресом 10.0.1.6. Чтобы окончательно убедиться, что прямая и обратная зоны работают как положено, можно отправить два запроса: - Запрос по домену; - Запрос по IP-адресу: В примере получены подходящие ответы по обоим запросам. - Можно попробовать отправить запрос на какой-нибудь внешний ресурс: В дополнение к имени домена и адресам появилась строчка "Non-authoritative answer", это значит, что наш DNS-сервер не обладает необходимой полнотой информации по запрашиваемой зоне, а информация выведенная ниже, хоть и получена от авторитетного сервера, но сама в таком случае не является авторитетной. Для сравнения все те же запросы выполнены на сервере, где не были настроены прямая и обратная зоны: Здесь машина сама себе назначена предпочитаемым DNS-сервером. Доменное имя DNS-сервера отображается как неопознанное, поскольку нигде нет ресурсных записей для IP-адреса (10.0.1.7). По этой же причине запрос 2 возвращает ошибку (Non-existent domain). ## Описание функции Domain Name System (DNS), которые являются новыми или измененными в Windows Server 2016. В Windows Server 2016 DNS-сервер предлагает обновления в следующих областях: - [Политики DNS-серверов](#first) - [Ограничение скорости отклика (RRL)](#scnd) - [Аутентификация именованных объектов на основе DNS (DANE)](#third) - [Поддержка неизвестных записей](#fourth) - [Корневые подсказки IPv6](#fith) - [Доработка поддержки Windows PowerShell](#sixth) ## Политики DNS-серверов Теперь вы сможете использовать: - DNS-политики для управления трафиком на основе геолокации - Интеллектуальные ответы DNS в зависимости от времени суток, для управления одним DNS-сервером, настроенным для развертывания с разделением - Применять фильтры к DNS-запросам и многое другое. Конкретное описание данных возможностей: **Балансировка нагрузки приложений.** Когда вы развернули несколько экземпляров приложения в разных местах, вы можете использовать политику DNS для балансировки нагрузки трафика между разными экземплярами приложения, динамически распределяя нагрузку трафика для приложения. **Управление трафиком на основе геолокации**. Вы можете использовать DNS-политику, чтобы разрешить первичным и вторичным DNS-серверам отвечать на запросы DNS-клиентов на основе географического положения как клиента, так и ресурса, к которому клиент пытается подключиться, предоставляя клиенту IP-адрес ближайшего ресурса. . **Разделенный Brain-DNS. ** При разделенном DNS записи DNS распределяются по разным областям зоны на одном и том же DNS-сервере, а DNS-клиенты получают ответ в зависимости от того, являются ли клиенты внутренними или внешними. Вы можете настроить разделенный DNS для зон, интегрированных с Active Directory, или для зон на автономных DNS-серверах. **Фильтрация.** Вы можете настроить политику DNS для создания фильтров запросов на основе предоставленных вами критериев. Фильтры запросов в DNS-политике позволяют настроить DNS-сервер для ответа настраиваемым образом на основе DNS-запроса и DNS-клиента, отправляющего DNS-запрос. **Forensics.** Вы можете использовать политику DNS для перенаправления вредоносных DNS-клиентов на несуществующий IP-адрес вместо того, чтобы направлять их на компьютер, к которому они пытаются подключиться. **Перенаправление по времени суток. ** Политику DNS можно использовать для распределения трафика приложения между различными географически распределенными экземплярами приложения с помощью политик DNS, основанных на времени суток. **Вы также можете использовать политики DNS для зон DNS, интегрированных с Active Directory.** ## Ограничение скорости отклика (RRL) **Теперь вы cможете настроить параметры RRL, чтобы контролировать, как отвечать на запросы к DNS-клиенту, когда ваш сервер получает несколько запросов, направленных на одного и того же клиента.** Сделав это, вы можете предотвратить отправку атаки типа "Отказ в обслуживании" (Dos) с использованием ваших DNS-серверов. Например, бот-сеть может отправлять запросы на ваш DNS-сервер, используя в качестве отправителя IP-адрес третьего компьютера. Без RRL ваши DNS-серверы могут отвечать на все запросы, переполняя третий компьютер. При использовании RRL вы можете настроить следующие параметры: **Количество ответов в секунду.** Это максимальное количество раз, когда один и тот же ответ дается клиенту в течение одной секунды. **Количество ошибок в секунду.** Это максимальное количество раз, когда ответ об ошибке отправляется одному и тому же клиенту в течение одной секунды. **Окно между запросами.** Это количество секунд, на которое приостанавливаются ответы клиенту, если сделано слишком много запросов. **Скорость утечки.** Это то, как часто DNS-сервер отвечает на запрос во время приостановки ответов. Например, если сервер приостанавливает ответы клиенту на 10 секунд, а уровень утечки равен 5, сервер по-прежнему отвечает на один запрос на каждые 5 отправленных запросов. Это позволяет обычным клиентам получать ответы, даже если DNS-сервер применяет ограничение скорости ответов в их подсети или полном доменном имени. **TC rate.** Эта функция используется, чтобы сообщить клиенту о попытке соединения с TCP, когда ответы клиенту приостановлены. Например, если скорость TC равна 3, и сервер приостанавливает ответы данному клиенту, сервер выдает запрос на TCP-соединение для каждых 3 полученных запросов. Убедитесь, что значение скорости TC ниже, чем скорость утечки, чтобы дать клиенту возможность подключиться через TCP перед утечкой ответов. **Максимум откликов.** Это максимальное количество ответов, которые сервер выдает клиенту, пока ответы приостановлены. **Белые домены.** Это список доменов, которые нужно исключить из настроек RRL. **Белые подсети.** Это список подсетей, которые необходимо исключить из настроек RRL. **Интерфейсы серверов белого списка.** Это список интерфейсов DNS-серверов, которые необходимо исключить из настроек RRL. ## Аутентификация именованных объектов на основе DNS (DANE) Теперь вы сможете использовать поддержку DANE (RFC 6394 и 6698), чтобы указать своим DNS-клиентам, от какого CA они должны ожидать выдачи сертификатов для доменных имен, размещенных на вашем DNS-сервере. Это предотвращает форму атаки "main in the middle", когда кто-то может повредить кэш DNS и указать DNS-имя на свой собственный IP-адрес. ## Поддержка неизвестных записей "Неизвестная запись" — это RR, формат RDATA которой неизвестен DNS-серверу. Недавно добавленная поддержка неизвестных типов записей (RFC 3597) означает, что вы cvожете добавлять неподдерживаемые типы записей в зоны DNS-сервера Windows в двоичном формате по сети. Распознаватель кэширования Windows уже имеет возможность обрабатывать неизвестные типы записей. DNS-сервер Windows не выполняет никакой конкретной обработки неизвестных записей, но отправляет их обратно в ответах, если для них получены запросы. ## Корневые подсказки IPv6 Корневые подсказки IPV6, опубликованные IANA, были добавлены на DNS-сервер Windows. Запросы имен в Интернете теперь могут использовать корневые серверы IPv6 для разрешения имен. ## Доработка поддержки Windows PowerShell В Windows Server 2016 представлены следующие новые командлеты (cmdlets) и параметры Windows 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** — Этот командлет был обновлен для поддержки неизвестного типа записи. С дополнительными сведениями вы можете ознакомится в следующих разделах справочника по командам Windows PowerShell для Windows Server 2016 от Microsoft: [Powershell DNS Server](https://docs.microsoft.com/en-us/powershell/module/dnsserver/?view=windowsserver2022-ps) [Powershell DNS Client](https://docs.microsoft.com/en-us/powershell/module/dnsclient/?view=windowsserver2022-ps) https://serverspace.by/support/help/nastrojka-openssh-servera-na-windows-server-2019.md OpenSSH был добавлен в Windows осенью 2018 года и входит в Windows 10 и Windows Server 2019. Данная статья рассматривает его первоначальную настройку. Прежде всего, вы можете спросить, зачем нам вообще нужен SSH-сервер на Windows-сервере? В среде Windows SSH может показаться не очень полезным. В конце концов, у нас есть RDP и PowerShell Remoting с WinRM, которые уже обеспечивают мощные возможности удаленного управления. Тем не менее, SSH в Windows определенно имеет свои преимущества. Среди них можно выделить такие вещи, как: - Простое подключение и управление Windows-серверами из Linux или MacOS с помощью встроенных инструментов. - Подключение из систем Windows к серверам Linux — это простое решение с интегрированным SSH-клиентом. Есть много администраторов Linux, которые должны управлять серверами на работе с помощью ОС Windows, и всегда должны устанавливать некоторые дополнительные инструменты, такие как PuTTY или WinSCP. Теперь они могут использовать знакомые команды SSH прямо из командной строки Windows. - Используются те же инструменты удаленного управления для серверов Linux и Windows (SSH, SCP, аутентификация с открытым ключом и т. д.). - Кроссплатформенный PowerShell Remoting. PowerShell Core использует SSH для включения удаленного сеанса PowerShell в Windows, MacOS и Linux. В отличие от WinRM PowerShell Remoting — Windows PowerShell работает только на Windows. - Вместе с подсистемой Windows для Linux вы можете получить Linux-подобные сеансы SSH с Bash и обычные инструменты Linux также на сервере Windows, который позволяет администраторам Linux использовать свои знания для управления системами Windows. - И наоборот: администраторы Windows могут использовать PowerShell для управления сервером Linux, если на нем будет присутствовать соответствующий shell от Microsoft. - Просто другой вариант для удаленного управления, который дает еще большую гибкость. ### **Установка OpenSSH в Windows Server 2019** - Используя GUI Открываем **Settings** — **Apps & features** — **Manage optional features**: Нажимаем **Add a feature**, ищем **OpenSSH Server** — **Install**: На предыдущем экране дожидаемся окончания процесса инсталляции. OpenSSH сервер можем считать установленным. Обращаем внимание, что установка этим методом автоматически создаст правило Windows Firewall, с названием "OpenSSH-Server-In-TCP", открывающее 22 порт для входящих подключений. Используя PowerShell: Проверим, присутствует ли на нашей системе встроенный OpenSSH: ``` Get-WindowsCapability -Online | ? Name -like 'OpenSSH*' ``` В ответ должны получить: ``` Name : OpenSSH.Client~~~~0.0.1.0 State : NotPresent #или Install, если клиент уже установлен Name : OpenSSH.Server~~~~0.0.1.0 State : NotPresent ``` Устанавливаем клиент, если он не установлен: ``` Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 ``` Для установки сервера вводим: ``` Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 ``` В обоих случаях вывод должен быть следующим: ``` Path : Online : True RestartNeeded : False ``` ### **Первичная конфигурация SSH-сервера** По умолчанию при подключении к OpenSSH-серверу используется командная строка Windows. Вы можете использовать практически любую оболочку на вашем компьютере с Windows через SSH-соединение. Даже возможно использовать Bash, когда подсистема Windows для Linux (WSL) также установлена на целевой машине. Также возможно изменение оболочки по умолчанию на SSH-сервере на нечто иное, чем командная оболочка. Для этого ключ реестра "DefaultShell" необходимо изменить. Сделать это можно как через редактор реестра regedit.exe, открыв в нем следующий путь: HKEY_LOCAL_MACHINESOFTWAREOpenSSH и изменив в нем параметр DefaultShell, указав в нем полный путь до исполняемого файла необходимой командной строки, например: ``` C:WindowsSystem32WindowsPowerShellv1.0powershell.exe ``` Тоже самое можно сделать используя PowerShell: ``` New-ItemProperty -Path "HKLM:SOFTWAREOpenSSH" -Name DefaultShell -Value "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" -PropertyType String -Force ``` Проверим настройки Windows Firewall, используя для этого PowerShell: ``` Get-NetFirewallRule -Name *ssh* ``` Введя данную команду мы получим параметры правила, разрешающего SSH-подключение к серверу. Если правила не оказалось, введем следующую команду, создав его: ``` New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 ``` ### **Запуск службы OpenSSH** После установки функции SSH-сервера нам остается только его запустить: ``` Start-Service sshd ``` Опционально можно установить для службы sshd автоматический запуск: ``` Set-Service -Name sshd -StartupType 'Automatic' ``` ### **Подключение к серверу** Теперь мы готовы к работе и можем подключиться через установленное приложение к нашему хосту. Это можно осуществить либо с Windows 10, компьютера с Linux, с putty.exe на более старой машине с Windows, либо с Bash в настольной операционной системе от Microsoft. Все, что вам нужно, это найти какой-либо SSH-клиент, ввести в него имя пользователя, имя вашего сервера или IP-адрес и подключиться. Для SSH-клиента в PowerShell синтаксис будет таким: ```bash Ssh username@servername ``` При первом подключении с неизвестного хоста будет показано следующее сообщение: Ответив на него yes, хост подключения будет добавлен в список известных хостов сервера. После чего необходимо ввести пароль пользователя (по соображениям безопасности вводимые символы отображаться не будут). После успешного подключения отобразится интерфейс используемой командной строки: ### ### **Копирование файлов** Также, как с сервером OpenSSH в любой системе * nix, вы можете использовать SCP для копирования файлов на сервер или с сервера. Например, администратор Linux может быстро получить файл журнала с сервера Windows с помощью той же команды, что и для сервера Linux. ```bash scp username@servername:C:/inetpub/logs/LogFiles/W3SVC1/u_ex191017.log u_ex191017.log ``` Когда вы подключаетесь из Bash/*nix к машине с Windows, нужно помнить, что пути Windows также должны указываться с обычными косыми чертами Unix вместо обратных косых черт. Например, C:/Windows вместо C:Windows. ### **sshd_config** Аналогично операционным системам семейства Linux, OpenSSH Server в Windows имеет в своем составе особый файл, где хранятся все параметры для выполнения более подробных настроек. Например, для ограничения входа. По умолчанию файл конфигурации находится в "%programdata%sshsshd_config". Самые различные настройки, применимые к этому файлу можно найти на сайте [https://man.openbsd.org/sshd_config](https://man.openbsd.org/sshd_config). Кроме того, у Microsoft есть документация для [специфичных настроек Windows](https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configuration). ### **Больше информации** Дополнительную информацию об OpenSSH в Windows можно найти на сайте [docs.microsoft.com](https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_overview) или в [проекте GitHub](https://github.com/PowerShell/openssh-portable) разветвления OpenSSH от Microsoft. https://serverspace.by/support/help/how-to-configure-a-dhcp-server-in-windows-server-2016.md DHCP-сервер контролирует выдачу IP-адресов, предотвращает их дублирование и освобождает неиспользуемые адреса. Ниже рассмотрим, как установить и настроить DHCP-сервер на ОС Windows Server 2016 для одной подсети. DHCP — это протокол динамической настройки узла, который позволяет автоматизировать настройку сетевых параметров клиента, таких как IP-адрес, шлюз, DNS, маска подсети. DHCP-сервер контролирует выдачу IP—адресов, предотвращает их дублирование и освобождает неиспользуемые адреса. Ниже рассмотрим как установить и настроить DHCP-сервер на ОС Windows Server 2016 для одной подсети. ### **Процесс установки** - Запустим Диспетчер серверов и выберем "Add roles and features". Выберем первый пункт "Role — based or feature — based installation": - Укажем сервер, на который будем устанавливать роль DHCP: - Далее необходимо найти и выбрать роль DHCP в списке. Соглашаемся добавить компоненты, требуемые для правильной работы службы DHCP. Так как компоненты добавлены на шаге "Server Roles", то шаг "Features" пропускаем: - Мастер напомнит вам о то, что нужно заранее спланировать подсети, области и исключения: - Проверяем устанавливаемые компоненты и нажимаем "Install": - После завершения установки можно начать первичную настройку DHCP. Переходим по ссылке "Complete DHCP configuration": Процесс первичной настройки проходит в два этапа: 1. Создание "Группы безопасности" для управления этим DHCP—сервером. Всего их две: - DHCP Administrators — у членов группы имеются полные права на управление DHCP—сервером; - DHCP Users — у членов группы есть возможность просмотра настроек сервера и списка подключенных устройств. 2. Авторизация DHCP-сервера в Active Directory (если он присоединен к домену). Данная настройка нужна, чтобы избежать появления в сети посторонних DHCP-серверов. Сервер должен пройти авторизацию чтобы служба DHCP запустилась: - Вписываем учетные данные администратора и жмем кнопку "Commit". Если сервер не присоединен к домену, то выбираем последний пункт: - Если всё сделано верно, мастер оповещает об успешном выполнении настройки: ### **Процесс настройки** Запускаем "Диспетчер серверов". Находим пункт DHCP в открывающемся списке "Tools": В нашем варианте мы рассматриваем выдачу IPv4 адресов, поэтому нужно создать новую область (Scope) — пул IP-адресов, выдаваемых клиентам. Нажимаем правой кнопкой мыши на IPv4 и выбираем "New Scope": Открывается Мастер создания области, где мы вводим имя пула. Если необходимо, то можно ввести описание: Определяем границы нашего пула, задав начальный и конечный IP-адрес. Также вводим маску подсети: В случае необходимости можно добавить в исключения один или несколько IP-адресов из создаваемого пула. В этом диапазоне могут находиться сетевые устройства которым уже назначен статический IP. Тут же есть параметр задержки ответа сервера перед отправкой данных на запрос от хоста: Далее можно указать время аренды IP-адреса. По умолчанию выставлено 8 дней: Теперь Мастер предложит указать сетевые параметры (Gateway, DNS, WINS), выдаваемые клиентам в сети: Укажем адрес сетевого шлюза: Далее введем имя домена и DNS-сервер. DNS можно найти либо по имени сервера, либо указать IP-адрес: Следующий этап позволяет добавить WINS-сервер: Выбираем "Активировать" заданную нами область сейчас: После настройки пула можно проверить работает ли сервер. Посмотреть подключенных клиентов можно перейдя в раздел "Address Leases". В нашем случае видим, что подключено одно устройство: Если мы зайдем на клиентскую машину, то можем проверить правильность полученных настроек: Хоть мы и рассматривали настройку на Windows Server 2016, данная инструкция так же подойдет и для Windows Server 2008—2012, так как процесс не сильно отличается. https://serverspace.by/support/help/net-framework-v-os-windows.md Общая информация о .NET Framework и способы установки в ОС Windows. Программная платформа .NET Framework была разработана компанией Microsoft. Программная платформа .NET Framework была разработана компанией Microsoft для того, чтобы дать возможность разработчикам абстрагироваться от системного окружения конкретного компьютера, на котором будет исполняться их программа. В этом случае не будет иметь значения какая операционная система установлена, какой процессор и другое аппаратное обеспечение используется — главное, чтобы на компьютере была установлена среда .NET Framework, которая обеспечивает исполнение кода и взаимодействие с необходимыми компонентами окружения. Для работы с этой платформой были разработаны или адаптированы специальные языки программирования C#.NET, VB.NET, C++.NET, J#.NET, F#.NET и т.д. Достаточно большое количество программ написано под эту платформу, поэтому нужно знать, как установить ее на сервер. .NET Framework актуальной версии (4.x) уже включен на серверах Windows, развернутых из наших шаблонов. Если требуется включить предыдущую версию (3.5) или же сервер развернут из собственного шаблона/установлен из дистрибутива, можно воспользоваться нижеследующей инструкцией. ### **Установка компонента .****NET** **Framework в ОС ****Windows ****Server** Включение компонента .NET Framework в OC Windows Server возможно с использованием Windows Update или с использованием локального хранилища компонентов (потребуются файлы с дистрибутива ОС). Рассмотрим оба варианта. ### Вариант 1 Самый простой и быстрый способ, при наличии подключения к сети Интернет, это установка компонента .NET Framework 3.5 с сервера Microsoft Windows Update (актуально для Windows Server 2008R2/2012R2/2016/2019). Запускаем PowerShell с правами администратора: Пуск — правый клик по ярлыку Windows Powershell — Запуск от имени Администратора (Run as Administrator): В открывшемся окне PowerShell набираем команду: ``` DISM /Online /Enable-Feature /FeatureName:NetFx3 /All ``` Eсли установка производится на Windows Server 2008R2: ``` DISM /Online /Enable-Feature /FeatureName:NetFx3 ``` Нажимаем Enter и ожидаем завершения установки: ### Вариант 2 Для установки с использованием локального хранилища (или дистрибутива ОС Windows) через графический интерфейс (Windows Server 2012R2/2016/2019 ): Запускаем Диспетчер серверов (Server Manager), нажимаем Управление (Manage) – Добавить роли и компоненты (Add Roles and Features): В появившемся окне нажимаем Далее (Next): В окне Выбор типа установки (Select installation type) убеждаемся, что выбран пункт установка ролей и компонентов (Role-based or feature-based installation), нажимаем Далее (Next): Выбор целевого сервера (Select destination server) – проверяем, что в списке выбран требуемый сервер, нажимаем Далее (Next): Пропускаем Выбор ролей сервера (Select server roles), нажимаем Далее (Next): В окне Выбор компонентов (Select features) находим в списке требуемую версию .NET Framework и отмечаем галкой, нажимаем Далее (Next): В случае установки актуальной версии .NET Framework (4.x) в данном окне можно нажимать кнопку Установить (Install), после чего начнется процесс инсталляции из локального хранилища. Если же мы устанавливаем предыдущую версию (3.5), то появится предупреждение, что необходимые для установки файлы отсутствуют и нужно указать путь к данным файлам. Понадобится либо дистрибутив установленной версии дистрибутива ОС Windows, либо копия папки SourcesSxS с этого дистрибутива. Нажимаем на ссылку Указать альтернативный исходный путь (Specify an alternate source path): В открывшейся форме указываем путь к папке SourcesSxS дистрибутива текущей версии (или копии этой папки – в нашем примере папка скопирована на локальный диск в c:tempsxs), нажимаем ОК: Вернувшись на форму Подтверждение компонентов установки (Confirm installation selections) нажимаем Установить (Install) и ожидаем окончания установки. Закрываем форму: Установка на Windows server 2008R2 также производится через Диспетчер серверов: Запускаем Диспетчер серверов, переходим в раздел Компоненты, нажимаем Добавить компоненты: В списке компонентов находим и ставим галку на .NET Framework, нажимаем Далее: В следующем окне нажимаем кнопку Установить: Дожидаемся успешного окончания установки и закрываем окно: Установка актуальной версии .NET Framework (4.x) в ОС Windows Server 2008R2 через добавление компонентов не работает. Для инсталляции потребуется скачать автономный установщик с сайта Microsoft (например, по ссылке [https://www.microsoft.com/ru-RU/download/details.aspx?id=55167](https://www.microsoft.com/ru-RU/download/details.aspx?id=55167)) и установить как обычную программу. https://serverspace.by/support/help/nastrojka-dns-servera-na-windows-server-2008.md В инструкции описан процесс установки и настройки DNS сервера для Windows Server 2008, описаны методы проверки работоспособности DNS сервера. **DNS (Domain Name System, Система Доменных имен)** – система, позволяющая преобразовать доменное имя в IP-адрес сервера и наоборот. **DNS-сервер** – это сетевая служба, которая обеспечивает и поддерживает работу DNS. Служба DNS-сервера не требовательна к ресурсам машины. Если не подразумевается настройка иных ролей и служб на целевой машине, то минимальной конфигурации будет вполне достаточно. ### **Настройка сетевого адаптера для DNS-сервера** Установка DNS-сервера предполагает наличие доменной зоны, поэтому необходимо создать частную сеть в личном кабинете и подключить к ней виртуальные машины. После того, как машина будет присоединена к двум сетям, важно не перепутать, какое из подключений требует настройки. Первичный сетевой адаптер настроен автоматически с самого начала, через него открыт доступ к интернету, в то время как на дополнительно подключенных сетевых адаптерах доступа в интернет нет, пока не будет произведена ручная настройка: Наведя курсор на значок сети в системном трее, можно вызвать всплывающую подсказку с краткими сведениями о сетях. Из примера выше видно, что присоединённая сеть это Network 3. Далее предстоит проделать цепочку действий: - Необходимо нажать правой клавишей мыши по значку сети в системном трее, в выпадающем меню выбрать Центр управления сетями и общим доступом, в левой части появившегося окна открыть ссылку Изменение параметров адаптера: - Правой кнопкой мыши нажать на необходимый сетевой адаптер, в меню выбрать Свойства; - В окне свойств выбрать IPv4 и нажать на кнопку Свойства; - Заполнить соответствующие поля необходимыми данными: Здесь в качестве предпочитаемого DNS-сервера машина назначена сама себе, альтернативным назначен dns.google [8.8.8.8]. ### **Установка роли DNS-сервера** Для установки дополнительных ролей на сервер используется Мастер Добавления Ролей и Компонентов, который можно найти в Диспетчере Сервера. - В левой части окна Диспетчера сервера откройте раздел Роли, после чего в правой части окна отобразится команда Добавить Роли: - Откроется окно Мастера, в котором рекомендуют убедиться что: 1. Учётная запись администратора защищена надёжным паролем. 2. Настроены сетевые параметры, такие как статические IP-адреса. 3. Установлены новейшие обновления безопасности из центра обновления Windows. - Убедившись, что все условия выполнены, нажмите Далее; - Отметьте чек-боксом роль DNS-сервер и перейдите Далее: - Прочитайте информацию и нажмите Далее: - Убедитесь, что выбор сделан правильно, и подтвердите нажатием кнопки Установить: - Дождитесь завершения установки и закройте Мастер установки: ### **Создание зон прямого и обратного просмотра** **Доменная зона** — совокупность доменных имён в пределах конкретного домена. **Зоны прямого просмотра** предназначены для сопоставления доменного имени с IP-адресом. **Зоны обратного просмотра** работают в противоположную сторону и сопоставляют IP-адрес с доменным именем. Создание зон и управление ими осуществляется при помощи Диспетчера DNS. Данный инструмент открывается из навигационного дерева Диспетчера Сервера: **Создание зоны прямого просмотра** - Выделите каталог Зоны Прямого Просмотра, запустите Мастер Создания Новой Зоны с помощью кнопки Новая зона на панели инструментов сверху: - Откроется окно Мастера с приветствием, нажмите Далее: - Из предложенных вариантов выберите "Основная зона" и перейдите Далее: - Укажите имя зоны и нажмите Далее: - При необходимости поменяйте название будущего файла зоны и нажмите Далее: - Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее: - Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово: **Создание зоны обратного просмотра** - Выделите в Диспетчере DNS каталог Зоны Обратного Просмотра и нажатием кнопки Новая зона на панели инструментов сверху запустите Мастер создания новой зоны: - Выберите тип "Основная Зона", перейдите Далее: - Выберите назначение для адресов IPv4, нажмите Далее: - Укажите идентификатор сети (первые три октета сетевого адреса) и следуйте Далее: - При необходимости поменяйте название будущего файла зоны и перейдите Далее: - Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее: - Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово: **Создание A-записи** Данный раздел инструкции в большей степени предназначен для проверки ранее проделанных шагов. **Ресурсная запись** — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными. **Запись A** — запись позволяющая по доменному имени узнать IP-адрес. **Запись PTR** — запись обратная A записи. - В Диспетчере DNS выберите каталог созданной ранее зоны внутри каталога Зон Прямого Просмотра. В правой части Диспетчера, где отображается содержимое каталогов, правой кнопки мыши вызовите выпадающее меню и запустите команду «Создать узел (A или AAAA)»: - Откроется окно создания Нового узла, где понадобится вписать в соответствующие поля имя узла (без доменной части, в качестве доменной части используется название настраиваемой зоны) и IP-адрес. Здесь же имеется чек-бокс "Создать соответствующую PTR-запись" — чтобы проверить работу обеих зон (прямой и обратной), чекбокс должен быть активирован: Если поле имени остается пустым, указанный адрес будет связан с именем доменной зоны. - Также можно добавить записи для других серверов: - Добавив все необходимые узлы, нажмите Готово. **Проверка** - Проверьте изменения в каталогах обеих зон (на примере ниже в обеих зонах появилось по 2 новых записи): - Откройте командную строку (cmd) или PowerShell и запустите команду nslookup: Из вывода команды видно, что по умолчанию используется DNS-сервер example-2012.com с адресом 10.0.1.6. Чтобы окончательно убедиться, что прямая и обратная зоны работают как положено, можно отправить два запроса: - Запрос по домену; - Запрос по IP-адресу: В примере получены подходящие ответы по обоим запросам. - Можно попробовать отправить запрос на какой-нибудь внешний ресурс: В дополнение к имени домена и адресам появилась строчка "Non-authoritative answer:", это значит, что наш DNS-сервер не обладает необходимой полнотой информации по запрашиваемой зоне, а информация выведенная ниже, хоть и получена от авторитетного сервера, но сама в таком случае не является авторитетной. Для сравнения все те же запросы выполнены на сервере, где не были настроены прямая и обратная зоны: Здесь машина сама себе назначена предпочитаемым DNS-сервером. Доменное имя DNS-сервера отображается как неопознанное, поскольку нигде нет ресурсных записей для IP-адреса (10.0.1.7). По этой же причине запрос 2 возвращает ошибку (Non-existent domain). https://serverspace.by/support/help/ustanovka-i-nastrojka-svyazki-grafana-graphite-carbon-collectd-na-debian-i-ubuntu.md Рассмотрим процесс инсталляции и настройки Grafana, Graphite, Carbon, Collectd для серверных платформ под управлением ОС Debian и Ubuntu. Компании используют программные средства для сбора аналитической информации и отображения в графическом виде (таблицы, диаграммы и т. д.). Одним из представителей является система Grafana с дополнительными модулями. Расскажем на примере установки сервисов для серверных платформ под управлением ОС Debian и Ubuntu. ## **Предварительный этап** Заведем нового пользователя и предоставим ему права администратора: ``` adduser graphite usermod -aG sudo graphite ``` Установка производится под учетным именем graphite. ## **Установка** Установим ПО Graphite с плагинами, а также дополнительные пакеты. К ним относятся Python и Apache: ```bash sudo apt-get install build-essential sudo apt-get install graphite-web sudo apt-get install graphite-carbon sudo apt-get install python-dev sudo apt-get install apache2 sudo apt-get install libapache2-mod-wsgi sudo apt-get install libpq-dev sudo apt-get install python-psycorg2 ``` **Важно!** Когда на экране появится сообщение о совместном удалении информации при удалении приложения Graphite, выбираем ответ No. Чтобы отслеживать параметры работы, требуется специализированный сервис. В нашем случае — Carbon. Он установлен на предыдущем этапе, теперь внесем корректировки. Откроем через текстовый редактор Geany конфигурационный файл — его путь подчеркнут желтым цветом. Добавляем блок: ``` priority = 100 pattern =^collectd.* retentions = 60s:7d,10m:2y ``` **Важно!** Операцию выполнять только через sudo. Скриншот №2. Корректировка конфигурации. Теперь хранение значений retentions в блоке collected составляет 60 секунд на протяжении семи дней. Добавим в список разрешенных сервисов загрузку кэша Carbon. Вводим: ``` sudo vi /etc/default/graphite-carbon ``` Находим строку CARBON_CACHE_ENABLED и присваиваем true. Сохраняем изменения, закрываем редактор. Перезапустим сервис carbon-cache, чтобы корректировки вступили в силу. Установим СУБД PostgreSQL для работы с системой мониторинга. Добавим новое учетное имя, которое получит доступ к БД Graphite: ``` sudo su — postgres createuser graphite –pwprompt ``` Утилита попросит придумать защитный ключ для учетного имени. Придумываем его, следуя советам: не менее девяти символов, включающих в себя спецсимволы, буквы, цифры и разный регистр. Добавим пользователя к БД панели мониторинга и веб-интерфейсу: ``` createdb -O graphite graphite createdb -O graphite grafana ``` Переключимся на пользователя и перейдем к конфигурированию Graphite. ``` su – graphite ``` ### **Настройка Apache** Через редактор vi открываем шаблон конфигурации. ``` sudo vi /etc/graphite/local_settings.py ``` Находим раздел DATABASES. В строку USER вписываем новое учетное имя (graphite). В строке PASSWORD указываем пароль: Скриншот №3. Редактируем конфигурацию. Далее добавляем: ``` TIME_ZONE = 'Europe/Moscow' SECRET_KEY = 'somelonganduniquesecretstring' ``` Поле TIME_ZONE заполняется в зависимости от региона пребывания. В нашем примере берем московское время. Пробрасываем порты, чтобы получить доступ: ``` sudo iptables -A INPUT -p tcp —dport 5432 -j ACCEPT ``` Сохраняем корректировки: ``` sudo iptables-save ``` Перезапускаем службу PostgreSQL. Чтобы избежать появления проблем в дальнейшем, активируем две команды. ```bash python /usr/lib/python2.7/dist-packages/graphite/manage.py migrate auth python /usr/lib/python2.7/dist-packages/graphite/manage.py migrate ``` Активируем БД с новыми параметрами: ``` sudo graphite-manage syncdb ``` **Важно!** В некоторых случаях после инициации базы данных требуется внести информацию о новом пользователе Django. Следуем подсказкам мастера при вводе данных. Следующий шаг — конфигурирование Apache под систему мониторинга. Сначала копируем конфигурацию из директории Graphite в Apache. ``` sudo cp /usr/share/graphite-web/apache2-graphite.conf /etc/apache2/sites-available ``` Теперь внесем изменения в него, используя текстовый редактор Geany: Скриншот №4. Меняем порт. Вносим информацию в СУБД: ``` sudo vi /etc/apache2/ports.conf ``` Находим строку Listen 80 и дописываем Listen 8080. Сохраняем данные, закрываем конфигурацию. Деактивируем веб-ресурс Apache, который используется по стандарту: ``` sudo a2dissite 000-default ``` После инициируем сайт системы мониторинга: ``` sudo a2ensite apache2-graphite ``` Перезапустим сервис СУБД, чтобы изменения применились. ## **Настройка Grafana** Подключаемся к Ubuntu Server, скачиваем последний релиз Grafana. На 16.08.2019 актуальна 6.3.3. ```bash wget https://dl.grafana.com/oss/release/grafana_6.3.3_amd64.deb ``` По окончанию загрузки – инсталлируем дистрибутив. ```bash sudo apt-get install -y adduser libfontconfig sudo dpkg -i grafana_.6.3.3_amd64.deb ``` Активируем службу для дальнейшей настройки утилиты под задачи через команду start. **Важно!** После старта сервиса в ОС появится процесс, запущенный под именем пользователя grafana. Он появляется после установки. Для начала пробрасываем порты. ``` sudo iptables -A INPUT -p tcp —dport 80 -j ACCEPT sudo iptables-save ``` Теперь изменим конфигурацию grafana.ini для совместной работы с PostgreSQL. Открываем его. Находим раздел Database, добавляем следующую информацию: Скриншот №5. Редактируем файл Grafana. В нашем примере поля принимают следующие значения. Type — тип базы данных (postgres), name — имя БД (grafana). Вводим данные о пользователе: user — имя (graphite), password — пароль. **Важно!** На скриншоте вместо пароля указаны символы xxx. Также вносим изменения в разделах server и security: Скриншот №6. Корректируем блоки. Запускаем прокси для СУБД Apache: ``` sudo a2enmod proxy proxy_http xml2enc ``` Сформируем шаблон, чтобы отправлять запросы через прокси в Grafana. Открываем apache2-grafana.conf через редактор vi. Добавляем следующую информацию: Скриншот №7. Добавление сетевых параметров. Строку "IP-adr" меняем на цифровой адрес сервера Ubuntu, а в поле Server name можно указать не только IP, но и доменное имя. Активируем параметры Grafana: ``` sudo a2ensite apache2-grafana ``` Установим время запуска службы "Панель мониторинга" после старта ОС, а потом запустим сервис через start: ``` sudo update-rc.d grafana-server defaults 95 10 ``` Перезапустим СУБД Apache. ## **Конфигурирование Collectd** Для начала выполним установку пакета: ```bash sudo apt-get install collectd collectd-utils ``` Теперь остановим службу, чтобы внести корректировки в конфигурацию через команду stop. 1) Открываем файл collectd.conf через редактор. Находим строку Hostname «localhost» и активируем её (удаляем закомментированные символы). Теперь находим блок Plugin write_graphite и выполняем аналогичные операции. 2) Перезапускаем сервис. ## **Как добавить графики** Последний этап — добавление графиков в панели администрирования Grafana. Открываем через браузер утилиту и авторизуемся. **Важно!** IP-адрес, логин и пароль указаны в разделе "Настройка Grafana". 1. Открываем верхнее меню Data Sources, пункт Add. В первом блоке поле name — придумываем произвольное наименование (в нашем примере используется имя My), а во втором поле указываем Graphite. Скриншот №8. Раздел Add. 2. Переходим к блоку HTTP Settings. Добавляем в поле URL адрес http://localhost:8080: Скриншот №9. Раздел сетевых настроек. 3. Снова переходим к меню. Выбираем Dashboards, раздел New. Переключаем на режим Graph. 4. В пункте Metrics указываем источник, из которого берутся данные для построения графика и нажимаем ОК. https://serverspace.by/support/help/sertifikaty-ssl-ustanavlivaem-na-nginx.md Первым делом нужно сгенерировать SCR запрос через serverspace панель. После создания SCR запросов, а также выбора сертификатов с помощью панели serverspace следующим логическим шагом будет установка сертификатов CRT и CA. Первым делом необходимо сгенерировать SCR-запрос через панель управления Serverspace. После этого запроса, а также после выбора необходимого сертификата, следующим логическим шагом будет установка сертификатов .CRT и .CA. Давайте подробнее остановимся на том, как устанавливать эти сертификаты на серверы Nginx и Unix-системы Ubuntu, CentOS или Debian. Итак, после выполнения вышеперечисленных действий в разделе SSL, расположенном в панели управления Serverspace, находятся два файла **.CA **и **.CRT**. ## **Загрузка SSL на сервер** Файлы **.CA** и **.CRT** необходимо отправить на сервер. Часто Linux-серверы администрируют через терминал и GUI может отсутствовать. В этом случае можно отправить файлы на машину с другой ОС, а затем их перенести. Ниже мы расскажем, как это можно осуществить. **Важно:** пара (закрытый и открытый ключи) должна быть сгенерирована там, куда устанавливаются сами сертификаты. Однако если они были созданы на другом компьютере, на ваш сервер следует отправить закрытый ключ (файл .key), в соответствии с описанными ниже действиями по копированию. ## **Перенос из Unix-систем** В данном случае самым простым вариантом будет воспользоваться встроенной опцией терминала – SCP: 1. Файлы **.CA** и **.CRT **скачиваются из панели Serverspace на ваш компьютер. 2. Открываем терминал и переходим в место скачивания сертификатов, например: ``` cd ~/MyDownloadedFiles ``` Загружаем все выданные сертификаты на веб-сервер: ```bash scp yourtest.com_crt.crt yourtest.com_ca.crt login@121.122.222.111:/etc/ssl ``` **Детальнее:** **scp** — копирует файлы; **yourtest.com_crt.crt** — пример названия скачанного из панели Serverspace сертификата вашего ресурса; **yourtest.com_ca.crt** — пример названия скачанного из панели Serverspace сертификата ЦА; **login** — пользователь, который подключается через SSH (иногда им становится root); **121.122.222.111** – IP-адрес; **/etc/ssl** – папка, в которую вы хотите отправить сохраняемые файлы. ## **Загрузка через операционную систему Windows** Первый шаг – устанавливаем клиент **WinSCP**. Скачать его можно по [ссылке](https://winscp.net/download/WinSCP-5.9.1-Setup.exe). Запускаем. Откроется окно, куда необходимо ввести параметры подключения по протоколу SSH. Слева вы увидите папки и файлы локальной машины, справа — файлы рабочего сервера, к которому подключились. Следует выбрать (либо создать, если такового нет) место, куда отправятся сертификаты. Используя функцию drag-n-drop, зажав левую клавишу мышки, переносите файлы **.CA** и **.CRT**. **Важно**: удобнее будет сохранить **.key **в том же месте, где уже лежат файлы сертификатов. Это необязательно, но тогда вам придется запоминать расположение этого файла и указывать этот путь при конфигурации Apache, а не путь с нашего примера. Чтобы сделать копию .key и отправить в иную директорию, в случае генерации закрытого ключа на сервере, можно воспользоваться командой: ``` cp /home/root/private.key /etc/ssl/private.key ``` **При этом:** **cp** — отвечает за копирование; **/home/root/ **— путь к файлу, если вы зашли "под рутом"; **private.key** — имя файла самого ключа; **/etc/ssl/private.key **— путь, куда мы хотим скопировать ключ. Можно воспользоваться командой и удалить ключ в старой директории: ``` rm /home/root/private.key ``` ## **Конфигурация Nginx для SSL** Когда вы сделали копии всех необходимых сертификатов, нужно сконфигурировать Nginx. Чтобы это сделать, заходим через SSH под root-ом и делаем следующее: 1. **.CA** (файл центра сертификации), а также **.CRT** (файл сайта) преобразовываем в один: ``` cat /etc/ssl/testdomain.com_crt.crt /etc/ssl/testdomain.com_ca.crt >> testdomain.crt ``` 2. Открываем файл с настройками ресурса, для которого необходим сертификат SSL. Ниже пример, когда параметры находятся по адресу **/etc/nginx/sites-enabled/files**: ``` nano /etc/nginx/sites-enabled/files ``` **Обратите внимание: **на **Ubuntu/Debian**-дистрибутивах параметры веб-ресурсов Nginx обычно размещаются в директории **/etc/nginx/sites-enabled/.** В дистрибутиве **CentOS **стандартной директорией считается **/etc/nginx/conf.d/**. В системах Unix-семейства хорошо работает поиск через команду **ls /папка/настройки (например, ls /etc/nginx/sites-enabled)**, которая откроет полный перечень файлов в каталоге. Далее, используя утилиту **nano, **открываем выбранный файл (например, **nano /etc/nginx/websites-enabled/file**). Узнать, тот ли файл мы нашли, можно внутри **server_name**. Значение этой строки необходимо заменить на домен, куда устанавливается сертификат (например,** website.com**). **Важно для дистрибутива CentOS: **в случае отсутствия редактора **nano**, можно установить его следующим образом: ```bash yum install nano ``` Добавьте параметры из примера к вашей конфигурации: ``` listen 443 ssl; ``` ``` ssl_certificate /etc/ssl/testdomain.crt; ``` ``` ssl_certificate_key /etc/ssl/test.key; ``` **Не забудьте поменять на ваши:** **/etc/ssl/test.crt **— прописать расположение ваших сертификатов; **/etc/ssl/test.key **— прописать расположение закрытого ключа. Сделаем рестарт: **Рестарт на Debian и Ubuntu:** ``` /etc/init.d/nginx restart ``` **Рестарт на CentOS:** ```bash service nginx restart ``` Допустим, у вас есть настроенный **iptables **firewall. В этом случае следует открыть **443 порт**. Просто обратитесь к документации той системы, которую используете. Различные дистрибутивы Linux могут работать с iptables по-своему. Вот пара примеров: **Для CentOS пишем:** ``` iptables -A INPUT -p tcp -m tcp —dport 443 -j ACCEPT ``` **Ubuntu 16.04 более лаконичен:** ``` ufw allow 443/tcp ``` **В Debian пишем следующее:** ``` iptables -A INPUT -p tcp -m state —state NEW -m tcp —dport 443 -j ACCEPT ``` ## **Проверяем настройки** После всех проведенных манипуляций на вашем Apache имеются готовые сертификаты SSL. Дабы удостовериться в правильности всех конфигураций, откройте ваш ресурс через любой браузер, добавив к адресу сайта (например, http://yourwebsite.com) букву s, чтобы получилось так: http**s**://yourwebsite.com. Если вы сделали всё правильно, возле URL-адреса сайта будет отображен "замок". Если вы нажмете на замок, то получите информацию об SSL-сертификате. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/ustanovka-cockpit-na-ubuntu-18-04.md Cockpit — функциональная и мощная панель управления сервером GNU/Linux. Обладает удобным и красивым веб-интерфейсом. Рассмотрим процесс установки под Ubuntu. **Cockpit **— достаточно функциональная и мощная панель управления сервером GNU/Linux. Обладает удобным и красивым веб-интерфейсом. ## **Процесс установки** 1. Обновляем список пакетов: ```bash sudo apt update ``` 2. Устанавливаем Cockpit: ```bash sudo apt -y install cockpit ``` 3. Запускаем Cockpit: ```bash sudo systemctl start cockpit ``` 4. Проверяем статус: ```bash sudo systemctl status cockpit ``` 5. Переходим в браузере по ссылке: ``` http://:9090 или http://:9090. ``` Логин и пароль указываем такие же, как у root-пользователя: https://serverspace.by/support/help/ustanovka-gitlab-na-centos-6-7.md Рассмотрим процесс установки GitLab - системы управления Git-репозиториями, позволяющей производить анализ кода, отслеживать и вести учет ошибок, ставить задачи тестирования, деплоя, а также для ведения документации и т.д. GitLab — это система управления Git-репозиториями, позволяющая производить анализ кода, отслеживать и вести учет ошибок, ставить задачи тестирования, деплоя, а также для ведения документации и т.д. ## Подготовка к установке В контексте данной инструкции полагается, что установка будет проходить на "чистом" сервере. Для корректной работы GitLab потребуются: - CentOS 6/7; - Postfix; - Open SSH; - Ruby; - Go; - Nodejs; - База данных (PostgreSQL или MySQL); - Redis; - Nginx. ## Установка Существует 3 способа установки GitLab: - Установка пакета; - Установка из репозитория; - Сборка и установка из исходников. Рекомендуемым разработчиками вариантом является установка GitLab из репозитория. Для того чтобы установить GitLab из репозитория необходимо выполнить следующие действия: Установим необходимые зависимости: ```bash sudo yum install -y curl policycoreutils-python openssh-server ``` Данная команда установит следующие пакеты: ```bash cURL, OpenSSH-Server и PolicyCoreUtils-Python ``` После установки данных пакетов необходимо запустить и включить в автозагрузку OpenSSH-Server. Для этого поочередно вводим следующие команды: Включаем OpenSSH-Server в автозагрузку: ```bash sudo systemctl enable sshd ``` Запускаем OpenSSH-Server: ```bash sudo systemctl start sshd ``` Добавляем новые правила в Firewall и перезагружаем его: ``` sudo firewall-cmd —permanent —add-service=http ``` ``` sudo firewall-cmd —permanent —add-service=https ``` ```bash sudo systemctl reload firewalld ``` Далее установим Postfix для отправки уведомлений на электронную почту. Для этого необходимо выполнить следующие команды: Устанавливаем Postfix: ```bash sudo yum install postfix ``` Добавляем Postfix в автозагрузку: ```bash sudo systemctl enable postfix ``` Запускаем Postfix: ```bash sudo systemctl start postfix ``` В процессе установки Postfix может открыть экран конфигурации. Вам необходимо выбрать "Internet-site" и нажать Enter. Для "mail name" необходимо указать внешний DNS вашего сервера, после чего нажать Enter. Если в процессе установки будут появляться дополнительные экраны, просто продолжайте нажимать Enter, чтобы установить значения по умолчанию. Добавим репозиторий в систему: ```bash curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash ``` Далее необходимо указать внешний адрес системы и произвести установку GitLab. На этом этапе скрипт-установщик скачает около 700 МБ, поэтому нужно немного подождать. Также адрес «https://gitlab.example.com» необходимо заменить на свой: ``` sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ee ``` Откройте установленный вами ранее адрес в браузере. При первом посещении вас перенаправит на смену пароля администратора. После смены пароля вы попадете на страницу авторизации. Используйте логин root и новый пароль для авторизации в системе. https://serverspace.by/support/help/ustanovka-haraka-na-centos.md При помощи нашей инструкции вы сможете за 6 шагов пройти процедуру установки Haraka на CentOS. Haraka - это Node.js Mail Server. ## **Процесс установки** 1. [step num=»1″]Устанавливаем NodeJS: ```bash yum install nodejs12[/step] ``` 2. [step num=»2″]Устанавливаем Haraka: ```bash npm install -g Haraka[/step] ``` 3. [step num=»3″]Генерируем экземпляр Haraka: ``` haraka -i /path/to/haraka_test[/step] ``` Эта команда создаст каталог haraka_test с каталогами config и plugin. Она также устанавливает имя хоста, используемое Haraka, на выход имени хоста. Если имя хоста неверно, отредактируйте /path/to/haraka_test/config/host_list. Например, чтобы получать почту на адрес user@domain.com, добавьте domain.com в файл /path/to/haraka_test/config/host_list. 4. [step num=»4″]Запускаем Haraka с правами root: ``` haraka -c /path/to/haraka_test[/step] ``` 5. [step num=»5″]Настройка Haraka Для включения/отключения плагинов, измените config/plugins. Плагины контролируют поведение Haraka. По умолчанию будут приняты и отправлены только сообщения на домены, которые перечислены в config/host_list.[/step] 6. [step num=»6″]Мануалы по плагинам: ``` haraka -h plugins/$name[/step] ``` На этом установка Haraka завершена. https://serverspace.by/support/help/ustanovka-leveldb-na-centos.md LevelDB - это высокопроизводительная NoSQL БД данных для хранения данных в формате ключ/значение, разработанная компанией Google. Рассмотрим установку LevelDB и протестируем ее работоспособность. **LevelDB** — это высокопроизводительная NoSQL база данных для хранения данных в формате ключ/значение, разработанная корпорацией Google. ## Требования - CentOS 5/6/7; - Python 2.7 и выше; - gcc-c++; - Snappy. ## Установка Устанавливаем утилиту-архиватор: ```bash yum install leveldb snappy ``` Этой командой мы установили LevelDB, теперь нужно протестировать ее работоспособность. Для этого нам понадобится Python-pip. Устанавливаем Python-pip: ```bash yum install python-devel python-pip gcc-c++ ``` Устанавливаем интерфейс взаимодействия с LevelDB: ```bash pip install leveldb-cli ``` Теперь проверим. Создадим новую базу данных: ``` leveldb create -d newdb.db ``` Вставим в неё ключ hello со значением world: ``` leveldb put hello centos -d newdb.db ``` Получим значение hello: ``` leveldb get hello -d newdb.db ``` ``` centos ``` Удалим ключ hello: ``` leveldb delete hello -d newdb.db ``` Попытаемся получить ключ hello: ``` leveldb get hello -d newdb.db ``` ``` Error: key hello does not exist ``` В общем виде это выглядит следующим образом: Скриншот №1. Интерфейс взаимодействия с LevelDB https://serverspace.by/support/help/ustanovka-leveldb-na-ubuntu-18-04-i-ubuntu-16-04.md LevelDB - это высокопроизводительная NoSQL БД данных для хранения данных в формате ключ/значение, разработанная компанией Google. Рассмотрим ее установку на Ubuntu 18.04 и Ubuntu 16.04. **LevelDB** — это высокопроизводительная NoSQL база данных для хранения данных в формате ключ/значение, разработанная корпорацией Google. **** ## **Требования** - Ubuntu-based и Debian-based системы; - Python 2.7 и выше; - libsnappy-dev. ## **Установка** Устанавливаем утилиту-архиватор: ```bash sudo apt-get install libsnappy-dev libleveldb-dev ``` Этой командой мы установили LevelDB, теперь нужно протестировать работоспособность. Для этого нам понадобится Python-pip. Устанавливаем Python-pip: ```bash sudo apt-get install python-pip ``` Устанавливаем интерфейс взаимодействия с LevelDB: ```bash pip install leveldb-cli ``` Теперь проверим. Создадим новую базу данных: ``` leveldb create -d newdb.db ``` Вставим в неё ключ hello со значением world: ``` leveldb put hello world -d newdb.db ``` Далее обратимся к ключу hello, что приведет к получению результата world: ``` leveldb get hello -d newdb.db ``` Удалим ключ hello: ``` leveldb delete hello -d newdb.db ``` Попытаемся получить ключ hello: ``` leveldb get hello -d newdb.db ``` ``` Error: key hello does not exist ``` В общем виде это выглядит следующим образом: https://serverspace.by/support/help/ustanovka-maildrop-na-centos-7.md В данной инструкции продемонстрировано, как собрать и установить Courier-IMAP, Courier-Authlib, и Maildrop в CentOS 7 (данная инструкция также подойдет для систем, построенных на дистрибутивах RedHat — Fedora, RedHat и CentOS). В данной инструкции продемонстрировано, как собрать и установить Courier-IMAP, Courier-Authlib, и Maildrop в CentOS 7 (данная инструкция также подойдет для систем, построенных на дистрибутивах RedHat — Fedora, RedHat и CentOS). ## **Процесс установки** Устанавливаем зависимости: ```bash yum groupinstall 'Development Tools' ``` ```bash yum groupinstall 'Development Libraries' ``` ```bash yum install rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool- ``` ``` ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel ``` Создаём нового пользователя (RPM-пакет Courier-IMAP нельзя собирать из под root-пользователя. Во время компиляции будет выдана ошибка, поэтому необходимо авторизоваться либо создать новый аккаунт): ``` useradd -m -s /bin/bash usr1 ``` ``` passwd usr1 ``` Далее необходимо добавить новому пользователю права на использование sudo. Запустите команду: ``` visudo ``` В открывшемся файле найдите строку: ``` root ALL=(ALL) ALL ``` и добавьте после неё следующую строку: ``` usr1 ALL=(ALL) ALL ``` Собираем пакеты Maildrop, Courier-Authlib и Courier-IMAP: ``` su usr1 ``` Создаём окружение для сборки: ``` mkdir $HOME/rpm ``` ``` mkdir $HOME/rpm/SOURCES ``` ``` mkdir $HOME/rpm/SPECS ``` ``` mkdir $HOME/rpm/BUILD ``` ``` mkdir $HOME/rpm/SRPMS ``` ``` mkdir $HOME/rpm/RPMS ``` ``` mkdir $HOME/rpm/RPMS/i386 ``` ``` echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros ``` Создаем директории для скачивания Courier и загружаем последние версии: ``` mkdir $HOME/downloads ``` ``` cd $HOME/downloads ``` ```bash wget http://prdownloads.sourceforge.net/courier/courier-authlib-0.60.2.tar.bz2 ``` ```bash wget http://prdownloads.sourceforge.net/courier/courier-imap-4.2.1.tar.bz2 ``` ```bash wget http://prdownloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2 ``` **[/step]** Собираем пакет Courier-Authlib. Находясь в директории $HOME/downloads выполните команду: ``` sudo rpmbuild -ta courier-authlib-0.60.2.tar.bz2 ``` После успешной сборки готовый пакет будет размещен в директории: ``` $HOME/rpm/RPMS/i386 ``` Для просмотра доступных RPM-пакетов перейдите в директорию: ``` cd $HOME/rpm/RPMS/i386 ``` и выполните следующую команду: ``` ls -l ``` После выполнения данной команды вы увидите список доступных к установке пакетов: -rw-r—r— 1 root root 137335 2007-11-13 18:02 courier-authlib-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 323827 2007-11-13 18:02 courier-authlib-debuginfo-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 34201 2007-11-13 18:02 courier-authlib-devel-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 18039 2007-11-13 18:02 courier-authlib-ldap-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 14258 2007-11-13 18:02 courier-authlib-mysql-0.60.2-1.fc8.i386.rpm Собираем пакет Courier-IMAP. Переходим в директорию со скачанными исходниками: ``` cd $HOME/downloads ``` Выполняем команду rpmbuild без sudo: ``` rpmbuild -ta courier-imap-4.2.1.tar.bz2 ``` После успешного создания пакета он будет находиться в следующей директории $HOME/rpm/RPMS/i386. Переходим в неё: ``` cd $HOME/rpm/RPMS/i386 ``` Смотрим доступные для установки пакеты командой: ``` ls -l ``` -rw-r—r— 1 root root 137335 2007-11-13 18:02 courier-authlib-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 323827 2007-11-13 18:02 courier-authlib-debuginfo-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 34201 2007-11-13 18:02 courier-authlib-devel-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 18039 2007-11-13 18:02 courier-authlib-ldap-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 14258 2007-11-13 18:02 courier-authlib-mysql-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 13602 2007-11-13 18:02 courier-authlib-pgsql-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 8336 2007-11-13 18:02 courier-authlib-pipe-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 36859 2007-11-13 18:02 courier-authlib-userdb-0.60.2-1.fc8.i386.rpm -rw-rw-r— 1 falko falko 383455 2007-11-13 18:21 courier-imap-4.2.1-1.8.i386.rpm -rw-rw-r— 1 falko falko 917771 2007-11-13 18:21 courier-imap-debuginfo-4.2.1-1.8.i386.rpm Собираем пакет Maildrop. Переходим в директорию со скачанными исходниками: ``` cd $HOME/downloads ``` Выполняем следующую команду с использованием sudo: ``` sudo rpmbuild -ta maildrop-2.0.4.tar.bz2 ``` После успешной сборки Maildrop перемещаемся в папку с собранными пакетами: ``` cd $HOME/rpm/RPMS/i386 ``` Смотрим доступные для установки пакеты: ``` ls -l ``` -rw-r—r— 1 root root 324618 2007-11-13 18:02 courier-authlib-debuginfo-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 137343 2007-11-13 18:02 courier-authlib-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 34208 2007-11-13 18:02 courier-authlib-devel-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 18042 2007-11-13 18:02 courier-authlib-ldap-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 13599 2007-11-13 18:02 courier-authlib-pgsql-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 14254 2007-11-13 18:02 courier-authlib-mysql-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 8339 2007-11-13 18:02 courier-authlib-pipe-0.60.2-1.fc8.i386.rpm -rw-r—r— 1 root root 36855 2007-11-13 18:02 courier-authlib-userdb-0.60.2-1.fc8.i386.rpm -rw-rw-r— 1 falko falko 383455 2007-11-13 18:21 courier-imap-4.2.1-1.8.i386.rpm -rw-rw-r— 1 falko falko 917771 2007-11-13 18:21 courier-imap-debuginfo-4.2.1-1.8.i386.rpm -rw-r—r— 1 root root 752872 2007-11-13 18:35 maildrop-debuginfo-2.0.4-1.8.i386.rpm -rw-r—r— 1 root root 299030 2007-11-13 18:35 maildrop-2.0.4-1.8.i386.rpm -rw-r—r— 1 root root 136235 2007-11-13 18:35 maildrop-devel-2.0.4-1.8.i386.rpm -rw-r—r— 1 root root 58439 2007-11-13 18:35 maildrop-man-2.0.4-1.8.i386.rpm Устанавливаем пакеты: ``` sudo rpm -ivh courier-authlib-0.60.2-1.fc8.i386.rpm ``` ``` sudo rpm -ivh courier-authlib-devel-0.60.2-1.fc8.i386.rpm ``` ``` sudo rpm -ivh courier-authlib-mysql-0.60.2-1.fc8.i386.rpm ``` ``` sudo rpm -ivh courier-imap-4.2.1-1.8.i386.rpm ``` ``` sudo rpm -ivh maildrop-2.0.4-1.8.i386.rpm ``` После установки всех пакетов необходимо выйти из под пользователя usr1 следующей командой: ``` exit ``` На этом этап сборки и установки Courier и Maildrop завершен. https://serverspace.by/support/help/ustanovka-maildrop-na-ubuntu.md Maildrop - высокопроизводительный Open Source SMTP-сервер. Рассмотрим установку Maildrop на Ubuntu 18.04 всего за 2 шага. Maildrop — это высокопроизводительный Open Source SMTP-сервер. ## Процесс установки 1. Обновляем список пакетов apt: ```bash sudo apt update ``` 2. Устанавливаем Maildrop: ```bash sudo apt install maildrop ``` На этом этап установки Maildrop на Ubuntu 18.04 завершен. https://serverspace.by/support/help/ustanovka-riak-kv-na-centos-6-7.md Riak KV - это распределенная база данных NoSQL, разработанная для обеспечения максимальной доступности данных путем распределения данных междунесколькими серверами. Riak KV — это распределенная база данных NoSQL, разработанная для обеспечения максимальной доступности данных путем их распределения между несколькими серверами. База Riak KV также может быть установлена на системы, основанные на Debian и Ubuntu, с помощью сборки из исходников или с помощью бинарного файла. На данный момент база протестирована и работает на следующих версиях CentOS: - CentOS 7.4; - CentOS 6.10. На других версиях работоспособность не гарантируется. Если у вас не включен SELinux, его необходимо отключить. Проверим статус SELinux, выполнив команду: ``` sestatus ``` Вывод скорее всего будет следующий: Скриншот №1. SELinux включен и использует политику enforcing На данном изображении видно, что SELinux включен и использует политику enforcing. Для отключения SELinux необходимо выполнить несколько действий: Открываем файл /etc/selinux/config с помощью любого редактора, например nano: ``` nano /etc/selinux/config ``` Находим параметр SELinux и меняем его значение на disabled: ``` SELinux=enforcing ``` Скриншот №2. Отключение SELinux Чтобы изменения вступили в силу, необходимо перезагрузить SELinux: ``` sudo setenforce 0 ``` ## Установка Первым делом необходимо добавить репозиторий в систему. Для этого есть специальный скрипт, который конфигурирует файл и сохраняет его в /etc/yum.repos.d/ под именем basho.repo. От вас требуется только указать версию CentOS и запустить скрипт. Создаем файл script.sh: ``` nano script.sh ``` Вносим в него следующие строки, где DIST — это версия вашей операционной системы: ```bash #!/bin/bash HOSTNAME=hostname -f FILENAME=/etc/yum.repos.d/basho.repo OS=el DIST=7 PACKAGE_CLOUD_RIAK_DIR=https://packagecloud.io/install/repositories/basho/riak curl "${PACKAGE_CLOUD_RIAK_DIR}/config_file.repo?os=${OS}&dist=${DIST}&name=${HOSTNAME}" > $FILENAME ``` После того как, вы сохранили файл script.sh, его необходимо запустить. Для этого необходимо ввести следующую команду в месте, где расположен файл: ``` sh script.sh ``` После этого скрипт автоматически добавит два репозитория Riak. Обновляем список пакетов: ```bash yum update ``` Устанавливаем Riak: ```bash yum install riak ``` Далее необходимо запустить Riak. Для этого выполняем следующую команду: ``` riak start ``` Если в результате выполнения команды у вас возникает ошибка, просто добавьте два значения в файл /etc/security/limits.conf. Открываем файл: ``` nano /etc/security/limits.conf ``` Перемещаемся в конец файла и вставляем 2 строки: ``` * soft nofile 65536 ``` ``` * hard nofile 65536 ``` Сохраняем файл и перезапускаем Riak: ``` riak restart ``` В результате команда должна вернуть ok в консоль. Это будет означать, что Riak перезагрузился и можно проверить его работоспособность, например, получив свойства Riak: ```bash curl -v http://127.0.0.1:8098/types/default/props ``` В результате вы получите подобный вывод: Скриншот №3. Установка Riak KV на CentOS 6/7 завершена На этом установка Riak KV на CentOS 6/7 завершена. https://serverspace.by/support/help/ustanovka-riak-kv-na-ubuntu-i-debian.md На данный момент база Riak KV протестирована и работает на следующих версиях: Ubuntu 16.04 и Debian 8.11. Рассмотрим установку Установка Riak KV на эти версии. Riak KV — это распределенная база данных NoSQL, разработанная для обеспечения максимальной доступности данных путем их распределения между несколькими серверами. База Riak KV также может быть установлена на CentOS. На данный момент база протестирована и работает на следующих версиях Ubuntu и Debian: - Ubuntu 16.04; - Debian 8.11. На других версиях работоспособность не гарантируется. ## **Установка** Первым делом необходимо добавить репозиторий в систему. Для этого есть специальный скрипт, который конфигурирует файл и сохраняет его в /etc/apt/sources.list.d под именем basho.list. От вас требуется только указать дистрибутив и версию, после чего запустить скрипт. Создаем файл script.sh: ``` nano script.sh ``` Вносим в него следующие строки, где OS — это операционная система (Ubuntu или Debian), и DIST — версия вашей операционной системы (для Ubuntu — Xenial, для Debian — 8): ```bash #!/bin/bash HOSTNAME=hostname -f ``` ```bash FILENAME=/etc/apt/sources.list.d/basho.list OS=ubuntu DIST=xenial PACKAGE_CLOUD_RIAK_DIR=https://packagecloud.io/install/repositories/basho/riak curl "${PACKAGE_CLOUD_RIAK_DIR}/config_file.list?os=${OS}&dist=${DIST}&name=${HOSTNAME}" > $FILENAME ``` После того, как вы сохранили файл script.sh, его необходимо запустить. Для этого необходимо ввести следующую команду в месте, где расположен файл: ``` sh script.sh ``` После этого скрипт автоматически добавит два репозитория Riak. Обновляем список пакетов (может выдать ошибку, что не найден GPG ключ — пропускаем): ```bash apt-get update ``` Устанавливаем Riak: ```bash apt-get install riak ``` Далее необходимо запустить Riak. Для этого выполняем следующую команду: ``` riak start ``` Если в результате выполнения команды у вас возникает ошибка, просто добавьте два значения в файл /etc/security/limits.conf. Открываем файл: ``` nano /etc/security/limits.conf ``` Перемещаемся в конец файла и вставляем 2 строки: ``` * soft nofile 65536 ``` ``` * hard nofile 65536 ``` Сохраняем файл и перезапускаем Riak: ``` riak restart ``` В результате команда должна вернуть ok в консоль. Это будет означать, что Riak перезагрузился и можно проверить его работоспособность, например, получив свойства Riak: ```bash curl -v http://127.0.0.1:8098/types/default/props ``` В результате вы получите подобный вывод: На этом установка Riak KV на Ubuntu 16.04 и Debian 8 завершена. https://serverspace.by/support/help/ustanovka-zabbix-agent-na-windows.md Zabbix-агент - это программа для осуществления контроля локальных ресурсов и приложений на сетевых системах. Данный агент может быть установлен на платформах Windows и *nix. Zabbix-агент — это программа для осуществления контроля за локальными ресурсами и приложениями на сетевых системах. Данный агент может быть установлен на платформах Windows и *nix, что позволяет объединить в одном сервисе различные платформы. ## **Требования** 1. Zabbix-сервер. 2. Узел с OS Windows. ## **Установка** Скачиваем пакет Zabbix-agent: [для AMD64](https://www.zabbix.com/downloads/4.2.6/zabbix_agent-4.2.6-win-amd64-openssl.msi), [для i386](https://www.zabbix.com/downloads/4.2.6/zabbix_agent-4.2.6-win-i386-openssl.msi). Запускаем скачанный установочный пакет: Нажимаем Next и переходим к соглашению. Ставим галочку и нажимаем Next: Переходим к настройкам агента. Указываем IP-адрес, либо хост Zabbix-сервера, порт (если меняли), а также другие настройки. Если необходимо, чтобы узел управлялся мастер-сервером, поставьте галочку напротив Remote command и нажмите Next: Следующий этап установки позволяет выбрать путь установки, а также устанавливаемые компоненты. Нажимаем Next: Мы на завершающем этапе. Нажимаем Install: В результате Zabbix-agent будет установлен. https://serverspace.by/about/news/novaya-linejka-tarifov-vps-na-baze-vstack.md Стоимость минимальной конфигурации Linux-сервера на базе платформы vStack составляет всего 8 рублей! Готовые конфигурации VPS на vStack. Мы запустили новую линейку **готовых тарифов ****VPS** на ОС Linux и Windows на базе гиперконвергентной платформы [vStack](https://vstack.com/). Стоимость минимальной конфигурации Linux-сервера на базе vStack, включающего в себя 1 CPU, 1 RAM и 25 ГБ SSD, а также размещение в крупнейшем дата-центре Амстердама AM2, составляет **8 рублей**, и на сегодняшний день это одно из лучших предложений на рынке аренды облачной инфраструктуры. [ПОДОБРАТЬ VPS на vStack](https://serverspace.by/services/vps-server.md) При этом нашим клиентам по-прежнему доступны готовые тарифы и индивидуальные конфигурации виртуальных серверов на базе enterprise-решения VMware. ## Что такое vStack? vStack — это новейшая платформа, разработанная на основе OpenSource-технологий, каждая из которых обладает набором уникальных особенностей: - **Операционная система FreeBSD** Отсутствие избыточности в кодовой базе, демократичное сообщество, а также смелые решения в отношении вектора развития. - **Гипервизор bhyve** Легковесность сетевой части, необычная модель использования виртуальной памяти вкупе со своеобразным подходом по отношению к виртуализации CPU. - **Файловая система ZFS** POSIX-слой и транзакционная целостность по модели A.C.I.D., развитая модель настройки, совмещенное управление томами и файловыми системами, продвинутые механизмы контроля целостности, коррекции и восстановления, а также двухуровневый механизм кэширования (ARC). Платформа vStack объединяет данные технологии, дополняя их **собственными разработками**: - Кластером, выполняющим резервирование элементов платформы и, при необходимости, восстановление функциональности этих элементов; - Высокопроизводительными виртуальными сетями с минимальным overhead для узлов кластера; - Системой мониторинга доступности и производительности элементов платформы; - Системой оркестрации; - Единым интерфейсом управления, предоставляющим JSON-RPC API; - Web-интерфейсом для администраторов платформы, её компонентов (например vDC) или обычных пользователей. ### **Преимущества vStack для клиентов** - **Быстрая поддержка** Стартап vStack.com входит в группу компаний ITGLOBAL.COM, что при необходимости позволит вносить доработки в структуру платформы максимально оперативно. - **Выгодные тарифы** За счет отсутствия комиссий за использование платформы стоимость услуги аренды виртуальных серверов была снижена **почти в 2 раза**. [ПОДОБРАТЬ VPS на vStack](https://serverspace.by/services/vps-server.md) https://serverspace.by/support/help/zapusk-fonovih-komand-linux.md В инструкции рассказано, как прописать команды через фоновый режим и напрямую использовать интерфейс командной строки. Полезные команды. В инструкции будет рассказано, как прописать те или иные команды через фоновый режим и напрямую использовать интерфейс командной строки. Фоновый процесс – это любые команды, работа которых была запланирована юзером в принудительном порядке. Такие действия не будут отображаться на мониторе и не заметны рядовому пользователю. Яркий пример процесса – сервер Apache, обслуживающий веб-страницу, а также скрипты оболочек ПО и команды. ## Правила синтаксиса Работу многих команд, задач и скриптов возможно перестроить под фоновый процесс одним добавлением символа "&". Амперсанд следует поставить в командную строку в самый конец функции. После чего он быстро перенесет скрипты и освободит немного свободного места. Те скрипты, которые будут работать через фоновый режим, называются заданиями. Синтаксис для их выполнения будет иметь такой вид: ``` command & script-name & /path/to/command arg1 arg2 & command-1 | command-2 arg1 & command-1 | command-2 -arg1 -arg2 >/path/to/output & ``` ## Как это выглядит Рассмотрим простой пример перевода некоторой команды ls: ``` $ ls *.py > output.txt & ``` Для перевода последующего поискового скрипта нужно будет добавить амперсанд после всего выражения: ``` find . -iname "*.mp3" > myplaylist.txt & ``` ## Обнаружение заданий, работающих через фоновые процессы Чтобы найти команды и скрипты, которые были переведены в фоновый режим, понадобится команда: ``` jobs ``` К примеру: ``` [1]- Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt & ``` ``` [2]+ Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt & ``` В этом выражении [1] и [2] являются идентификаторами задания. Для их дальнейшего отображения через идентификатор процесса нужно будет ввести -l: ``` jobs –l ``` К примеру: ``` [1]- 7307 Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt & ``` ``` [2]+ 7324 Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt & ``` Если нужно показать только идентификатор процесса, следует написать: ``` jobs -p ``` К примеру: ``` 7307 ``` ``` 7324 ``` ## Удаление скриптов, функционирующих через фоновый режим Если юзеру понадобилось постепенно или принудительно завершить фоновый процесс одной из задач, следует воспользоваться командой "kill": ``` kill PID ``` ``` kill -15 PID ``` ``` kill -9 PID ``` ``` killall process-Name-Here ``` ``` killall -15 process-Name-Here ``` ``` killall -9 process-Name-Here ``` ## Перемещение фонового процесса на место приоритетного Для выполнения перемещений используется: ``` %JOB-ID ``` Либо ``` fg JOB-ID ``` Поначалу выводятся все текущие фоновые процессы при помощи синтаксиса: ``` jobs -l ``` К примеру: ``` [1]- 7307 Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt & ``` ``` [2]+ 7324 Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt & ``` Перевод задания со вторым идентификатором осуществится благодаря команде: ``` %2 ЛИБО fg 2 ``` Как можно вывести данные: ``` grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt ``` Если потребуется приоритетные задания сделать снова фоновыми, достаточно будет удерживать "CTRL" и одновременно нажать "Z". Все работающие приоритетные задачи будут остановлены на некоторое время. Возвращение к фоновому режиму будет проводиться так: ``` %2 & ЛИБО bg ``` Таким образом "grep" вернется к фоновому режиму. ## Наиболее полезные команды | Описание | Команда | | --- | --- | | Покажет все выполняемые задания, а также их идентификаторы | jobs jobs -l ps aux | | Переведет команду или скрипт для работы в приоритетном режиме | command & /path/to/command & /path/to/script arg1 & | | Переведет фоновое задание для работы в приоритетном режиме | fg n %n | | Переведет команду обратно к фоновому режиму, не запрашивая его отмену | bg n %n & | Под "n" подразумевается идентификационный номер заданий, он выводится при выполнении команды "jobs". https://serverspace.by/support/help/nastroika-vpn-v-paneli-upravleniya.md В инструкции описана процедура создания VPN-тоннеля между сетями в панели управления Serverspace. Так же можно настроить зашифрованное соединение между удаленными частными сетями. В инструкции описана процедура создания VPN-тоннеля между сетями в панели управления Serverspace. ## Что такое технология VPN? VPN (Virtual Private Network) — виртуальная частная сеть, которая обеспечивает сетевое соединение на потенциально большом физическом расстоянии. В этом отношении VPN является формой глобальной сети. VPN поддерживают обмен файлами, видеоконференции и другими аналогичными сетевыми сервисами. VPN может работать как в общедоступных сетях, таких как Интернет, так и в частных сетях. Используя метод, называемый тоннелированием, VPN работает через ту же аппаратную инфраструктуру, что и существующие каналы Интернет. Технологии VPN также включают различные механизмы безопасности для защиты виртуальных соединений. VPN поддерживает как минимум три различных режима использования: - клиентские подключения удаленного доступа к интернету; - межсетевое взаимодействие LAN-to-LAN; - контролируемый доступ в интрасети. В панели управления можно настроить зашифрованное соединение между удаленными частными сетями по сетью, расположенной в инфраструктуре Serverspace. ## Как создать VPN-тоннель Для создания VPN-тоннеля перейдите на вкладку VPN в настройках выбранной сети. Нажмите кнопку Добавить, чтобы создать тоннель. В открывшемся окне требуется заполнить следующие поля: Name — удобное и ясное название VPN-соединения. Local Network — адрес выбранной сети в панели управления Serverspace, значение устанавливается автоматически. 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 байт. С помощью галочки VPN включен можно управлять состоянием тоннеля. Установите галочку и сохраните изменения. Ключ шифрования, скорее всего, будет нужен на другом конце тоннеля. Если на обеих сторонах все настроено правильно, то в панели отобразится статус OK. Примечание: существует два статуса соединения по VPN-тоннелю — ОК (зеленая галочка) и Critical (красный крестик). Обновление статуса происходит при перезагрузке страницы в браузере и при открытой странице — каждые 15 секунд. Если тоннель больше не нужен, то его можно удалить с помощью серого крестика в столбце Действия, а затем выполнить подтверждение. https://serverspace.by/support/help/ustanovka-lamp-steka-na-ubutu-18-04.md Описание установки LAMP-стека (Linux, Apache, MySQL и PHP) на виртуальные VPS серверы с операционной системой Ubuntu 18.04. Описание установки LAMP-стека на виртуальные серверы с операционной системой Ubuntu 18.04. ## Что такое LAMP-стек? LAMP — это акроним, который традиционно означает "Linux, Apache, MySQL и PHP", что является популярным набором программного обеспечения многих веб-приложений или веб-сайтов. Стек LAMP является достаточно мощным, и при этом он сравнительно прост и удобен в использовании. В последние годы набирают популярность разные вариации LAMP-стека, например, вместо языка программирования PHP используют Python или Perl, а вместо СУБД MySQL используют PostgreSQL. На виртуальных серверах ServerSpace операционная система семейства Linux, а именно Ubuntu 18.04, уже установлена, поэтому в инструкции будет описана установка остальных компонентов. ## Установка Apache Самым сердцем LAMP-стека является серверное программное обеспечение под названием Apache. Работа веб-сервера заключается в обработке HTTP-запросов, которые используются для отправки информации через Интернет. Apache это самое популярное в мире программное обеспечение для веб-серверов, оно чрезвычайно стабильно и имеет полностью открытый исходный код. Чтобы установить Apache, используйте следующую команду: ```bash sudo apt-get install apache2 ``` Перед проверкой не забудьте открыть порт HTTP, например с помощью утилиты iptables: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` Перейдите в браузере по следующему адресу: ``` http://IP-адрес-сервера/ ``` В итоге откроется следующая страница-заглушка. Скриншот №1. Страница-заглушка ## Установка MySQL Далее необходимо установить систему управления базами данных. MySQL является наиболее распространенной СУБД, ее относительно легко установить и начать работать. Это вполне быстрая система из-за того, что в ней не реализован полный стандарт SQL и столько типов данных, сколько в других СУБД (в частности, PostgreSQL). Это делает MySQL отличным инструментом для использования при написании простых приложений, которые быстро работают и просты в настройке, но не требуют слишком сложного функционирования. Для установки MySQL выполните следующую команду: ```bash sudo apt-get install mysql-server ``` После установки рекомендуется запускать скрипт безопасности: ``` sudo mysql_secure_installation ``` Для проверки установки необходимо подключиться к MySQL, при подключении требуется ввести пароль: ```bash mysql -u root -p ``` ## Установка PHP PHP — это компонент конфигурации, который предназначен для отображения динамического контента. Он запускает сценарии и скрипты, подключается к базам данных MySQL для получения информации и направляет обработанный контент на веб-сервер для просмотра. Для установки PHP выполните следующую команду: ```bash sudo apt install php ``` При этом будет установлена последняя доступная в репозиториях Ubuntu версия PHP (на данный момент PHP 7.2) и некоторые дополнительные компоненты, например: libapache2-mod-php7.2 libsodium23 php-common php7.2 php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline Часто требуется установить дополнительные компоненты PHP, для их поиска используйте следующую команду: ```bash apt-cache search php7 ``` В результате отобразится список доступных компонентов и их краткое описание. Для установки можно использовать команду следующего вида: ```bash apt install module-name ``` ## Проверка установки LAMP-стека С помощью текстового редактора создайте проверочный файл php: ``` vi /var/www/html/info.php ``` Добавьте в него следующее содержимое и сохраните изменения: ``` ``` Выполните перезагрузку сервера Apache: ```bash service apache2 restart ``` Перейдите в браузере по следующему адресу: http://IP-адрес-сервера/info.php Если все установлено верно, то вы увидите информационную страницу. Скриншот №2. Информационная страница https://serverspace.by/support/help/nastroika-nat-v-paneli-upravleniya.md Описание процедуры настройки NAT в маршрутизируемых (routed) сетях в панели управления Serverspace. NAT — это процедура замены IP-адресов и портов в заголовке IP-пакетов. Описание процедуры настройки NAT в маршрутизируемых (routed) сетях в панели управления Serverspace. Что такое NAT? Трансляция сетевых адресов (NAT) — это процедура замены IP-адресов и портов в заголовке IP-пакетов. Чаще всего NAT используется, чтобы заменить IP-адрес внутренней сети во внешний IP-адрес, например маршрутизатора. Когда другие компьютеры в Интернете пытаются получить доступ к компьютерам в локальной сети, они видят только адрес маршрутизатора. Это добавляет дополнительный уровень безопасности, поскольку маршрутизатор можно настроить как брандмауэр, позволяя только авторизованным системам получать доступ к компьютерам в локальной сети. Основная цель создания NAT — преодоление нехватки адресов IPv4. В нашей инфраструктуре используется тип NAT Один ко многим, т.е. множество локальных адресов отображаются на один внешний IP-адрес маршрутизатора. Именно с его помощью можно подключать к сети Интернет большие сети используя лишь один внешний IP-адрес. Создание правила Для начала необходимо создать маршрутизируемую (routed) сеть в панели управления и подключить к ней виртуальные сервера. В одну сеть можно объединить только сервера из одного центра обработки данных. После того как сеть настроена, нужно открыть вкладку 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-правила. Для редактирования правила и кликните левой кнопкой мыши на его поле NAT type. После того, как пользователь внес изменения их необходимо сохранить. Примечание: с помощью флага Enable можно включать или отключать правило. ## Удаление NAT правил Если правило стало неактуальным, то его можно удалить. Выполнить удаление можно с помощью Крестика. Действие по удалению правила необходимо подтвердить во всплывающем окне. https://serverspace.by/support/help/ustanovka-prilozhenija-authy.md Установка и настройка приложения Authy на различные мобильные операционные системы (Android, iOS) и на рабочий стол Windows и для macOS. В инструкции описан процесс установки приложения Google Authenticator на различные мобильные операционные системы (Android, iOS), на рабочий стол Windows (также доступно на macOS), а также его использование при подключении к панели управления. ## Что это такое? Приложение Authy обеспечивает двухфакторную аутентификацию (2FA). 2FA — дополнительный уровень безопасности, используемый для подтверждения пользователей, пытающихся получить доступ к онлайн-учетной записи. Сначала, пользователь вводит свои логин и пароль. Затем, вместо того, чтобы немедленно получить доступ, он должен будет предоставить другую информацию, например: - дополнительные сведения (персональный идентификационный номер (ПИН), пароль, ответы на "секретные вопросы" или конкретная последовательность нажатия клавиш); - подтверждение владения (как правило, пользователь имеет что-то в своем распоряжении, например, кредитную карту, смартфон или небольшой аппаратный токен); - биометрические данные (эта категория немного более продвинута и может включать биометрический рисунок отпечатка пальца, сканирование диафрагмы или голосовую печать). Таким образом, даже если у вас украден пароль или потерян телефон, вероятность того, что кто-то другой получит доступ к вашей информации маловероятен. У приложения Authy есть широкий набор дополнительных функций: создание резервной копии базы, шифрование данных и резервных копий в облаке без сохранения паролей, использование приложения на нескольких устройствах. ## Установка Authy на Android Для установки приложения на операционную систему Android достаточно просто скачать его в магазине [GooglePlay](https://play.google.com/store/apps/details?id=com.authy.authy): Скриншот №1. Приложение в GooglePlay После установки приложения, необходимо указать код страны, ваш мобильный номер и почтовый адрес: Скриншот №2. Ввод данных Далее необходимо подтвердить введенный телефон, выберете наиболее удобный способ: звонок оператора или СМС: Скриншот №3. Подтверждение телефона После можно переходить к добавлению аккаунта. В ОС Android сделать скриншот окна с аккаунтами не представляется возможным из-за политики безопасности, но оно является аналогичным iOS. Нажмите на **+** в центре окна. Вам будет предложено хранить зашифрованные копии в облаке Authy. Рекомендуем включить резервирование, т.к. при утере устройства, вы сможете без проблем восстановить данные. Введите и подтвердите пароль, затем нажмите **Enable Backups**: Скриншот №4. Подключение резервирования Доступно два способа добавления аккаунта: сканировать штрихкод и ввести ключ. Наиболее удобным является сканирование (**Scan QR code**) — перед вами откроется камера, где в выделенный квадрат необходимо поместить QR-код, который будет распознан автоматически, а аккаунт сразу добавлен: Скриншот №5. Добавление аккаунта ## Установка Authy на iOS Для установки приложения на операционную систему iOS достаточно скачать его в [AppStore](https://itunes.apple.com/us/app/authy/id494168017): Скриншот №6. Приложение в AppStore После установки приложения, необходимо указать код страны, ваш мобильный номер и почтовый адрес. После ввода нажмите OK: Скриншот №7. Ввод данных Далее необходимо подтвердить введенный телефон, выберете наиболее удобный способ: звонок оператора или СМС: Скриншот №8. Подтверждение телефона После можно переходить к добавлению аккаунта. Нажмите на **+** в центре окна: Скриншот №9. Настройки аккаунта Вам будет предложено хранить зашифрованные копии в облаке Authy. Рекомендуем включить резервирование, т.к. при утере устройства, вы сможете без проблем восстановить данные. Введите пароль и нажмите **Enable Backups**: Скриншот №10. Подключение резервирования Затем подтвердите пароль: Скриншот №11. Подтверждение пароля Доступно два способа добавления аккаунта: сканировать штрихкод и ввести ключ. Наиболее удобным является сканирование (**Scan QR code**) — перед вами откроется камера, где в выделенный квадрат необходимо поместить QR-код, который будет распознан автоматически, а аккаунт сразу добавлен: Скриншот №12. Добавление аккаунта ## Установка Authy на рабочий стол Windows Примечание: в данной версии продукта не доступно сканирование QR-кода, но возможно использование добавленных с мобильных приложений аккаунтов. Для того, чтобы установить приложение, загрузите нужную версию с [сайта разработчика](https://authy.com/download/) и запустите файл установки: Скриншот №13. Загрузка приложения с сайта разработчика При возникновении следующего предупреждения выберете **Выполнить в любом случае**: Скриншот №14. Предупреждение безопасности Windows После установки необходимо ввести код страны, ваш номер и нажать **Next**: Скриншот №15. Ввод данных Выполните подтверждение любым доступным способом: Скриншот №16. Подтверждение данных Далее отобразится окно с доступными аккаунтами: Скриншот №17. Доступные аккаунты ## Использование приложения Authy для подключения к панели управления После установки приложения на вашу систему откройте в панели управления раздел **Настройка профиля** -> **Безопасность**. На открывшейся странице выберете Двухфакторную аутентификацию через приложение: Скриншот №18. Настройки безопасности Перед вами откроется штрихкод. Далее в приложении Authy выберете сканирование QR-кода (**Scan QR code**). После того как откроется камера, поместите штриход в выделенный квадрат на экране приложения, который будет распознан автоматически. Приложение сгенерирует шестизначный код, который необходимо ввести в поле: Скриншот №19. Сканирование штрихкода После ввода кода вы увидите, что двухфакторная аутентификация подключена через приложение: Скриншот №20. Подключение Двухфакторной аутентификации Теперь для входа в панель управления необходимо указать код из приложения: Скриншот №21. Вход в панель управления ## Отключение двухуровневой аутентификации для входа в панель управления Для отключения опции Двухфакторная аутентификация в панели управления перейдите в раздел **Настройка профиля** -> **Безопасность**.Чтобы ее отключить нажмите **Отключить**: Скриншот №22. Отключение двухфакторной аутентификации Подтвердите свои действия: Скриншот №23. Подтверждение действия Теперь 2FA отключена. https://serverspace.by/support/help/kak-sozdat-sobstvennyj-shablon.md В инструкции описано создание собственного шаблона виртуального сервера. Шаблоны нужны для дальнейшего создания сервера с нужной конфигурацией за короткое время. Наши пользователи могут создавать собственные шаблоны [виртуальных серверов](https://serverspace.by/services/vps-server.md), чтобы в дальнейшем создавать сервера с конфигурацией удовлетворяющей определенные нужды и потребности. Хранение шаблона — платная услуга, ее цена равна стоимости дискового пространства оригинального сервера. Для создания шаблона перейдите во вкладку **Шаблоны серверов** в вертикальном меню слева и нажмите **Создать шаблон**. Далее введите удобное для вас название шаблона и сокращенное техническое название. Выберете сервер из выпадающего списка на основе которого необходимо создать шаблон. _Важно: для успешного создания шаблона должны быть выполнены следующие условия: _ - _сервер находится в выключенном состоянии;_ - _сервер не подключен к частным сетям;_ - _сервер не имеет активных снапшотов;_ - _сервер не имеет подключенных дополнительных дисков._ В результате у вас отобразится созданный шаблон. При создании сервера созданный шаблон можно выбрать в списке **Ваши шаблоны**. https://serverspace.by/support/help/kak-sozdat-chastnuyu-podset.md Как создать частную сеть в панели управления Serverspace и подключить к ней серверы? Создание частной сети является бесплатной услугой для наших клиентов. Создание частной сети является бесплатной услугой для наших клиентов. Вы можете объединить только сервера расположенные в одном ЦОДе. Для этого в вертикальном меню перейдите во вкладку **Сети** и нажмите **Добавить сеть**. Выберете ЦОД в котором будет создана сеть, тип сети **Частная сеть** и удобное название. При необходимости вы можете использовать DHCP. Нажмите **Создать сеть**. Вашей сети будет выдан шлюз и маска, емкость сети 256 адресов. Для подключения сервера к сети переведите тумблер **Подключить** в активное состояние и нажмите **Сохранить**. При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы. Если ваша сеть без DHCP, то локальные адреса будут доступны в панели управления. https://serverspace.by/support/help/kak-aktivirovat-khranilishhe.md Инструкция по активации объектного хранилища Serverspace. Активация обычно занимает несколько секунд, после чего перед вами появится интерфейс для работы с хранилищем прямо из панели управления. Для активации [объектного облачного хранилища](https://serverspace.by/services/storage.md) перейдите в панель управления и в вертикальном меню выберете услугу [Хранилище](https://panel.serverspace.by/storage). В новом окне появится кнопка **Активировать** — нажмите на нее. Скриншот №1. Активация объектного облачного хранилища Активация обычно занимает несколько секунд, после чего перед вами появится интерфейс для работы с хранилищем прямо из панели управления. Скриншот №2. Интерфейс для работы с хранилищем Работать с облачным хранилищем можно по протоколам S3, Swift API, FTP и сторонние приложения. https://serverspace.by/support/help/kak-podklyuchitsya-k-virtualnomu-serveru.md Подключение к виртуальным серверам на разных ОС происходит по разным протоколам: для UNIX по протоколу SSH, для Windows по RDP. Давайте рассмотрим, как это делается. В нашем сервисе представлены два семейства операционных систем: UNIX (Ubuntu, Debian, BSD,CentOS) и Windows. Подключение к разным семействам происходит по разным протоколам — для UNIX по протоколу SSH, для Windows по RDP. ## Подключение к серверам Linux и BSD Для подключения к [виртуальному серверу семейства Linux](https://serverspace.by/services/vps-server/linux/) или BSD установите на ваш компьютер программу [PuTTY](https://www.putty.org/) и запустите. Скриншот №1. Подключение к виртуальному серверу Далее перед вами откроется консоль, в которую необходимо ввести **Логин администратора**: login as: root Далее введите **Пароль администратора**, ввод которого будет скрыт: root@111.111.111.111’s password: Если все данные введены корректно, то вы будете подключены к виртуальному серверу. ## Подключение к серверам Windows Для подключения к [серверу семейства Windows](https://serverspace.by/services/vps-server/windows/) вам необходимо скачать RDP-файл и двойным щелчком левой кнопкой мыши запустите его. Скриншот №2. Подключение к серверу семейства Windows После запуска появится окно о том,что не удается определить издателя этого удаленного подключения,не смотря на это подключаемся и по желанию больше не выводим запрос о подключениях к нашему серверу. Скриншот №3. Подключение к удаленному рабочему столу В результате перед вами откроется окно, в которое необходимо ввести **Пароль администратора** из панели управления. Скриншот №4. Ввод пароля Если все данные введены корректно, то вы будете подключены к рабочему столу виртуального сервера по протоколу RDP. Подборки VPS/VDS: [аренда VPS в Европе](https://serverspace.by/services/vps-server.md), [аренда VPS на Linux](https://serverspace.by/services/vps-server/linux/) и [Windows](https://serverspace.by/services/vps-server/windows/). https://serverspace.by/support/help/konfiguratsiy-virtualnogo-servera.md Подробная инструкция по изменению конфигурации виртуального сервера в панели управления serverspace. Вы сможете в любой момент менять параметры своих серверов, тем самым подстраивая их под текущие потребности и нагрузку. Вы сможете в любой момент изменять конфигурацию своих серверов, тем самым подстраивая их под текущие потребности и нагрузку. Для изменения конфигурации сервера откройте его настройки в панели управления. Скриншот №1 Конфигурация Перейдите во вкладку **Конфигурация**. Здесь вы можете: - увеличить размер диска без простоя сервера, но при этом самостоятельно на уровне операционной системе разметить добавленную область; - изменить тип основного диска без простоя и перезагрузки; - мигрировать сервер из базового пула в высокопроизводительный и обратно. Примечание: при изменении конфигурации изменяется стоимость виртуального сервера. Скриншот № 2 Выбор подходящей конфигурации Во вкладке Сети вы можете управлять сетевыми подключениями вашего сервера. Вы можете уменьшать или увеличивать ширину каналов связи и добавлять дополнительный IPv4 и IPv6 адреса. При подключении сервера к новой сети на вашем сервере появится новый сетевой адаптер, который необходимо настроить на уровне операционной системы. Скриншот № 3 Сети Для добавления дополнительного диска откройте вкладку, нажмите добавить диск, введите название диска и с помощью ползунка выберите нужный размер.Важно,что при создании диска сервер будет перезагружен, пожалуйста, убедитесь, что все документы сохранены. К одному серверу можно подключить диски разного типа.Подтвердите и сохраните изменения. Скриншот № 4 Существующие диски Скриншот № 5 Добавление нового диска Вы можете настроить сервер любой мощности для различных задач и назначений. https://serverspace.by/support/help/ispolzovanie-firewalld-na-centos.md FirewallD представляет собой графическую оболочку для брандмауэра iptables. FirewallD распределяет трафик не по зонам, а согласно правилам, содержит правила «белого» и «черного» списка, может ограничивать и блокировать трафик. ## Что такое FirewallD Программа представляет собой графическую оболочку для брандмауэра iptables и кроме интерфейса также отличается схемой взаимодействия: - распределяет трафик не по зонам, а согласно правилам; - содержит правила "белого" и "черного" списка, в соответствии с которыми работает на данной сетевой точке; - может как ограничивать, так и блокировать трафик. ## Опции Firewalld имеет набор встроенных правил: - Drop: запрещает входящие подключения, но разрешает исходящие. - Block: исходя из наименования, полностью блокирует трафик. - Public: открывает подключения через SSH и DHClient. - External: активирует функцию NAT на выбранном сетевом интерфейсе. - Internal или Home: открывает порты для служб SSH, Samba, mDNS и DHCP. - Dmz: включает опцию "Демилитаризованная зона", которая разделяет частные сервисы от общедоступных. - Work: открывает доступ службам SSH и DHCP. - Trusted: переводится как "доверенный". Разрешает все соединения. Кроме стандартного набора утилита поддерживает два режима загрузки. Первый называется Runtime. Он означает активность выбранных параметров до перезагрузки приложения или сервера. Если во время данного режима указываются дополнительные опции сохранения, то они остаются активными всегда. Второй вариант — Permanent. Любые изменения, которые внесены в данном режиме, сохраняются навсегда. ## Инсталляция По умолчанию Firewalld не входит в состав CentOS. Установим его: ```bash sudo yum install firewalld ``` Для помещения его в автозагрузочную область прописываем: ```bash sudo systemctl enable firewalld ``` Перезагружаем серверную платформу для активации изменений. ## Конфигурирование Firewalld Определим текущую настройку утилиты: ``` firewall-cmd —get-default-zone ``` Скриншот №1. Текущая зона Сейчас установлен шаблон public, т.е. все разрешено. Если необходимо получить подробный отчет, то используем —list-all в качестве ключа. Результат приведен ниже. **Важно!** Команда запускается только с правами sudo. Скриншот №2. Подробный отчет ## Смена политики и интерфейса Для смены шаблона, используем ключ —zone совместно с опцией смены сетевого интерфейса —change-interface. Например, заменить политику public на work с ее активацией на eth0: ``` sudo firewall-cmd —zone=work —change-interface=eth0 ``` В случае успешной операции на мониторе появится соответствующее сообщение. Наберем следующую команду, чтобы убедиться в правильности выполненных действий: ``` sudo firewall-cmd —get-active-zones ``` Скриншот №3. Смены шаблона Как видно на изображении выше, сетевой интерфейс использует политику work, а другие по-прежнему работают с public. Если требуется сменить политику, которая наследуется по умолчанию для всех интерфейсов, используем другой синтаксис: ``` sudo firewall-cmd —set-default-zone=home ``` После выполнения команды всем сетевым интерфейсам пропишется шаблон home. Для показа текущего уровня вводим уже известный ключ —get-default-zone. ## Открываем порт (сервис) Firewalld также предоставляет сервисам доступ к портам используя ключ —add-service=<имя службы>. Для начала проверим список сервисов на сервере, запустив утилиту с опцией —get-services. Скриншот №4. Список служб Получить подробную информацию о любом сервисе, обратившись через команду cat к внутреннему списку firewalld. Например, просмотрим описание службы audit: ``` cat /usr/lib/firewalld/services/audit.xml ``` Скриншот №5. Описание audit Для активации порта любого сервиса из перечня прописываем в терминале: ``` sudo firewall-cmd —zone=work —add-service=audit ``` Данная конфигурация будет активна только до перезагрузки серверной платформы. Чтобы сделать ее постоянной, прописываем ключ —permanent: ``` sudo firewall-cmd —permanent —zone=work —add-service=audit ``` Если сервис audit больше не нужен, удалим его, используя опцию –remove-service=<имя службы>: ``` sudo firewall-cmd —zone=work —remove-service=audit —permanent ``` Альтернативный вариант открытия порта – указываем номер и имя протокола с указанием флага —add-port: ``` sudo firewall-cmd —zone=work —add-port=443/tcp ``` **Важно!** Любое изменение в списке сервисов можно отследить используя опцию —list-ports. Удаление порта происходит при замене ключа —add-port на —remove-port с сохранением дальнейшего синтаксиса. ## Как добавить новую службу Как говорилось выше, полное описание служб внутри серверной ОС расположено по следующему пути: /usr/lib/firewalld/services/, далее идет xml-файл с именем службы. Чтобы создать новый сервис, просто скопируем один из готовых вариантов в папку services, которая расположена внутри директории firewalld. В качестве примера взяли описание сервиса SSH и скопировали его с именем test: ``` sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/test.xml ``` **Важно!** Операция копирования выполняется только с правами администратора. Откроем его при помощи текстового редактора nano: ``` sudo nano /etc/firewalld/services/test.xml ``` На экране появится подробное описание сервиса SSH: Скриншот №6. Отредактируем описание В первом пункте меняем название службы на произвольное. По полю short она активируется через команды в дальнейшем. Второй пункт дает полное описание сервиса: прописываем детально. Третий шаг – указываем порты и протокол по которым она будет работать. В дальнейшем firewalld будет активировать значения после указания соответствующего ключа. Отредактировав файл, сохраняем изменения и перезапускаем службу. https://serverspace.by/support/help/upravlenie-brandmauerom-centos.md Для конфигурирования межсетевого экрана в CentOS используют утилиту system-config-firewall, которая заменят текущий FirewallD. Рассмотрим процесс конфигурирования подробнее в нашей инструкции. ## Предварительная подготовка Для конфигурирования межсетевого экрана в CentOS используют утилиту system-config-firewall, которая заменят текущий FirewallD. Для этого уберем FirewallD из автозагрузочного сектора ОС: ```bash sudo systemctl stop firewalld.service ``` ```bash sudo systemctl disable firewalld.service ``` Теперь установим утилиту для дальнейшей настройки: ```bash sudo yum install system-config-firewall-tui ``` ## Конфигурирование брандмауэра После инсталляции запустим первичную настройку: ``` sudo system-config-firewall-tui ``` На экране появится меню для выбора дальнейших действий: Скриншот №1. Меню для выбора дальнейших действий Сначала включаем режим брандмауэра, а потом выбираем пункт "Настройка". На втором шаге выбираем из перечня службы, которым открывается доступ во внешнюю сеть: Скриншот №2. Открываем доступ во внешнюю сеть В нашем примере активируем DNS и FTP. Нажимаем "Вперед". Следующий пункт предлагает добавить дополнительные порты, которые не относятся к стандартным: Скриншот №3. Выбор дополнительных портов Первый пункт добавляет порт "с нуля", т.е. пользователь самостоятельно прописывает параметры. Второй предназначен для правки существующих, а третий удаляет порт из перечня. Например, создадим порт 8080 для протокола TCP следующим образом: Скриншот №4. Порт 8080 для протокола TCP На третьем шаге представлен список сетевых интерфейсов на серверной платформе. Отмечаем только те пункты, для которых необходимо предоставить полный доступ во внешнюю сеть: Скриншот №5. Список сетевых интерфейсов Следующее меню отвечает за предоставление функции NAT для сетевых интерфейсов. В терминологии CentOS она называется "Маскарад". Отмечаем пункт, для которого необходим данный режим: Скриншот №6. Функция NAT для сетевых интерфейсов Теперь настроим проброс портов. Конфигурирование аналогично пункту с добавлением новых портов. Далее — фильтрация ICMP. Стандартная настройка не блокирует трафик. Если требуется запретить, выбираем пункт: Скриншот №7. Фильтрация ICMP Последний шаг – создание правил. Добавляем собственные шаблоны, по которым файрвол будет обрабатывать трафик: Скриншот №8. Добавление шаблонов Для создания нового выбираем пункт один, в котором прописываем необходимые условия. Второй пункт это редактирование текущего шаблона, а третий — удаление выбранного правила. Нажимаем Закрыть для возврата в первоначальное меню. Теперь выбираем "ОК" для активации внесенных изменений. Утилита покажет предупреждающее сообщение. Если все верно, то соглашаемся: Скриншот №9. Активация внесенных изменений Установка завершена, межсетевой экран активирован. https://serverspace.by/support/help/ispolzovanie-utility-ufw-na-linux.md В Linux используется межсетевой экран под названием iptables. Для удобства конфигурирования используют различные графические оболочки. Рассмотрим одну из них — Uncomplicated Firewall (UFW). В Linux используется межсетевой экран под названием iptables. Для удобства конфигурирования используют различные графические оболочки. Рассмотрим одну из них — Uncomplicated Firewall (UFW). ## Краткое описание С английского языка название дословно переводится как несложный (упрощенный) брандмауэр. Особенность продукта — минимализм с графической оболочкой на основе командной строки. Если кратко, то UFW используют для базовых настроек межсетевого экрана. Он содержит необходимый минимум функций для стандартной защиты корпоративных ресурсов. Создание более сложных правил и тонкая настройка доступны в iptables. Изначально решение разрабатывалось для операционных систем семейства Debian и Ubuntu. Дальнейшие действия выполняются под управлением Ubuntu. ## Предварительная подготовка Если UFW не установлен на серверной платформе, используем стандартную утилиту: ```bash sudo apt-get install ufw ``` Второй вариант – утилита установлена, но неактивна, тогда прописываем: ``` sudo ufw enable ``` **Важно!** Любые действия, связанные с конфигурированием продукта, выполняются с правами суперпользователя. После инсталляции проверим состояние программы: ``` sudo ufw status verbose ``` Скриншот №1. Проверка состояния программы Стандартная конфигурация программы блокирует входящий трафик, но разрешает исходящий. Чтобы изменить параметры, открываем системный файл: ``` sudo nano /etc/default/ufw ``` ``` sudo ufw default deny incoming sudo ufw default allow outgoing ``` Первая строка отвечает за блокировку, а вторая за исходящие подключения. ## Настройка UFW распределяет правила согласно профилям программ. Они хранятся по следующему пути: ``` /etc/ufw/applications.d ``` Создание нового или редактирование текущего профиля проводится администратором в ручном режиме. Для начала ознакомимся с текущими профилями: ``` sudo ufw app list ``` Просмотр подробной информации по любой записи осуществляется при помощи следующей команды: ``` sudo ufw app info 'name' ``` Где name — наименование профиля, которое заключается в одинарные кавычки. Например, просмотрим сервис OpenSSH: Скриншот №2. Сервис OpenSSH Первая строка — имя новой записи в UFW. Вторая описывает заголовок, по которому профиль будет идентифицироваться. Третья содержит краткое описание сервиса (рекомендуется использовать 1-2 предложения). Последняя строка указывает порты, которые необходимо открыть для работы приложения. Сохраняем файл и перезагружаем межсетевой экран: ``` ufw reload ``` Следующий шаг — прописываем политику для новой записи. Доступно два режима: разрешить (Allow) и запретить (Deny). Синтаксис выглядит следующим образом: ``` ufw ``` Где action – одно из двух значений Allow или Deny, а name_profile — наименование профиля. ## Операции с портами Для открытия/закрытия портов также используется команды Allow/Deny, в зависимости от требований администратора. Синтаксис выглядит следующим образом: ``` sudo ufw / ``` Расшифровка: 1. action — одно из двух действий: разрешить (Allow) или запретить (Deny); 2. port — цифровое имя порта, для которого применяется правило; 3. name_protocol — наименование протокола. Если требуется указать перечень портов, используем двоеточие между начальной и конечной точкой. Альтернативный вариант — использовать имя службы, для которой создается запись. Например, откроем порт для сервиса HTTP: ``` sudo ufw allow http ``` **Важно!** UFW разрешает стандартный порт, который закреплен за службой. Если значение отличается от общепринятых, то создавать правило по имени сервиса нельзя — оно не активируется. ## Операции с IP-адресами Аналогично портам правила создаются правила и для IP-адресов. Синтаксис идентичен предыдущему пункту: ``` sudo ufw from ``` Action – принимает значение Allow или Deny, IP-адрес – адрес оборудования, которому предоставляется/запрещается доступ к серверу. Например, команду разрешить устройству с IP-адресом 10.68.23.15 доступ к всем портам сервера можно записать так: ``` sudo ufw allow from 10.68.23.15 ``` Также доступна опция идентификации порта, например: ``` sudo ufw allow from 10.68.23.15 to any port 22 ``` Добавление словосочетания to any port (name) задает конкретное значение порта, для которого доступ будет открыт. Вместо name указываем номер порта. Если требуется создать правило для нескольких IP-адресов, используем видоизмененный синтаксис: ``` sudo ufw allow from 10.68.23.0/24 ``` ## Операции с сетевым интерфейсом При создании профилей также применяют имена сетевых интерфейсов. Синтаксис представлен ниже: ``` sudo ufw in on to any port ``` ``` sudo ufw in on ``` Поле action, как и в предыдущих разделах, принимает состояние Allow и Deny, а опция name_interface отвечает за наименование сетевого интерфейса, для которого создается правило. Для просмотра списка активных интерфейсов вводим в терминале команду: ``` ifconfig -a ``` Также доступна дополнительная опция to any port — для однозначной идентификации порта. ## Удаление записей Чтобы удалить созданное ранее правило, используем ключ delete. В общем виде команда выглядит так: ``` sudo ufw delete ``` Где number — порядковый номер записи в таблице конфигурации UFW. Чтобы проставить цифровые значения для каждой строки, укажем в терминале: ``` sudo ufw status numbered ``` После этого просто указываем номер записи в таблице. Допустим: ``` sudo ufw delete 7 ``` Перезагрузка не требуется. https://serverspace.by/support/help/zhurnaly-windows.md Работа с журналами в ОС Windows. Описание интерфейса программы. Работа с журналами. Работа с приложением Просмотр событий (Event Viewer). Операционная система Windows, системные службы и приложения записывают события и ошибки в системные журналы, чтобы в дальнейшем у системного администратора была возможность проверки операционной системы и диагностики проблем. Получить доступ к этим записям можно через встроенное приложение **Просмотр событий (Event Viewer)**. Есть несколько вариантов запуска данного приложения: - через меню **Пуск – Средства администрирования Windows – >Просмотр событий (Start – Windows Administrative Tools – Event Viewer)**; - в командной строке или в окне **Выполнить** набрать **eventvwr.msc**: Скриншот №1. Запуск Просмотра событий (Event Viewer) через командную строку В **Диспетчере серверов** в разделе **Средства** выбрать **Просмотр событий (Server Manager – Tools – Event Viewer)**: Скриншот №2. Запуск Просмотра событий (Event Viewer) через Диспетчер серверов ## Описание интерфейса программы Окно программы состоит из следующих компонентов: Скриншот №3. Интерфейс программы - Панель навигации позволяет выбрать конкретный журнал, записи которого необходимо просмотреть; - Список событий, содержащийся в выбранном журнале. В колонках выведена базовая информация о событии. Их можно отсортировать по датам, типам, категориям событий и т.д.; - Детальная информация о выбранном во второй панели событии. Также детальную информацию можно открыть в отдельном окне, если кликнуть по нужному событию два раза; - Панель быстрых действий, которые можно совершить с данным журналом или событием. Действия также доступны в контекстном меню (клик правой кнопкой мыши по журналу или событию). Для удобства просмотра и управления системные журналы разбиты по категориям: - **Приложения (Application)** – как и гласит название, содержит события и ошибки приложений; - **Безопасность (Security)** – если в операционной системе включена и настроена функция аудита, журнал будет содержать записи, связанные с отслеживанием соответствующих событий (например, авторизация пользователя или попытки неудачного входа в операционную систему); - **Система (System)** – здесь регистрируются события операционной системы и системных сервисов; - **Установка (Setup)** – события, связанные с инсталляцией обновлений Windows, дополнительных приложений. В разделе **Журналы приложений и служб (Applications and Services Logs)** можно найти более детальную информацию о событиях отдельных служб и приложений, зарегистрированных в операционной системе, что бывает полезно при диагностике проблем в работе отдельных сервисов. Сами события также разделяются на типы: - **Сведения (Information)** — информируют о штатной работе приложений. - **Предупреждение (Warning)** — событие, свидетельствующее о возможных проблемах в будущем (например, заканчивается свободное место на диске – приложения могут продолжать работу в штатном режиме, но когда место закончится совсем, работа будет невозможна). - **Ошибка (Error)** — проблема, ведущая к деградации приложения или службы, потерям данных. - **Критическое (Critical)** — значительная проблема, ведущая к неработоспособности приложения или службы. - **Аудит успеха (Success audit)** — событие журнала **Безопасность (Security)**, обозначающее успешно осуществленное действие, для которого включено отслеживание (например, успешный вход в систему). - **Аудит отказа (Failure audit)** — событие журнала **Безопасность (Security)** обозначающее безуспешную попытку осуществить действие, для которого включено отслеживание (например, ошибка входа в систему). ## Работа с журналами Службы и приложения могут генерировать огромное количество самых разнообразных событий. Для простоты доступа к нужным записям журнала можно использовать функцию фильтрации журнала: Скриншот №4. Фильтрация журнала Правый клик по журналу – **Фильтр текущего журнала (>Filter Current Log)**, либо выбрать данную функцию в панели быстрых действий. Открывшееся окно позволяет настроить фильтр и отобразить только те события, которые необходимы в данный момент: Скриншот №5. Настройки фильтра Можно задать временной период, уровни события, выбрать журналы и конкретные источники событий. Если известны коды событий, которые нужно включить или исключить из фильтра, их также можно указать. Когда необходимость в фильтрации событий отпадет, ее можно отключить действием **Очистить фильтр (Clear Filter)**: Скриншот №6. Очистка фильтра Приложение **Просмотр событий (Event Viewer)** позволяет также настроить дополнительные свойства журналов. Доступ к настройкам можно получить через панель быстрых действий, либо через контекстное меню журнала – правый клик по журналу – **Свойства (Properties)**: Скриншот №7. Свойства журналов В открывшемся окне настроек можно увидеть путь, по которому сохраняется файл журнала, текущий размер, а также можно задать максимальный размер файла: Скриншот №8. Характеристики файла журнала В нижней части окна можно выбрать вариант действия при достижении журналом максимального значения: - **Переписывать события при необходимости (Overwrite events as needed)** – новое событие будет записываться поверх самого старого события в журнале, таким образом будут доступны события только за определенный диапазон времени. - **Архивировать журнал при заполнении (Overwrite the log when full)** – заполненный журнал будет сохранен, последующие события будут записываться в новый файл журнала. При необходимости доступа к старым событиям, архивный файл можно будет открыть в приложении **Просмотр событий (Event Viewer)**. - **Не переписывать события (Do not overwrite events)** – при заполнении журнала выдается системное сообщение о необходимости очистить журнал, старые события не перезаписываются. https://serverspace.by/support/help/install-and-configure-ms-sql-server-express.md В этой инструкции описан процесс установки MS SQL Server 2017 Express - бесплатной и технологичной базы данных на Windows Server 2012 R2/2016/2019. В этой инструкции описан процесс установки MS SQL Server 2017 Express на Windows Server 2012 R2/2016/2019. Следуя ей вы получите готовый инструмент для знакомства с языком программирования SQL, для проверок собственных наработок или запуска небольшого ресурса, не требующего больших объемов хранения баз данных. ### **Ограничения выпуска SQL Server 2017 Express** Данный выпуск является бесплатным и подходит для коммерческого использования, но имеет ряд ограничений: - Максимальное количество ядер процессора: 4; - Максимальный размер базы данных: 10 ГБ; - Максимальный размер пула буфера на экземпляр базы данных: 1410 МБ. Если у вас есть необходимость выйти за пределы этих ограничений, советуем приобрести лицензию Microsoft SQL Server Standard. ### **Требования к операционной системе** SQL Server 2017 Express доступен для установки на следующих операционных системах: - Windows 8/8.1/10 и новее; - Windows Server 2012, 2012 R2, 2016, 2019 и новее. ### **Процедура установки** Чтобы установить SQL Server 2017 Express, перейдите по [ссылке](https://www.microsoft.com/en-us/download/details.aspx?id=55994), выберите язык установки и нажмите **Download**: После запуска скачанного файла установщик откроет специальное окно, в котором предложит несколько вариантов установки на выбор. Для контроля за параметрами установки выберите **Custom**: Далее выберите место, куда будут скачаны установочные файлы, при необходимости поменяйте его на нужное и нажмите **Install:** Дождитесь завершения процесса скачивания установочных файлов: Далее выберите первый пункт установки **New SQL Server stand-alone installation**: Ознакомьтесь с условиями лицензионного соглашения и нажмите **Next**: При необходимости получать обновления из Windows Update поставьте галочку и нажмите **Next**: Ознакомьтесь с предупреждением о возможных проблемах, а при их отсутствии нажмите **Next:** Перейдите на экран выбора функционала, где можно, при необходимости, выбрать или убрать дополнительные возможности для сервера баз данных, оставьте без изменений и нажмите **Next**: Выберите имя и идентификатор сервера. Идентификатор сервера будет включен в путь установки. Оставьте по умолчанию и нажмите **Next**: На следующем экране можно указать сервисные аккаунты, отличные от стандартных, и предоставить право на выполнение задач обслуживания тома службе ядра СУБД SQL Server, что повысит скорость инициализации файлов, но СУБД может получить доступ к удаленному контенту. На вкладке **Collation **можно изменить параметры сортировки движка базы данных. На указанном примере мы предоставим привилегии, оставим по умолчанию параметры сортировки и нажмем **Next**: На следующем этапе установки необходимо настроить конфигурацию ядра базы данных. Для этого предусмотрены следующие вкладки: - **Server Configuration** — указывается способ авторизации в базу данных: средствами Windows или смешанный режим, включающий в себя авторизацию Windows и собственную авторизацию SQL Server. При выборе второго варианта следует указать пароль администратора SQL Server; - **Data Directories** — указывается расположение исполняемых файлов SQL Server и данных; - **TempDB** — параметры TempDB, используемой внутренними ресурсами SQL Server, временными объектами пользователей и хранилищем версий; - **User instances** — позволяет дать права пользователям, не имеющим прав администратора, запускать отдельные экземпляры баз данных; - **FILESTREAM** — включается при необходимости использовать оптимизированные для памяти (Memory Optimized) таблицы. Так как при установке по умолчанию был выбран пункт Microsoft R (Machine Learning Services) и Python, следует согласиться с условиями его использования на этом и следующем этапе, последовательно нажав **Accept** и **Next**: Запустится процесс установки, после чего появится окно о завершении работ установщика SQL Server 2017. Нажмите **Close**: На этом установка SQL Server 2017 Express завершена. https://serverspace.by/about/blog/ekonomija-na-backup.md Со временем количество данных, которые нужно резервировать, увеличивается. Как сохранить все самое нужное и не разориться? Разберемся, как экономить на бэкапе. Потеряв доступ к необходимым данным: коммерческим документам, текущим проектам, мы оказываемся в очень неприятной ситуации. Из-за сбоев оборудования и вирусных программ бизнес теряет документы, деньги и репутацию, а частные пользователи лишаются нужной для них информации. ## Способы резервного копирования Чтобы сохранить данные, необходимо регулярно создавать резервные копии. Для этого можно использовать локальный диск, сетевую систему хранения или специализированное облако. Строго говоря, даже флешка в некоторых случаях может пригодиться. Любой из этих способов позволяет восстановить данные, но далеко не все они одинаково выгодны и удобны. При наличии высокоскоростного подключения к интернету самым востребованным способом защиты является облачное резервное копирование. Его выбирают, потому что оно: - гарантирует возможность восстановления информации, даже если оборудование украдено или вышло из строя; - не требует дополнительной настройки и администрирования для резервных копий; - обладает неограниченной емкостью для хранения. Но, выбирая резервное копирование в облако, пользователи часто сталкиваются с растущей стоимостью услуг по мере увеличения объемов хранимых данных. ### **Как снизить затраты на облачное резервное копирование** Сэкономить помогают следующие методы: **Дедупликация **– не сохраняются дважды одинаковые файлы или фрагменты файлов. Например, если вы храните несколько пакетов документов, в которых есть одинаковые иллюстрации, система запишет их только один раз. **Сжатие **– дает возможность для уплотненного хранения разной информации, особенно крупных таблиц, баз данных и документов. **Выборочное резервное копирование **– пользователь сохраняет выбранные им данные. **Уменьшение времени хранения **– разумный компромисс при резервировании данных: ведь далеко не все файлы нуждаются в бессрочном хранении, поэтому пользователь может выбрать оптимальное для него время до 28 дней. Например, аренда виртуального сервера с 4-ядерным процессором, 16 Гб оперативной памяти и диском SSD на 430 Гб без резервного копирования составляет 301 руб/мес (по данным на 23.09.19). При резервировании на 28 дней стоимость аренды таких же мощностей обойдется в 455,8 руб/мес. **Резервирование на гибридном облаке **– это новый подход, который подразумевает постоянную передачу данных между собственными серверами и облачными ресурсами провайдера. Процесс происходит в заранее созданном и настроенном гибридном облаке. **Инкрементное копирование **– экономит время и ресурсы за счет добавления к резервным копиям только изменившейся информации. При инкрементном копировании копии создаются быстрее и занимают меньше места. **Ограничение количества резервных копий **– управление процессом и создание единой копии всех важных данных в облаке в удобном для пользователя формате. ### **Использование виртуального сервера** Наиболее выгодно облачное резервное копирование для пользователей виртуальных машин, которые арендуют облачный сервер. Они сохраняют копии важных документов, настраивая необходимые параметры сервера, – от емкости до ресурсов процессора и памяти – и обеспечивают нужную скорость работы системы резервного копирования и аварийного восстановления. Облачные сервисы резервного копирования могут быть частью гибридной инфраструктуры, объединяющей облачные серверы и собственные ИТ-ресурсы. Потерянная информация восстанавливается за несколько минут, потому что информационные системы развернуты и на своих серверах, и в виртуальной среде. ### **Выгода облачного бэкапа** Стоимость облачного резервного копирования напрямую зависит от оптимизации процесса. К примеру, в Serverspace вы платите за использованные ресурсы, плата списывается каждые 10 минут. Разумное резервное копирование с дедупликацией, сжатием и другими методами оптимизации оказывается более выгодным, чем традиционные схемы бэкапа, сопровождающиеся покупкой оборудования, поддержкой работоспособности серверов и ПО. https://serverspace.by/about/blog/pyat-sluchaev-kogda-vam-ne-podojdet-vps.md Пока всё вокруг уходит в облака, вам может быть вполне комфортно с парой серверов, шуршащих в соседней комнате. Рассмотрим ситуации, когда без виртуального сервера можно обойтись. Остаться верными on-premise или, наконец-то, оценить преимущества виртуального сервера? Самое главное — не делать переход в облако самоцелью. Следовательно, нужно разобраться, насколько хорошо виртуальная среда соответствует вашим бизнес-задачам. А также, разобраться с тем не столкнетесь ли вы с противопоказаниями, которые есть у VPS. ### Когда виртуальный сервер не нужен? Пока всё вокруг уходит в облака, вам может быть вполне комфортно с парой серверов, шуршащих в соседней комнате или своем же дата-центре. Кроме того, нам известны ситуации, когда без виртуального сервера можно обойтись. ### У вас высокие требования к защите данных Виртуальный сервер не подойдет банковским и другим финансовым организациям и всем тем, кто работает с государственной тайной. Более того, ни один VPS/VDS пока не может предоставить расширенные функции безопасности и мониторинга (требуются при хранении и обработке конфиденциальной информации). Передавая критично важные данные в облако, вы теряете над ними контроль и с высокой вероятностью нарушаете законодательство. Кроме того, в ближайшее время будет принят Закон "О персональных данных" для регулирования обработки и передачи персональных данных. Следовательно, он же будет регламентировать физическую защиту данных и методы обеспечения безопасности виртуальной инфраструктуры на оборудовании облачных провайдеров. Есть ли выход? Это, пожалуй, единственное абсолютное противопоказание, хотя банки могут использовать гибридную инфраструктуру, в которой часть данных хранится в облаке, а часть – на собственном физическом оборудовании. Им виртуальный сервер поможет в тестировании программных продуктов и обкатке сервисов перед выпуском в продакшен. ### Вы используете устаревшее оборудование и ПО Не помните, когда последний раз покупали новый сервер, а Windows в вашей компании не обновлялся после выхода легендарной 98-й версии? Тогда вам рано переносить IT-инфраструктуру в облако, потому что это повлечет за собой кардинальные изменения в компании. Чтобы пользоваться возможностями облаков, вам придется пересечь пропасть, которая отделяет IT сегодняшнее от IT начала 2000-х. Что делать? Вы, конечно, можете с условной Windows 3.11 и базой данных, которая до сих пор "питается" дискетами, совершить головокружительный прыжок в будущее. Но лучше все-таки эволюционировать постепенно. ### Вы не считаете деньги Вам не понадобится виртуальный сервер, если вы не считаете деньги, которые уходят на содержание IT-отдела. Конечно, на практике это маловероятно: - всегда планируется бюджет на покупку и ремонт оборудования; - обновление ПО; - содержание штата компьютерных инженеров; - повышение их квалификации и другие задачи; - связанные с IT. Для малого и среднего бизнеса владение парой серверов и СХД может превратиться в тяжелую финансовую нагрузку. А с VPS вы обходитесь без капитальных затрат и арендуете вычислительные мощности, ограничиваясь небольшими ежемесячными платежами. А разве можно не считать деньги в бизнесе? Такое случается редко. Многие компании стремятся уложиться в небольшой бюджет, когда речь идет об IT-отделе. Мы лишь акцентировали ваше внимание на том, что возможностей для экономии больше, чем кажется на первый взгляд. ### Вы не планируете развивать бизнес Развитие бизнеса всегда ведет за собой масштабирование IT-инфраструктуры. Маловероятно, что вы решите остановиться на достигнутом и откажетесь от амбициозных планов. Миграция в облака – верный способ быстро масштабировать вычислительные ресурсы вслед за ростом клиентской базы или новых сервисов. Так ли важны перспективы? Даже если сегодня вы не видите возможностей для развития, все может кардинально измениться в ближайшем будущем. В облаке вы будете на 100 % готовы к стремительному росту бизнеса. ### Вас пугает все новое У вас личная неприязнь к облакам, вы не доверяете данные чужим людям, а виртуализация кажется временным явлением? Тогда вам точно рано арендовать виртуальный сервер: вначале придется научиться доверять облачным провайдерам. Как избавиться от тревожности? Она хорошо излечивается изучением опыта крупнейших мировых брендов. Сегодня, едва ли, найдутся крупные и успешные компании или интернет-сервисы, которые не используют возможности виртуализации, облачных вычислений или big data. ### Почему облака подойдут всем остальным Компаний, которые извлекают пользу из аренды виртуального сервера, в разы больше, чем тех, кому он не подходит. Вот основные аргументы и показания к применению VPS в вашем бизнесе. ### Цена Одно из самых важных преимуществ VPS/VDS: - вы не вкладываете деньги в содержание IT-инфраструктуры; - не занимаетесь ее апгрейдом; - масштабированием и поддержкой; - не нанимаете в штат системных администраторов. Вместо этого вы арендуете сервер с определенной конфигурацией и платите за каждый месяц его использования. Можно сменить облачного провайдера, на время прекратить использование виртуального сервера или выбрать более продвинутую конфигурацию и платить немного больше. Стоимость рассчитывается индивидуально в зависимости от: - количества процессоров; - объема RAM; - дискового пространства; - операционной системы; - физического расположения центра обработки данных. Экономьте по максимуму, подбирая каждый параметр по отдельности, – так вы не приобретете ресурсы с избытком. Для тех, кто не хочет вникать в тонкости составления собственной конфигурации, у провайдеров всегда заготовлены готовые решения под бизнес-задачи разной сложности. ### Масштабируемость Возможности физического сервера конечны, и в какой-то момент вы окажетесь перед выбором: наращивать вычислительную мощность или полностью менять парк IT-оборудования. Первый вариант дешевле, а во втором вы запасаетесь ресурсами впрок и упрощаете масштабирование в будущем. Но выгоднее и удобнее третий вариант – аренда виртуального сервера подходящей конфигурации. Вы всегда можете изменить параметры VPS/VDS, чтобы они соответствовали текущим потребностям бизнеса. Другими словами, вы получите столько ресурсов, сколько необходимо, и не переплачивая за избыточные мощности и дисковое пространство. ### Доступность Данные, которые хранятся и обрабатываются на виртуальном сервере, доступны в режиме 24/7. За виртуальными вычислительными мощностями стоит реальное физическое оборудование в защищенных дата-центрах. А также они отличаются уровнями надежности Tier. Дата-центры уровня Tier I и Tier II подходят для малого и среднего бизнеса. В них допускается 28,8 и 22 часа простоя в год соответственно. Tier III и Tier IV – более надежные ЦОД. Но, с другой стороны, мы имеем дело только с Tier III для крупного бизнеса, которому обещают не более 1,6 часа простоя в год. Для бизнеса высокая доступность данных – это гарантия того, что он сможет непрерывно обслуживать клиентов, останется конкурентоспособным и не потеряет прибыль из-за простоя. К доступности данных добавляется еще и доступность техподдержки. Она оперативно решает рабочие вопросы и устраняет технические неполадки в оборудовании. ### Безопасность Ресурсы каждого виртуального сервера полностью изолированы от других, запущенных на том же физическом оборудовании. Это значит, что вы не сможете получить доступ к данным других клиентов облачного провайдера и наоборот. Безопасность VPS/VDS обеспечивают несколько инструментов: - firewall; - виртуальные маршрутизаторы; - VPN; - антивирусное ПО; - системы резервного копирования и т. п. В зависимости от провайдера при аренде виртуального сервера вы можете получить бонусом ряд дополнительных услуг: - инструменты мониторинга, - мгновенные снимки данных сервера, - файрвол. Одновременно с вычислительными мощностями вы можете арендовать лицензии популярного ПО: офисного, для бухгалтерского учета, разработки баз данных и т. п. ### Так кому все-таки нужен VPS/VDS? Виртуальный сервер принесет пользу и материальные выгоды онлайн-сервисам и интернет-магазинам с высокой посещаемостью и другим представителям малого и среднего бизнеса. Также виртуальные серверы используются для: - организации видеонаблюдения; - управления датчиками IoT-устройств; - создания VPN-каналов; - почтовых и игровых серверов; - биржевой торговли; - развертывания виртуальных; - хранения личных данных, которые уже переросли возможности домашнего мини-сервера. https://serverspace.by/about/blog/abuzoustojchivyj-vps.md Главным преимуществом абузоустойчивых хостингов (или иначе - offshore VPS hosting) является их устойчивость к жалобам. Подобные сервера находятся в странах, толерантных к размещению запрещенного в других странах контента. Прежде чем рассказывать, что такое абузоустойчивый VPS, поговорим об обычном хостинге. Обычный хостинг владеет большим количеством серверов. Пользователи, платят за размещение своего контента на своих серверах. Точно также компании, благотворительные организации, банки, социальные медиа—платформы и все остальные, размещают свой контент на серверах. Подавляющее большинство хостинг—сервисов действует по строгим правилам в отношении контента, загруженного на их серверы. Давайте теперь определим, что же означает сам термин VPS, если вы вдруг с ним не знакомы. VPS (англ. virtual private server) – выделенный виртуальный сервер, а также, сама услуга по регистрации и его аренде. По своей сути она похожа на физический выделенный сервер: также имеет root—доступ, выделенные IP—адреса, порты, правила фильтрации и маршрутизация. [/services/vps-server/](https://serverspace.by/services/vps-server.md) ## Что такое Abuse На английском "abuse" – значит жалоба. Если говорить просто, такие хостинги предоставляют услуги сайтам, которые распространяют запрещенный законодательством определённой страны контент. Как пример можно взять торрент—трекеры, кинотеатры, полные пиратского контента, сайты с музыкой и т.д. Обычный хостинг должен заблокировать Ваш сайт, или определённую страницу сайта, после первого обращения правообладателя, абузоустойчивый же хостинг проигнорирует жалобу и не предпримет никаких действий в Ваш адрес. ## Что такое абузоустойчивый VPS Владельцы подобного хостинга мягче относятся к контенту, который покупатели могут размещать на своих серверах. Кроме того, абузоустойчивые VPS, как правило, располагаются в странах с менее строгим подходом к обеспечению соблюдения законов о защите данных, взяточничеству и экстрадиции, что снижает риск предоставления таких услуг. Такие хосты работают по принципу "моя хата с краю, ничего не знаю" со своими клиентами, считая, что они просто предоставляют услугу. То, что происходит на сервере — личное дело клиента. ## Где находятся абузоустойчивые хостинги Абузоустойчивые VPS можно найти по всему миру. Не существует единого реестра, с полным перечнем всех хостингов включая страны их физического размещения. На территории РФ найти полноценного хостера, который бы предоставлял услуги абузоустойчивого VPS найти очень трудно. Это обусловлено как экономической невыгодностью, так и рядом других причин. Во-первых, редко можно найти компанию, которая открыто вступит в конфликт с нынешним законодательством. Рассматривать это будут в таком ключе, потому что содержание на сайтах и серверах может выходить за рамки многих законов РФ. Подобные сервера нередко находятся в странах, толерантных к размещению подобного контента, вирусов, спаму и т.д. Сегодня к этому списку можно добавить такие страны, как Китай, Малайзия, ЮАР, Панама, Голландия. Недавно в их число вошли Эстония, Турция. Размещения контента в указанных странах не регулируется законодательством, что дает определенную свободу. Кроме того, сервера абузоустойчивых VPS могут находиться в странах, где языки сильно отличаются и, соответственно, меньше привлекают внимание буквы закона. ## Ищем баланс Главным преимуществом хостингов, устойчивым к жалобам, как бы очевидно это не звучало, является его устойчивость к жалобам. Правообладатели часто "закидывают" регистраторов и хостеров жалобами, как только находят пиратский контент. И если обычные "hosting providers" по закону обязаны предпринимать активные действия, начиная блокировкой страниц с таким содержимым, вплоть до блокировки сервера своего клиента, абузоустойчивые хостинги "закроют глаза" и станут предпринимать никаких действий. Однако, даже у таких компаний есть свой "кодекс" и список запрещенных материалов. Зачастую он основывается на моральных принципах и противодействию криминалу, например: - вирусы; - незаконный "контент для взрослых"; - проекты по взлому правительственных сайтов. Иногда к этому списку добавляют СПАМ и др. Также покупатели ценят такие сервера за низкую восприимчивость к атакам (DDOS). Из минусов такого хостинга сразу бросаются в глаза 2 ключевых: - стоимость; - небольшое количество надежных регистраторов. ## Цена Вследствие высоких рисков и специфики работы, стоимость защищенного VPS хостинга превышает стоимость обычного. Кроме того, на конечную цену влияет пропускная способность канала. ## Проблема выбора В таком деле нельзя делать ставку на обзоры. Предложений на рынке немного, и на поиск можно потратить солидное количество времени. Прежде всего, ставку нужно делать не на хостинг, а на страны физического расположения серверов, такие как ЮАР, Китай, Малайзию и т.д. ## Подводим итоги Абузоустойчивый VPS определенно имеет право на жизнь. Его главными преимуществами являются широкий канал с большой пропускной способностью, хорошо защищенный против DDOS-атак. Провайдеры и регистраторы таких серверов не будут реагировать на жалобы и гарантируют целостность ваших данных. Стоимость такого хостинга примерно в 10 раз выше обычного качественного VPS. В принципе, это единственный его недостаток. https://serverspace.by/support/help/nastroika-openvpn-na-windows-server-2012.md OpenVPN – это представление открытой частной виртуальной сети. Рассмотрим серверные настройки на Win Server 2008 и 2012 и подключение юзеров к созданной сети. Ниже мы детально разберем все, что касается серверных настроек на Win Server2008 и Server2012, а также покажем, как сделать подключения юзеров к созданной сети. OpenVPN – это представление открытой (от англ. "open" — "открыть") частной виртуальной сети (от англ. "Virtual Private Network"). Данная технология помогает создавать виртуальные подключения групп клиентов к расположенных на расстоянии машинам посредством передачи данных по открытому каналу, то есть интернету. При помощи OpenVPN возможно безопасно удалить или отключить заданные сетевые подключения к серверу, не задействуя прямые доступы через интернет. А благодаря шифрованию OpenSSL соединению будет обеспечен повышенный уровень безопасности. ## Принципы работы Произведенная настройка позволит серверу взаимодействовать с внешним защищенным шифрованием SSL и создавать безопасное подключение к виртуальной сетевой машине (tun/tap). При этом не нужно будет волноваться об обработке трафика, поступающего от внешнего адаптера и аналогичных интерфейсов. Для серверных машин можно будет создать общий доступ к одному из указанных серверных адаптеров. Дополнительно будет рассказываться о туннелировании входящих/исходящих от юзеров данных. Подобная переадресация позволит хосту, который обрабатывает подключения к виртуальной сети, осуществить передачу данных от своего лица и одновременно выступить в качестве прокси, чтобы привести к единому виду всю интернет-активность пользователя. ## Способы установки виртуальной сети Для начала нужно зайти на официальный сайт и скачать последнюю версию OpenVPN, которая подойдет под требования ОС. Двумя кликами запустить инсталлятор. Когда откроется окно установок, на третьем этапе необходимо отметить галочками все предлагаемые компоненты. Когда всплывает вопрос о сетевом адаптере TAP, следует разрешить его установку. Стандартно OpenVPN загружается в папку с программными файлами, расположенную на диске C. Поэтому в ходе инструкции мы будем ссылаться к папке «C:Program FilesOpenVPN». Вы хотите изменить месторасположение файлов? Тогда учитывайте этот нюанс в дальнейшем. ## Как сгенерировать ключи и выполнить их шифрование, алгоритм Diffie-Hellman Для каждой пары ключей существуют свои собственные сертификаты, обеспечивающие безопасность передачи информации. Управлять ими можно специальным приложением Easy-rsa, которое запускается и работает в командной строке, аналогично консоли Линукс. Консоль открывается через нажатие клавиш Win + R и ввода в появившемся окне слова cmd. Как работать с конфигурационным файлом Загрузив соответствующий конфигурационный файл, нужно внести его вместо одноименного файла/скрипта, найти который можно в папке OpenVPNeasy-rsa. Директория располагается на диске C в Program Files. Или укажите тот путь, куда вы запланировали установку виртуальной частной сети. В папке необходимо найти конфигурационный файл openssl-1.0.0.conf, его значения должны соответствовать вашим данным: ``` countryName_default stateOrProvinceName_default localityName_default 0.organizationName_default emailAddress_default ``` Важный нюанс: в значении данных могут содержаться пробелы, такие переменные стоит обособить кавычками. Как генерировать ключи в Центре Сертификации 1. Для начала следует переименовать два файла при помощи командной строки: ``` cd cd "C:Program FilesOpenVPNeasy-rsa" ren index.txt.start index.txt ren serial.start serial ``` 2. Затем, чтобы создать новый ключ/сертификат, понадобится запуск скрипта: ``` .build-ca.bat ``` В окне будут возникать различные предложения, большинство из них можно подтверждать кнопкой Enter. А для поля KEY_CN (Common Name) следует ввести оригинальное название и его же продублировать для поля name. 3. Так же генерируются сертификаты серверу. В этой строке вместе server нужно ввести оригинальное имя: ``` .build-key-server.bat server ``` 4. Система начнет спрашивать, следует ли подписывать сертификаты для создаваемых ключей от имени Центра сертификации? Введите "да" — y (yes). Как генерировать клиентский ключ и сертификат Всем юзерам виртуальной сети понадобится генерировать свои индивидуальные SSL-сертификаты. Можно воспользоваться специальной опцией, которая позволяет присваивать 1 сертификат сразу нескольким пользователям. Она называется «dublicate-cn» и размещается в файле server.ovpn. Однако такой ход небезопасен. Рассмотрим, как сгенерировать сертификат клиенту client2: ``` cd cd "C:Program FilesOpenVPNeasy-rsa" .build-key.bat client2 ``` Внимание: под переменной client2 подразумевается вносимое название файла. Далее следует ввести client2 в запрос строчки Common Name. Работа с алгоритмом Диффи-Хеллмана В завершение всех действий понадобится запуск шифрования, чтобы сгенерировать группу параметров по Диффи-Хеллману: ``` .build-dh.bat ``` ``` ``` Перенос сгенерированных ключей/сертификатов Все созданные данные располагаются в подпапке easy-rsakeys. Следующие наименования файлов следует перенести в другую подпапку — config, которая располагается в том же месте: • dh2048.pem/dh1048.pem • server.key • ca.crt • server.crt ## Настройка конфигурации на сервере Запустите редактор реестра и отыщите в нем: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters. Справа вы увидите IPEnableRouter. Кликните по переменной два раза – откроется новое окошко для изменения параметров. В поле "Значение" поставьте единицу: Настраивать сервер мы будем через конфигурационный файл server.ovpn. Перед работой его следует переместить в папку config. Открыв его, необходимо проверить правильность построение маршрутов к перенесенным сертификатам: ``` port 1194 proto udp dev tun server 10.8.0.0 255.255.255.0 ca "C:Program FilesOpenVPNconfigca.crt" cert "C:Program FilesOpenVPNconfigserver.crt" key "C:Program FilesOpenVPNconfigserver.key" dh "C:Program FilesOpenVPNconfigdh2048.pem" push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" keepalive 10 120 comp-lzo persist-key persist-tun verb 3 ``` Если нужно, то меняем пути на правильные и пересохраняем. Чтобы успешно пересылать трафик от одного адаптера к другому, нужно зайти в раздел сети и интернета, который находится в панели управления ПК. В нем найти центр сетевого управления и кликнуть по предложению изменить параметры интернет адаптера. Из нескольких предложенных вариантов надо взять тот, что отвечает за внешние подключения, то есть не TAP-тип, так как он работает с VPN-соединениями. В свойствах зайдите на вкладку доступа и поставьте галочки на обоих пунктах: Следующим шагом включается айпи-переадресация. Зайдите в стандартный поиск ОС си введите следующее имя приложения: Настройка автозапуска Чтобы служба стартовала при включении компьютера, нужно зайти в базовую папку "Службы", в открывшемся окне среди прочих программ найти OpenVPN, кликнуть по нему правой кнопкой, а в свойствах в значениях запуска выставить режим "Автоматически". Стандартные настройки окончены. Чтобы запустить сервер и его новые настройки, надо еще раз войти в файл server.ovpn и написать в него следующую строчку: Start OpenVPN on this config Настройки клиентской конфигурации Виртуальная частная сеть имеет свое клиентское приложение, которое одинаково хорошо загружается для любой существующей операционной системы за исключением Mac – к нему разработан Tunnelblick. Версии приложений функционируют одинаково, затрагивают определенные конфигурационные файлы. В зависимости от версий, могут различаться отдельные опции. Более подробная информация расписана в документации OpenVPN. Далее мы расскажем, как подключить клиентов на ОС Виндовс, применяя те же дистрибутивы, которые до этого инсталлировались на сервере. В случае с другими операционными системами методы и шаги будут примерно такими же. 1. Для начала на ПК клиента ставится актуальная версия (желательно последняя) OpenVPN. 2. Конфигурационные файлы клиента client.ovpn вместе с сертификатами *.crt и ключами *.key, которые перед этим мы сгеренировали, необходимо поместить в подпапку config, хранящуюся в разделе OpenVPN. При этом желательно файл клиента удалить с директории сервера, чтобы не запутаться при будущих настройках. 3. При открытии client.ovpn необходимо отыскать строчку remote my-server-1 1194. Задайте ей айпи и домен работающего сервера: remote 1194 Например: remote 111.222.88.99 1194 4. Ниже в файле обозначен путь к каждому сертификату, меняем их на путь к скопированным версиям: ``` # See the server config file for more # description. It's best to use # a separate .crt/.key file pair # for each client. A single ca # file can be used for all clients. ca "C:Program FilesOpenVPNconfigca.crt" cert "C:Program FilesOpenVPNconfigclient2.crt" key "C:Program FilesOpenVPNconfigclient2.key" # This file should be kept secret ``` 5. После сохранения базовые настройки будут окончены. ## Как проверить правила брендмауэра Чтобы функционирование виртуальной частной сети проходило корректно, на стороне сервера необходимо открыть соответствующий порт. Стандартно его имя UDP 1194. Зайдите в установленный системный Firewall и посмотрите, разрешен ли доступ к порту антивирусным программным обеспечением и брендмауэром. ## Как проверить OpenVPN-подключение После запуска сервера потребуется зайти в папку config. В ней нужно отыскать конфигурационный server.ovpn файл. Кликнуть по нему правой кнопкой, вызвать контекстное меню и внести новую строчку: Start OpenVPN on this config file Те же действия необходимо проделать для клиента. Только в этот раз открывается client.ovpn. Остальные действия аналогичны. Следом должно показаться окно, где отобразится статус соединения. Окно самостоятельно свернется в трею, там же загорится ярлык компьютера с зеленым индикатором (это будет свидетельствовать об успешно проведенной настройке). Чтобы проверить, доступен ли сервер с компьютера клиента, проведем следующие действия: 1. Запустим командную строку комбинацией клавиш Win + R и введением команды cmd. 2. Осуществим пинг к выбранному серверу (10.8.0.1). Для этого введем: ping 10.8.0.1 3. Если настройка прошла отлично, в окне строки покажется передача пакетов ПК клиента к серверу: 4. Специальная утилита Tracert покажет маршрут, по которому происходит передача клиентских пакетов. Для этого в консоль вводится команда: tracert ya.ru Как показывает результат, клиентский пакет отправляется к виртуальному серверу, после чего перенаправляется к внешней сети: После таких действий вы получаете VPN, которая полностью настроена и готова работать. С ее помощью владельцу сервера доступно быстро создание безопасного сетевого подключения типа клиент-сервер, использование открытых и территориально удаленных точек подключения к сети интернет. https://serverspace.by/support/help/nastroika-ftp-na-windows.md Ниже мы детально рассмотрим рекомендации про серверную настройку, работу брендмауэра, способы подключения и протокол Secure (SFTP) на ОС Win Server2012 Ниже мы детально рассмотрим рекомендации про серверную настройку, работу брендмауэра, способы подключения и протокол Secure (SFTP) на ОС Win Server2012. FTP выступает в качестве общепринятого протокола, он передает файл с компьютера на сервер или обратно на ПК. С его помощью пользователь может работать с другими машинами в интернете, обмениваться данными с локальными устройствами и удаленным сервером, пользоваться облачными архивами ПО. Мы расскажем об инсталляции FTP на любой из серверов IIS. Также для работы допускается использование других программ, в том числе: FileZilla, Home, Titan или Ocean FTP Server. ## Процесс установки Для начала нужно зайти в "Пуск" и войти в "Диспетчер серверов", в нем необходимо выбрать добавление роли (пункт два). Затем зайти на вкладку "Тип установки" и кликнуть на первую категорию. В рамке с пулами появится список серверов, надо кликнуть по нужному и щелкнуть "Далее". В подменю серверных ролей нужно поставить галочку для сервера IIS. После этого графа развернется и представит новые настройки: здесь потребуется кликнуть на FTP. Внимание: иные версии перенесли строку "FTP-сервер" на другие вкладки. Затем потребуется нажать и одобрить установку. Раскройте диспетчер IIS и слева в подменю есть папка "Сайты". Если кликнуть по ней правой кнопкой мышки, всплывет подсказка. В ней следует щелкнуть на "Добавить FTP". Следующий шаг: потребуется ввести имя нужного сайта и его полный путь к каталогу хранения. В окне появится запрос на выбор айпи-адреса. Нужно проверить, чтобы введенный айпишник был одинаковым с тем, что значится в панели управления. Желательно выбрать еще функцию автоматического запуска, расположенной ниже, и в ней "Без SSL". Проверять подлинность будем обычным способом, доступы разрешаются каждому юзеру. Также рекомендуем выбрать все предложенные разрешения. ## О настройках брендмауэра Чтобы внешние подключения происходили быстро и гладко, потребуется настроить файервол – это проводится через приложение брендмауэра. Его следует запускать с режимом повышенной безопасности. После открытия в левом подменю нужно найти графу с правилами для входящих подключений, а в правой части кликнуть по созданию новых правил. В "Мастер создания" выбирается предопределенный тип правил, ему указывается правило FTP из выпадающего подменю. В подменю предопределенных правил рекомендуем поставить галочки во всех строках. В подменю "Действие" необходимо разрешить подключения (первая строка). Настройка закончилась, она войдет в работу как только перезагрузится сервер. ## О подключениях к FTP Провести подключение возможно посредством базовой виндовской программы ("Проводника") либо при помощи специальных программ, например, FileZilla. Подключаясь по методу "Проводник", в адресную строчку вводится: ftp://ip-адрес К примеру, ftp://177.118.25.63 Всплывет окно, в него вводится информация: выбирается существующий юзер и указывается пароль. Внимание: при помощи сервера IIS возможно проводить гибкие подключения к серверам. В том числе разделить видимое пространство различным клиентам, редактировать их права, давать анонимный доступ. В случае удачно проведенных действий откроется окно с папками, расположенными на сервере. Внимание: встроенные сервера имеют богатые возможности. В том числе позволяют вести журнал, изолировать юзеров, поддерживать SSL, ограничивать число попыток входа. ## Как настроить Secure (SFTP) подразделяются на два типа: заверенные официальной комиссией и самоподписанные. Первый тип считается безопасным, так как за надежность заверяется центром, отвечающим за сертификацию. Если брать самозаверенные сертификаты, тогда юзеры при желании зайти на сервер будут получать предупреждения. Начать работу с самозаверенным сертификатом просто: 1. Нужно зайти в окно диспетчера IIS и выбрать параметр "Сертификаты". 2. В правой подменю необходимо выбрать создание самоподписанного типа. 3. Ввести его название. Чтобы настроить SFTP потребуется вернуться к начальной странице (кликнуть по FTP в левом подменю) и открыть параметры, как на скриншоте. Открывшееся окно предложить сделать выбор политики – укажите второй вариант с требованиями SSL-соединений. Чтобы произвести подключения по защищенному каналу, понадобится программа WinSCP: • Протоколом должен выступить FTP; • В качестве шифрования из выпадающего меню выбирается "Явное"; • Именем хосту будет служить айпи или доен; • Если не было настроек других портов, нужно выбирать 21-й; • Последними указываются логин и пароль. После входа появится все, что содержит FTP-каталог. https://serverspace.by/support/help/how-to-forward-the-printer-through-rdp.md Инструкция по настройке запуска печати принтера посредством удаленного рабочего стола (RDP). Настройку можно выполнить самостоятельно. Инструкция поможет тем, у кого не получается запустить печать принтера посредством удаленного рабочего стола (RDP). Настройку можно выполнить самостоятельно, для этого следует выполнить шаги, изложенные ниже. Зайти в настройки подключения к удаленному рабочему столу и проверить, выставлена ли функция проброса локальных ресурсов к серверу. Сначала необходимо найти RDP-ярлык и нажать по нему правой кнопкой мышки. В контекстном меню найти "Изменить". В открывшемся окне третьей вкладкой слева будут "Локальные ресурсы", в них должна стоять галочка на графе "Принтеры". Скриншот №1. Настройки подключения к удаленному рабочему столу Настройки окончены для тех принтеров, которые поддерживают "Easy Print". В противном случае настройка продолжается – переходите к шагу номер два. В случае, когда модель выпущена без поддержки "Easy Print", дополнительно придется на сервер устанавливать драйвера. Зайдите на сервер через "Пуск". Сделать это легко, достаточно выбрать приложение "Диспетчер сервера". Скриншот №2. Диспетчер сервера Нужно зайти на вкладку "Роли", чтобы создать еще одну роль. Скриншот №3. Создать роль В графе "Роли сервера", как на скриншоте, откроется длинный список, в нем следует выбрать "Службы печати", затем нажать кнопку "Далее" два раза. После чего кликнуть по кнопку "Установить" и выполнить перезагрузку сервера. Скриншот №4. Службы печати Зайти еще раз в "Диспетчер", найти вкладку с конфигурацией и в ней – локальных пользователей. В группах есть "Print Operators", в нее нужно добавить учетку администратора. Скриншот №5. Добавить учетку администратора Следующим шагом сделать log off – log on. Далее нужно зайти на официальный веб-сайт компании, которая выпустила принтер, и выгрузить драйверы модели. Распаковать архиватором. Cнова зайти в "Диспетчер", во вкладку с серверами печати и ввести никнейм ПК, производящего подключения принтера. В "Имя драйвера" обязательно должно значиться "Remote Desktop Easy Print". Скриншот №6. Remote Desktop Easy Print Зайдите еще раз в раздел с серверами печати, найдите никнейм Вашего ПК и графу с драйверами. Щелкните по ним правой кнопкой мышки и нажмите "Добавить". Скриншот №7. Добавить драйвер Желательно выбрать 64 версию. Скриншот №8. Выбор ОС Настроить, чтобы установка шла с диска, нажать "Обзор" и выбрать файл *.inf Скриншот №9. Настройки установки Еще раз перезагрузить терминальный сервер. https://serverspace.by/support/help/firewall-configuring-the-server-firewall.md Подробная инструкция по настройке и созданию правил Firewall в панели управления для виртуальных серверов. Настройка конфигураций брандмауэра. Инструкция по настройке правил Firewall для виртуальных серверов в панели управления Serverspace. ### Что это такое? С помощью межсетевого экрана прямо из панели управления можно управлять доступом к серверу, сетевыми пакетами данных. Данная опция отдельно не тарифицируется и входит в стоимость сервера. На данный момент существует ограничение в 50 правил, если вам будет недостаточно этого лимита, то увеличить его можно по [запросу в техническую поддержку](https://panel.serverspace.by/support/create-request). ### Сетевая архитектура Для избежания конфликта правил межсетевого экрана и его правильной настройки необходимо понимать порядок действия существующих брандмауэров. Во-первых, вы можете настроить брандмауэр для частной сети. Во-вторых, для сервера через панель управления. В-третьих, вы можете настроить внутренний брандмауэр, например, для Linux через iptables, для Windows — встроенный. Для входящих пакетов первым будет применяться брандмауэр на уровне сети (при наличии). Если пакет прошел, дальше будет применяться фаерволл на уровне сервера, в последнюю очередь будет использоваться внутренний программный механизм. Для исходящих пакетов будет применена обратная последовательность действий. _Мы не рекомендуем одновременно использовать межсетевой экран на уровне сервера и внутренний программный:_ ### Создание правила Конфигурация брандмауэра доступна для всех VPS и находится в настройках сервера в разделе Firewall. _Важно: — порядок правил имеет значение, чем меньше порядковый номер правила (чем выше он в списке), тем выше его приоритет. Изменять последовательность правил можно с помощью Drag and Drop, перетащив правило левой кнопкой мыши на нужную позицию; — по умолчанию — все пакеты данных, как входящие, так и исходящие разрешены. _ Для создания правила нажмите кнопку **Добавить**: Перед вами откроется окно добавления правила. Необходимо заполнить следующие поля: - **Name** — понятное для пользователя название (не более 50 символов), как правило кратко описывает назначение правила; - **Direction** — направление пакетов, для которых необходимо применить правило, принимает одно из двух значений: Incoming или Outgoing. Incoming — правило распространяется на входящие пакеты данных, Outgoing — на исходящие; - **Source/Destination** — в зависимости от направления содержит IP-адрес сервера или одно из значений: IP-адрес, CIDR, диапазон IP-адресов и any; - **SourcePort/DestinationPort** — при выборе протокола TCP, UDP или TCP and UDP возможно указать порт, диапазон портов, либо Any; - **Action** — действие, которое необходимо применить, принимает одно из двух значений: Allow или Deny. Allow — разрешение пересылки пакетов данных, Deny — запрет пересылки; - **Protocol** — тип протокола, доступно ANY, TCP, UDP, TCP and UDP и ICMP. Для создания правила нажмите **Сохранить**. В нашем примере правило блокирует все входящие на сервер пакеты: Чтобы созданное правило вступило в силу необходимо сохранить изменения с помощью кнопки **Сохранить**. Вы можете создать несколько правил и затем сохранить все разом: После этого страница будет выглядеть следующим образом: ### Приоритет правил Чем меньше порядковый номер правила (чем выше оно в списке), тем выше его приоритет. Например, после того как было создано запрещающее правило для всего входящего трафика, создадим правило разрешающее получать входящие пакеты по 80 порту протокола Tcp. После сохранения изменений при такой конфигурации данный порт все также будет недоступен, в связи с тем, что запрещающее правило имеет более высокий приоритет: Для изменения приоритета правил перетащите с помощью левой кнопки мыши разрешающее правило на первое место и сохраните изменения: После сохранение порядковые номера правил изменятся, а также изменится их приоритет: Теперь конфигурация брандмауэра позволяет получать пакеты по протоколу Tcp по 80 порту, остальные пакеты проходить не будут. https://serverspace.by/support/help/uvelichenie-diskovogo-prostranstva-ubuntu-18.md Инструкция по расширению дискового пространства на виртуальном сервере Ubuntu 18.04 через панель управления и средствами ОС. При работе с облаком иногда возникают ситуации, когда не хватает свободного дискового пространства. Чтобы увеличить объем заходим в панель администратора и вручную прописываем новый размер диска. Теперь переходим к настройкам сервера для добавления объема в конфигурацию. Ниже приведена инструкция со скриншотами на примере сервера Ubuntu 18.04. ### Как увеличить размер дискового пространства Подключаемся к Ubuntu Server под именем суперпользователя (root) и проверяем текущий размер дискового пространства. ``` echo 1 > /sys/block/sda/device/rescan ``` Утилита запросит конфигурацию сервера и определит изменения. В нашем случае она транслирует Ubuntu информацию о новом размере дискового пространства. Воспользуемся встроенной программой parted – введем её в терминал. Отобразим список разделов, используя ключ p: ``` (parted) p ``` На мониторе появится следующее: Скриншот №1. Пример. Красным выделены пункты, которые запоминаем или записываем. Первая строка отображает количество гигабайт, которые доступны на текущем разделе. Вторая – текущий размер диска, объем которого будет увеличен. Его легко определить по метке LVM. Информация собрана, запускаем процедуру слияния, используя следующий синтаксис: ``` (parted) resizepart 2 ``` Где "2" означает номер тома, на котором происходит изменение дискового пространства: Скриншот №2. Изменяем размер. Утилита уточнит какое значение добавить. В квадратных скобках указан текущий размер раздела. Вводим новое значение – просто добавляем к числу требуемый объем. В нашем примере выглядит так: 64.4 + 20 = 84.4 Gb Выходим из приложения parted командой quit. ``` (parted) quit ``` После закрытия на экране появится сообщение о необходимости обновить информацию: Скриншот №3. Информационный текст. Вручную транслируем операционной системе информацию об изменениях. Вводим: ``` pvresize /dev/sda2 ``` , где /dev/sda2 – номер устройства и раздела, на котором произошли изменения. Меняем значение тома командой: ``` lvextend -r -l +100%FREE /dev/mapper/vgroup1-root ``` Добавление дискового пространства прошло успешно, но, дабы убедиться, проверим результат. В терминале набираем ``` df –h ``` На мониторе отобразится информация о внесенных изменениях. https://serverspace.by/support/help/podkuchenie-vyos-k-chastnoi-seti.md Как подключить сервер с операционной системой VyOs к частной сети. Руководство по настройке сетевого интерфейса VyOS командой Set. В этом руководстве будет рассмотрен процесс настройки сервера с операционной системой VyOS в частной сети. VDS с данной системой зачастую используются в качестве роутеров и маршрутизаторов, имеют возможности настройки сетей VPN разных типов и конфигураций. ### Настройка После подключения VPS к локальной сети через панель управления, подключитесь к серверу по ssh и перейдите в режим конфигурации VyOS: ``` config ``` _Примечание: в обычном режиме недоступны некоторые утилиты, а приглашение командной строки заканчивается символом $ (доллар), а в конфигурационном — символом # (решетка)._ Выведите на экран все доступные интерфейсы: ``` show interfaces ``` ``` ethernet eth0 { address /24 duplex auto hw-id smp_affinity auto speed auto } ethernet eth1 { duplex auto hw-id smp_affinity auto speed auto } loopback lo { } ``` С помощью команды set настройте значение локального ip-адреса, если в сети **отключена опция DHCP**, то в качестве значения укажите адрес из панели управления в настройках вашего VPS (см. изображение ниже): ``` set interfaces ethernet eth1 address /24 ``` Например: ``` set interfaces ethernet eth1 address 10.0.0.4/24 ``` Когда опция DHCP включена, выполните следующее действие: ``` set interfaces ethernet eth1 address dhcp ``` _Примечание: если выполнение завершается с ошибкой, попробуйте внести текущего пользователя в группу суперпользователя, например usermod -a -G root ._ Проверьте изменения: ``` show interfaces ``` ``` ethernet eth1 { + address / duplex auto hw-id 00:50:56:01:1b:9f smp_affinity auto speed auto } loopback lo { } ``` Измененные строки отмечены знаком +. Если все правильно, сделайте коммит и сохраните изменения: ``` commit save ``` Выйдите из режима конфигурации: ``` exit ``` Проверьте настроенный локальный ip-адрес интерфейса VyOS: ``` show interfaces ``` ``` Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down Interface IP Address S/L Description --------- ---------- --- ----------- eth0 /24 u/u eth1 /24 u/u lo 127.0.0.1/8 u/u ::1/128 ``` Теперь вы можете использовать настроенную машину как роутер или другой узел частной сети. https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_debian_9.md Пошаговая инструкция о том, как увеличить дисковое пространство на виртуальном сервере под управлением Debian 9. Заходим в панель управления сервера. Когда не хватает дискового пространства на виртуальном сервере, администратор вручную увеличивает свободное место. О том, как это сделать на сервере под управлением Debian 9 – расскажем ниже. ### Предварительная подготовка Заходим в панель управления сервера и передвигаем ползунок. Значение выбирается самостоятельно в зависимости от потребностей администратора: Скриншот №1. Увеличение дискового пространства. Сохраняем изменения. **Важно!** Все нижеперечисленные операции выполняются с правами доступа суперпользователь. ### Настройка Запустим сканирование ОС для нахождения свободного пространства. ``` echo 1 > /sys/block/sda/device/rescan ``` Утилита находит добавленное дисковое пространство и транслирует информацию Debian. Воспользуемся встроенной утилитой parted, чтобы добавить новый объем к текущему. Запустим с ключом p. ``` Parted (parted) p ``` В результате откроется окно со следующей информацией: Скриншот №2. Информация о дисковом пространстве. Запоминаем цифру, которая указана под номером 1. В нашем случае это 236 Gb. Обозначим утилите, какой раздел требует изменения. На скриншоте №2 он выделен цифрой 2. ``` (parted) resizepart 2 ``` Указываем после знака вопроса новый размер, который доступен после увеличения объема. В нашем случае это 236Gb. Нажимаем Enter. Выходим из утилиты командой quit. Обновим текущую конфигурацию ОС. Для начала откроем встроенный менеджер fdisk, указав текущий раздел диска (sda). Запустим утилиту с ключом n. ``` fdisk /dev/sda Command (m for help): n ``` На экране появится запрос о назначении типа диска. В нашем примере это будет логический диск. Нажимаем клавишу l. Далее потребуется задать значения начального и конечного сектора. Оставляем как есть, т.е. нажимаем "Ввод" два раза. Утилита создаст новый раздел. Запоминаем его номер – в нашем случае это 7. Используя ключ **t**, меняем тип раздела. Указываем номер раздела, который будем менять (для нашей ситуации — 7). Далее вводим новый тип – 8e. Если необходимо узнать список доступных типов, то используем ключ L. Вводим операнд w. Утилита сообщит о невозможности перезагрузки – произведем её вручную. Оповестим ОС Debian об изменениях в разделе sda. ``` partx -v -a /dev/sda ``` Активируем новый раздел, используя внутреннюю команду. ``` pvcreate /dev/sda7 ``` Теперь необходимо добавить к текущей группе томов новый физический раздел. ``` vgextend debian94-vg /dev/sda7 ``` Предпоследний этап – увеличиваем дисковое пространство логического тома. ``` lvextend -l +100%FREE /dev/debian94-vg/root ``` И заключительный шаг – расширяем файловую систему жесткого диска. ``` resize2fs /dev/debian94-vg/root ``` https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_debian_7.md Инструкция по расширению диска в ОС Debian после расширения дискового пространства в панели управления Serverspace. Откройте терминал под пользователем root. После увеличения диска в панели управления, необходимо сделать его доступным для операционной системы. Откройте терминал (см. [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/)) под пользователем root и введите следующие команды: ``` root@Debian7x64:~# echo 1 > /sys/block/sda/device/rescan ``` Запустите утилиту parted: ``` root@Debian7x64:~# parted ``` Далее выполните команды в интерфейсе утилиты parted: v(parted) p Model: VMware Virtual disk (scsi) Disk /dev/sda: ZZ.ZGB [/code] Запоминаем размер диска ZZ.ZGB ``` (parted) resize Partition number? 2 ``` Значение «Start» оставляем по умолчанию — нажимаем Enter ``` Start? [XXXMB]? ``` Значение «End» — вводим новый размер диска в гигабайтах — значение из вывода (parted) p, которое запомнили ранее ``` End? [YY.YGB]? ZZ.ZGB ``` Выходим из parted: ``` (parted) quit ``` Отобразится следующая информация: ``` Information: You may need to update /etc/fstab. ``` Запустите fdisk: ``` root@Debian7x64:~# fdisk /dev/sda ``` Далее выполните команды в интерфейсе утилиты fdisk: Создаем раздел: ``` command (m for help): n ``` Выбираем тип раздела — логический (L) ```sql Select (default p): l ``` ``` Adding logical partition X ``` Запомните номер раздела, созданный в ходе выполнения команды (в примере обозначено как X) Принимаем значения по умолчанию — нажимаем два раза Enter: ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Меняем тип раздела, при этом указываем номер раздела, который мы запомнили ранее(в примере обозначено как X) ``` Command (m for help): t Partition number (1-X): X Hex code (type L to list codes): 8e Command (m for help): w ``` Сообщаем ядру об изменениях: ``` root@Debian7x64:~# partx -v -a /dev/sda ``` В отобразившемся ответе видим строку ``` ... /dev/sda: partition #X added ... ``` Инициализируем раздел, вместо Х опять используем номер раздела, который мы запомнили ранее ``` root@Debian7x64:~# pvcreate /dev/sdaX ``` ``` Physical volume "/dev/sdaX" successfully created ``` Добавляем физический раздел к существующей группе томов: ``` root@Debian7x64:~# vgextend debian /dev/sdaX ``` ``` Volume group "debian" successfully extended ``` Расширяем логический том ``` root@Debian7x64:~# lvextend -l +100%FREE /dev/debian/root ``` ``` Extending logical volume root to YY.ZZ GiB Logical volume root successfully resized ``` Расширяем файловую систему ``` root@Debian7x64:~# resize2fs /dev/debian/root ``` Готово. https://serverspace.by/support/help/natrojka_setevogo_adaptera_ubuntu.md Подробная инструкция по настройке сетевого адаптера в Ubuntu и Debian для корректной работы виртуального сетевого адаптера в частной сети После подключения сервера к частной сети в панели управления на него будет добавлен дополнительный виртуальной сетевой адаптер. Для того, чтобы подключенный интерфейс начал корректно работать, его необходимо настроить. Подключитесь к виртуальному серверу с правами суперпользователя и выполните команду: ``` ifconfig -a ``` В результате отобразится список подключенных интерфейсов: ```yaml 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) ``` В настройках сети найдите поле **MAC** со значением параметра **HWaddr** из вывода списка сетевых интерфейсов. Запоминаем название интерфейса, в данном случае это **ens192**. _Важно: до настройки адаптера в операционной системе обратите внимание на то, активирована ли в панели управления опция DHCP для вашей сети. Это можно посмотреть в параметрах сети._ Для изменения настроек сетевого интерфейса откройте файл /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 ``` https://serverspace.by/support/help/nastrojka_setevogo_adaptera_windows.md Как настроить сетевой интерфейс в Windows: конфигурация сетевого адаптера после подключения сервера к частной или публичной сети. Инструкция по настройке сетевого интерфейса Windows после подключения сервера к сети. ## Шаг 1 Подключитесь к виртуальному [серверу по RDP](https://serverspace.by/support/help/kak_podkljuchitsja_k_windows_serveru/) и откройте **Network and Sharing Center**, для этого на рабочем столе Windows в правом нижнем углу правой кнопкой мыши кликните **Настройки сетевых подключений**: В открывшемся окне выберете нужный интерфейс, у которого нет доступа к сети: Откроется окно состояния интерфейса. Чтобы убедиться, что выбран нужный интерфейс откройте его детали с помощью кнопки **Details**: Сравните значение поля **Physical Address** со значением поля **MAC** в панели управления: ## Шаг 2 Если при создании сети в панели вы **активировали опцию DHСP**, то настройка сетевого адаптера Windows будет выполнена автоматически. Проверить включена или выключена опция можно в свойствах сети в панели управления: ## Шаг 3 Если при создании сети в панели управления вы **НЕ активировали опцию DHСP**, то настройку необходимо выполнить вручную. Откройте свойства адаптера с помощью клавиши **Properties**: Выберете соединение **IPv4** и нажмите **Properties**: В открывшемся окне в поле **IP-address** введите выданный адрес, в поле **Subnet mask** введите маску подсети. Все значения можно посмотреть в панели в настройках сервера (раздел Сети) или в меню Сеть: Сохраните изменения. ## Шаг 4 Чтобы проверить настройку сетевого адаптера выполните команду ping на адрес шлюза по умолчанию, например: ``` ping 10.0.1.1 ``` _Примечание: для проверки на Windows Server 2016 необходимо выполнить пинг на другой локальный сервер:_ https://serverspace.by/support/help/natrojka_setevogo_adaptera_centos.md Подробная инструкция по настройке сетевого адаптера в CentOS. Настройка сетевого интерфейса на VPS с ОС CentOS после подключения к публичной или частной сети. После подключения VPS с операционной системой Centos к частной или публичной сети необходимо выполнить настройку сетевого интерфейса. ### Шаг 1 Подключитесь к виртуальному серверу с правами суперпользователя и выполните команду: ``` ifconfig -a ``` Перед вами отобразится список доступных адаптеров следующего вида: ``` eth0: flags=4163 mtu 1500 inet 5.200.47.73 netmask 255.255.255.0 broadcast 5.200.47.255 inet6 fe80::250:56ff:fe01:29a9 prefixlen 64 scopeid 0x20 ether 00:50:56:01:29:a9 txqueuelen 1000 (Ethernet) RX packets 760 bytes 57362 (56.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 101 bytes 12839 (12.5 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eth1: flags=4163 mtu 1500 inet6 fe80::8f6:6de2:ec53:e800 prefixlen 64 scopeid 0x20 ether 00:50:56:01:03:59 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 22 bytes 3580 (3.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (Local Loopback) RX packets 64 bytes 5184 (5.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 64 bytes 5184 (5.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ``` [step num=»1″]В настройках сети найдите поле **MAC** со значением параметра **ether** из вывода списка сетевых интерфейсов. Запомните название нового интерфейса, в нашем случае это eth1. Настроенный адаптер, который имеет выход в Интернет — eth0. ### Шаг 2 Перейдите в каталог, где находятся конфигурационные файлы сетевых интерфейсов: ``` cd /etc/sysconfig/network-scripts/ ``` Скопируйте конфигурационный файл существующего интерфейса, указав имя нового интерфейса: ``` cp ifcfg- ifcfg- ``` Например: ``` cp ifcfg-eth0 ifcfg-eth1 ``` ### Шаг 3 Необходимо проверить, активирована ли опция DHCP. Это можно сделать в настройках сети в панели управления. ### Шаг 4 — Если DHCP включен Откройте скопированный файл на редактирование с помощью текстового редактора, например vi: ``` vi ifcfg- ``` Например: ``` vi ifcfg-eth1 ``` Внесите исправления, указав собственные значения, которые можно найти в панели управления: ``` HWADDR= NAME= DEVICE= ONBOOT=yes USERCTL=no BOOTPROTO=dhcp ``` check_link_down() { return 1; } [step num=»7″]Сохраните изменения. В итоге содержимое будет выглядеть следующим образом: ``` HWADDR=00:50:56:01:10:cf NAME=eth1 DEVICE=eth1 ONBOOT=yes USERCTL=no BOOTPROTO=dhcp check_link_down() { return 1; } ``` ### Шаг 4 — Если DHCP выключен Откройте скопированный файл на редактирование с помощью текстового редактора, например vi: ``` vi ifcfg- ``` Например: ``` vi ifcfg-eth1 ``` Внесите исправления, указав собственные значения: ``` HWADDR= NAME= GATEWAY= DNS1= DEVICE= ONBOOT=yes USERCTL=no BOOTPROTO=static NETMASK= IPADDR= PEERDNS=no ``` check_link_down() { return 1; } Сохраните изменения и закройте файл. В итоге содержимое будет выглядеть следующим образом: ``` HWADDR=00:50:56:01:03:59 NAME=eth1 GATEWAY=10.0.1.1 DNS1=10.0.1.1 DEVICE=eth1 ONBOOT=yes USERCTL=no BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=10.0.1.2 PEERDNS=no check_link_down() { return 1; } ``` ### Шаг 5 Перезапустите сетевые службы сервера, чтобы изменения вступили в силу: ```bash service network restart ``` Для проверки корректности работы выполните команду ping до другого сервера в частной или публичной сети: ``` ping 10.0.1.3 ``` https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_ubuntu_12.md Руководство по увеличению дискового пространства виртуального сервера под управлением Ubuntu 12: список необходимых команд для расширения диска на уровне ОС. После увеличения диска в панели управления, необходимо сделать его доступным для операционной системы. Откройте терминал (см. [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/)) под пользователем root и введите следующие команды: ``` root@Ubuntu12045x64:~# echo 1 > /sys/block/sda/device/rescan ``` Запустите утилиту parted: ``` root@Ubuntu12045x64:~# parted ``` Далее выполните команды в интерфейсе утилиты parted: ``` (parted) p Model: VMware Virtual disk (scsi) Disk /dev/sda: ZZ.ZGB ``` Запоминаем размер диска ZZ.ZGB ``` (parted) resize Partition number? 2 ``` Значение «Start» оставляем по умолчанию — нажимаем Enter ``` Start? [XXXMB]? ``` Значение «End» — вводим новый размер диска в гигабайтах — значение из вывода (parted) p, которое запомнили ранее ``` End? [YY.YGB]? ZZ.ZGB ``` Выходим из parted: ``` (parted) quit ``` Отобразится следующая информация: ``` Information: You may need to update /etc/fstab. ``` Запустите fdisk: ``` root@Ubuntu12045x64:~# fdisk /dev/sda ``` Далее выполните команды в интерфейсе утилиты fdisk: Создаем раздел: ``` Command (m for help): n ``` Выбираем тип раздела — логический (L) ```sql Select (default p): l ``` ``` Adding logical partition X ``` Запомните номер раздела, созданный в ходе выполнения команды (в примере обозначено как X) Принимаем значения по умолчанию — нажимаем два раза Enter: ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Меняем тип раздела, при этом указываем номер раздела, который мы запомнили ранее(в примере обозначено как X) ``` Command (m for help): t Partition number (1-X): X Hex code (type L to list codes): 8e Command (m for help): w ``` Сообщаем ядру об изменениях: ``` root@Ubuntu12045x64:~# partx -v -a /dev/sda ``` В отобразившемся ответе видим строку ``` ... /dev/sda: partition #X added ... ``` Инициализируем раздел, вместо Х опять используем номер раздела, который мы запомнили ранее ``` root@Ubuntu12045x64:~# pvcreate /dev/sdaX ``` ``` Physical volume "/dev/sdaX" successfully created ``` Добавляем физический раздел к существующей группе томов: ``` root@Ubuntu12045x64:~# vgextend Ubuntu12045x64-vg /dev/sdaX ``` ``` Volume group "Ubuntu12045x64-vg" successfully extended ``` Расширяем логический том ``` root@Ubuntu12045x64:~# lvextend -l +100%FREE /dev/Ubuntu12045x64-vg/root ``` ``` Extending logical volume root to YY.ZZ GiB Logical volume root successfully resized ``` Расширяем файловую систему ``` root@Ubuntu12045x64:~# resize2fs /dev/Ubuntu12045x64-vg/root ``` Готово. https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_ubuntu_14.md Как расширить дисковое пространство Ubuntu 14 сервера: пошаговая инструкция. Часто бывает недостаточно имеющегося количества дискового пространства на сервере, вы можете увеличить размер дисков без потери данных. В панели управления выберете сервер, затем Настройки -> Конфигурация. С помощью ползунка выберете нужный объем: ### Шаг 1 После того, как диск в панели управления был увеличен, необходимо сделать его доступным для Ubuntu 14. [Откройте терминал](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/) с правами суперпользователя (логин и пароль указаны в состоянии сервера) и выполните проверку. ``` echo 1 > /sys/block/sda/device/rescan ``` Эта команда сканирует текущую аппаратную конфигурацию VPS и передает ОС новый объем винчестера. ### Шаг 2 Запустите утилиту parted: ``` parted ``` Сразу после запуска утилиты вы увидите версию и служебную информацию. ``` GNU Parted 2.3 Using /dev/sda ``` **Важно**: по умолчанию на наших VPS Ubuntu Server 14 установлена версия 2.3 этого программного обеспечения. Данная инструкция разработана для GNU Parted ниже 3.0. Выполните команды в интерфейсе утилиты parted по разметке: ``` (parted) p ``` ``` Model: VMware Virtual disk (scsi) Disk /dev/sda: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 256MB 255MB primary ext2 boot 2 257MB 10.7GB 10.5GB extended 5 257MB 3220MB 2963MB logical lvm 6 3221MB 10.7GB 7516MB logical lvm ``` Вы получите краткую информацию о текущих настройках дисков и их разделов. Нужно обязательно запомнить размер в формате ZZ.ZGB, в нашем примере это 21.5GB и номер раздела, в нашем примере это 2(см. изображение выше). Запускаем команду для изменения раздела: ``` (parted) resize Partition number? 2 ``` Значение «**Start**» оставляем по умолчанию — нажимаем Enter. ``` Start? [XXXMB]? ``` Значение «**End**» — вводим новый размер в гигабайтах — значение, которое запомнили ранее. Таким образом системой будет использовано все возможное пространство. ``` End? [YY.YGB]? ZZ.ZGB ``` Выходим из командной строки утилиты: ``` (parted) quit ``` Отобразится следующая информация: ``` Information: You may need to update /etc/fstab. ``` ### Шаг 3 Запустите fdisk, указав в качестве аргумента имя диска, объем которого мы фиксировали в памяти: ``` fdisk /dev/sda ``` Далее присвоим тип и занимаемые сектора с помощью опции n: ``` Command (m for help): n ``` Выбираем тип раздела l — логический, запоминаем номер раздела X, созданный в ходе выполнения команды. Далее принимаем значение по умолчанию — нажимаем 2 раза Enter. ```sql Select (default p): l Adding logical partition X First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Меняем тип, при этом указываем число, которое мы фиксировали — X: ``` Command (m for help): t Partition number (1-X): X Hex code (type L to list codes): 8e ``` _Примечание: 8e — шестнадцатеричный код._ Сохраняем изменения: ``` Command (m for help): w ``` ### Шаг 4 Сообщаем ядру операционной системы Linux об изменениях: ``` partx -v -a /dev/sda ``` ``` ... /dev/sda: partition #X added ... ``` Ключ v выведет подробную информацию о результатах выполнения, ключ a укажет утилите с каким файлом работать. ### Шаг 5 Инициализируем раздел, вместо Х опять используем номер раздела, который мы запомнили ранее: ``` pvcreate /dev/sdaX ``` Добавляем физический раздел к существующей группе томов: ``` vgextend ubuntu-vg /dev/sdaX ``` Расширяем логический том: ``` lvextend -l +100%FREE /dev/ubuntu-vg/root ``` Расширяем файловую систему, чтобы на винчестере можно было работать с файлами: ``` resize2fs /dev/ubuntu-vg/root ``` На этом этапе диск расширен и готов к использованию. https://serverspace.by/support/help/uvelichenie_diskovogo_prostranstva_centos_65.md Инструкция по расширению дискового пространства выделенного VPS/VDS сервера CentOS 6.5: список терминальных команд для настройки диска на уровне ОС. После увеличения диска в панели управления, необходимо сделать его доступным для операционной системы. Откройте терминал (см. [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/)) под пользователем root и введите следующие команды: ``` [root@CentOSx64 ~]# echo 1 > /sys/block/sda/device/rescan ``` Установите и запустите утилиту parted: ``` [root@CentOSx64 ~]# yum -y install parted [root@CentOSx64 ~]# parted ``` Далее выполните команды в интерфейсе утилиты parted: ``` (parted) p Model: VMware Virtual disk (scsi) Disk /dev/sda: ZZ.ZGB ``` Запоминаем размер диска ZZ.ZGB ``` (parted) resize Partition number? 3 ``` Значение «Start» оставляем по умолчанию — нажимаем Enter ``` Start? [XXXMB]? ``` Значение «End» — вводим новый размер диска в гигабайтах — значение из вывода (parted) p, которое запомнили ранее ``` End? [YY.YGB]? ZZ.ZGB ``` Выходим из parted: ``` (parted) quit ``` Отобразится следующая информация: ``` Information: You may need to update /etc/fstab. ``` Запустите fdisk: ``` [root@CentOSx64 ~]# fdisk /dev/sda ``` Далее выполните команды в интерфейсе утилиты fdisk: Создаем раздел: ``` Command (m for help): n ``` Выбираем тип раздела — логический (L) ```sql Select (default p): l ``` Принимаем значения по умолчанию — нажимаем два раза Enter: ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Меняем тип раздела, при этом указываем номер последнего раздела (в примере обозначено как **X** и выделено **жирным**) и запоминаем его ``` Command (m for help): t Partition number (1-**X**): **X** Hex code (type L to list codes): 8e Command (m for help): w ``` Сообщаем ядру об изменениях: ``` [root@CentOSx64 ~]# partx -v -a /dev/sda ``` В отобразившемся ответе видим строку ``` ... /dev/sda: added partition #X ... ``` Инициализируем раздел, вместо Х опять используем номер раздела, который мы запомнили ранее ``` [root@CentOSx64 ~]# pvcreate /dev/sdaX ``` ``` Physical volume "/dev/sdaX" successfully created ``` Добавляем физический раздел к существующей группе томов: ``` [root@CentOSx64 ~]# vgextend vg_centos65x64 /dev/sdaX ``` ``` Volume group "vg_centos65x64" successfully extended ``` Расширяем логический том ``` [root@CentOSx64 ~]# lvextend -l +100%FREE /dev/vg_centos65x64/lv_root ``` ``` Extending logical volume lv_root to YY.ZZ GiB Logical volume lv_root successfully resized ``` Расширяем файловую систему ``` [root@CentOSx64 ~]# resize2fs /dev/vg_centos65x64/lv_root ``` Готово. https://serverspace.by/support/help/dobavlenie_diskovogo_prostranstva_windows_server_2012_r2.md Руководство по добавлению дискового пространства VPS/VDS-сервера (расширение тома) под управлением ОС Windows Server 2012/2016 R2 после расширения диска в панели управления облачного сервиса oblako.kz. После добавления дискового пространства на сервер в панели Вам необходимо выполнить ряд действий, для того чтобы данное пространство стало доступно на уровне операционной системы Windows Server 2012/16. Открыть "Computer Manager". Server Manager -> Tools > Compute: Скриншот №1. Computer Manager Открыть "Disk Management". В левой панели в папке "Storage", выберите "Disk Management". В правой нижней панели у Вас будет доступна неразмеченная область (Unallocated — на примере ниже эта область в 40 Gb): Скриншот №2. Disk Management Нажмите "Extend Volume". Выберите диск, к которому необходимо добавить дисковое пространство и нажмите правой кнопкой мыши на нем. Затем в раскрывшемся меню выберите раздел "Extend Volume": Скриншот №3. Выбор диска Откроется "Extend Volume Wizard": Скриншот №4. Extend Volume Wizard Выберите размер неразмеченной области, которую Вы собираетесь разметить (В большинстве случаев необходимо выбрать все доступное пространство). Затем нажмите "Next": Скриншот №5. Выбор области Подтвердите изменение нажатием кнопки "Finish": Скриншот №6. Подтверждение изменений Готово. Для проверки удостоверьтесь, что в окне "Computer Manager" больше нет неразмеченной области: Скриншот №7. Удостоверьтесь в готовности https://serverspace.by/support/help/dobavlenie_diskovogo_prostranstva_windows_server_2008_r2.md Инструкция по добавлению дискового пространства виртуального сервера (расширение тома) на уровне операционной системы Windows Server 2008 R2 после увеличения диска в панели управления. После добавления дискового пространства на сервер в панели вам необходимо выполнить следующие действия, чтобы данное пространство стало доступно на уровне операционной системы Windows Server 2008 R2. 1. Откройте "Computer Manager". Start Menu -> Administrative Tools > Computer Management: 2. Откройте "Disk Management". В левой панели в папке "Storage", выберите "Disk Management". В правой нижней панели у вас будет доступна неразмеченная область (Unallocated — на примере ниже эта область в 40 Gb): 3. Нажмите "Extend Volume": Выберите диск, к которому необходимо добавить дисковое пространство, и нажмите правой кнопкой мыши на нем. Затем в раскрывшемся меню выберите раздел "Extend Volume": 4. Откроется "Extend Volume Wizard": 5. Выберите размер неразмеченной области, которую вы собираетесь разметить (в большинстве случаев необходимо выбрать все доступное пространство). Затем нажмите "Next": 6. Готово. Для проверки удостоверьтесь, что в окне "Computer Manager" больше нет неразмеченной области: И что в окне "Computer" размер диска, который вы увеличивали изменился: https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru.md Как настроить подключение к удаленному серверу на базе Linux/Unix операционных систем при использовании сервисов Serverspace. Для работы с серверной платформой используется удаленное подключение. Это связано с тем, что оборудование располагается в другом городе или стране. Расскажем подробнее, как настроить подключение к удаленному серверу на базе [Linux](https://serverspace.by/services/vps-server/linux/)/Unix операционных систем при использовании наших сервисов. ## Как установить соединение Скачиваем утилиту для удаленного доступа – Putty. Ссылка: [https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html) **Важно!** Дистрибутивы программ выложены на отдельном ресурсе. Официальный сайт разработчика: [https://www.putty.org](https://www.putty.org) Скриншот №1. Ссылки для скачивания Putty доступен в двух релизах: для Windows и Linux-систем. Мы рассмотри пример использования Windows-дистрибутива с разрядностью х64. Выбираем строку "putty-64bit-0.72-installer.msi", указываем путь для сохранения. Запускаем программу. В поле Host name указываем IP-адрес сервера, к которому подключаемся: Скриншот №2. Вводим IP-адрес Его значение находится во вкладке "Состояние" на нашей странице виртуального сервера. Скриншот №3. Информация Остальные параметры оставляем без изменения. Нажимаем Open. Откроется рабочее окно, в котором появится надпись о добавлении секретного ключа. Соглашаемся. Вводим в открывшемся окне логин и пароль. Значения расположены в той же вкладке, где и IP-адрес (см. скриншот №3). Важно! При вводе пароля окно не отображает символы (даже в виде звездочек). Появляется ощущение, что клавиатура не работает. На самом деле ввод осуществляется, только действия не отображаются на мониторе как дополнительная мера безопасности. Если операции выполнены правильно, то на экране появится рабочий терминал. https://serverspace.by/support/help/problemy_pri_podkljuchenii_po_rdp.md Пошаговая инструкция по устранению проблем при подключении к рабочему столу удаленного сервера Windows. Что делать, если не работает RDP (Remote Desktop Protocol). RDP (Remote Destcop Protocol) — это протокол, позволяющий осуществлять управление операционной системой Windows удаленно. ## Диагностика ошибок 1. Убедитесь в правильном выполнении последовательности действий, описанных в отдельной [инструкции.](https://serverspace.by/support/help/kak_podkljuchitsja_k_windows_serveru/) 2. Проверьте, что сервер, к которому вы собираетесь осуществить подключение, включен. 3. Очень часто порт 3389 бывает недоступен. Это происходит из-за того, что ваш компьютер может находиться в корпоративной сети, а в большинстве организаций этот порт блокируют. Чтобы выяснить статус порта 3389 необходимо открыть командную строку (сочетание клавиш Win+R, пишем "cmd", открываем) и выполнить команду: ``` netstat -a ``` Данная команда помогает выяснить в каком состоянии находится каждый из ваших портов. Это крайне удобный инструмент для диагностики сетей и обнаружения проблем. 4. Также следует проверить сетевую доступность с помощью команды **-ping**. Она отправляет сообщения с запросом к IP-адресу и после каждой отправки выводит сообщение, в котором содержится ответ. Данная команда позволяет в кратчайшие сроки диагностировать проблемы на сетевом уровне. Для ее запуска открываем командную строку и выполняем следующую команду: ``` ping ``` , где — это адрес вашего сервера, к которому вы подключаетесь по RDP. В случае получения результата "_Превышен интервал времени для запроса_" обратитесь к вашему интернет-провайдеру, т.к. в этом случае наблюдается проблема с подключением к сети интернет. https://serverspace.by/support/help/kak_podkljuchitsja_k_windows_serveru.md Инструкция по подключению к удаленному серверу под управлением Windows по RDP (Remote Desktop Protocol). Шаг 1: Перейдите во внутреннюю панель управления на форму заказанного Вами сервера Windows. В панели управления Serverspace вы можете арендовать себе сервер с Windows. В данной статье мы расскажем как к нему подключиться Перейдите во внутреннюю панель управления на форму заказанного Вами [сервера Windows](https://serverspace.by/services/vps-server/windows/). Нажмите на ссылку «**Скачать RDP файл**» и запустите скачанный файл: В открывшемся окне установите галочку "**Больше не выводить запрос о подключениях к этому компьютеру**": В открывшемся окне необходимо ввести пароль: Панель можно скопировать из меню сервера, в меню **Подключение**: Произойдет соединение с сервером: https://serverspace.by/support/help/kak-protestirovat-virtualnyj-server.md В инструкции описан процесс активации тестового периода на VPS сервер. Это позволит ознакомиться с работой в панели управления и качеством услуг. Новые пользователи сервиса Serverspace могут бесплатно [протестировать работу наших виртуальных серверов](https://serverspace.by/services/vps-server/free-trial/). Во-первых, это позволит ознакомиться с работой в панели управления, с процессом создания сервера и его настройкой, с качеством предоставляемых услуг. Во-вторых, за время тестового периода пользователи могут проверить, что наше оборудование полностью подходит для работы с требуемым стеком программных компонентов. Тестовый период для юридических лиц составляет до 5 дней, для физических лиц — до 3 дней (в зависимости от выбранной конфигурации сервера). Для получения тестового периода, выполните, пожалуйста, следующие шаги: 1. [Зарегистрируйтесь](https://auth.serverspace.by) и [создайте виртуальный сервер](https://serverspace.by/support/help/kak-sozdat-virtualnyj-server/) с нужными параметрами (но, не превышающей 8 CPU, 16 Gb RAM и 200 Gb дискового пространства) В последствии вы без проблем сможете изменить конфигурацию сервера. 2. Заполните корректные данные юридического лица в панели управления, если вы его представляете: раздел **Настройки**, вкладка **Данные юрлица**. 3. Создайте [обращение в службу поддержки](https://panel.serverspace.by/support/create-request) в панели управления на предоставление тестового периода, в обращении указав цели тестирования виртуального сервера. Финальное решение о сроке тестового периода или об отказе в предоставлении теста принимают сотрудники службы технической поддержки. Подборки VPS/VDS: [аренда VPS в Европе](https://serverspace.by/services/vps-server.md), [аренда VPS на Linux](https://serverspace.by/services/vps-server/linux/) и [Windows](https://serverspace.by/services/vps-server/windows/). https://serverspace.by/support/help/sposoby-poluchit-zakryvayushhie-dokumenty.md Выбрать способ отправки (почта и электронный документооборот) можно в панели управления в настройках юридического лица. Электронные акты доступны в панели управления в разделе Биллинг. Для юридических лиц доступно несколько способов получить свои закрывающие документы: - почта; - электронный документооборот. Выбрать способ отправки и периодичность можно в панели управления в настройках юридического лица. Также здесь можно указать e-mail бухгалтера, на который необходимо отправлять финансовые документы. Акты формируются в начале каждого месяца за предыдущий. Электронные акты доступны в панели управления в разделе [Биллинг](https://panel.serverspace.by/billing#billing_tab_act.). https://serverspace.by/support/help/kak-vystavit-schet.md В инструкции описано как самостоятельно выставить счет и настроить автоматическую генерацию счетов - вы можете указать сумму счета и выбрать за какое количество дней необходимо высылать счета на оплату. Наши клиенты могут самостоятельно выставить счет и скачать его в панели управления в разделе [Пополнить баланс — Для юридических лиц](https://panel.serverspace.by/Billing/AddMoney#pay-legal). Также возможно выбрать одно из [правил автоматической генерации счетов](https://panel.serverspace.by/Account/Manage#company-settings), чтобы не пропустить следующую оплату. Это можно сделать в панели управления в настройках профиля юридического лица. Здесь вы можете указать сумму счета и выбрать за какое количество дней необходимо высылать счета на оплату. https://serverspace.by/support/help/kak-zaklyuchit-dogovor.md В инструкции описан процесс заключения двустороннего договора для юридических лиц. Заключение такого договора не является обязательным этапом для работы с нашим сервисом. Заключение двустороннего договора не является обязательным этапом для работы с нашим сервисом. Юридические лица могут заключить двусторонний договор, по тексту он аналогичен договору оферты, с которым можно ознакомиться [здесь](https://serverspace.by/conditions/oferta/). Для заключения заполните корректно данные юридического лица в [панели управления](https://panel.serverspace.by/Account/Manage). Затем [создайте обращение в службу технической поддержки](https://panel.serverspace.by/support/create-request), в теме письма указав "Заключение договора". Подписанный договор будет выслан на e-mail указанный при регистрации или, при необходимости, в бумажном виде на почтовый адрес. https://serverspace.by/support/help/obeshhannyj-platezh.md В инструкции описаны правила использования опции Обещанный платеж в панели облачного провайдера Serverspace. Опция доступна пользователям, которые минимум один раз пополняли свой баланс и потребление средств которых за последнюю неделю не нулевое. Опция **Обещанный платеж** может быть полезна, если по некоторым причинам вы не можете пополнить счет в текущий момент. Опция **Обещанный платеж** доступна для пользователей, которые хотя бы один раз пополняли свой баланс и потребление средств которых за последнюю неделю не нулевое. Сумма обещанного платежа рассчитывается на основании суммы потребления пользователем за последние 7 дней. _Примечание: для физических лиц услуга доступна через 2 месяца после регистрации, для юридических сразу._ Вкладка «Обещанный платеж» отображается в панели управления только, если на вашем лицевом счету средств хватает менее, чем на 7 дней работы всех заказанных серверов. https://serverspace.by/support/help/sposoby-oplaty.md Как оплатить сервисы Serverspace? Мы работаем как с физическими (VISA, MasterCard, Белкарт и ЕРИП), так и с юридическими лицами (доступен банковский перевод). Мы работаем как с физическими, так и с юридическими лицами. **Для физических лиц** доступны следующие платежные системы: VISA, MasterCard, Белкарт и ЕРИП. **Для юридических лиц** доступен банковский перевод. Счет можно получить прямо из панели управления, о том как это сделать, [читайте в нашей инструкции](https://serverspace.by/support/help/kak-vystavit-schet/). **ЕРИП** При оплате с помощью ЕРИП вам необходимо указать номер плательщика из панели управления. **Способы оплаты** **Банковской картой** После нажатия кнопки "Пополнить" вы перейдете на специальную защищенную платежную страницу процессинговой системы [bePaid](https://bepaid.by/). Обращаем ваше внимание, что после проведения платежа на указанный вами электронный адрес придет подтверждение оплаты. Просим вас сохранять данные оплат. Платежи по банковским картам осуществляются через систему электронных платежей [bePaid](https://bepaid.by/). Платежная страница системы bePaid отвечает всем требованиям безопасности передачи данных (PCI DSS Level 1). Все конфиденциальные данные хранятся в зашифрованном виде и максимально устойчивы к взлому. **Оплата счета как юридическое лицо** Для оплаты счета как юридическое лицо вам необходимо заполнить данные юридического лица в панели управления. После этого вы сможете выставить счет на любую необходимую вам сумму и оплатить его. Закрывающие документы вы сможете скачать в панели управления. https://serverspace.by/support/help/pravila-tarifikatsii-servisov.md В инструкции описаны правила списания средств со счета serverspace Наши услуги тарифицируются каждые 10 минут по мере потребления ресурсов: - Стоимость аренды ресурсов списывается с баланса аккаунта в панели управления. Для списания денежных средств баланс должен быть положительным. - Оплата услуг производится в белорусских рублях. Минимальная сумма пополнения составляет 3 белорусских рубля. - При недостатке денежных средств арендуемые ресурсы блокируются и, если баланс не был пополнен, удаляются через 2 недели (у тех, кто хотя бы раз оплачивал сервис) или через 1 день (у тех, кто ни разу не пополнял баланс). - Стоимость аренды виртуальных серверов складывается из количества арендуемых ресурсов сервера (ядра процессора, оперативная память, дисковое пространство), умноженное на их [ежемесячную стоимость](https://serverspace.by/conditions/price.md). У виртуальных серверов, выключенных средствами панели управления, тарифицируется только арендуемое дисковое пространство и дополнительные лицензии. - Плата за выпуск SSL-сертификатов списывается с баланса аккаунта единовременно. https://serverspace.by/support/help/migratsiya-virtualnoj-mashiny-vmware.md В инструкции описаны процедуры конвертирования виртуальных машин VMware для миграции в облачную инфраструктуру. Для миграции вам необходимо сконвертировать ваш виртуальный сервер в файл формата ovf или ova. Для миграции вам необходимо сконвертировать ваш виртуальный сервер в файл формата ovf или ova. OVF (Open Virtualization Format) — стандарт для хранения и распространения виртуальных машин. OVA является TAR архивом каталога с пакетом OVF. Требования к ova/ovf файлам: - Тип дисков scsi. - Hardware version не выше 13. Если вы используете один из продуктов компании VMware для виртуализации ваших серверов и/или настольных компьютеров, например VMware Workstation, VMware Fusion, VMware Server, VMware Player, процесс конвертации не будет трудоемким. Все продукты поддерживают стандартный экспорт машин в необходимый формат. ## VMware Workstation Необходимые условия: - Убедитесь в том, что виртуальная машина не зашифрована. Вы не можете экспортировать зашифрованную виртуальную машину в формат OVF. - Убедитесь в том, что виртуальная машина выключена. Процедура: - Выберете виртуальную машину и далее File > Export to OVF. - Введите имя для ovf-файла и выберите директорию для сохранения файла. - Нажмите Save для начала процесса экспорта в OVF. Процесс может занять несколько минут. Строка состояния показывает ход процесса экспорта. ## VMware Fusion Необходимые условия: - Убедитесь в том, что виртуальная машина не зашифрована. Вы не можете экспортировать зашифрованную виртуальную машину в формат OVF. - Убедитесь в том, что виртуальная машина выключена. Процедура: - Выберете виртуальную машину и далее File > Export to OVF. - Введите имя для ovf-файла и выберите директорию для сохранения файла. - Нажмите Save для начала процесса экспорта в OVF. Процесс может занять несколько минут. Строка состояния показывает ход процесса экспорта. ## vSphere Client - Выберете виртуальную машину и далее File > Export > Export OVF Template. - В диалоговом окне "Export OVF Template" введите имя шаблона. Примечание: при экспорте шаблона OVF с именем, которое содержит звездочки (*), эти символы превращаются в символы подчеркивания (_). - Выберите директорию для сохранения файла шаблона, или кликните "" для выбора местоположения. - В поле Format выберите тип OVF или OVA. OVF — выберете данный формат, чтобы сохранить шаблон в виде набора файлов (.ovf, .vmdk и .mf) Этот формат является оптимальным, если вы планируете опубликовать файлы на веб-сервере или в хранилище дисков. Пакет можно импортировать, например, в клиенте vSphere путем публикации URL в .ovf файл. OVA — выберете данный формат для более удобного распространения пакета OVF в виде отдельного файла, если его нужно явно загрузить с веб-сайта или перемещены с помощью USB. Фактически является архивом формата OVF. - В поле Description введите описание виртуальной машины. По умолчанию текст из панели Notes со вкладки Обзор виртуальной машины появится в этом текстовом поле. - Установите флажок, если вы хотите включить графические файлы, прикрепленные к floppy и CD / DVD-устройств в пакет OVF. Примечание: этот флажок виден только если к виртуальной машине подключен файл ISO или к дисководу подключен образ. - Нажмите OK. Строка состояния показывает ход процесса экспорта. ## VMware OVF Tool VMware OVF Tool представляет собой решение для импорта и экспорта OVF пакетов из продуктов VMware. Мы будем использовать данную утилиту для конвертации файла vmx в файл формата ovf, т.к. она позволяет создавать виртуальные модули из виртуальных машин. Загрузите установщик [VMware OVF Tool](https://www.vmware.com/support/developer/ovf/) на сайте компании Vmware. Выберете необходимую версию. Скриншот №1. Выбор версии VMware OVF Tool Перейдите в папку "Downloads" и запустите на исполнение скачанный файл. После установки откройте Windows PowerShell. Для конвертации необходим файл ovftool.exe, который находится по указанному при установки пути. Например: ``` C:Program FilesVMwareVMware OVF Toolovftool.exe ``` Перейдите в каталог "VMware OVF Tool" с помощью команды cd: ``` cd 'C:Program FilesVMwareVMware OVF Tool' ``` В командной строке введите команду со следующим синтаксисом: ``` .ovftool.exe ``` Например: ``` .ovftool.exe "C:VMVM-exampleVM-example.vmx" "C:VMVM-exampleVM-example.ovf" ``` Скриншот №2. Ввод команды После завершения конвертации у вас появится ovf файл с вашей виртуальной машиной. Скриншот №3. Файл с виртуальной машиной https://serverspace.by/support/help/podklyuchenie-iso-obraza.md Как с помощью ISO-образа мигрировать диск в виртуальную инфраструктуру Serverspace? При помощи программы, например, UltraISO, нужно создать образ диска - и отправить запрос в техническую поддержку. Если у вас есть настроенный физический или виртуальный диск с данными, то вы можете выполнить миграцию его ISO-образа в нашу виртуальную инфраструктуру. Для начала создайте ISO-образ диска, для этого существует большое количество программ и утилит, например одна из них — UltraISO. После того как ваш образ готов, создайте [обращение в службу технической поддержки](https://panel.serverspace.by/support/create-request) для миграции в нашу инфраструктуру, прикрепив во вложение файл образа диска и указав к какому именно серверу его необходимо подключить. https://serverspace.by/support/help/zagruzka-ova-ili-ovf.md Как с помощью OVA/OVF файлов мигрировать в виртуальную инфраструктуру Serverspace? Для этого сконвертируйте образ VPS сервера в формат OVA/OVF с соблюдением следующих требований. Если у вас есть настроенный физический или виртуальный сервер, то вы без труда можете мигрировать его образ в нашу инфраструктуру с помощью OVF или OVA файлов. Для миграции сервера сконвертируйте его в формат OVA/OVF, при этом должны быть соблюдены следующие требования: - в конфигурации отсутствуют какие-либо сетевые устройства или адаптеры; - тип дисков scsi; - HW Version не выше 13 версии. После того как ваш образ готов, создайте [обращение в службу технической поддержки](https://panel.serverspace.by/support/create-request) для миграции в нашу инфраструктуру, прикрепив во вложение файл образа. https://serverspace.by/support/help/podklyuchenie-cherez-swift-api.md Подключение к объектному хранилищу по протоколу SWIFT API при помощи программы Cyberduck. Для подключения к объектному хранилищу с помощью Swift API используйте программу Cyberduck. Загрузить актуальную версию Cyberduck можно на [официальном сайте](https://cyberduck.io/). После установки запустите программу и в горизонтальном меню выберите **Новое подключение**: Скриншот №1. Новое подключение В открывшемся окне в выпадающем списке выберите пункт **OpenStack Swift (Keystone 3)**. Если у вас отсутствует данный профиль подключения, необходимо [загрузить его отдельно](https://cyberduck.io/openstack/). Загруженный профиль можно открыть с помощью двойного клика. В качестве сервера укажите адрес Endpoint из панели управления и порт HTTPS **443**. В поле Project:Domain:Username введите Project, Domain и Username в следующем формате: **Project:Domain:Username**. В поле Пароль введите ваш пароль из панели управления, но не сохраняйте его: Скриншот №2. Введение данных Далее нажмите клавишу **Подключиться**: Скриншот №3. Подключение В результате произойдет подключение к объектному хранилищу. https://serverspace.by/support/help/podklyuchenie-po-protokolu-s3.md Подключение к объектному хранилищу про протоколу S3 с помощью программы S3Browser. Подключение к хранилищу по протоколу S3 можно выполнить с помощью программы S3Browser. Для начала скачайте установщик с [официального сайта](https://s3browser.com/help.aspx?v=6-5-9&fam=x64). После установки S3Browser запустите приложение, в горизонтальном меню выберете **Accounts** -> **Add new account**. Скриншот №1. Добавление нового аккаунта В открывшемся окне в поле Account Name введите любое понятное для вас название. В выпадающем меню выберете тип подключения — **S3 Compatible Storage**. В поле REST Endpoint введите адрес EndPoint из панели управления. Заполните поля Access Key ID и Secret Access Key значениями AccessKey и SecretKey из панели управления соответственно. Скриншот №2. Заполнение полей Отметьте галочкой пункт **Use secure transfer (SSL/TLS).** Нажмите кнопку **Add new account**. После добавления вы автоматически соединитесь с хранилищем по протоколу S3. Для последующего соединения в S3Browser в горизонтальном меню используйте **Accouts** -> **Имя подключения**. https://serverspace.by/support/help/kratkoe-rukovodstvo-po-usluge.md Услуга DNS-хостинга предназначена для управления ресурсными записями доменов, делегированных на наши DNS серверы. Рассмотрим подробнее данную услугу. К каждому серверу, подобно адресу дома, привязан IP-адрес. Он состоит из цифр, разделяемых точками. С помощью IP-адреса пользователи могут заходить на серверы и открывать нужные сайты. Однако что делать, если на одном сервере расположено несколько сайтов. Или если вы перенесли сайт на другой сервер с новым IP-адресом, а в интернете осталась масса ссылок на старый. Да и сам IP-адрес запомнить довольно трудно. В далеком 1983 году человек с именем Пол Мокапетрис нашел способ все упростить. Он придумал систему доменных имен, которая связывает IP-адрес сервера с доменным именем (доменом). Например, домен google.com c IP-адресом 64.233.162.101. Вся информация о связях доменов и IP-адресов хранится на специальных DNS-серверах, а услуга размещения доменов на таких серверах называется DNS-хостингом. Таким образом, если ваш сайт переехал на другой сервер, достаточно просто отредактировать DNS-запись, связав домен с новым IP-адресом. И это далеко не все возможности DNS-хостинга. Давайте познакомимся с этой услугой подробнее на примере [DNS-хостинга Serverspace](https://serverspace.by/services/dns-hosting.md). ## **Возможности DNS-хостинга Serverspace** - **Бесплатное размещение до 50 доменов на аккаунте** В Serverspace услуга DNS-хостинга предоставляется бесплатно. Каждый пользователь может разместить на аккаунте до 50 доменов и для этого не нужно ни пополнять баланс, ни привязывать банковскую карту. А у клиентов, которые арендуют в Serverspace виртуальные серверы, нет и этого ограничения — они могут бесплатно размещать неограниченное количество доменов. - **Автоматический перенос DNS-записей** Если ваши домены находятся на другом DNS-хостинге и вы хотите перенести их в Serverspace со всеми настройками, достаточно просто указать домен и поставить галочку в чекбоксе «Произвести миграцию DNS записей». Система автоматически перенесет все действующие записи для указанного домена в панель управления Serverspace и вы сможете редактировать каждую из них. - **Создание и редактирование DNS-записей** В Serverspace вы можете создавать и редактировать до 8 типов DNS-записей для каждого домена. Рассмотрим каждый тип подробнее. ## Типы DNS-записей DNS-записи или, как их еще называют, ресурсные записи, позволяют хранить на DNS-сервере информацию о домене и его связях, необходимую для корректной работы домена и связанных с ним служб. ### A-запись Связывает домен с IPv4-адресом сервера. Например, IPv4-адрес 185.255.77.77 с доменом serverspace.by. ### AAAA-запись Аналогична A-записи и связывает домен с IP-адресом сервера. Однако разница все же есть. В отличие от А-записи, запись АААА связывает домен не с IPv4-адресом, а с адресом IPv6 — усовершенствованной версией IPv4. ### MX-запись Запись, необходимая для работы электронной почты. Благодаря ей отправляющая сторона «понимает» на какой сервер нужно отправлять почту для домена. ### PTR-запись Является зеркальной версией А-записи и связывает IP-адрес сервера с доменом. ### CNAME-запись Используется для переадресации. Например, переадресации поддомена на домен. ### NS-запись Указывает на адреса DNS-серверов, на которых хранятся все ресурсные записи домена. Например, адреса DNS-серверов Serverspace — ns01.serverspace.by и ns02.serverspace.by. ### TXT-запись Текстовая запись, которая может содержать любую информацию о домене. ### SRV-запись Запись, которая указывает местоположение сервера различным службам. ## Процесс делегирования домена Теперь попробуем разместить домен на DNS-серверах Serverspace и начать управлять его ресурсными записями. 1. [Регистрируемся](https://auth.serverspace.by/register) в панели управления Serverspace, переходим в раздел «DNS» и нажимаем на кнопку «Добавить домен». 2. Указываем доменное имя, которое планируем разместить на DNS-серверах. При необходимости перенести все DNS-записи с предыдущего DNS-хостинга, ставим галочку в чекбоксе «Произвести миграцию DNS записей» и еще раз нажимаем на кнопку «Добавить домен». Запустится процесс миграции. На экране появится прогресс-бар и в течение минуты все DNS-записи для указанного домена будут перенесены в панель управления. 3. По завершении процесса миграции отобразится список перенесенных DNS-записей. Теперь вы можете их редактировать, удалять или оставить как есть. Или же, если вы не воспользовались миграцией записей, просто начать создавать свои собственные. https://serverspace.by/support/help/osnovy-raboty-s-dns.md В инструкции описаны основные принципы работы с DNS ### Общая информация В этой статье рассмотрены необходимые для практического применения базовые аспекты функционирования DNS. **DNS (Domain Name System — система доменных имен)** представляет собой распределенную систему хранения и обработки информации о доменных зонах. Она необходима, в первую очередь, для соотнесения IP-адресов устройств в сети и более адаптированных для человеческого восприятия символьных имен. Предоставление информации об IP-адресах хостов по символьному адресу — не единственная задача DNS. Система работает с разными типами ресурсных записей, позволяющими реализовывать весьма широкий круг задач: переадресация между доменными именами, балансировка нагрузки между хостами, привязка специфических сервисов (напр., эл. почты) к домену. Система доменных имен является одной из фундаментальных технологий современной интернет-среды, так как информация об IP-адресе запрашиваемого узла — обязательное условие получения ответа на любой интернет-запрос. Но IP-адрес представляет собой числовое значение вида «1.23.45.67», неподходящее для комфортного восприятия человеком. К тому же основной принцип распределения IP-адресов в сети — уникальность. Важно и то, что сетевой адрес — не самый устойчивый параметр. Он может изменяться (напр., при смене хоста, обслуживающего запрашиваемый узел, смене хостинг-провайдера, и т.п.). Все перечисленные особенности делают систему навигации по сетевым адресам сложной для человека. DNS обеспечивает преобразование запрашиваемого клиентом символьного имени домена в IP-адрес (адреса) обслуживающего эту доменную зону сервера (серверов). Изначально, до разрастания сети интернет, адреса преобразовывались согласно содержимому файла «hosts», составлявшегося централизованно и автоматически рассылавшегося на каждую из машин в сети. По мере роста глобальной сети такой метод перестал оправдывать себя — появилась потребность в новом механизме, которым и стала DNS, разработанная в 1983 году Полом Мокапетрисом. **Ключевыми характеристиками DNS являются:** - **Распределенность хранения и управления** — каждый DNS-сервер обязан хранить информацию только по делегированным ему доменам, а ответственность за различные узлы дерева доменных имен несут разные лица - **Кэширование данных** — DNS-сервер может временно хранить некоторое количество информации о неделегированных ему доменах для уменьшения уровня общей нагрузки - **Иерархическая структура** — узел, ответственный за доменную зону, может самостоятельно делегировать нижестоящие узлы другим DNS-серверам - **Резервирование** — хранение и обработка информации об одних и тех же узлах обычно обеспечивается несколькими DNS-серверами, изолированными физически и логически. Такой подход обеспечивает доступность информации даже при сбое одного или нескольких узлов. ### Иерархия и делегирование доменных имен **Домен** представляет собой именованную ветвь в дереве имен, включающую в себя сам узел (напр., домен первого уровня «.com»), а также подчиненные ему узлы (напр., домен второго уровня «example.com», домен третьего уровня «mail.example.com» и т.д.). Для обозначения иерархической принадлежности доменных имен принято использовать понятие **«уровень»** — показатель положения узла в дереве доменов. Чем ниже значение уровня, тем выше иерархическое положение домена - **«.»** — домен нулевого уровня - **«.ru»** — домен первого (верхнего) уровня - **«example.com»** — домен второго уровня - **«mail.example.com»** — домен третьего уровня - Этот список можно продолжать Обратите внимание на домен нулевого уровня **«.» (dot — точка)**, также называемый корневым. На практике точку обычно не указывают («example.com» вместо «example.com.»), т.е. указание корневого домена не является обязательным условиям разрешения IP-адреса. Большинство клиентских программ (интернет-браузеров и т.д.) добавляют домен нулевого уровня автоматически и не отображают его пользователю. Доменное имя, не включающее обозначение домена нулевого уровня называется относительным, включающее же точку на конце — полностью определенным **(FQDN — Fully Qualified Domain Name)**. **Доменная зона** — часть иерархического дерева доменных имен (напр. «.ru»), целиком переданная на обслуживание определенному DNS-серверу (чаще нескольким) с целью делегирования другому лицу ответственности за этот и все подчиненные домены («anyaddress.ru», «any.anyaddress.ru»). **Делегирование** — передача ответственности за определенную ветвь дерева доменных имен другому физическому или юридическому лицу. Именно эта процедура практически реализует важный принцип работы DNS — распределенность хранения записей и обработки запросов. Сам процесс делегирования представляет собой добавление в ресурсные записи родительской зоны («.ru»), так называемых **«склеивающих» («glue») NS-записей** для делегируемой дочерней зоны («example.com»), указывающих на DNS-сервера принимающей домен стороны (например, DNS-сервера нашей компании). С этого момента все ресурсные записи домена второго уровня «example.com» и всех его дочерних доменов (например, «mail.example.com» и т.д.) хранятся на DNS-серверах этой компании, а родительская зона «.ru» хранит только указывающие на эти сервера NS-записи. **DNS-сервер** — хост, хранящий ресурсные записи и обрабатывающий DNS-запросы. DNS-сервер может самостоятельно разрешать адреса, относящиеся к зоне его ответственности (в примере выше это зона example.com), или передавать запросы по зонам, которые он не обслуживает, вышестоящим серверам. **DNS-клиент** — набор программных средств для работы с DNS. Сам DNS-сервер периодически также выступает в качестве клиента. ### Основные типы ресурсных записей **Ресурсная запись (RR — Resource Record)** — единица хранения и передачи информации в DNS, включающая в себя следующие элементы (поля): - **Имя (Name)** — имя домена, к которому относится запись - **TTL (Time To Live)** — допустимое время хранения записи неответственным сервером - **Тип (Type)** — параметр, определяющий назначение и формат записи в поле данных (Rdata) - **Класс (Class)** — тип сети передачи данных (подразумевается возможность DNS работать с типами сетей, отличных от TCP/IP) - **Длина поля данных (Rdlen)** - **Поле данных (Rdata)** — содержание и формат поля зависят от типа записи Ниже представлены типы ресурсных записей, используемые чаще всего: - **A (IPv4 Address Record — адресная запись)** — связывает доменное имя с IPv4-адресом хоста - **AAAA (IPv6 Address Record)** — связывает доменное имя с IPv6-адресом хоста (аналогично А-записи) - **CNAME (Canonical Name Record — каноническая запись имени)** — используется для перенаправления на другое доменное имя - **MX (Mail Exchange — почтовый обменник)** — ссылается на почтовый сервер, обслуживающий домен - **NS (Name Server — сервер имен)** — ссылается на DNS-сервер, ответственный за домен - **TXT** — текстовое описание домена. Зачастую требуется для выполнения специфических задач (например, подтверждения права собственности на домен при привязке его к почтовому сервису) - **PTR (Point to Reverse — запись указателя)** — связывает ip-адрес машины с доменом, используется преимущественно для проверки сторонними почтовыми сервисами отправляемых через эту машину электронных писем на отношение к домену, указанному в параметрах почтового сервера. При несоответствии этих параметров письмо проверяется более тщательно по другим критериям. ### Рекурсивные и нерекурсивные DNS-запросы **Рекурсией** называется модель обработки запросов DNS-сервером, при которой последний осуществляет полный поиск информации, в том числе о доменах, неделегированных ему, при необходимости обращаясь к другим DNS-серверам. **DNS-запросы (DNS queries)** от клиента (сервера) к серверу бывают рекурсивными и нерекурсивными. В первом случае DNS-сервер, принявший запрос, опрашивает все узлы в порядке убывания уровня зон, пока не получит положительный ответ или информацию о том, что запрашиваемый домен не существует. В случае с нерекурсивными запросами сервер даст положительный ответ только при запросе узла, входящего в доменную зону, за которую этот сервер ответственен. Отсутствие рекурсии может быть обусловлено не только типом запроса, но и запретом на выполнение таких запросов со стороны самого DNS-сервера. Кэширование — еще одна важная характеристика DNS. При последовательном обращении сервера к другим узлам в процессе выполнения рекурсивного запроса DNS-сервер может временно сохранять в кеш-памяти информацию, содержащуюся в получаемых им ответах. В таком случае повторный запрос домена не идет дальше его кэш-памяти. Предельно допустимое время кэширования содержится в поле TTL ресурсной записи. https://serverspace.by/support/help/kak-delegirovat-domen.md Инструкция по использованию услуги DNS, описание способов миграции доменов и добавлению DNS-записей. Услуга DNS является бесплатной для всех пользователей сервиса Serverspace. Услуга DNS является бесплатной для всех пользователей сервиса Serverspace. _Примечание: возможно делегировать только домены второго уровня._ Для того, чтобы делегировать ваш домен на наши NS-сервера в панели управления в вертикальном меню перейдите на вкладку **DNS** и нажмите **Добавить домен**. Далее введите ваш домен второго уровня. Далее выберете способ миграции, вы можете: - указать IP-адрес сервера или выбрать один из ваших виртуальных серверов — в данном способе миграции вам потребуется самостоятельно указывать DNS-записи; - поставить галочку в поле **Провести миграцию DNS-записей** для автоматической миграции DNS-записей. В конце нажмите **Добавить домен.** [/step]**** **** Далее вы увидите строку состояния процесса и краткие инструкции по дальнейшим действиям. В панели управления ресурсными записями вашего домена на сайте регистратора или в другом интерфейсе управления DNS-записями, замените значения записей NS (Name Server) делегируемого домена на адреса наших NS-серверов, которые можно посмотреть в созданных записях домена. _Примечание: после сохранения параметров дождитесь завершения процедуры делегирования. Как правило, процесс учета таких изменений занимает от 6 до 24 часов, в редких случаях до 72 часов._ Подробную информацию по процедуре делегирования уточняйте у вашего доменного регистратора. После успешного делегирования домена вы можете управлять ресурсными записями вашего домена из нашей панели с помощью кнопки **Создать запись**. https://serverspace.by/support/help/opisanie-uslugi-monitoring.md Что такое услуга мониторинг и кто может ее использовать Мониторинг — это автоматизированная услуга проверки доступности серверов (хостов), доменов и различных служб с помощью метрик. При изменении статуса проверяемого объекта, например, доступности виртуального сервера, система будет отправлять на почту моментальное уведомление. В Serverspace для каждого проверяемого объекта возможно подключить до 13 типов метрик — DNS, FTP, HTTP GET, HTTP HEAD, HTTP POST, IMAP, MySQL, PING, POP3, SMTP, SSH, SSL или TCP. Рассмотрим каждый тип подробнее: - DNS: проверка службы доменных имен; - FTP: проверка протокола передачи файлов; - HTTP GET: проверка получения данных с веб-сервера; - HTTP HEAD: проверка получения данных с веб-сервера без пересылки тела сообщения; - HTTP POST: проверка отправки данных на веб-сервер; - IMAP: проверка получения электронных писем; - MySQL: проверка базы данных; - PING: проверка доступности с помощью отправки ICMP-пакетов; - POP3: проверка получения электронных писем; - SMTP: проверка пересылки электронных писем; - SSH: проверка защищенного протокола передачи данных; - SSL: проверка веб-сервера по защищенному протоколу HTTPS; - TCP: проверка доступности TCP-портов. Каждая метрика доступна для проверки из 5 разных точек мира: Минска, Франкфурта-на-Майне, Амстердама, Москвы и Нью-Йорка. При этом можно выбрать как одну или несколько из этих точек, так и все сразу. ## **Как подключить услугу** 1. Перейдите в раздел «Мониторинг» в панели управления и нажмите на кнопку «Добавить хост»: 2. В поле «Хост или домен» введите домен или IP-адрес сервера, который необходимо поставить на мониторинг, и выберите тип проверки: 3. Далее выберите точки проверки, установив галочки в чекбоксах рядом с названиями городов, из которых будет выполняться проверка: 4. Затем установите требуемое время ожидания отклика, после которого система будет считать, что хост или домен недоступен, и периодичность отправляемых запросов: 5. Для получения уведомлений на почту, которую вы указали при регистрации в Serverspace, поставьте галочку в чекбоксе «Уведомлять меня по почте при изменении статуса этого хоста», и нажмите на кнопку «Добавить»: 6. После добавления перейдите во вкладку «Метрики» и при необходимости создайте дополнительные метрики для добавленного хоста или домена. ## **Стоимость услуги** Услуга бесплатна в течение 30 дней с момента подключения для всех пользователей. Далее за каждый подключенный к мониторингу хост или домен будет списываться абонентская плата в размере 2 руб/мес. К каждому хосту или домену вы можете бесплатно подключить до 10 различных метрик. Начиная с 11 каждая метрика будет тарифицироваться по 0,20 руб/мес. https://serverspace.by/support/help/podklyuchenie-metrik-k-monitoringu.md Как добавить отслеживание метрик для хоста или домена, описание статусов метрик услуги Мониторинга в панели провайдера Serverspace. В рамках услуги **Мониторинг** вы можете добавить отслеживание различных метрик для хоста. Для этого подключите хост или домен и на вкладке **Метрики** используйте кнопку **Создать метрику**. В открывшемся окне введите имя метрики, выберете нужный протокол и при необходимости заполните дополнительные поля. Поле **Ожидаемый ответ** можно оставить пустым, в этом случае любой полученный ответ будет считаться ожидаемым, также здесь можно ввести требуемый специфический код. Все метрики наследуют точки проверок хоста. При необходимости имеется возможность также включить уведомления на почту об изменении статуса метрики, поставив галочку в соответствующем поле. Нажмите **Создать метрику**. Созданная метрика, ее статус, тип и отметка времени последней проверки отобразятся в списке метрик. Для удаления метрики нажмите справа на крестик. _Важно: при удалении метрики будет удалена вся ее история._ __ Статусы метрик В нашем сервисе приняты следующие обозначения статусов метрик. | | Метрика | | --- | --- | | | Метрика отвечает | | | Метрика не отвечает | ### Просмотр истории Для просмотра истории метрик и доступности хоста откройте вкладку История. На ней в хронологическом порядке отображаются статус запроса, тип, временная отметка и точка проверки. При необходимости можно отфильтровать этот список по нужным критериям. _Примечание: тип проверки, который помечен как Хост ‒ проверка условия доступности хоста._ https://serverspace.by/support/help/kak-podklyuchit-khost-domen.md Подключение хоста или домена к услуге Мониторинг в панели управления serverspace Для подключения хоста или домена к услуге мониторинга необходимо в панели управления в вертикальном меню выбрать **Мониторинг**. В открывшемся окне с помощью кнопки **Добавить хост** добавьте сервер или домен для мониторинга. - Введите **ip-адрес машины или доменное имя**, которое необходимо отслеживать. Хост может любой, не обязательно арендуемый в нашем сервисе. - Выберете **Правило проверки** в выпадающем списке, например, PING. - Укажите **Время ожидания отклика** — время, в течении которого ожидается отклик. Если за это время отклик не получен, то считаем, что хост/домен недоступен. - Укажите **Периодичность запросов** — время, через которое необходимо опять выполнить проверку доступности. - Выберете **Точки проверки** — географические объекты, из ЦОДов которых будут отправляться запросы. Точка может быть как одна, так и несколько, по умолчанию выбраны все доступные. Далее заполните условие для проверки доступности: При необходимости вы можете включить уведомления на почту об изменении статуса хоста, поставив галочку в соответствующем поле. После заполнения условия нажмите кнопку **Добавить**. В списке появится созданный хост мониторинга, его статус и отметка времени последней проверки. Актуализировать статус можно с помощью круговой стрелки. Также можно отключить мониторинг хоста с помощью тумблера, например, во время плановых работ. Для изменения условия проверки перейдите в настройки хоста щелчком левой кнопкой мыши по ip-адресу или доменному имени. При внесении изменений не забудьте их сохранить. ### Статусы хоста В нашем сервисе приняты следующие обозначения статусов хоста. Значение статуса хоста зависит от статуса условия проверки и метрик. | | Хост | | --- | --- | | | Хост доступен, условие проверки выполняется, и все метрики отвечают | | | Хост недоступен, условие проверки не выполняется, метрики могут как отвечать,так и не отвечать | | | Хост доступен, условие проверки выполняется, но некоторые метрики не отвечают | ### Удаление хоста Для удаления хоста на вкладке **Удалить** подтвердите свое действие и нажмите кнопку **Удалить**. https://serverspace.by/support/help/kak-rasshirit-kanal-internet.md Как увеличить скорость соединения с сетью Интернет на VPS? Самостоятельно возможно расширить канал до 100 Мбит/с, а по запросу — до 300 Мбит/с. Если вам недостаточно текущей скорости соединения с сетью Интернет, то ее можно увеличить в настройках сервера в панели управления во вкладке Сети. Самостоятельно возможно расширить канал до 100 Мбит/с, а по [запросу в службу поддержки](https://panel.serverspace.by/support/create-request) — до 300 Мбит/с. Не забудьте сохранить внесенные изменения. Если вам необходима ширина канала до 1 Гбит/с, следует заказать выделенную публичную подсеть. О том как это сделать читайте в нашей статье. https://serverspace.by/support/help/kak-sozdat-publichnuyu-podset.md Как создать публичную подсеть в панели управления Serverspace и подключить к ней серверы? Рассмотрим в нашей инструкции. Создание публичной сети является платной услугой для наших клиентов Создание публичной сети является платной услугой для наших клиентов, за использование публичной сети происходит списание средств согласно правилам тарификации. [step num=»1″]Вы можете объединить только сервера расположенные в одном ЦОДе. Для этого в вертикальном меню перейдите во вкладку **Сети** и нажмите **Добавить сеть**.[/step] [step num=»2″]Выберете ЦОД в котором будет создана сеть, тип сети **Публичная сеть**, емкость сети и ширину канала. Нажмите **Создать сеть**.[/step] [step num=»3″]Вашей сети будет выдан публичный шлюз и маска, и указана емкость сети. Для подключения сервера к сети переведите тумблер **Подключить** в активное состояние и нажмите **Сохранить**.[/step] [step num=»4″]При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы. Публичные адреса будут доступны в панели управления.[/step] https://serverspace.by/support/help/kakoj-ssl-sertifikat-vybrat.md Выбор SSL-сертификата для защиты сайта или интернет-магазина зависит от: 1. количества доменов 2. наличия поддоменов 3. присутствия функции оплаты на сайте 4. необходимости наличия зеленой строки. Для выбора подходящего [SSL сертификата](https://serverspace.by/services/ssl/) необходимо понимать: - сколько доменов вы хотите защитить - необходима ли защита поддоменов - будет ли на сайте происходить оплата - необходимо ли наличие зеленой строки Если вам необходимо защитить лишь один домен, то самый простой и лёгкий в получении сертификат это [Sectigo PositiveSSL](https://serverspace.by/services/ssl/sectigo-positivessl/). Он поддерживает домены с www и без а также кириллические домены. Если у вас есть оплата на сайте, то лучше использовать сертификат с проверкой организации, например, [Sectigo InstantSSL](https://serverspace.by/services/ssl/sectigo-instantssl/). Проверка организации как правило происходит около 5 дней, и довольно не простая. Все необходимые документы и этапы проверки описаны в нашей статье. Для защиты домена с большим числом поддоменов обычно используют [wildcard-сертификат](https://serverspace.by/services/ssl/wc.md), например, [Sectigo PositiveSSL Wildcard](https://serverspace.by/services/ssl/sectigo-positivessl-wildcard/). Данный сертификат защищает основной указанный домен и следующие по уровню. Например, при заказе сертификата для домена example.com будут защищаться только домены вида: _example.com_, _test1.example.com_, _test3.example.com_. Домены вида mail.test.example.com в данном случае защищаться не будут. Для одновременной защиты нескольких доменов удобно использовать [мультидоменный сертификат](https://serverspace.by/services/ssl/san.md), например, [Sectigo PositiveSSL Multi-Domain](https://serverspace.by/services/ssl/sectigo-positivessl-multi-domain/). С помощью всего-лишь одного сертификата вы защитите разные доменные имена, например, _example.com_, _test.org_ и _mail.example.edu_. Если необходимо защитить неограниченное количество доменов и поддоменов, используйте сертификат [Sectigo PositiveSSL Multi-Domain Wildcard](https://serverspace.by/services/ssl/sectigo-positivessl-multi-domain-wildcard/) (2 SAN). Например, у вас будут защищены _mail.example.com_, _news.example.com_, _mail.test.com_, _images.yest.com_. Это уникальный сертификат, который поддерживает и SAN и Wildcard. Если вам необходима самая высокая степень доверия со стороны конечных потребителей, используйте сертификат с зеленой строкой, например [Sectigo Extended Validation SSL](https://serverspace.by/services/ssl/sectigo-ev-ssl/). Сертификаты с зеленой строкой имеют расширенную проверку, которая длится около 2 недель и включает в себя проверку организации и обратный звонок от сертифицирующего центра. https://serverspace.by/support/help/installing-and-configuring-the-wamp-server.md WAMP-сервер является реализацией классического LAMP-сервера (Apache, PHP, MySQL), но для ОС семейства Windows. Перед настройкой WAMP-сервера установим недостающие библиотеки. WAMP-сервер является реализацией классического LAMP-сервера, но для ОС семейства Windows. В данный дистрибутив входит Apache, PHP, MySQL и автоматический установщик расширений. Перед установкой WAMP-сервера установим недостающие библиотеки — Visual C++ Redistributable for Visual Studio 2015. Для этого переходим по [ссылке](https://www.microsoft.com/en-us/download/details.aspx?id=48145). Для удобства выбираем язык отображения страницы нажимаем на кнопку Download / Загрузить. Страница обновится, выбираем разрядность дистрибутива и кликаем по кнопке Next / Далее. Дожидаемся полной загрузки пакета. Устанавливаем его по принципе "Далее-Готово". Аналогичным образом устанавливаем: - [Microsoft Visual C++ 2008 SP1 Redistributable Package (x64)](https://www.microsoft.com/en-us/download/confirmation.aspx?id=2092) - [Microsoft Visual C++ 2010 SP1 Redistributable Package (x64)](https://www.microsoft.com/en-us/download/details.aspx?id=13523) - [Visual C++ Redistributable for Visual Studio 2012 Update 4](https://www.microsoft.com/en-us/download/details.aspx?id=30679) - [Update for visual C++ 2013 Redistributable Package](https://support.microsoft.com/en-us/help/4032938/update-for-visual-c-2013-redistributable-package) Переходим на сайт проекта WAMP по [ссылке](http://www.wampserver.com/ru/). Открываем раздел "Загрузка" Дожидаемся полной загрузки файла и запускаем его. В самом начале, программа предлагает выбрать язык для всего процесса установки. Выбираем по удобству. В нашем случае будет английский. Кликаем по кнопке "OK". Внимательно читаем лицензионное соглашение. Если все устраивает — принимаем условия и продолжаем установку. На следующем этапе программа предложит ознакомиться с информацией по установке. Данная информация напоминает о необходимости отключить IIS сервер и обновить пакеты Visual C++. Выбираем путь установки. По умолчанию "C:wamp". Важно, чтобы на диске было свободно более 2,5Гб. Если все устраивает, нажимаем "Далее" (Next). На следующем шаге, программа предложит создать ярлык в меню Пуск. Кликаем "Далее" (Next). Проверяем параметры установки и кликаем "Установить" (Install). Дожидаемся окончания процесса установки. В процессе установки может появиться вопрос об использовании Internet Explorer в качестве браузера WAMP-сервера. Если желаете выбрать другой браузер, нажимаем кнопку "Да". В этом случае будет необходимо указать exe-файл нового браузера. Если установлены все вышеперечисленные обновления, сервер WAMP-запустится в системном трее. Проверяем работу сервера. Для этого перейдем по ссылке http://127.0.0.1. Н**астроим Apache.** Разрешим подключение для всех, а не только для локальных пользователей. Отредактируем файл C:wamp64binapacheapache2.4.39confhttpd.conf. В данном конфигурационном файле необходимо отыскать секцию: ``` ``` Заменяем значение "Require local"на "Require all granted". Сохраняем изменения и закрываем файл. Теперь отредактируем файл C:wamp64binapacheapache2.4.39confextrahttpd-vhosts.conf. Заменяем параметры и значения секции Directory на: ``` Options FollowSymLinks ``` ``` AllowOverride All ``` ``` Order deny,allow ``` ``` allow from all ``` Сохраняем и закрываем файл. Перезапускаем WAMP-сервер. Для этого кликаем по значку в трее правой кнопкой мыши и выбираем Refresh. Для проверки работы www-сервера, создадим html-файл в корне сайта. Для этого открываем Блокнот и наполняем его html-кодом. Затем сохраним файл по пути C:wamp64wwwindex.html Теперь с другого компьютера откроем файл. Это можно сделать по доменному имени, если оно приобретено и настроено, либо по IP-адресу. В качестве примера: ``` http:///index.html ``` ``` http:///index.html ``` Для того, чтобы узнать свой IP-адрес, достаточно открыть командную строку или окно PowerShell и выполнить команду: ``` ipconfig ``` Открываем. Важно! Правила Брандмауэра Windows должны разрешать подключение к 80 и 443 TCP-портам. Настройка phpMyAdmin На главной странице сервера, в самом низу, слева, в секции Tools кликаем по phpmyadmin. Страница откроется по адресу http://127.0.0.1/phpmyadmin/. Web-приложение запросит логин и пароль. По умолчанию, логин — root, пароль следует оставить пустым. Также следует выбрать используемую СУБД и кликнуть по кнопке "Вперед". После успешной авторизации можно добавить пользователей, если в этом есть необходимость, а также изменить пароль пользователя root. Перейдем на вкладку "Учетные записи пользователей". В строке пользователя root кликнем по редактировать привилегии. Страница обновится, кликаем по "Изменить пароль". Вводим пароль и его подтверждение. Кликаем по кнопке "Вперед". Важно понимать. что root является пользователем с наивысшими привилегиями. Пароль должен быть сложным. По окончании настроек перезапускаем сервер аналогично тому, как это было показано выше. https://serverspace.by/support/help/installing-git-on-windows.md Рассмотрим процесс установки Git, а также настройки подключения к репозиторию GitHub на выделенном сервере под управлением ОС Windows. Система контроля версий Git полезна не только для программистов но и для системных администраторов. Рассмотрим процесс установки программного обеспечения, а также настройки подключения к репозиторию GitHub, на сервере под управлением ОС Windows. Немного теории. Git — одна из популярных современных систем контроля версий. В основном используется разработчиками программного обеспечения с целью отслеживания изменений в программных продуктах в ходе их разработки. Изначально Git создали для помощи в разработке ядра Linux, однако из-за своих преимуществ, проект ушел в массы. Приступаем к установке. Открываем официальный сайт [проекта](https://git-scm.com/download/win), кликаем по 64-битной версии для Windows. . Загрузка начнется автоматически, дожидаемся ее окончания. Запускаем полученный файл. Программа установки приветствует нас лицензионным соглашением. Кликаем по кнопке "Next". На следующем шаге указываем путь установки. Нас устраивает указанный по умолчанию. Кликаем "Next". На этапе выбора компонентов, отметим галочкой создание ярлыка Git на рабочем столе и переходим к следующему этапу. Теперь программа установки предлагает создать ярлык в меню Пуск. Если в этом не видите необходимости, установите соответствующую галку. Кликаем по кнопке "Next". На следующем этапе, установщик предложит выбрать редактор для git по умолчанию. Для новичков лучше использовать nano, для тех, кто любит посложнее — Vim. Хотя допускается использование Notepad++ и прочего. Переходим к следующему шагу. Теперь программа установщик спрашивает как Вы собираетесь использовать командную строку: - Use Git from Git Bash only — использование только из командной строки Bash. - Use Git from the Windows Command Prompt — использование командной строки Bash, а также минимальный набор команд Git из командной строки Windows. - Use Git and optional Unix tools from the Windows Command Prompt — использование Git и утилит Unix из командной строки Windows. При выборе этой опции будут перезаписаны некоторые утилиты ОС Windows, например find и sort. Оставляем первый вариант и двигаемся дальше. Теперь установщик спрашивает о том, какую библиотеку следует использовать для HTTPS-соединений. Оставляем openssl и переходим к следующему шагу. Следующий шаг можно назвать самым значимым. Вопрос программы установки в том, какой формат завершения строки использовать. Одной из отличительных особенностей Windows от Unix-подобных систем — символ перехода на новую строку в файлах, а именно, LF и CRLF — управляющие символ для переноса строки в Unix и Windows соответственно. Мы рекомендуем выбрать параметр предложенный системой — отладка файла в формате Windows, а загрузка файла — в Unix-формате. Кликаем по кнопке "Далее". На данном этапе, программа запросит каким терминалом пользоваться далее: - MinTTY — терминал Unix; - Windows — стандартный терминал (командная строка) Windows. В нашем случае оставляем "как есть" и двигаемся дальше. На следующем шаге, установщик попросит отметить необходимые функции: - File system caching — кэширование файловой системой. - Git Credential Manager — включить менеджер учетных данных. - Symbolic links — разрешить использование символьных ссылок. Выбираем то, что необходимо и переходим к следующему шагу. На данном шаге, программа установки предлагает использовать экспериментальную опцию. Использовать ее или нет — решать Вам. Кликаем по кнопке "Install". Программа приступает к копированию файлов. Дожидаемся окончания процесса. По окончании процесса установки нажимаем "Finish". Подключаемся к репозиторию. Предполагается, что у вас уже есть своя учетная запись на github/gitlab. Если нет, то, в случае с github, проходим несложный процесс регистрации на [сайте](https://github.com/). Затем авторизуемся на нем и создаем репозиторий. Для этого кликаем по кнопке "Start a project". Указываем имя репозитория и кликаем по кнопке "Create repository". Репозиторий создан. Добавляем файлы. Предположим, что у нас есть файл, который необходимо добавить в репозиторий git или gitlab. Открываем папку, где располагается файл, кликаем правой кнопкой мыши по свободному месту и из открывшегося контекстного меню выбираем "Git Bash Here". Откроется командная строка. Последовательно выполняем следующие команды: ```bash git config —global user.email "youmail@example.com" ``` ```bash git config —global user.name "Ваше имя" ``` Таким образом мы указали нашу почту и имя. Для того, чтобы начать отслеживать изменения в текущей папке, выполняем следующие команды: ```bash git init ``` ```bash git add . ``` Выполняем свой первый коммит и добавляем изменения на сервер: ```bash git commit -m "Init" ``` Важно. Чтобы внести изменения на сервер, следует использовать для github: ```bash git remote add origin https://github.com/пользователь/название_репозитория.git ``` ```bash git push -u origin master ``` Для gitlab: ```bash git remote add gitlab https://server/namespace/project.git ``` ```bash git push -u gitlab master ``` После запуска команды, откроется окно авторизации. Вводим данные, которые использовали при регистрации. Настройка аутентификации по SSH-ключам. Для начала создадим ключ: ```bash ssh-keygen -t rsa -b 4096 -C "[yourmail@gmail.com](mailto:yourmail@gmail.com)" ``` В ходе генерации ключа, программа запросит ввод парольной фразы, которая необходима для защиты самого ключа. Можно ответить на вопрос двойным нажатием на Enter. Закрытый ключ будет находиться по пути C:Users<Пользователь>.sshid_rsa. Открытый ключ — C:Users<Пользователь>.sshid_rsa.pub Запускаем SSH-агента: ``` eval $(ssh-agent -s) ``` Добавляем ключи к ssh-агенту: ```bash ssh-add ~/.ssh/id_rsa ``` Добавляем созданный ключ на сервер Git. На сайте github, в верхнем правом углу, кликаем по иконке учетной записи, выбираем "Setting". На обновленной странице, в левом меню, выбираем "SSH and PGP keys", а в основной части окна, напротив SSH keys, кликаем по кнопке "New SSH key". Заполняем поле Title. В поле Key вставляем содержимое файла C:Users<Пользователь>.sshid_rsa.pub Кликаем по кнопке "Add SSH key". Если все выполнено правильно, появится примерно такая запись: Для проверки настроек, выполняем команду: ```bash ssh -T git@ ``` Например: ```bash ssh -T [git@github.com](mailto:git@github.com) ``` В ходе выполнения команды, программа запросит: "Уверены ли вы в продолжении соединения". Это стандартный вопрос безопасности. Отвечаем — yes. Если все выполнено правильно, программа выведет приветственную речь. https://serverspace.by/support/help/ustanovka-fsharp-na-ubuntu-server-18-04.md Процесс установки F# с помощью .NET Core и Mono на Linux Ubuntu 18.04, примеры компиляции программного кода F#. В инструкции описана установка языка программирования F# на виртуальный сервер Ubuntu Server 18 с помощью .NET Core и Mono, а также примеры компиляции программного кода F#. **Что такое F# ?** F# — это зрелый кроссплатформенный функциональный язык программирования с открытым исходным кодом. Он позволяет пользователям и организациям решать сложные вычислительные проблемы с помощью простого, удобного в обслуживании и надежного кода. Преимущества F#: - Простота — простой язык, который легко изучить; - Сильная среда разработки для клиентских и серверных приложений Windows; - F# Interactive — запуск кода непосредственно в IDE, идеально подходит для написания сценариев и тестирования; - Проверка статического типа — ловит много ошибок во время компиляции; - Автоматическое обобщение — функции по мере возможности автоматически делаются обобщенными. **Установка F# с помощью .NET Core** Microsoft предоставляет .NET Core Software Development Kit (SDK) для разработчиков на F#. NET Core Software Development Kit (SDK) — это набор библиотек и инструментов, которые позволяют разработчикам создавать приложения и библиотеки .NET Core. Он как правило поддерживает несколько языков программирования, имеет среду выполнения и компилятор. На этом этапе будет выполнена установка SDK. После того, как вы [подключились к виртуальному серверу](https://serverspace.by/support/help/kak-podklyuchitsya-k-virtualnomu-serveru/) и открыли терминал, с помощью команды wget выполните загрузку пакетов из репозитория Microsoft: ```bash wget -q [https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb](https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb) ``` Добавьте репозиторий Microsoft и установите пакеты в вашу систему, используя инструкцию dpkg -i: ``` sudo dpkg -i packages-microsoft-prod.deb ``` Добавьте репозиторий Universe, который даст доступ к зависимости apt-transport-https для передачи пакетов через протокол https: ``` sudo add-apt-repository universe ``` ```bash sudo apt install apt-transport-https ``` Примечание: Universe — поддерживаемое сообществом бесплатное программное обеспечение с открытым исходным кодом Затем обновите локальный репозиторий: ```bash sudo apt update ``` Наконец, установите актуальную версию .NET SDK. В нашей инструкции будет использована версия 2.2: ```bash sudo apt install dotnet-sdk-2.2 ``` Для проверки успешной установки .NET SDK выведите информацию: ``` dotnet —info ``` Ожидаемый вывод: ``` Welcome to .NET Core! --------------------- Learn more about .NET Core: https://aka.ms/dotnet-docs Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli-docs Telemetry --------- The .NET Core tools collect usage data in order to help us improve your experience. The data is anonymous and doesn't include command-line arguments. The data is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell. Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry ... ``` Также будет выведена информация об установке: ```yaml .NET Core SDK (reflecting any global.json): Version: 2.2.300 Commit: 73efd5bd87 Runtime Environment: OS Name: ubuntu OS Version: 18.04 OS Platform: Linux RID: ubuntu.18.04-x64 Base Path: /usr/share/dotnet/sdk/2.2.300/ Host (useful for support): Version: 2.2.5 Commit: 0a3c9209c0 .NET Core SDKs installed: 2.2.300 [/usr/share/dotnet/sdk] .NET Core runtimes installed: Microsoft.AspNetCore.All 2.2.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] Microsoft.AspNetCore.App 2.2.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 2.2.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App] To install additional .NET Core runtimes or SDKs: https://aka.ms/dotnet-download ``` Теперь .NET Core готово к использованию. В настройках по умолчанию некоторая информация об использовании команд отправляется в Microsoft, чтобы ее отключить необходимо добавить строку в конец файла настроек среды .profile: ``` export DOTNET_CLI_TELEMETRY_OPTOUT=1 ``` И активировать изменения: ``` source ~/.profile ``` Для того, чтобы воспользоваться всеми возможностями F#, например, разрабатывать кроссплатформенные и мобильные приложения, необходимо в дополнение установить F# с помощью Mono. **Установка F# с помощью Mono** Для установки Mono добавьте репозиторий и ключ с помощью следующих команд: ```bash sudo apt-key adv —keyserver hkp://keyserver.ubuntu.com:80 —recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list ``` Обновите локальный репозиторий пакетов: ```bash sudo apt update ``` С помощью следующей команды установите Mono и F#: ```bash sudo apt install mono-complete fsharp ``` Установка Mono может занять некоторое время. По завершении этих действий на виртуальном сервере будет установлен компилятор fsharp и fsharpi. Для активации fsharpi просто введите в консоль следующую команду: ``` fsharpi ``` Чтобы проверить, что все работает верно, выведете приветственную строку: ``` printfn "Hello World!";; ``` Ожидаемый вывод: Hello World! val it : unit = () Для выхода из оболочки используйте команду: ``` #quit;; ``` Компиляция программ на F# с помощью .NET Core Для создания консольного проекта используйте следующую команду: ``` dotnet new console -lang F# -o FSharpHello ``` Здесь опция new создает новый проект, console означает, что проект консольный, -lang задает язык программирования, я опция -o создает директорию для проекта. После выполнения команды вы можете перейти в директорию: ``` сd FSharpHello ``` В каталоге находится файл конфигурации проекта FSharpHello.fsproj и каталог obj, который используется для хранения временных объектных файлов. А в файле Program.fs расположен исходный код. Откройте его в вашем текстовом редакторе: ``` nano Program.fs ``` В качестве содержимого файла будет автоматически сгенерирована программа, выводящая фразу «Hello World from F#!»: ``` // Learn more about F# at http://fsharp.org open System [] let main argv = printfn "Hello World from F#!" 0 // return an integer exit code ``` Чтобы скомпилировать и запустить этот код, используйте следующую команду из каталога проекта ~/FSharpHello: ``` dotnet run ``` Вы увидите следующую строку в консоли: Hello World from F#! **Компиляция программ на F# с помощью Mono** Создайте новый файл, например: ``` nano hello.fs ``` Добавьте следующие программные строки в файл: ``` open System let hello() = printf "Who are you? " let name = Console.ReadLine() printfn "Oh, Hello %s!nI'm F#." name hello() Console.ReadKey() |> ignore ``` В данной программе вызывается функция hello(), которая запрашивает имя и выводит приветствие. Для компиляции программы выполните следующую команду, очень похожую на компиляцию программ C/C++ на Linux: ``` fsharpc hello.fs -o hello ``` Чтобы запустить скомпилированный исполняемый файл выполните следующую команду: ``` mono hello ``` В консоли появится сообщение: Who are you? Консоль будет ожидать ввода данных. Если вы введете Admin, то вывод будет следующий: ``` Oh, Hello Admin! I'm F#. ``` Нажмите любую клавишу и программа завершится. https://serverspace.by/support/help/ustanovka-ruby-on-rails-na-ubuntu.md Рассмотрим подробнее процесс установки и настройки Ruby on Rails на виртуальном сервере под ОС Ubuntu. Установка MySQL. Создание приложений. Рассмотрим подробнее, каким способом можно на виртуальном сервере под ОС Убунту установить и настроить фреймворк Ruby on Rails. ## Описание фреймворка Он создавался посредством программного языка Руби, данный фреймворк имеет открытый исходный код. По сути, как и любой фреймворк, это комбинация приложений и инструментов, создающих единую область взаимодействия пользователя с веб-приложениями. Ruby on Rails используют при создании самых разнообразных сайтов с формами авторизации, оставления отзывов, совершением заказов и покупок онлайн. ## Как установить Руби Прежде всего потребуется настроить зависимость для фреймворка. В этом поможет репозиторий Yarn и Node.js: ```bash curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash — curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add — echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list ``` Обратите внимание: [Webpacker](https://github.com/rails/webpacker), который поддерживается Yarn, помогает пользоваться препроцессорами Bundler и более известным JavaScript. Далее потребуется обновление системы и ее инсталляция на устройство: ```bash sudo apt-get update sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev nodejs yarn ``` Наиболее известным методом инсталла языка Руби является команда rbenv: ```bash cd git clone https://github.com/rbenv/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc exec $SHELL ``` Следующий шаг – загрузить архив из каталога Github: ```bash git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc exec $SHELL ``` Установив фреймворк Ruby, нужно обязательно проверить его версию: ``` rbenv install 2.5.3 rbenv global 2.5.3 ruby -v ``` Далее устанавливается Bundler – утилита, управляющая [RubyGems](https://ru.wikipedia.org/wiki/RubyGems): ``` gem install bundler ``` ## Как установить Rails Данный фреймворк с огромными зависимостями инсталлируется в ту область, которая доступна для работы с Javascript. Для примера можно взять NodeJS. В таком случае можно будет применить Asset Pipeline либо [Coffeescript](https://ru.wikipedia.org/wiki/CoffeeScript) и в фреймворке. Они скомбинируют и уменьшат код Javascript, повышая скорость и производительность. Следующая команда позволит инсталлировать NodeJS: ```bash curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash — sudo apt-get install -y nodejs ``` Далее устанавливается сам фреймворк: ``` gem install rails -v 5.2.1 ``` Файлу Rails нужно присвоить доступ такой командой: ``` rbenv rehash ``` После чего инсталл можно считать оконченным. Правильность установки проверяется так: ``` rails -v ``` В результате: ``` # Rails 5.2.1 ``` Другие строчки сигнализируют о неправильно прошедшей установке и настройке. ## Как настроить MySQL Фреймворк идет в комплекте с собственной БД – sqlite3. Она элементарна и не имеет хорошей защищенности, поэтому в качестве БД лучше взять более популярную и надежную систему управления базами данных MySQL. Инсталл клиента и сервера осуществляется через хранилище Убунту: ```bash sudo apt-get install mysql-server mysql-client libmysqlclient-dev ``` ## Как создавать приложения при помощи Rails В создании приложений поможет команда: ``` rails new myapp -d mysql ``` Для перехода в директорию приложения вводится: ``` cd myapp ``` Для создания отдельной БД: ``` rake db:create ``` Открытие 3000 порта для запуска фреймворка: ``` iptables -A INPUT -p tcp —dport 3000 -j ACCEPT ``` Запуск сервера: ``` rails server ``` Чтобы проверить правильность настройки, надо перейти в браузер, вводя: ``` :3000 ``` К примеру: ``` 111.111.111.111:3000 ``` Когда настройки сделаны без ошибок, перед пользователем появляется такая страница: https://serverspace.by/support/help/ustanovka-neo4j-na-windows.md Графовая система управления базой данных Neo4j и ее подключение к VPS на Windows. Загрузка СУБД, запуск Neo4j через PowerShell, подключение к веб-интерфейсу. Что представляет собой графовая система управления базой данных Neo4j и как подключить ее к виртуальному серверу, использующему ОС Виндовс. ## Описание Neo4j Данная СУБД является графовой, то есть в своей работе с информацией она применяет модель графов. На [сайта разработчика](https://neo4j.com/product/) можно более подробно разузнать обо всех возможностях программы. ## Что потребуется для работы Чтобы запустить Neo4j на компьютере, устройство должно обладать следующими минимальными характеристиками: - Оперативная память – от 2 Гб. Для оптимального функционирования необходимо 16 Гб. - Жесткий диск – SSD типа. - Язык программирования виртуального сервера – Java. Поэтому понадобится установка Oracle Java на веб-сервер. ## Как загрузить СУБД Чтобы начать загрузку Neo4j, необходимо на [официальном портале ПО](https://neo4j.com/download-center/) подобрать оптимальную версию, которая подойдет для работы с Виндовс системами, а после загрузить zip-архив. Разархивировать файлы можно в любую удобную директорию, но желательно поместить их прямо на системный диск: ``` C:neo4j ``` После чего система управления базами данных запускается через консольное приложение либо службу Виндовс, ## Открыть как консольное приложение Для запуска Neo4j нужно открыть PowerShell, также подойдет и классическая командная строка. Дальше надо зайти в директорию с файлами: ``` cd neo4jbin ``` Сделать запуск исполняемого файла: ``` .neo4j.bat console ``` Итог: консоль покажет несколько строк с технической информацией. ``` 2018-12-14 14:07:42.177+0000 INFO ======== Neo4j 3.5.0 ======== 2018-12-14 14:07:42.192+0000 INFO Starting 2018-12-14 14:07:45.130+0000 INFO Bolt enabled on 127.0.0.1:7687. 2018-12-14 14:07:46.661+0000 INFO Started. 2018-12-14 14:07:47.630+0000 INFO Remote interface available at http://localhost:7474/ ``` После этого открывается виртуальный интерфейс и работа продолжается в нем. ## Открыть как службу Windows Для запуска Neo4j, как и в прошлом случае, потребуется командная строка либо PowerShell. Затем необходимо зайти в директорию с файлом: ``` cd neo4jbin ``` Инсталлировать сервис через такую команду: ``` .neo4j.bat install-service ``` В итоге на экран выведется строчка: ``` Neo4j service installed ``` Запустить саму систему управления базами данных можно через: ``` .neo4j.bat start ``` А если понадобится завершить работу, есть команда: ``` .neo4j.bat stop ``` ## Как подключиться к веб-интерфейсу Когда СУБД успешно запустилась, открывается браузер по умолчанию, в нем в строчке поиска пишется: ``` localhost:7474 ``` Первое подключение запросит пароль, можно указать: ``` neo4j ``` Далее можно поменять стандартный пароль на более сложный. А после этого откроется окошко с начало работы Neo4j. https://serverspace.by/support/help/ustanovka-jupyter-notebook-na-ubuntu.md Установка Jupyter Notebook на Ubuntu при помощи Python v3 - процесс инсталляции, настройка виртуального окружения, запуск Jupyter. Как установить Jupyter Notebook на Ubuntu v18.04 при помощи Python v3 Ниже мы рассмотрим возможность установки веб-серверу под операционной системой Ubuntu приложения Jupyter Notebook и его подключения. Установка будет происходить при помощи языка программирования Python. ## Немного информации Jupyter Notebook является виртуальным приложением, у которого открыт исходный код. Оно помогает писать и делиться визуализацией, программным кодом и другими объектами. Поддерживается многими программными языками, в том числе Julia, Python, R, Руби, Haskell. Чаще всего используется для взаимодействия с большими объемами данных, статистической информацией и машинным обучением. Jupyter Notebook состоит из файлов, которые также называются "записными книжками". В них содержится кодовая часть и результат ее выполнения. Результат может быть представлен другим пользователям и воспроизведен сторонними юзерами. ## Как установить Для начала потребуется сделать зависимость через репозиторий Ubuntu, необходимую виртуальной среде для языка Python. Перед этим следует обновить базу с локальными пакетами: ```bash sudo apt update sudo apt upgrade ``` Потом устанавливается pip вместе с файлами заголовка Python, необходимых для создания зависимостей веб-приложения: ```bash sudo apt install python3-pip python3-dev ``` ## Как создать виртуальное окружение Первым делом настраивается доступ пользователя для команды virtualenv: ``` sudo -H pip3 install —upgrade pip sudo -H pip3 install virtualenv ``` Атрибут -Н показывает, что безопасность задается переменным окружения для домашнего каталога. Затем нужно сделать и перейти в новую директорию, в которой будут храниться данные. Пусть названием служит каталог Serverspace: ``` mkdir ~/Serverspace cd ~/Serverspace ``` Там, внутри каталога, создается виртуальная среда для Python. Рекомендуется придумывать имя среды, тесно связанное со сферой проекта. Например, Serverspace: ``` virtualenv Serverspace ``` После таких процедур создастся окружение, в котором хранится Python и pip локальных версий. В последствии можно заняться настройками изолированных сред Python для веб-приложения. До установки Jupyter понадобится активация виртуальной среды. Таким образом, название Serverspace следует заменить другим, более актуальным и понятным именем среды: source Serverspace/bin/activate ## Как установить и запустить Jupyter После активации виртуальной среды инсталлировать веб-приложение можно через локальный экземпляр: ```bash pip install jupyter ``` Следующим образом можно подключить Jupyter Notebook на любой удаленной ПК либо веб-сервер через браузер с передаваемым токеном. Перед непосредственным запуском необходимо сделать открытие порта: ``` iptables -A INPUT -p tcp —dport -j ACCEPT ``` Более подробный пример команды: ``` iptables -A INPUT -p tcp —dport 1234 -j ACCEPT ``` Запустить приложение можно описанной ниже командой. В ней параметр —ip подскажет адреса, которые будут подключаться к виртуальному серверу Jupyter. Выставленные нули говорят о том, что подключиться можно с любым IP. Параметр —no-browser помогает провести запуск сервера без открытия браузеров. За указание портов для запуска отвечает —port=Port№. Непосредственное разрешение запуска включает —allow-root. ``` jupyter notebook —ip 0.0.0.0 —no-browser —port=Port№ ``` Обратите внимание: для суперпользователей команда дополняется еще одним параметром —allow-root, который вносится в самом конце. К примеру: ``` jupyter notebook —ip 0.0.0.0 —no-browser —port=1234 —allow-root ``` Когда консоль будет запущена, на экране можно увидеть длинный путь с токеном. Далее необходимо перейти по данному адресу через браузер, заменив значения в скобках доменным именем либо реальным IP-адресом устройства. В конце возникнет рабочая область, предназначенная для взаимодействия пользователя с Python. https://serverspace.by/support/help/dd-utility-for-windows-backup.md Мы расскажем, как посредствам специальной утилиты DD создавать резервные копии данных на виртуальном сервере под Windows. Загрузка и использовании утилиты. Мы расскажем, как посредствам специальной утилиты DD создавать резервные копии данных на виртуальном сервере под ОС Виндовс Сервер. ## Несколько слов о резервном копировании файлов Бэкапы (от английского "Backup") – это метод создания запасной копии важной информации на компьютере либо сервере. Его можно проводить ручным способом или автоматическим в соответствии с регулярным расписанием. Утилитой DD можно воспользоваться для ОС семейства Линукс, ее команды помогают с копированием файлов через определенные операнды. Это одна из наиболее давних утилит, ее бэкапы можно открыть разнообразным софтом. Версия под операционную систему Виндовс отличается меньшим функционалом, чем версия для Линукс. К примеру, в ней отсутствует поддержка конвертации файлоы и использования блочных устройств. ## Как загрузить утилиту Скачиваем утилиту DD [со специального сайта](http://www.chrysocome.net/downloads/dd-0.5.zip), ведь это стороннее программное обеспечение, широко доступное для пользователей. В загруженном архиве будет несколько файлов, запустить утилиту позволит приложение dd.exe. ## Как использовать Применение DD в Виндовс системах очень похоже на ее использование в командной строке Линукса. Для открытия страницы с помощью следует зайти в каталог с нужным объектом, а после открытия консоли PowerShell ввести: ``` ./dd.exe —list ``` Если нужна запасная копия HDD вместе со всей хранящейся на нем информацией, пригодится такая строчка: ``` ./dd.exe if= of= bs=1440k ``` Демонстрация того, как создать образ диска F и перенести его на диск Е: ``` ./dd.exe if=.f: of=e:tempdisk1.img bs=8M ``` В результате получается: ``` rawwrite dd for windows version 0.5. ``` ``` Written by John Newbigin ``` ``` This program is covered by the GPL. See copying.txt for details ``` ``` 7279+1 records in ``` ``` 7279+1 records out ``` Расшифруем запись: - Строчка if=/dev/sda отвечает за копирование всего жесткого диска sda. - Задать конкретный объем кэша на жестком диске, который позволит ускорить процесс копирования данных, поможет выражение bs=8M. В противном случае информация начнет переноситься мелкими размерами, примерно по 512 б каждый. - Место, куда будет копироваться файл, указывается командой of=/mnt/backup/sda.img. Первые два выражения означают точку монтирования HDD для хранения образа, то есть папке mnt с подпапкой backup. Обратите внимание: перед создание бэкапов надо убедиться, что на желаемом диске хватает незанятого пространства. Восстановить HDD из бэкапа поможет команда: ``` ./dd.exe if= of= bs=8M ``` К примеру: ``` ./dd.exe if=e:tempdisk1.img of=.f: bs=8M ``` В итоге получится: ``` rawwrite dd for windows version 0.5. ``` ``` Written by John Newbigin ``` ``` This program is covered by the GPL. See copying.txt for details ``` ``` 1279+1 records in ``` ``` 1279+1 records out ``` Лучше всего делать резервные копии данных по установленному графику, тогда не придется переживать о том, что администратор забыл или не успел скопировать файлы. Работа полностью автоматизируется. Обратите внимание: здесь создание бэкапов происходит один раз за 24 часа, все данные переносятся на диск, который удален территориально от самого сервера. Пользователю нет нужды самому настраивать резервное копирование, а хранение бэкапов происходит даже при сбоях на сервере. https://serverspace.by/support/help/kak-otrkit-port-v-pfsense.md Ниже рассмотрен метод, позволяющий настроить внешний доступ к порту веб-сервера под ОС PFSense версии 2.3. Для открытия порта потребуется в верхней строчке найти Файрволл, а в нем – подменю Rules. Ниже рассмотрен метод, позволяющий настроить внешний доступ к порту веб-сервера под ОС PFSense версии 2.3. ## Об открытии портов Для начала потребуется в верхней строчке найти Файрволл, а в нем – подменю Rules. Нажав на него, появится страница, в которой следует выбрать соединение WAN, затем – Добавить. Появится окошко Destination со вторым полем port range, где выставляет значение порта Откуда и Куда. Обратите внимание: в место From поступают сетевые запросы, а в To они обрабатываются и перенаправляются. Имя портов может совпадать. Затем следует сохранить изменения. После этого Панель управления дополнится новыми правилами, которые можно будет редактировать, а пользователь сможет коннектиться через открытый порт PFSense. Специальное меню Расписание позволит делать сложные правила, разрабатывать фильтры нежелательного сетевого трафика, уменьшать серверную нагрузку в заданные часы. https://serverspace.by/support/help/ustanovka-go-na-windows-server.md В инструкции написано, как установить Go (GoLang) на Windows Server и настроить среду программирования с помощью PowerShell. Установка диспетчера пакетов Chocolatey, текстового редактора Nano. В инструкции написано как установить Go на с Windows Server и настроить среду программирования с помощью PowerShell. ### Что такое Go? Go или GoLang — это процедурный язык программирования, появившийся благодаря разработчикам Google. Разработчикам постоянно приходилось выбирать между языками, которые выполняются эффективно, но медленно компилируются, и языками, которые быстро компилируются и легки в использовании, но работают неэффективно. Go был спроектирован таким образом, чтобы все требования были доступны одновременно: быстрая компиляция, простота программирования и эффективное выполнение. Go легко изучить, он обладает небольшим набором ключевых слов, что делает его отличным выбором как для начинающих, так и для опытных разработчиков. Преимущества языка Go: - компании,в которых уже разрабатывают на Golang: Google, YouTube, Apple, Dropbox, Docker, BBC, The Economist, The New York Times, IBM, Twitter, Facebook. - имеет хорошую поддержку. Язык финансируется Google. Его создатели, Роберт Гриземер, Роб Пайк и Кен Томпсон внесли свой вклад в такие влиятельные вещи, как C, B, Unix, JVM и другие. - язык с открытым исходным кодом. Невероятно важно, чтобы язык программирования был открытым, для того, чтобы становиться лучше, чище и эффективнее. Если в программном коде есть дефекты, суслики (так называют разработчиков Golang) обнаружат и устранят проблемы. - прост в использовании и быстр в изучении. Go имеет простую структуру и синтаксис. Он лишен классов, наследования, типов. Язык основан на функциях, поэтому он прост и быстр в изучении. Он организован таким образом, что обеспечивает более быструю обратную связь, сокращает время выхода на рынок и экономит время и деньги. Поэтому продукты написанные на GoLang легче обслуживать, а их разработка быстрее и дешевле. - параллелизм. Параллелизм чрезвычайно важен в наше время. Это позволяет нескольким процессам работать одновременно и эффективно. Golang имеет эффективный параллелизм, такой же как C, C ++, Java, но в то же время параллелизм в Go выполняется намного проще благодаря процедурам, каналам и сборке мусора. - кроссплатформенность. Он используется для различных платформ, включая версии для Windows, Linux, Unix и BSD и мобильные устройства (начиная с 2015 года). Кроме того, он хорошо компилируется на многих ОС. - имеет сборщик мусора. Автоматическое управление памятью оказывает существенное влияние на производительность и помогает повысить эффективность параллелизма. - уменьшает количество ошибок и багов. Поскольку это компилируемый язык с очень строгой типизацией и статической типизацией, разработчики должны быть более точными и внимательными, поэтому код получается более аккуратный и безопасный. ### Открытие и настройка PowerShell PowerShell — это программа от Microsoft, предоставляющая интерфейс командной строки. Задачи администрирования как правило выполняются с помощью командлетов, которые являются частью программной среды .NET и могут выполнять операции. Откройте консоль PowerShell, это можно сделать с помощью поиска. Перейдите в домашний каталог с помощью команды: ``` cd ~ ``` Затем вы будете в домашнем каталоге, Например, в C:UsersAdministrator. Для установки GoLang необходимо настроить разрешения для PowerShell. По умолчанию она настроена для работы в наиболее безопасном режиме. Существует несколько уровней разрешений, которые возможно настроить: | Restricted | Политика выполнения по умолчанию. В этом режиме нельзя запускать скрипты, а PowerShell работает только как интерактивная оболочка. | | --- | --- | | AllSigned | Позволяет запускать все сценарии и файлы конфигурации, которые подписаны доверенным издателем, что означает, что потенциально возможно подвергнуть компьютер риску запуска вредоносных сценариев, которые подписаны доверенным издателем. | | RemoteSigned | Позволяет запускать все скрипты и файлы конфигурации, а для загруженных из Интернета требуется подпись доверенным издателем. | | Unrestricted | Сценарии и файлы будут выполняться независимо от источника и наличия подписи. | Мы рекомендуем использовать политику RemoteSigned, чтобы установить разрешения для текущего пользователя. Это позволит PowerShell принимать доверенные сценарии, не делая разрешения такими же широкими, какими они были бы с неограниченным разрешением. Введите следующую команду в PowerShell: ``` Set-ExecutionPolicy -Scope CurrentUser ``` Далее PowerShell предложит вам указать политику выполнения. Введите RemoteSigned для возможности установки пакетов: ``` RemoteSigned ``` Как только вы нажмете Enter, вас попросят подтвердить изменение в политике выполнения. Введите букву Y, чтобы изменения вступили в силу. Вы можете проверить текущие разрешения на сервере: ``` Get-ExecutionPolicy -List ``` Ожидаемый вывод: ``` Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser RemoteSigned LocalMachine Undefined ``` Это подтверждает, что возможно запускать доверенные сценарии, загруженные из Интернета. ### Установка диспетчера пакетов Chocolatey Диспетчер пакетов — это набор программных инструментов, которые автоматизируют процесс установки. Он занимается первоначальной установкой, обновлением и настройкой программного обеспечения, а также удалением по мере необходимости. Chocolatey — это менеджер пакетов командной строки, созданный для Windows по аналогии с apt-get в Linux. Chocolatey поможет быстро установить приложения и различные инструменты. Начните с создания объекта WebClient с именем $script, который разделяет настройки интернет-соединения с Internet Explorer: ``` $script = New-Object Net.WebClient ``` Используйте этот метод DownloadString для инспекции скрипта: ``` $script.DownloadString("[https://chocolatey.org/install.ps1](https://chocolatey.org/install.ps1)") ``` Установите Chocolatey: ``` iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex ``` ### Установка текстового редактора Nano (опционально) На этом шаге можно установить текстовый редактор nano, который использует интерфейс командной строки. Вы можете использовать nano для написания программ непосредственно в PowerShell. Это не обязательный шаг, так как вы также можете использовать текстовый редактор с графическим интерфейсом пользователя, например, Блокнот или Sublime. Используйте Chocolatey для установки nano: ``` choco install -y nano ``` ### Установка Go Как и в случае с nano на предыдущем шаге, используйте Chocolatey для установки Go: ``` choco install -y golang ``` После завершения установки убедитесь, что Go установлен. Чтобы увидеть изменения, закройте и снова откройте PowerShell от имени администратора, а затем проверьте доступную версию Go: ``` go version ``` Ожидаемый вывод: ``` go version go1.12.5 windows/amd64 ``` ### Создание простой программы В вашем домашнем каталоге откройте текстовый редактор командной строки nano и создайте новый файл: ``` nano hello.go ``` Вставьте следующие строки в файл: ``` package main import "fmt" func main() { fmt.Println("Hello, World!") } ``` Выйдите из nano, нажав клавиши CTRL и X. Когда будет предложено сохранить файл, нажмите Y, а затем ENTER. Когда вы выйдете из nano и вернетесь в рабочую оболочку, запустите программу: ``` go run hello.go ``` Программа hello.go должна вывести следующую строку: ``` Hello, World! ``` На этом этапе работа базовой программы подтвердила, что рабочее окружение Go настроено правильно. https://serverspace.by/support/help/mounting-a-disk-and-creating-partitions-in-linux.md Рассмотрим, как смонтировать диск на Virtual Private Server (VPS), Virtual Dedicated Server (VDS) и Standalone Server. Особенность ОС Linux в том, что существует возможность монтировать диск. Установленного в системе жесткого диска может быть недостаточно и иногда встает вопрос о добавлении дополнительного носителя. Рассмотрим как смонтировать диск на Virtual Private Server (VPS), Virtual Dedicated Server (VDS) и Standalone Server. **Подготовка.** Перед началом работы следует убедиться существует ли диск в системе. Иногда наличие устройства в BIOS может быть недостаточным. Доступные накопители проверяем командой: ``` sudo fdisk -l ``` В нашем случае в системе присутствуют 2 диска — sda и sdb, оба по 10 Гб, первый диск системный. Работать будем со вторым диском (sda). Важно помнить, что Linux системы можно повредить неверно указав диск, например системный. Следует тщательно проверять и перепроверять выбор носителя. На помощь приходит тот факт, что новый диск (из коробки) не имеет файловой системы и разделов. **Разметка диска.** Для разметки диска запустить утилиту fdisk с указанием пути до диска: ``` fdisk /dev/sdb ``` При нажатии "m" и подтверждением ввода клавишей Enter, программа предоставит страницу доступных команд: ``` Справка: DOS (MBR) a toggle a bootable flag b edit nested BSD disklabel c переключить флаг совместимости с DOS Общие d удалить раздел F list free unpartitioned space l список известных типов разделов n добавить новый раздел p показать таблицу разделов t изменить тип раздела v проверить таблицу разделов i print information about a partition Разное m показать это меню u изменить единицы отображения/ввода x дополнительные функции (только для экспертов) Script I load disk layout from sfdisk script file O dump disk layout to sfdisk script file Сохранить и выйти w сохранить таблицу на диск и выйти q выйти без сохранения изменений Создать новую метку g создать новую пустую таблицу разделов GPT G создать новую пустую таблицу разделов SGI (IRIX) o создать новую пустую таблицу разделов DOS s создать новую пустую таблицу разделов Sun ``` Так как мы будем создавать простой раздел (не загрузочный), будем использовать все дисковое пространство, нажимаем клавишу "n" и Enter. Система спросит о типе раздела — выбираем p (primary) — первичный. Номер раздела — 1 На вопрос о первом и последнем секторе отвечаем нажатием клавиши Enter. Важно! Если вы желаете создать несколько логических дисков, то в ответе на последний сектор следует указать размер в кило-, мега-, гига-, тера-, петабайтах. Соответственно, если раздел нужен размером в 2 гигабайт, то указываем 2G. Сохраняем изменения нажатием "w" и подтверждаем выбор с помощью клавиши Ввод. **Форматирование диска.** После выполнения операции описанной выше, в системе будет создано устройство /dev/sdb1 — по своей сути это и есть раздел на диске. Теперь форматируем. Современный Linux предлагает на выбор несколько вариантов файловых систем. Создание файловой системы происходит выполнением команды mkfs с указанием ключей, либо выполнением одной из программ: ``` mkfs.bfs ``` ``` mkfs.btrfs< ``` ``` mkfs.cramfs ``` ``` mkfs.ext2 ``` ``` mkfs.ext3 ``` ``` mkfs.ext4 ``` ``` mkfs.ext4dev ``` ``` mkfs.fat ``` ``` mkfs.minix ``` ``` mkfs.msdos ``` ``` mkfs.ntfs ``` ``` mkfs.vfat ``` ``` mkfs.xfs ``` Форматирование выполняется командой: ``` sudo mkfs.ext4 /dev/sdb1 ``` Диск готов к работе. Остается только смонтировать его. ## Монтирование диска Особенность ОС Linux в том, что существует возможность монтировать диск (либо иное блочное устройство) в любую из директорий, главное чтобы директория была пустой. Создаем каталог в директории /mnt: ``` sudo mkdir /mnt/1 ``` Изменяем права доступа к каталогу. Только root и и только чтение и запись. ```bash 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 ``` Сохраняем файл. https://serverspace.by/support/help/bazovaya-bezopasnost-linux.md Рассмотрим основы защиты сервера под управлением ОС Linux: безопасное соединение по SSH, настройка Firewall, базы данных, удаление правил, общие требования. Вопрос безопасности всегда актуален. Рассмотрим основы защиты сервера под управлением ОС Linux. ## Системные обновления Своевременно устанавливать обновления для ОС — хорошая привычка. Разумеется, бывают случаи, когда обновление влечет за собой негативные последствия, но это происходит крайне редко. Данный процесс можно упростить, если использовать автообновления системы. В разных дистрибутивах это делается по-своему: Debian/Ubuntu используют пакет [unattended upgrades](https://help.ubuntu.com/lts/serverguide/automatic-updates.html) для автоматических обновлений CentOS использует [yum-cron](https://www.centos.org/forums/viewtopic.php?t=4296) В дистрибутиве Fedora используется [dnf-automatic](https://fedoraproject.org/wiki/AutoUpdates#Fedora_21_or_earlier_versions) Если сервер под критической нагрузкой, то следует использовать штатные средства. **Ubuntu/Debian:** ```bash sudo apt-get update ``` ```bash sudo apt-get upgrade ``` **Fedora/Centos:** ```bash yum update ``` Важно! Обновление коснется только тех пакетов и приложений которые не были установлены путем компилирования и получены как исполняемые файлы. ## Системные пользователи с ограниченными правами. Подключение к серверу под учетной записью суперпользователя root небезопасно. Кроме того, мы рекомендуем сменить любого non-root пользователя присутствующего в системе по умолчанию. Да, хотя бы даже пароль. Изменение пароля происходит командой: ``` passwd ``` Команду изменит пароль для того пользователя, от которого запускается. Если нужно изменить пароль для другого пользователя, следует выполнять команду следующим образом. **Для Ubuntu/Debian:** ``` passwd ``` Если у вас только пользователь root, то обосновано будет создать пользователя с ограниченными правами. Для создания пользователя используют команду: ``` adduser ``` В ходе своей работы программа запросит пароль для учетной записи, сведения о пользователе, которые можно пропустить нажаитем Enter. По окончании заполнения данных программа запросит подтверждение корректности информации. Наделяем пользователя правами администратора. Для этого добавим пользователя в группу sudo: ``` adduser sudo ``` В случае с CentOS/Fedora пользователь создается иначе: ``` useradd && passwd ``` Добавляем пользователя в группу wheel: ``` usermod -aG wheel ``` ## Безопасное соединение по SSH По умолчанию, доступ к серверу Linux осуществляется по паре логин-пароль на 22 TCP-порт. Согласно последним стандартам безопасности, рекомендуется поменять адрес порта сервера, а подключение производить по паре логин-ключ. Важно! Данный пример подходит для Linux и MacOS. В начале проверяем генерировались ли ранее ключи для данной учетной записи: ``` ls ~/.ssh/id_rsa* ``` Если результат будет не пустым, то следует пропустить шаг создания ключа. У нас пусто — создаем командой: ```bash ssh-keygen -t rsa ``` В ходе выполнения программы, может быть запрошена парольная фраза и ее подтверждение. Своего рода защита ключа паролем. Для генерации ключа в Windows подходит программа PuTTY-Gen, которую можно скачать с официального сайта. После запуска программы, выбираем тип ключа RSA и кликаем по кнопке Generate. Активно двигаем мышью в поле окна. По окончании процедуры получим следующее: Копируем публичный ключ и сохраняем приватный в файл. Добавляем ключ на удаленный сервер. **Linux:** ```bash ssh-copy-id remoteuser@10.10.0.1 ``` Для MacOS в 2 этапа: ``` mkdir -p ~/.ssh && sudo chmod -R 700 ~/.ssh/ ``` ```bash scp ~/.ssh/id_rsa.pub remoteuser@10.10.0.1:~/.ssh/authorized_keys ``` Для Windows: Существует два варианта решения проблемы. 1 вариант. Залить публичный ключ, который записан в файл с именем authorized_keys с помощью программы [WinSCP](http://winscp.net/eng/docs/lang:ru) по пути /home/remoteuser/ ``` .ssh/authorized_keys. ``` Для этого необходимо после запуска программы WinSCP заполнить соответсвующие поля Address, Login и Password. 2 вариант. Подключить к серверу с помощью утилиты putty, выполнить в терминале команду: ``` mkdir ~/.ssh; nano ~/.ssh/authorized_keys ``` Пустой файл authorized_keys будет открыт на редактирование. Вставляем сгенерированный ранее публичный(!) ключ. Он представляет собой одну строку. Сохраняем файл и выполняем команду: ```bash sudo chmod 700 -R ~/.ssh && chmod 600 ~/.ssh/authorized_keys ``` ## Настройка службы SSH Запрещаем авторизацию от пользователя root. Ваша учетная запись должна быть в группе sudo или wheel (в зависимости от ОС) для того чтобы выполнять команды от суперпользователя, как это сделать указано выше. Для непосредственного выполнения команд следует перед командой использовать служебную команду sudo. Например: ``` sudo reboot ``` Также для перехода в режим суперпользователя можно использовать одну из двух команд: ``` su ``` либо ``` sudo su ``` Во всех случаях система запросит пароль. Теперь отключим авторизацию под пользователем root. Открываем на редактирование файл sshd_config. В Debian/Ubuntu это выглядит так: ``` sudo nano /etc/ssh/sshd_config ``` Находим строчку: PermitRootLogin и заменяем его значение на no. Запрещаем аутентификацию по паролю. Важно это сделать, если у вас уже успешно выполняется подключение по ключу. Открываем все тот же файл sshd_config. ``` sudo nano /etc/ssh/sshd_config ``` Находим строку: ``` PasswordAuthentication yes ``` Заменяем значение "yes" на "no". Строка может быть закомментирована (т.е. перед ней стоит символ "#"), в этом случае ее надо раскомментировать. Важно! Вы можете оставить авторизацию как по паролю, так и по ключу. По окончании настроек любого из пунктов, перезапускаем сервер. ``` sudo /etc/init.d/ssh restart ``` Либо ```bash sudo service ssh restart ``` Либо ```bash sudo systemctl restart sshd ``` ## Защита SSH-соединений с помощью Fail2Ban Fail2Ban — приложение, которое позволяет блокировать SSH-подключения с определенного IP-адреса по достижении лимита. Разумно полагать, что если пользователь знает пароль к серверу, но ошибается при вводе, то достаточно будет 3-5 попыток. В случае с авторизацией по ключу — достаточно 1-2 попыток. В противном случае это брутфорс. Fail2Ban способна осуществлять мониторинг и других протоколов, таких как HTTP, HTTPS, FTP и прочие. Используя настройки по умолчанию, осуществляется только мониторинг SSH. Подробнее о настройке Fail2Ban можно посмотреть по [ссылке](https://putty.org.ru/articles/fail2ban-ssh.html). ## Настройка Firewall Хорошей привычкой является использование файрволла. Это главный инструмент безопасности любого сервера и/или сети находящейся за ним. Фильтрация трафика позволяет избежать различного рода вторжения. Мы рекомендуем предоставлять доступ только к тем TCP/UDP-портам, которые на самом деле необходимы. По критичным портам либо закрывать доступ к ним, либо ограничивать доступ к ним — только с определенных IP-адресов. IPTables — утилита командной строки, стандартный интерфейс управления работой межсетевого экрана netfilter в Linux. Для использования IPTables требуются права суперпользователя. Существуют и альтернативные решения UFW и ShoreWall для Debian/Ubuntu и FirewallD для CentOS и Fedora. Мы же рассмотрим настройку непосредственно IPTables. Для просмотра действующих правил фильтрации используют следующие команды. **IPv4:** ``` sudo iptables -L ``` **IPv6:** ``` sudo ip6tables -L ``` Стандартный вывод выглядит так: Это означает, что в режиме работы по умолчанию разрешен весь входящий, исходящий и пересылаемый трафик. Настройка межсетевого экрана и политика его работы зависит от работы ваших сервисов, а также сервисов локальной сети (частный случай проброс порта для RDP). Прежде чем их применять проверьте совпадают ли наши примеры с вашими задачами. **Для IPv4 (файл /tmp/v4):** ``` *filter ``` ``` # Allow all loopback (lo0) traffic and reject traffic ``` ``` # to localhost that does not originate from lo0. ``` ``` -A INPUT -i lo -j ACCEPT ``` ``` -A INPUT ! -i lo -s 127.0.0.0/8 -j REJECT ``` ``` # Allow ping. ``` ``` -A INPUT -p icmp -m state —state NEW —icmp-type 8 -j ACCEPT ``` ``` # Allow SSH connections. ``` ``` -A INPUT -p tcp —dport 22 -m state —state NEW -j ACCEPT ``` ``` # Allow HTTP and HTTPS connections from anywhere ``` ``` # (the normal ports for web servers). ``` ``` -A INPUT -p tcp —dport 80 -m state —state NEW -j ACCEPT ``` ``` -A INPUT -p tcp —dport 443 -m state —state NEW -j ACCEPT ``` ``` # Allow inbound traffic from established connections. ``` ``` # This includes ICMP error returns. ``` ``` -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT ``` ``` # Log what was incoming but denied (optional but useful). ``` ``` A INPUT -m limit —limit 5/min -j LOG —log-prefix "iptables_INPUT_denied: " —log-level 7 ``` ``` # Reject all other inbound. ``` ``` -A INPUT -j REJECT ``` ``` # Log any traffic that was sent to you ``` ``` # for forwarding (optional but useful). ``` ``` -A FORWARD -m limit —limit 5/min -j LOG —log-prefix "iptables_FORWARD_denied: " —log-level 7 ``` ``` # Reject all traffic forwarding. ``` ``` -A FORWARD -j REJECT ``` ``` COMMIT ``` **Для IPv6 (/tmp/v6):** ``` *filter ``` ``` # Allow all loopback (lo0) traffic and reject traffic ``` ``` # to localhost that does not originate from lo0. ``` ``` -A INPUT -i lo -j ACCEPT ``` ``` -A INPUT ! -i lo -s ::1/128 -j REJECT ``` ``` # Allow ICMP ``` ``` -A INPUT -p icmpv6 -j ACCEPT ``` ``` # Allow HTTP and HTTPS connections from anywhere ``` ``` # (the normal ports for web servers). ``` ``` -A INPUT -p tcp —dport 80 -m state —state NEW -j ACCEPT ``` ``` -A INPUT -p tcp —dport 443 -m state —state NEW -j ACCEPT ``` ``` # Allow inbound traffic from established connections. ``` ``` -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT ``` ``` # Log what was incoming but denied (optional but useful). ``` ``` -A INPUT -m limit —limit 5/min -j LOG —log-prefix "ip6tables_INPUT_denied: " —log-level 7 ``` ``` # Reject all other inbound. ``` ``` -A INPUT -j REJECT ``` ``` # Log any traffic that was sent to you ``` ``` # for forwarding (optional but useful). ``` ``` -A FORWARD -m limit —limit 5/min -j LOG —log-prefix "ip6tables_FORWARD_denied: " —log-level 7 ``` ``` # Reject all traffic forwarding. ``` ``` -A FORWARD -j REJECT ``` ``` COMMIT ``` Применение приведенных выше правил. **Для Arch Linux:** 1. Создаем файлы /etc/iptables/iptables.rules и /etc/iptables/ip6tables.rules . Вставляем правила из примеров выше (/tmp/v4 и /tmp/v6) в созданные файлы соответственно. 2. Импортируем эти правила для применения iptables: ``` sudo iptables-restore < /etc/iptables/iptables.rules ``` ``` sudo ip6tables-restore < /etc/iptables/ip6tables.rules ``` 3. В Arch Linux, по умолчанию, iptables на запущен. Запускаем: ```bash sudo systemctl start iptables && sudo systemctl start ip6tables ``` ```bash sudo systemctl enable iptables && sudo systemctl enable ip6tables ``` 4. Для автоматического запуска iptables, воспользуйтесь материалом по конфигурированию pre-network.conf с [ArchWiki](https://wiki.archlinux.org/index.php/Iptables#Configuration_and_usage). Межсетевой экран будет запускаться до подключения сервера к сети. **Для CentOS / Fedora:** В данных дистрибутивах, применяемые правила хранятся в файлах /etc/sysconfig/iptables и /etc/sysconfig/ip6tables. Для управления правилами межсетевого экрана предлагается использование FirewallD, вместо непосредственного администрирования iptables. Как и в случае с Arch Linux, создаем файлы /tmp/v4 и /tmp/v6. Вставляем в них приведенный выше пример, либо адаптированный вами под свои нужды. Импортируем правила: ``` sudo iptables-restore < /tmp/v4 ``` ``` sudo ip6tables-restore < /tmp/v6 ``` Сохраняем параметры: ```bash sudo service iptables save ``` ```bash sudo service ip6tables save ``` **Для Debian/Ubuntu:** В дистрибутивах Debian и Ubuntu правила можно писать как вручную, так и использовать утилиту UFW. Рассмотрим ручной вариант. 1. Создаем файлы /tmp/v4 и /tmp/v6. Вставляем в них приведенный выше пример, либо адаптированный вами под свои нужды. 2. Импортируем правила из файлов: ``` sudo iptables-restore < /tmp/v4 ``` ``` sudo ip6tables-restore < /tmp/v6 ``` 3. Для автоматизации и упрощения загрузки правил iptables при запуске сервера можно использовать пакет iptables-persistent. Устанавливаем из репозитория. ```bash sudo apt-get install iptables-persistent ``` Проверим правила iptables: Для проверки выполним последовательно команды: ``` sudo iptables -vL ``` ``` sudo ip6tables -vL ``` Результат будет примерно таким: Перезапускаем сервер: ``` sudo reboot ``` После перезапуска, проверяем правила. Правила должны присутствовать в том же количестве. Добавление, изменение и удаление правил iptables Логика работы iptables такова, что правила работают последовательно от первого к последнему. По этой причине невозможно добавить правила привычными командами: ``` iptables -A ``` ``` ip6tables -A ``` Для добавления правил в этом случае используется: ``` iptables -I ``` ``` ip6tables -I ``` Важно! Добавляемые правила должны располагаться в определенной последовательности с учетом других правил в цепочке. Для отображения нумерованного списка существует команда: ``` sudo iptables -L -line-numbers ``` Например, необходимо добавить новое разрешающее правило для соединений на порт 8080, к существующим ранее из нашего примера выше. Выполняем команду: ``` sudo iptables -I INPUT 9 -p tcp —dport 8080 -j ACCEPT ``` Замена правил. Замена правил выполняется ключом "-R": ``` iptables -R ``` Например: ``` sudo iptables -R INPUT 11 -m limit —limit 3/min -j LOG —log-prefix "iptables_INPUT_denied: " —log-level 7 ``` ## Удаление правил Как пример, удалим правило, которое мы добавили ранее: ``` sudo iptables -D INPUT 9 ``` Т.е. будет удалено правило, в котором мы разрешали подключение к 8080 порту. Важно! Применяемые правила не применяются автоматически. Для этого необходимо выполнить действия применимые только для вашего дистрибутива, которые мы рассматривали выше. ## Базы данных Не менее важным является защита данных находящихся в некой СУБД. Рассмотрим на примере MariaDB. После успешной установки необходимо выполнить одну команду: ``` sudo mysql_secure_installation ``` После чего, программа задаст несколько вопросов касаемых безопасности. | Change the root password? [Y/n] | Изменить пароль пользователя root? | | --- | --- | | Remove anonymous users? [Y/n] | Удалить анонимных пользователей? | | Disallow root login remotely? [Y/n] | Запретить удаленное подключение от имени root? | | Remove test database and access to it? [Y/n] | Удалить базу данных test и доступ к ней? | | Reload privilege tables now? [Y/n] | Перезагрузить таблицу привилегий сейчас? | Результат будет примерно таким: Также не рекомендуется выполнять соединения от имени пользователя root. Лучше создать одного пользователя и с ограниченными правами. Для сайта будет достаточно следующих прав для выполнения запросов вида: SELECT — выборка из базы UPDATE — Обновление записей INSERT — добавление новых записей. DELETE — удаление записей (иногда, но лучше не использовать). Не рекомендуется наделять правами: ALTER — изменение структуры таблиц DROP — удаление баз данных и таблиц базы Вполне разумным является и то, чтобы один пользователь был для одной базы данных. ## Общие требования к учетным данным Для защиты сервера и баз данных следует, даже если вы не используете авторизацию по ключу, логичным будет использовать грамотно созданные имя пользователя и пароль. Так как подбор имен и паролей (брутфорс) происходит по словарю, логично было бы использовать такое имя пользователя, которое с наименьшей вероятностью окажется в словаре. Например, xd11rn и подобные. Не стоит использовать слишком короткие имена пользователей. Главное, потом не забыть имя пользователя. К паролям есть ряд общих требований: - не использовать пароли короче 10 символов; - использовать буквы верхнего и нижнего регистра, а также цифры; - использовать специальные символы, но только там, где это возможно. https://serverspace.by/support/help/ustanovka-git-na-freebsd-11.md Рассмотрим установку Git через пакеты, через порты, конфигурацию системы контроля версий Git на FreeBSD 11. Что такое Git? Это распределенная система управления версиями с открытым исходным кодом. В инструкции описан процесс установки системы контроля версий Git на виртуальный сервер FreeBSD 11. ## Что такое Git? Git — это распределенная система управления версиями с открытым исходным кодом. Система управления означает, что Git является трекером контента. Таким образом, Git может использоваться для хранения контента, но в основном используется для хранения программного кода благодаря другим функциям, которые она предоставляет. Система контроля версий проверяет код, который хранится в Git и постоянно меняется по мере разработки. Также многие разработчики могут добавлять код параллельно. Таким образом, система контроля версий помогает справиться с этим, сохраняя историю произошедших изменений. Кроме того, Git предоставляет такие функции, как ветки и слияния. Git имеет удаленный репозиторий, который хранится на сервере, и локальный репозиторий, который хранится на компьютере каждого разработчика. Это означает, что код не просто хранится на центральном сервере, но полная копия кода присутствует на всех компьютерах разработчиков. Git — это распределенная система контроля версий, поскольку код присутствует на каждом компьютере разработчика. ## Установка Git через пакеты Первый способ установки — с помощью пакетов FreeBSD. Как правило, это самый простой и быстрый способ установки Git. Для начала необходимо обновить индексацию хранилища pkg: ``` pkg update -f ``` Затем загрузить и установить пакет git: ``` pkg install git ``` В консоль нужно будет ввести y, чтобы подтвердить установку. ## Установка Git через порты Система портов FreeBSD — это еще один способ управления приложениями на сервере FreeBSD. Сервер управляется через иерархию файловой системы, называемой деревом портов. Дерево расположено в каталоге /usr/ports, который классифицирует каждую доступную часть программного обеспечения. Portsnap — это инструмент, который поставляется с FreeBSD и упрощает работу с деревом портов. Загрузите и распакуйте файлы дерева портов в /usr/ports. Это может занять некоторое время, но это действие выполняется только один раз: ``` portsnap fetch extract ``` Если у вас уже есть загруженное дерево портов, вместо этого просто обновите его: ``` sudo portsnap fetch update ``` Затем перейдите в каталог devel/git в дереве портов: ``` cd /usr/ports/devel/git ``` Наконец, запустите сборку Git. Использование опции BATCH = «yes» запустит тихую установку Git-порта и позволит избежать многочисленных диалогов, спрашивающих, какие части определенного программного обеспечения вы хотите установить. Вы можете опустить это, если необходимо установить определенные компоненты: ``` sudo make install clean BATCH="yes" ``` ## Конфигурирование Git Для начала выведете существующие настройки конфигурации Git. Они извлекаются из файла ~ / .gitconfig: ```bash git config —list ``` Возможно обновить любые настройки, какие необходимо. Например, для обновления имени пользователя используйте следующую команду, заменив CloudAdmin вашим именем пользователя: ```bash git config —global user.name "CloudAdmin" ``` Чтобы обновить свой адрес электронной почты, используйте следующую команду, заменив CloudAdmin@example.com своим адресом электронной почты: git config —global user.email «[CloudAdmin@example.com](mailto:CloudAdmin@example.com)« Возможно указать текстовый редактор по умолчанию, заменив vim ниже предпочитаемым текстовым редактором, например Nano или Emacs: ```bash git config —global core.editor "vim" ``` Вы можете проверить, что ваши изменения сохранены, просмотрев настройки конфигурации снова: ```bash git config —list ``` Ожидаемый вывод: ``` user.name=CloudAdmin user.email=CloudAdmin@example.com core.editor=vim ``` https://serverspace.by/support/help/ustanovka-modx-na-ubuntu-16.md Как загрузить и настроить MODX под Ubuntu? Для начала потребуется скачать систему управления содержимым для виртуального сервера. Настройка базы данных, Apache. Процесс настройки MODX. Подробное описание установки на веб-сервер с ОС Убунту системы управления содержимым для создания сайтов. ## Описание MODX Это CMS, которую используют во многих странах для работы с одностраничными и многостраничными веб-сайтами. Ее исходный код открыт для всех желающих, а управление происходит посредством back-end администрирования. CMS радует разработчиков и дизайнеров большим количеством шаблонных решений, надежным API и возможностью расширения функционала сайта. Обратите внимание: CMS является прикладными программным обеспечением, обладающим веб-интерфейсом. Система помогает управлять сайтом (добавлять контент, редактировать его и удалять). Рассмотренная ниже инструкция проводилась для администратора, наделенного правом суперпользователя. Для начала работы с MODX виртуальному серверу потребуется установка LAMP-стека. С нужными правами и программным обеспечением можно начинать непосредственную работу с CMS. Как загрузить и настроить MODX Для начала потребуется скачать систему управления содержимым для виртуального сервера. Лучше всего сделать это на [официальном ресурсе](https://modx.com/download) компании. Вероятно, что сначала архив загрузится на локальную машину. Перенести его на сервер с разными операционными системами можно так: Если сервер с Виндовс, на помощь придет программа WinSCP. Заархивированные файлы следует перетащить в директорию /root. Если сервер с Линукс, потребуется утилита: ```bash scp root@:/root/ ``` Более полный пример: ```bash scp modx-2.6.0-pl.zip root@111.227.222.128:/root/ ``` Для разархивации файлов проводится следующая команда: ```bash apt-get install unzip ``` Именно утилита unzip позволяет распаковать архив для CMS: ```bash unzip ``` К примеру: ```bash unzip modx-2.6.0-pl.zip ``` Полученные папки с файлами переносятся в /var/www. Для этого пишется команда: ``` cp -R ./modx-2.5.7-pl/* /var/www ``` В случае возникновения ненужной директории, ее можно удалить: ``` rm -rf modx-2.5.7-pl ``` Добавить права для пользователя можно командой: ```bash sudo adduser $USER www-data sudo adduser www-data $USER cd /var/www chown www-data:www-data -R ./* ``` ## Как настроить базу данных MODX Без базы данных CMS не сможет полноценно функционировать, ей потребуется MySQL: ```bash mysql -u root -p ``` Вход осуществляется по паролю суперпользователя СУБД. В СУБД создается база для сайта, в ней – новый пользователь, которому присваивается пароль. При этом, работая с MySQL, любую команду следует заканчивать ";". Как создается БД для MODX: ```sql CREATE DATABASE modx; ``` Как создается новый пользователь: ```sql CREATE USER muser@localhost; ``` Как происходит задание пароля: ``` SET PASSWORD FOR muser@localhost= PASSWORD(""); ``` Для завершения настроек новый пользователь наделяется привилегиями, которые помогут ему взаимодействовать со всеми таблицами БД: ``` GRANT ALL PRIVILEGES ON modx.* TO muser IDENTIFIED BY ''; ``` Далее нужно обновить систему управления базами данных: ``` FLUSH PRIVILEGES; ``` И сделать выход: ``` exit ``` ## Как настроить Apache Перед тем, как начать настраивать CMS в веб-режиме, потребуется поработать с конфигурацией Апача: ``` vi /etc/apache2/apache2.conf ``` После команды добавляются строчки, где IP меняется на реальный и действующий адрес веб-сервера: ```xml Listen 80 DocumentRoot /var/www/ ServerName {ip-адрес} ErrorLog /var/log/apache2/error_ {ip-адрес} CustomLog /var/log/apache2/access_log_ {ip-адрес} combined ``` Затем проводится настройка файрволла, чтобы удаленно управлять сервером: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT iptables-save ``` Для сохранения настроек понадобится перезапуск Апача: ```bash sudo service apache2 restart ``` ## Процесс настройки MODX Открывается браузер, в адресную строчку вводится IP: ``` /setup/ ``` Для примера: ``` 185.125.46.12/setup/ ``` Если адрес правильный, появится панель для входа, где нужно выбрать рабочий язык. В окне с параметрами установки лучше оставлять стандартные настройки. Расширенная установка подойдет только продвинутым пользователям. После чего MODX подсоединяется к созданной ранее БД. В примере имя базы значилось как "muser@localhost", поэтому для имени пользователя будет браться "muser". Если соединение с базой данных пройдет успешно, появится зеленый текст. Если возникнут трудности, текст станет красным. Лучше сделать повторную выборку из MySQL, чтобы удостовериться в правильном подключении. В следующем окне высветится анкета админа, в нее вводятся стандартные данные (имя, пароль, почта). Далее система покажет отчет. Если появятся ошибки и предупреждения, их следует исправить сразу. На изображении не хватает пакета php7.0-xml. Если предупреждения отсутствуют, высветится окошко. Войти на сайт можно через кнопку с логином, вводя придуманные ранее имя админа и пароль учетной записи. Обратите внимание: желательно следовать рекомендациям MODX. После этого инсталл CMS считается завершенным. Можно приступать к созданию веб-сайтов. https://serverspace.by/support/help/ustanovka-joomla-3-na-ubuntu-16.md Чтобы началась работа с Joomla, виртуальному серверу на Ubuntu нужна загрузка LAMP-стека. Установка Joomla 3, настройка СУБД, Apache, файрвола. Мы рассмотрим установку системы управления содержимым Joomla! для виртуального сервера с ОС Ubuntu. ## Что представляет собой Joomla Джумла является бесплатной системой, позволяющей управлять содержимым сайта. Она разработана на скриптовом языке php, в работе в обязательном порядке участвует СУБД MySQL. Установка происходит предельно просто, далее пользователю предлагается широкий и гибкий функционал, позволяющий управлять средними и малыми проектами. Джумлу можно назвать второй в мире CMS по популярности, для нее каждый месяц выпускаются новые дополнения и функции. Сегодня Joomla имеет: - Меню типа ACL; - Менеджер шаблонов с поддержкой SCSS и SASS файлов; - Обновленную новостную ленту; - Сохранность динамической переменной JavaScript; - Новый способ извлечения строк кода из хранилища данных; - Расширенные настройки всплывающей подсказки в Bootstrap; - Написание сложных команд для базы данных; - Напоминание об обновлении языка php до последней версии; - Потоковое подключение, поддерживающее прокси; - Упрощенное создание категорий сайта; - Обновление происходит быстрее и проще. Помимо Joomla, на веб-сервер можно установить не менее популярную и практичную CMS. ## Что потребуется для работы Выполнять описанные рекомендации следует администратору, обладающему правом суперпользователя. Для того, чтобы началась работа с Джумлой, виртуальному серверу нужна загрузка LAMP-стека. С установленным программным обеспечением и необходимыми правами можно приступать к инсталлу CMS. ## Как загрузить Джумлу Сначала понадобится зайти в домашнюю директорию и создать каталог, где разместятся файлы CMS: ``` cd ~ mkdir tempjo ``` После этого перейти в созданную папку: ``` cd ~/tempjo ``` Можно взять самую последнюю версию Джумлы напрямую с сайта разработчика: ```bash wget https://downloads.joomla.org/cms/joomla3/3-7-2/Joomla_3-7.2-Stable-Full_Package.tar.gz ``` Обратите внимание: [здесь](https://downloads.joomla.org/cms/joomla3) найдутся обновленные и актуальные модели CMS. После скачивания архив с файлами системы управления контентом окажется в директории виртуального сервера. Чтобы приступить к дальнейшей установке, Джумлу придется разархивировать и переместить в директорию Апача: ```bash cd /var/www mkdir html html/joomla sudo tar zxvf ~/tempjo/Joomla_3-7.2-Stable-Full_Package.tar.gz -C /var/www/html/joomla ``` Для освобождения места временная папка удаляется: ``` rm -Rf ~/tempjo ``` ## Как настроить параметры После переноса файлов, к ним нужно предоставить доступ для установщика Джумлы: ```bash chown -R www-data.www-data /var/www/html/joomla/ chmod -R 755 /var/www/html/joomla/ ``` ## Как настроить СУБД Для создания базы данных потребуется зайти в MySQL: ```bash mysql -u root -p ``` Вход в базу данных доступен по паролю от суперпользователя. После этого нужна будет новая БД, в ней – пользователь, а пользователю – все привилегии для работы и редактирования. Команда для создания базы: ```sql CREATE DATABASE joomla; ``` Теперь пользователь: ```sql CREATE USER juser; ``` Установка пароля: ``` SET PASSWORD FOR juser= PASSWORD(""); ``` Обязательно нужно предоставить привилегии, иначе Джумла не будет позволять пользователю оперировать с таблицами в MySQL: ``` GRANT ALL PRIVILEGES ON joomla.* TO juser IDENTIFIED BY ''; ``` Актуализирование привилегий СУБД: ``` FLUSH PRIVILEGES; ``` В конце нужно выйти: ## ``` exit ``` Как настроить Apache Сначала потребуется внести изменения в конфигурацию Апача. Сделать это можно командой: ``` vi /etc/apache2/apache2.conf ``` После надо добавить строчки, внеся в них актуальный IP: ```xml Listen 80 DocumentRoot /var/www/ ServerName {ip-адрес} ErrorLog /var/log/apache2/error_{ip-адрес} CustomLog /var/log/apache2/access_log_{ip-адрес} combined ``` ## Способ настройки файрволла Файрволл понадобится, чтобы можно было удаленно управлять устройством: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT iptables-save ``` Обратите внимание: если сервер перезагрузится, порты снова придется открывать. Получение доступа для установщика Джумлы Когда все необходимые для работы папки с файлами Joomla будут находиться на виртуальном сервере, можно начать непосредственную установку системы управления содержимым через браузер. Сначала нужно в адресную строчку ввести IP либо доменное имя: ``` ip-адрес/joomla ``` К примеру, следующим образом: Появится предложение выбора языка. В поля конфигурации система попросит написать имя сайта, контактную почту, пароль и прочую информацию. Желательно устанавливать наиболее сложный пароль, иначе сайт может подвергнуться атакам хакеров. Ниже есть опция включения и выключения видимости сайта для других пользователей. В конфигурации базы данных нужно указать пользователя БД, имя БД и пароль. Графу с типом можно оставить стандартной. В качестве префикса можно написать любое слово. Если возникнет такая необходимость, можно загрузить демо-данные. После введения всей информации начинается непосредственная загрузка Джумлы. Желательно удалять установочные папки, чтобы ими не могли воспользоваться злоумышленники. Когда все закончится, в браузере откроется панель администрирования. Для входа в админку сайта следует воспользоваться паролем и логином, внесенными в самом начале. Прямой вход в админку осуществляется по адресу: ``` /joomla/administrator/ ``` https://serverspace.by/support/help/kak-ustanovit-drupal-8-na-docker.md Инструкция по установке и настройке системы управления содержимым Друпал в контейнере Docker на виртуальный VPS сервер с ОС CentOS v7. Рассмотрим процесс подробнее. Ниже мы в несколько этапов разберем, как устанавливать и настраивать систему управления содержимым Друпал на виртуальный сервер с ОС CentOS v7. ## Пара слов о Друпале Drupal представляет собой одну из наиболее известных в мире систем управления содержимым (CMS), у которой открыт исходный код, простой инсталл и полный набор возможностей для создания веб-сайтов. Восьмая версия наделена двумя сотнями новых функций, среди которых: - Большой выбор языков для интерфейса; - Улучшение в кэшировании и интеграции с CDN; - Возможность создавать динамический контент; - Возможность управлять отображением, не задействуя программный код; - Использование в частных и бизнес-целях; - Подстраивается под пользователей с ограниченными возможностями. Если развернуть Друпал в контейнере, можно существенно упростить его настройку: больше не понадобится дополнительный инсталл Апача либо Nginx, подготовка пустых баз данных, загрузка веб-языка php. ## Как настроить Docker Docker является системой контейнеризации. Для его взаимодействия с Друпалом, он должен быть заранее предустановлен на сервер. Далее потребуется загрузка образа системы управления базами данных mariadb. Если на устройстве отсутствует последняя версия, ее можно загрузить через такую строку: ```bash docker pull mariadb ``` Дополнительно нужно скачать CMS Друпал: ```bash docker pull drupal ``` В образе будет содержаться все необходимое: скриптовый веб-язык и Апач. Dockerfile последней версии [находится по ссылке](https://github.com/docker-library/drupal/). Обратите внимание: если требуется загрузить конкретную модель CMS, в строчке через двоеточие пишется модель. К примеру, drupal:7.5.5. При загрузке базы данных нужно указать основные параметры: ```bash docker run -e MYSQL_ROOT_PASSWORD=admin -e MYSQL_DATABASE= -e MYSQL_USER= -e MYSQL_PASSWORD= -v mariadb:/var/lib/mysql -d —name mariadb ``` Более подробный пример: ```bash docker run -e MYSQL_ROOT_PASSWORD=admin -e MYSQL_DATABASE=drupal -e MYSQL_USER=duser -eMYSQL_PASSWORD=drupalpass -v mariadb:/var/lib/mysql -d —name mariadb mariadb ``` По окончанию пользователь получит контейнер, внутри которого будет развернутая база с данными. Параметр -v отвечает за создание примонтированного раздела сервера, в который установится база данных. Запуск Друпала и его коннект с СУБД с указанием имени хоста базы делается следующим образом: ```bash docker run —name —link mariadb: -p : -d drupal ``` Для примера: ```bash docker run —name drupal8 —link mariadb:mariadb -p 80:80 -d drupal ``` Чтобы получить возможность работать через удаленный доступ, необходимо открыть порт: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` ## Как настроить Drupal Нужно открыть браузер и перейти по ссылке, не забыв указать IP: ``` ``` Таким образом: ``` 111.121.11.10 ``` Первым шагом идет выбор языка (в данном случае это русский). Второй – указание установочного профиля (выбирается стандартный). Третий – выбор конфигурации БД с указанием ее имени, пользователя и пароля. Можно воспользоваться дополнительными настройками и записать хост. Как только изменения сохранятся, запустится инсталл Друпала. В процессе система попросит ввести личные данные: доменное имя веб-сайта, e-mail, главного пользователя и пароль. Можно воспользоваться разными уровнями сложности для написания надежного пароля. Далее конфигурация самостоятельно обновится. На этом заканчивается установка, после нее откроется окно с панелью управления. Чтобы войти в панель Друпада, потребуется еще раз ввести имя пользователя и пароль от учетки, который был сформирован ранее. Весь процесс установки завершен. https://serverspace.by/support/help/nastroika-exim-4-na-ubuntu.md Настройка Exim (Experimental Internet Mailer) под Ubuntu. Агент пересылки сообщений Exim4, распространяемый под лицензией GPL, используется, когда нет необходимости держать целый почтовый сервер, а достаточно лишь пересылать письма. Отличительная особенность почтовых служб в гибкости их настройки. Существуют конфигурации, когда нет необходимости держать целый почтовый сервер, а достаточно лишь пересылать письма. Рассмотрим как это сделать в Ubuntu. На помощь приходит Exim4. Exim — Experimental Internet Mailer — агент пересылки сообщений, распространяется под лицензией GPL. Приступаем. [/services/vps-server/](https://serverspace.by/services/vps-server.md) Обновляем данные о состоянии репозиториев, затем устанавливаем exim4: ```bash sudo apt-get-update sudo apt-get install exim4 ``` Важно! Если необходимо использование ACL (Access Control List) и прочие дополнительные функции, то следует установить exim4-daemon-heavy. Теперь настроим exim4. Для этого выполним команду: ``` sudo dpkg-reconfigure exim4-config ``` Программа предлагает сделать выбор. Рассмотрим их назначения. internet site; mail is sent and received directly using SMTP (интернет-сайт; приём и отправка почты напрямую, используя SMTP) — данный вариант подходит для Интернет сайтов, при этом полном доступе к сети Интернет. Служба принимает входящую почту на локальные домены и доставляет пользователям. Отправка почты происходит непосредственно на домены получателя. mail sent by smarthost; received via SMTP or fetchmail (отправка почты через smarthost; приём по SMTP или через fetchmail) — выбранный нами вариант, применяется для ограниченного доступа к сети Интернет. Входящая почта будет доставлена пользователям, а исходящая сначала доставляется на Smart host и только потом до целевого ящика. mail sent by smarthost; no local mail (отправка почты через smarthost; локальная почта отсутствует ) — Локальные домены не используются. Все исходящие письма отправляются сразу на Smart host. local delivery only; not on a network (доставка только локальной почты; доступа к сети нет) — этот вариант следует выбирать, когда у сервера нет подключения к глобальной сети. Доставка почты происходит только между локальными доменами. Курсорными клавишами выбираем "Отправка почты через smarthost; прием по SMTP или через fetchmail", в английской локали это будет как "mail sent by smarthost; received via SMTP or fetchmail". Выбор подтверждаем нажатием по клавише Enter. Следующим шагом следует указать ваше доменное имя или имя узла. По окончании нажимаем Enter. Теперь укажем IP-адреса на которых Exim должен слушать соединения. IP-адреса следует разделять символом ";" — точка с запятой. Нажимаем Enter. В обновленном окне указываем локальные домены и почтовые ящики. Поле следует оставить пустым, если у вас нет этого. Нажимаем Enter. Следующим шагом указываем список доменов для которых Exim будет пересылать почту выполняя роль Smarthost'а. Если сервер не должен быть Smarthost, то поле нужно оставить пустым. Нажимаем Enter. Теперь указываем адреса smtp-сервера и через двойное двоеточие ("::") smtp-порт. Пример популярных сервисов: ``` smtp.yandex.ru::587 ``` ``` smtp.gmail.com::587 ``` ``` mail.example.com::587 ``` Заполнив поле, нажимаем Enter. Следующим шагом будет вопрос о необходимости скрывать локальные имена сервера. Если нужно — выбираем "Да" ("Yes"). Настраиваем запросы к DNS. Exim выполняет обращения к DNS при запуске службы, при получении и отправке сообщений. Если соединение к сети ничем не ограничено, то в этом пункте следует выбрать "No" ("Нет"). В противном случае, если используется "Вызов по требованию" ("Deal-on-demand"), то следует выбрать ответ "Да". Нажимаем Enter. Выбираем место хранения почты. Либо это /var/mail, либо в домашнем каталоге пользователя. Нажимаем Enter. Для удобства конфигурирования, можно разделить большой файл конфигурации на несколько мелких. Делаем выбор, нажав Enter. На этом приложение завершит свою работу. Настроим данные о почтовом ящике с которого будут уходить письма. Для этого откроем файл /etc/exim4/passwd.client в любом текстовом редакторе: ``` sudo nano /etc/exim4/passwd.client ``` В этот файл надо вписать строку с указанием сервера, логина и пароля, разделенные двоеточием.[/step] Например: Для GMail: ``` smtp.google.com:[username@gmail.com](mailto:username@gmail.com):user_password ``` Yandex: ``` smtp.yandex.ru:username@yandex.ru:user_password ``` Для собственного SMTP-сервера: ``` mail.example.com:username@example.com:user_password ``` Результат будет примерно таким. Сохраняем. Так как в самом начале мы не выбирали разделение большого файла на мелкие — отредактируем файл exim4.conf.template: ``` sudo nano /etc/exim4/exim4.conf.template ``` Находим в файле строку: ``` .ifdef DCconfig_smarthost DCconfig_satellite ``` После нее вставляем параметры: ``` send_via_gmail: ``` ``` driver = manualroute ``` ``` domains = ! +local_domains ``` ``` transport = gmail_smtp ``` ``` route_list = * smtp.gmail.com ``` Далее ищем строку: ``` transport/30_exim4-config_remote_smtp_smarthost ``` После нее вставляем строки: ``` gmail_smtp: ``` ``` driver = smtp ``` ``` port = 587 ``` ``` hosts_require_auth = $host_address ``` ``` hosts_require_tls = $host_address ``` Затем ищем строку: ``` begin authenticators ``` И указываем эти параметры: ``` gmail_login: ``` ``` driver = plaintext ``` ``` public_name = login ``` ``` client_send = : user@gmail.com : password ``` Замените параметры поля "client_send" на свои. Удаляем из файла следующие строки (находится почти в конце файла): login: ``` driver = plaintext ``` ``` public_name = LOGIN ``` ``` .ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS ``` ``` # Return empty string if not non-TLS AND looking up $host in passwd-file ``` ``` # yields a non-empty string; fail otherwise. ``` ``` client_send = " https://serverspace.by/support/help/how-to-configure-xrdp-server-on-ubuntu-18-04.md Подробная инструкция по настройке xRDP для подключения к Ubuntu 18.04 с графическим интерфейсом Xforce через протокол RDP из ОС Windows. В этой инструкции описано как настроить сервер xRDP для подключения к Ubuntu 18.04 с легковесным окружением Xfce по протоколу RDP. Это может быть очень удобно если вам нужно из Windows зайти на линукс систему используя графический интерфейс. ## Что такое xRDP? **xRDP** — это бесплатная реализация RDP (протокола удаленного рабочего стола) Microsoft с открытым исходным кодом, которая позволяет операционным системам, отличным от Microsoft Windows (таким как Linux и BSD), предоставлять полностью функциональный RDP-совместимый удаленный рабочий стол. ## Установка и настройка Подключитесь к вашему ubuntu серверу по протоколу SSH и выполните обновление системы: ```bash sudo apt-get update ``` ```bash sudo apt-get upgrade -y ``` Установите и включите утилиту xRDP: ```bash sudo apt-get install xrdp sudo systemctl enable xrdp sudo systemctl restart xrdp ``` Установите окружение xfce: ```bash sudo apt-get install xfce4 xfce4-terminal ``` Откройте порт RDP для возможности удаленного подключения: ``` sudo ufw allow 3389/tcp ``` Перезагрузите xRDP сервер, чтобы изменения вступили в силу: ``` sudo /etc/init.d/xrdp restart ``` ## Подключение к рабочему столу Если вы не знаете IP адрес Ubuntu сервера, его можно посмотреть введя команду: ``` ifconfig -a ``` В нашем случае это будет 10.0.0.2. Для подключения откройте приложение Windows Подключение к удаленному рабочему столу(mstsc.exe). Введите IP-адрес сервера и нажмите Подключить: При подключении появится предупреждение безопасности. Нажмите Да: В открывшемся окне в качестве сессии выборе Xorg, введите логин и пароль для пользователя, нажмите OK: В результате произойдет подключение к рабочему столу. Рабочий стол окружения Xfce: Если при подключении к **xrdp** показывает черный экран необходимо зайти в папку **/etc/xrdp**, и внести изменения в файл **startwm.sh**. ``` sudo nano /etc/xrdp/startwm.sh ``` Нужно добавить: ``` unset DBUS_SESSION_BUS_ADDRESS unset XDG_RUNTIME_DIR ``` Перед строкой: ``` test –x /etc/X11/Xsession && exec /etc/X11/Xsession ``` После внесения изменений необходимо перезапустить службу XRDP: ```bash sudo systemctl restart xrdp ``` Теперь можно снова запустить **mstsc.****exe** и подключиться к нашему ubuntu серверу. https://serverspace.by/support/help/managing-users-on-ubuntu-and-debian.md В инструкции описано добавление, удаление и изменение пароля для пользователей операционной системы Ubuntu или Debian. В инструкции описано создание, удаление и изменение пользователей операционной системы Ubuntu или Debian. ## Первоначальные требования для системы Debian Многие из команд в этом руководстве требуют привилегий суперпользователя. Если при использовании команды sudo появляется следующая ошибка: ``` bash: sudo: command not found ``` Вам необходимо активировать режим суперпользователя, установить команду sudo и добавить своего пользователя в группу sudo: ```bash su — apt-get install sudo -y usermod -aG sudo yourusername ``` ## Как добавить нового пользователя? В Ubuntu и Debian есть два инструмента командной строки, которые вы можете использовать для создания новой учетной записи пользователя: useradd и adduser. useradd — это низкоуровневая утилита для добавления новых пользователей, а adduser — дружественный интерактивный интерфейс для useradd, написанный на Perl. Для создания новой учетной записи пользователя операционной системы с именем username с помощью команды adduser, выполните следующую команду: ``` sudo adduser username ``` В результате появится диалог, в котором необходимо ввести пароль и дополнительную информацию: ``` Adding user `username' ... ``` Adding new group `username’ (1000) Adding new user `username’ (1000) with group `username’ Creating home directory `/home/username’ Copying files from `/etc/skel’ Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for username Enter the new value, or press ENTER for the default Full Name []: Name Room Number []: 100 Work Phone []: 123-45-45 Home Phone []: Other []: Is the information correct? [Y/n] Y Команда создает домашний каталог для нового пользователя и скопирует туда файлы из каталога /etc/skel. По умолчанию членам группы sudo предоставляется доступ sudo. Если необходимо, чтобы у вновь созданного пользователя были права администратора, добавьте его в группу sudo: ``` sudo usermod -aG sudo username ``` ## Как удалить пользователя? Существует два инструмента командной строки, которые можно использовать для удаления учетной записи пользователя: userdel и deluser. Рекомендуем использовать команду deluser, так как она более дружественная, чем низкоуровневая userdel. Чтобы удалить пользователя, не удаляя пользовательские файлы и каталоги, выполните: ``` sudo deluser username ``` Если необходимо удалить домашний каталог пользователя и его содержимое, используйте флаг —remove-home: ``` sudo deluser —remove-home username ``` В результате появится следующее сообщение: ``` Looking for files to backup/remove ... ``` Removing files Removing user `username’ Warning: group `username’ has no more members. Done. ## Как изменить пароль пользователя? Для изменения собственного пароля используйте команду passwd без дополнительных аргументов: ``` passwd ``` В системном диалоге необходимо будет ввести старый пароль и указать новый: Changing password for username. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Для изменения пароля для другого пользователя необходимы права администратора и имя пользователя: ``` sudo password username ``` https://serverspace.by/support/help/kak-sgenerirovat-csr-zapros.md Способы генерации CSR-запроса для заказа SSL-сертификата Для получения SSL-сертификата вам необходимо сгенерировать CSR-запрос, а затем заказать SSL-сертификат с использованием созданного запроса. _Примечание: CSR (Certificate Signing Request) — это запрос на получение сертификата, который представляет собой текстовый файл, содержащий в закодированном виде информацию об администраторе домена и открытый ключ._ Наиболее популярные способы генерации CSR-запроса это: - генерация с помощью OpenSSL [OpenSSL](https://www.openssl.org/) — кроссплатформенное программное решение для работы с технологиями SSL/TLS. С помощью него вы можете выполнять различные операции по управлению криптографическими ключами. Сгенерировать ключи и CSR-запрос вы можете на любой машине под управлением Linux (Ubuntu, Debian, CentOS) или MacOS. Проще всего сгенерировать запрос CSR (Certificate Signing Request) на том же веб-сервере, на который вы планируете установить сертификат сайта, но можно использовать и другую машину, а затем перенести сгенерированные файлы на веб-сервер. - генерация с помощью веб-сервера IIS IIS 8 — встроенный веб-сервер доступный на VPS Windows, с помощью которого вы можете располагать сайты в сети Интернет, работать с большим стеком протоколов, создать собственный файл-сервер и использовать многие другие возможности продукта. Для установки сертификата на веб-сервер IIS необходимо сгенерировать CSR-запрос с помощью встроенной функции веб-сервера Сертификаты сервера. - генерация с помощью стороннего сервиса **Важно!** Для генерации запроса таким сервисам необходимо также создать пару открытый/закрытый ключ. Последний является конфиденциальным и не должен передаваться вами третьим лицам. Несмотря на это, соблюдение данного требования делает работу CSR-генераторов технически невозможной, поэтому сервис так или иначе будет иметь доступ к вашему файлу секретного ключа. Если этот факт является для вас критичным, используйте приведенные выше способы самостоятельной генерации CSR-запроса. Если для вас предпочтительнее использовать онлайн CSR-генератор, выбирайте только проверенные сервисы и обращайте внимание на подлинность сайта сервиса. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/tipy-proverki-pri-poluchenii-ssl.md Описание способов валидации при заказе SSL сертификатов: проверка домена (Domain Validation — DV), расширенная проверка (Extended Validation — EV), проверка организации (Organization Validation — OV). ## Проверка домена (Domain Validation — DV) Все сертификаты должны проходить процесс валидации домена, используемый для подтверждения прав на владение доменным именем. Существует 3 способа проверки: Проверка с помощью электронной почты Вы получите письмо на административный почтовый ящик для вашего домена. Письмо будет содержать уникальный код подтверждения и ссылку. Перейдя по ссылке и введя уникальный код, вы пройдете проверку. Допустимые почтовые адреса: - admin@<ваш домен> - administrator@<ваш домен> - webmaster@<ваш домен> - hostmaster@<ваш домен> - postmaster@<ваш домен> Следующие способы проверки домена доступны только для сертификатов Comodo. Проверка с помощью DNS-записи CSR, который Вы предоставите будет хеширован. Вам будут предоставлены хеш-значения, далее необходимо ввести DNS CNAME запись вашего домена. Формат записи CNAME будет выглядеть следующим образом: _.<ваш домен>. CNAME .[.]comodoca.com. Примечания: - хеш SHA-256 разделен символом "." (точка) на две метки, каждая длиной 32 символа; - чтобы сделать запись полностью правильной, необходимо поставить точку в конце полного доменного имени; - если вы заказываете Мультидоменные сертификаты, отдельные CNAME записи должны быть созданы для каждого полного доменного имени в вашем заказе. - мнемоническое имя в CNAME записи для домена с www, на который заказывается сертификат, должна быть без www (т.е. если ваш домен www.example.com , то запись будет вида: _.example.com.) Пример: | _09f7e02f1290be211da707a266f153b3.subdomain1.yourdomain.com. CNAME 3d874ab7b199418a9753111648448163.9eb1f2608f4da5aa3560154ca1b0df53.comodoca.com. | | --- | | _9e107d9d372bb6826bd81d3542a419d6.subdomain2.yourdomain.com. CNAME 899826c9c46f25fc70ed08b5811dbb2b.ddf3e6b932e44c6a6a9dc5285057e9db.comodoca.com. | Проверка с помощью HTTP(S) CSR, который вы предоставите будет хеширован. Вам будут предоставлены хеш-значения, далее необходимо создать текстовый файл и поместить его в корневой каталог вашего сайта. Файл и его содержимое должно быть следующим: - URL файла: http://<ваш домен>/.well-known/pki-validation/<Значение хеша MD5 в верхнем регистре>.txt - Содержимое: <Значение хеша SHA-256> comodoca.com Примечания: - валидация не будет совершена, если на сайте присутствуют перенаправления; - проверьте наличие директорий /.well-known/ и /.well-known/pki-validation/ на веб-сервере; - если вы заказываете мультидоменный сертификат, каждый защищаемый домен в сертификате должен иметь txt файл в корневом каталоге. - для доменов с www проверка проходит по URL без www (т.е. если вы заказываете сертификат для домена www.example.com , то файл должен быть доступен по ссылке http(s)://example.com/.well-known/pki-validation/<Значение хеша MD5 в верхнем регистре>.txt) Примеры: | Имя файла | Содержимое | | --- | --- | | subdomain1.yourdomain.com/.well-known/pki-validation/09F7E02F1290BE211DA707A266F153B3.txt | 770423513bd0765c18e500000baec91976bcd8267a245437b32572665c6ac370 comodoca.com | | subdomain2.yourdomain.com/.well-known/pki-validation/9E107D9D372BB6826BD81D3542A419D6.txt | 87428fc522803d31065e7bce3cf03fe475096631e5e07bbd7a0fde60c4cf25c7 comodoca.com | Скриншот №1. Проверка с помощью HTTP(S) ## Проверка организации (Organization Validation — OV) Проверка домена Процесс валидации домена описан в предыдущем пункте. Проверка организации Может быть выполнена следующими способами: - Центр сертификации проводит проверку существовании компании через государственный реестр организаций. - Публичные реестры данных, такие как: Duns & Bradstreet, Hoovers, Companies House GOV.UK, Lursoft.lv - Нотариально заверенное письмо (Legal Opinion Letter) Подтверждения адреса может быть выполнено одним из следующих документов: - устав организации (с указанием адреса); - выданная правительством лицензия на ведение коммерческой деятельности (с указанием адреса); - копия выписки о состоянии счета компании за последние 6 месяцев; (вы можете указать номер счета) - копия телефонного счета компании за последние 6 месяцев; - копия счета за коммунальные услуги компании (т.е. электричество, вода, и т.д.) за последние 6 месяцев или текущий договор аренды для компании. Обратный звонок Сотрудники сертифицирующего центра (как правило это робот) звонят для подтверждения подлинности запроса сертификата и завершения процесса валидации. После успешного завершения всех шагов сертификат будет подписан и выпущен. ## Расширенная проверка (Extended Validation — EV) Заполнение форм сертифицирующих центров Центр пришлет вам специальные формы, которые необходимо заполнить. Проверка организации Процесс валидации организации описан в пункте OV. Проверка домена Процесс валидации домена описан в пункте DV. Обратный звонок Сотрудники сертифицирующего центра звонят для подтверждения подлинности запроса сертификата и завершения процесса валидации. После успешного завершения всех шагов сертификат будет подписан и выпущен. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/zapusk-comand-v-fonovom-rezhime.md В нашей инструкции мы расскажем о 2 способах запуска команд в фоновом режиме на Linux в скриншотах и примерах. Для начала следует разобрать синтаксис командной строки. При работе в ОС семейства Linux бывают случаи, когда необходимо запустить некий долгий процесс, например поиск файла, и при этом вернуться к работе в консоли. Вполне разумным решением будет открыть несколько терминалов и выполнить каждую задачу индивидуально, но что если мы не ищем легких путей? В этом случае разумным было бы запустить процесс в фоновом режиме. Рассмотрим как это сделать двумя способами. Для начала следует разобрать синтаксис командной строки. Запуск одной программы/скрипта и т.д. выполняем явным указанием, например: ``` ping 10.10.0.1 ``` или ``` ./script.sh ``` или ``` /home/admin/scripts/script.sh ``` Для запуска одной программы по завершении другой используется логический оператор && (двойной амперсанд), например: ``` mysqldump mybase -u user1 > db.sql && tar zcvf db.tar db.sql ``` Не очень удачный пример, так как можно было использовать перенаправление "|", приблизительно это выглядело бы так: ``` mysqldump mybase -u user1 | tar -cvf db.tar - ``` Все эти примеры замечательны для использования в скриптах, однако запуск "долгих" процессов сделает терминал недоступным, как это было отмечено выше. В этом случае поможет следующий пример: ``` find / -iname "*.txt" > abc.list & ``` Именно одинарный & в конце строки, указанный через пробел. Как видно, первая строка запускает процесс, но так как в системе мало txt-файлов, процесс завершается. Последующее нажатие Enter в терминале сообщает, что процесс успешно выполнен. Рассмотрим другой вариант. Воспользуемся утилитой ping, результаты будем писать в файл. Ввиду отсутствия ограничительных параметров у данной команды, ее выполнение прервется когда закончится место на жестком диске. Завершение процесса через killall покажет что процесс не завершился самостоятельно, а был "убит". Контролировать фоновые процессы, в данном случае, можно командой: ``` jobs ``` ``` ``` Сама команда jobs покажет сколько процессов выполняется и что именно выполняется, но различные ключи помогают отобразить больше информации. Ключ -l покажет еще и системный идентификатор процесса (PID). Ключ -p выведет только PID'ы, без описания. Для перехода в приоритетный режим можно использовать команду fg 1 или %1. Альтернативный способ. Воспользоваться утилитой-мультиплексором screen. В некоторых дистрибутивах требуется установка. CentOS: ```bash yum install screen ``` Ubuntu: ```bash apt-get install screen ``` Запуск команды прост: ``` screen ``` После выполнения появится окно, с ознакомительным текстом. Нажимаем Enter. Содержимое терминала обновится. Можем выполнить команду, например, все тот же ping. Чтобы вернуться в основной терминал нажимаем последовательно ctrl+a, а затем клавишу d. В терминале появится сообщение, что процесс отделен. Посмотреть запущенные screen'ы можно командой: ``` screen -list ``` ``` ``` Возврат к процессу можно сделать командой: ``` screen -r ``` или ``` screen -r ``` В нашем случае: ``` screen -r 2636.pts-0.ubuntu ``` ``` ``` Как видно, процесс выполнялся в фоновом режиме. Иногда требуется скрипт, который запускал бы процесс в фоновом режиме при загрузке системы В таком случае следует воспользоваться следующим примером: ``` screen -d -m -S SCREEN_NAME program_1 ``` -d -m — запускает процесс screen в отделённом режиме. Будет создана новая сессия, но она не будет показана. -S — установит имя для процесса. Удобно, когда запущено несколько процессов screen. Открыть окно с процессом можно командой: ``` screen -r my_ping ``` https://serverspace.by/support/help/ustanovka-vnc-i-dostyp-k-nemy.md Работа с системой удаленного доступа VNC (Virtual Network Computing). Рассмотрим, как установить, настроить и подключиться к серверу под Ubuntu. Иногда возникает необходимость работы на удаленном сервере не через консоль, а через удаленный рабочий стол. На помощь приходит система удаленного доступа VNC (Virtual Network Computing). Рассмотрим как установить, настроить и подключиться к серверу. ## Установка Обновляем информацию о репозиториях: ```bash sudo apt-get update ``` Обновляем компоненты системы и перезагружаем сервер: ```bash sudo apt-get upgrade ``` ``` reboot ``` Приступаем к установке. ```bash sudo apt-get install —no-install-recommends ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal vnc4server ``` Этот процесс не очень быстрый, так как будет скачано более 200 мегабайт. Чтобы завершить начальное конфигурирование VNC-сервера, следует выполнить команду: ``` vncserver ``` Программа запросит пароль и его подтверждение для подключения через VNC, а также создаст скрипты. ## Настройка Под настройкой следует понимать, что будут указаны команды и скрипты, которые следует выполнять при запуске сервера. Для этого необходимо отредактировать файл ~/.vnc/xstartup. VNC-сервер, по умолчанию, инициализируется на tcp-порту 5901, который называют "Display port", в документации VNC он упоминается как ":1". Сам же VNC позволяет запускать несколько экземпляров :2 — 5902, :3 — 5903 и так далее. Останавливаем службу на порту 5901: ``` vncserver -kill :1 ``` Редактируем файл настроек, для этого откроем его в любом текстовом редакторе, например nano: ``` nano ~/.vnc/xstartup ``` В конец файла добавляем 4 строки: ``` gnome-panel & ``` ``` gnome-settings-daemon & ``` ``` metacity & ``` ``` nautilus & ``` Общий вид файла должен стать таким: Запускаем командой: ``` vncserver ``` ``` ``` Видно, что сервер запустился на tcp-порту 5901. Подключаемся к серверу с помощью любого VNC-клиента, например Remmina. Выбираем протокол — VNC. Указываем адрес сервера и через двоеточие порт, в конкретном случае 10.10.2.7:5901. И кликаем по кнопке "Подключиться". Программа запросит ввод пароля. Вот и результат. Важно! Если используется защита межсетевым экраном, тогда следует добавить разрешающее правило для подключения: ``` iptables -A INPUT -p tcp —dport 5901 -j ACCEPT ``` ``` iptables-save ``` Также важно помнить, что разрешающее правило должно быть для каждого запущенного экземпляра сервера по виду: ``` iptables -A INPUT -p tcp —dport 59XX -j ACCEPT ``` ``` iptables-save ``` XX — номер порта :2 — 02, :3 — 03, :10 — 10. https://serverspace.by/support/help/nastroika-vsftpd-v-ubuntu.md Рассмотрим настройку vsftpd (Very Secure FTP Daemon) приложения с поддержкой SSL и IPv6 под ОС Ubuntu и CentOS. Процесс установки разделим на два этапа - установку и настройку. Несмотря на популярность облачных систем хранения, достаточно часто появляется задача развертывания FTP-ервера. Рассмотрим как настроить vsftpd приложение с поддержкой SSL и IPv6 под ОС Ubuntu и CentOS. Vsftpd является акронимом и его следует понимать как Very Secure FTP Daemon — очень защищенный FTP-сервер. Процесс разделим на два этапа — установку и настройку. Установка в Ubuntu: В начале следует обновить информацию о репозиториях, обновить компоненты системы, перезагрузиться если требуется: ```bash sudo apt-get update ``` ```bash sudo apt-get upgrade ``` ``` sudo reboot ``` Теперь устанавливаем vsftpd: ```bash sudo apt-get install vsftpd ``` Установка в CentOS: Обновляем компоненты системы и перезагружаемся: ```bash yum update ``` ``` reboot ``` Устанавливаем vsftpd: ```bash yum install vsftpd ``` Запускаем службу: ```bash service vsftpd start ``` После установки и запуска службы, сервер готов принимать соединения. Однако стоит помнить, что используются базовые настройки, которые допускают подключение анонимными пользователями. Настроим vsftpd: Отредактируем конфигурационные файлы. Важно помнить, что конфиги, в разных ОС, находятся в разных директориях. Ubuntu: ``` nano /etc/vsftpd.conf ``` CentOS: ``` nano /etc/vsftpd/vsftpd.conf ``` Если анонимном доступе нет необходимости, то первым делом исправляем это в конфигурационном файле. Для этого находим строчку: ``` anonymous_enable=YES ``` Заменяем YES на NO. В последних версиях Ubuntu это не требуется, но проверка не будет лишней. Следует обратить внимание, что некоторые строки закомментированы, т.е. перед ними стоит знак # (решетка/шарп). Для того чтобы пользователи могли записывать файлы в директорию, следует раскомментировать строки (т.е. удалить в самом начале строки символ #): ``` local_enable=YES ``` ``` write_enable=YES ``` Соответственно, если по умолчанию указан параметр NO, то заменяем на YES. Чтобы пользователи не получили доступ в другие каталоги сервера, раскомментируем строку: ``` chroot_local_user=YES ``` Также, если по умолчанию указан параметр NO, то заменяем на YES. Сохраняем конфигурационный файл и перезапускаем сервер командой: ```bash service vsftpd restart ``` Проверяем запустилась ли служба: ```bash service vsftpd status ``` Если все успешно, то система выведет соответствующее сообщение. Иногда, при запуске, появляется сообщение «refusing to run with writable root inside chroot». Данная ошибка появляется в последних версиях vsftpd, когда служба запускается не от пользователя root. Исправляем. Создаем пользователя: ``` adduser ``` Добавляем пользователя в sudo: ``` adduser sudo ``` Создаем директорию внутри пользовательской: ``` mkdir /home//userfiles ``` Меняем владельца каталога на root: ```bash chown root:root /home/ ``` Перезапускаем службу: ```bash sudo service vsftpd restart ``` Если подключение не удается — настраиваем файрволл. В Ubuntu это делается с помощью ufw: ``` sudo ufw allow 20/tcp ``` ``` sudo ufw allow 21/tcp ``` В CentOS, как и во всех остальных случаях, можно использовать iptables: ``` sudo iptables -A INPUT -p tcp —dport 20 -m state —state NEW,ESTABLISHED -j ACCEPT ``` ``` sudo iptables -A OUTPUT -p tcp —sport 20 -m state —state ESTABLISHED -j ACCEPT ``` ``` sudo iptables -A INPUT -p tcp —dport 21 -m state —state NEW,ESTABLISHED -j ACCEPT ``` ``` sudo iptables -A OUTPUT -p tcp —sport 21 -m state —state ESTABLISHED -j ACCEPT ``` Проверка соединения выполняется подключением к серверу, например, из окна браузера по ссылке вида: ftp://IP-address Система запросит ввод логина и пароля. Следует указать системные пользовательские данные. Также, можно использовать любой ftp-клиент, например Filezilla. https://serverspace.by/support/help/ustanovka-lamp-na-centos.md LAMP - комплекс программного обеспечения для создания Web-сервера. Базируется на Linux, в качестве web-сервера используется Apache, база данных - MySQL, интерпретатор кода – PHP. Приступаем к установке. LAMP — акроним, обозначающий комплекс программного обеспечения для создания Web-сервера. Базируется на Linux, в качестве web-сервера используется Apache, база данных — MySQL, интерпретатор кода — PHP. Все действия делаются от пользователя root. В самом начале обновляем компоненты системы и приложения: ```bash sudo yum update ``` На вопрос "Is this ok" отвечаем "y", дожидаемся окончания процесса и перезагружаем сервер командой: ``` reboot ``` Приступаем к установке. Устанавливаем web-сервер Apache, правда в репозитории он называется httpd: ```bash yum install httpd ``` Далее устанавливаем сервер баз данных. Начиная с CentOS7, вместо СУБД MySQL активно используется MariaDB: ```bash yum install mariadb-server mariadb ``` Если интересует свежая стабильная версия дистрибутива, то следует выполнять установку из репозитория разработчика. Как это сделать рассмотрено в [этой статье](https://serverspace.by/support/help/installing-mariadb/). Устанавливаем PHP сразу с модулем для работы с базой данных: ```bash sudo yum install php php-mysql ``` Установка окончена. Настроим сервисы, чтобы они автоматически запускались после перезагрузки системы, поочередно выполнив команды: ```bash systemctl enable httpd.service ``` ```bash systemctl start httpd.service ``` ```bash systemctl enable mariadb.service ``` ```bash systemctl start mariadb.service ``` Чтобы разрешить подключение к web-серверу, добавляем разрешающее правило и сохраняем его: ``` iptables -A IN_public_allow -p tcp -m tcp —dport 80 -m conntrack —ctstate NEW -j ACCEPT ``` ``` iptables-save ``` Теперь выполним базовую настройку безопасности MariaDB: ``` mysql_secure_installation ``` В самом начале использования программа запросит пароль пользователя root, так как он не задавался при установке, то просто отвечаем нажатием клавиши Enter. Следом программа предложит изменить пароль пользователя root. Если пароль не был задан, то избежать этой процедуры невозможно. Вводим пароль и его подтверждение. На дальнейшие вопросы можно отвечать клавишей "Y". | Set root password? [Y/n] | Изменить пароль пользователя root? | | --- | --- | | Remove anonymous users? [Y/n] | Удалить анонимных пользователей? | | Disallow root login remotely? [Y/n] | Запретить удаленное подключение от имени root? | | Remove test database and access to it? [Y/n] | Удалить базу данных test и доступ к ней? | | Reload privilege tables now? [Y/n] | Перезагрузить таблицу привилегий сейчас? | Для проверки установки создадим php-файл info.php в корне сайта: ``` touch /var/www/html/info.php ``` Откроем файл любым текстовым редактором, в нашем случае nano: ``` nano /var/www/html/info.php ``` Если получаете сообщение с ошибкой, то установите этот редактор: ```bash yum install nano ``` Добавим php-код в файл: ```php ``` Сохраняем изменения. В любом браузере переходим по ссылке в формате http://IP-адрес_сервера/info.php В примере случае будет так, у вас свой IP-адрес: http://10.10.7.7/info.php Результат будет таким: Модули PHP. Установленного модуля поддержки СУБД будет недостаточно, если вы планируете использовать, любую CMS или самописный сайт. Чтобы удовлетворить потребность в функционале следует установить расширения языка php. Для начала посмотрим что предлагает репозиторий командой: ```bash yum search php- ``` ``` ``` Установка расширений происходит точно также как и установка любого другого пакета, например: ```bash yum install php-gd ``` После установки расширений рекомендуется перезапустить службу web-сервера: ```bash systemctl restart httpd.service ``` https://serverspace.by/support/help/nastroika-iptables.md Самым распространенным межсетевым экраном в ОС семейства Linux является iptables. Рассмотрим базовые настройки в Ubuntu, CentOS/Red Hat/OpenSuse. Самым распространенным межсетевым экраном в ОС семейства Linux является iptables. Рассмотрим базовые настройки. Так получилось, что не все дистрибутивы Linux устанавливают по умолчанию iptables. Если одноименная команда не выполняется в терминале, то следует выполнить установку: ```bash sudo apt-get install iptables ``` Конечно, можно выполнять настройку и через графический интерфейс — Firestarter, а также использовать оболочку — shorewall, но гораздо лучше будет разобраться в iptables и из консоли. ## Типы правил В iptables существует 3 типа правил — input, forward, output. **Input **— Данная цепочка правил используются для контроля входящих соединений. Например, если пользователь пытается подключиться к серверу, то iptables сравнит его IP-адрес со своим списком, затем разрешит или ограничит доступ. **Forward **— Цепочка правил этого типа используются для обработки входящих tcp/udp пакетов, адрес назначения которых находится "за" сервером. В качестве примера можно рассмотреть случай, когда сервер используется в качестве маршрутизатора. Частный случай — NAT и Port-Forwarding. **Output **— Эта цепочка правил полный аналог Input за исключением того, что они используются для контроля исходящих соединений. Специалисты условно делят режим работы любого межсетевого экрана на 2 типа — белый и черный. Белый — запрещается весь трафик, кроме разрешенного. Черный — разрешается весь трафик, кроме запрещенного. Данная политика относится не только к IP-адресам устройств, но и к портам служб, а также обращениям некоторых IP-адресов к некоторым портам. Чтобы было понятнее, не очень хорошо, когда порт SSH-службы доступен из сети Интернет. Это повлечет постоянные попытки подбора логина и пароля. Однако, вы можете запретить любой трафик на порт этой службы (по умолчанию, tcp — 22) тем самым отрезав себя от административного входа на сервер. Компромиссное решение — добавить блок IP-адресов с которых можно обращаться к серверу по SSH-протоколу. По умолчанию, дистрибутив Ubuntu с предустановленным iptables, разрешает всё. Проверить это можно командой: ``` iptables -L | grep policy ``` Скриншот №1. Команда iptables -L | grep policy После проверки поведения цепочек соединений и общего поведения межсетевого экрана можно приступить и ограничительным мерам. Для начала рассмотрим три основных действия с пакетами: **Accept **— разрешает соединение; **Drop **— Запрещает соединение, отбрасывает пакеты. При этом создается впечатление, что данный порт и не был открыт вовсе. **Reject **— также запрещает соединение, но явно дает понимание, что порт защищен межсетевым экраном. Важно понимать, что правила вносятся в соответствующую цепочку с соответствующей политикой для пакетов. Рассмотрим пример: ``` sudo iptables -A INPUT -s 10.10.0.1 -j DROP ``` Данное правило запрещает все входящие соединения с адреса 10.10.0.1. Блокировка диапазонов адресов происходит по маске: ``` sudo iptables -A INPUT -s 10.10.0.0/255.255.255.0 -j DROP ``` Также блокировка диапазон адресов можно заблокировать по префиксу сети: ``` sudo iptables -A INPUT -s 10.10.0.0/24 -j DROP ``` Сетевой префикс /24 равен 255.255.255.0 Допустим, что нет необходимости ограничивать все обращения с адреса 10.10.0.1, а нужно запретить только обращение к TCP-порту 22 (SSH). Правило будет выглядеть следующим образом: ``` iptables -A INPUT -p tcp —dport ssh -s 10.10.0.1 -j DROP ``` Тоже самое и для подсети: ``` iptables -A INPUT -p tcp —dport ssh -s 10.10.0.0/24 -j DROP ``` Стоит отметить, что параметр -p указывает тип протокола пакетов tcp или udp, следует указывать соответствующий. Параметр —dport позволяет указывать не только имя службы слушающей порт, но и номер порта. Записи —dport ssh и —dport 22 будут эквивалентны, но только в том случае, если порт ssh-службы не был изменен в конфигурационном файле, в противном случае может быть заблокировано или не заблокировано "что-то". Следующее правило заблокирует доступ для подсети 10.10.0.0/24 к 80 порту сервера (сайт): ``` sudo iptables -A INPUT -p tcp —dport 80 -s 10.10.0.0/24 -j DROP ``` Важно помнить, что некоторые протоколы, тот же TCP, требуют двустороннего согласования, после чего соединение на порту изменяет свой статус ESTABLISHED, FIN_WAIT и т.п. Iptables позволяет выполнить настройку правил таким образом, что если соединение будет установлено, то и исходящий трафик будет разрешен: ``` sudo iptables -A INPUT -p tcp —dport 80 -s 10.10.0.1 -m state —state NEW,ESTABLISHED -j ACCEPT ``` ``` sudo iptables -A OUTPUT -p tcp —sport 80 -d 10.10.0.1 -m state —state ESTABLISHED -j ACCEPT ``` Важно понимать, что все правила обрабатываются ядром системы, что влечет за собой нагрузку на процессорную часть сервера. Избыток правил для может негативно сказаться на качестве. Зачастую разрешают весь исходящий от сервера трафик, а открытые порты управляются политикой безопасности, исключением является блокировка трафика для почтовых портов, да и то, если в этом есть необходимость. ## Сохранение правил Вносимые правила действуют до перезагрузки самих правил либо до перезагрузки сервера. Чтобы сохранить изменения используется специальная команда. В Ubuntu: ``` sudo /sbin/iptables-save ``` В CentOS/Red Hat/OpenSuse: ``` /sbin/service iptables save ``` либо ``` /etc/init.d/iptables save ``` Для очистки существующих правил можно использовать iptables с ключем -F: ``` iptables -F ``` Существуют и другие ключи, полный список которых можно посмотреть в электронном руководстве: ``` man iptables ``` https://serverspace.by/support/help/installing-icinga-2-on-debian-9.md В этом руководстве показано, как установить и настроить инструмент веб-мониторинга Icinga 2 в Debian 9 для мониторинга сетевой инфраструктуры. В этом руководстве показано как установить и настроить инструмент для мониторинга сетевой инфраструктуры Icinga 2 в Debian 9. ## Что такое Icinga 2? Icinga представляет собой приложение для мониторинга с открытым исходным кодом, которое можно использовать для наблюдения за критически важными службами и системами на вашем виртуальном сервере. Icinga 2 может отслеживать хосты в сети или проверять внешние сетевые протоколы, такие как состояние HTTP-сервера, почтового сервера, службы обмена файлами и другие. Icinga 2 можно настроить для мониторинга состояния внутренних систем, для проверки загрузки, памяти, свободного места на диске или других внутренних параметров хостов. Icinga также можно настроить для отправки уведомлений и оповещений по электронной почте или в SMS- системным администраторам, указанным в контактах. ## **Первоначальные требования** Многие из команд в этом руководстве требуют привилегий суперпользователя. Если при использовании команды sudo появляется ошибка bash: sudo: command not found, вам необходимо активировать режим суперпользователя, установить команду sudo и добавить своего пользователя в группу sudo: ```bash su — apt-get install sudo -y usermod -aG sudo yourusername ``` На виртуальном сервере должен быть установлен[LAMP-стек](https://serverspace.by/support/help/ustanovka-lamp/). Обновите локальные репозитории и пакеты: ```bash sudo apt-get update && sudo apt-get upgrade ``` ## **Использование OPCache для увеличения скорости загрузки** Чтобы увеличить скорость загрузки вашего приложения с помощью плагина OPCache, доступного в PHP 7, добавьте следующие параметры OPCache в конец файла конфигурации PHP: ``` vi /etc/php/7.0/apache2/php.ini ``` Вставьте следующие строки: ``` opcache.enable=1 opcache.enable_cli=1 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=10000 opcache.memory_consumption=128 opcache.save_comments=1 opcache.revalidate_freq=1 ``` Перезапустите Apache, чтобы изменения вступили в силу: ```bash systemctl restart apache2 ``` ## **Настройка баз данных** Установите СУБД, необходимую веб-приложению Icinga 2 для мониторинга, и интерфейсу Icinga Web 2 для хранения пользователей, контактов и других собранных данных. Выполните следующую команду, чтобы установить базу данных MariaDB и модуль PHP, необходимые для доступа к базе данных MySQL в Debian 9: ```bash apt install php7.0-mysql mariadb-server mariadb-client ``` Войдите в консоль MySQL и защитите учетную запись суперпользователя MariaDB: ```bash mysql -h localhost ``` ``` use mysql; ``` ```sql update user set plugin=" where user='root'; ``` ``` flush privileges; ``` ``` exit ``` Далее выполните сценарий безопасности MySQL: ``` sudo mysql_secure_installation ``` Войдите в консоль базы данных и создайте базу данных для Icinga 2: ```bash mysql -p ``` Создайте пользователя с надежным паролем для управления базой данных приложения Icinga 2, введя команды ниже. В этом примере необходимо заменить icingadb, icinga-user и strongpassword своим собственным именем базы данных и учетными данными: ```sql create database icingadb; grant all privileges on icingadb.* to 'icinga_user'@'localhost' identified by 'strongpassword'; flush privileges; ``` Создайте вторую базу данных MySQL, используемую Icinga 2 Web для хранения пользователей и групп. Как и в предыдущем шаге замените имя базы данных и учетные данные. Вы можете использовать одну и ту же учетную запись пользователя MySQL для одновременного управления обеими базами данных (icinga_user’@’localhost): ```sql create database icinga_users; grant all privileges on icinga_users.* to 'icinga_user'@'localhost' identified by 'strongpassword'; exit ``` ## **Установка Icinga 2** Установите Icinga 2 и модуль Icinga 2 MySQL для доступа к базе данных MariaDB: ```bash apt install icinga2 icinga2-ido-mysql ``` Во время установки возникнет вопрос использования модуля MySQL. Выберите Yes в командной строке: После установки Icinga 2 запустите службу Icinga 2 и проверьте состояние демона: ```bash systemctl start icinga2.service ``` ```bash systemctl status icinga2.service ``` ## **Установка веб-интерфеqса Icinga 2** Для управления Icinga 2 через веб-интерфейс установите пакеты веб-интерфейса Icinga 2 и интерфейса командной строки (CLI): ```bash apt install icingaweb2 icingacli ``` Перезапустите демон Icinga 2 и проверьте его статус: ```bash systemctl restart icinga2.service ``` ```bash systemctl status icinga2.service ``` Для установки схемы MySQL требуется база данных Icinga 2: ```bash mysql -u root icingadb -p < /usr/share/icinga2-ido-mysql/schema/mysql.sql ``` Откройте файл конфигурации Icinga 2 MySQL IDO: ``` vi /etc/icinga2/features-enabled/ido-mysql.conf ``` Добавьте учетные данные базы данных Icinga 2 как показано на примере ниже. Используйте учетные данные первой базы данных, созданной на предыдущем этапе создания базы данных: ``` library "db_ido_mysql" object IdoMysqlConnection "ido-mysql" { user = "icinga_user", password = "strongpassword", host = "localhost", database = "icingadb" } ``` Сохраните файл и перезапустите демон Icinga 2: ```bash systemctl restart icinga2.service ``` Создайте каталог журналов Icinga Web 2 и добавьте соответствующие разрешения файловой системы, чтобы предоставить разрешения записи групп: ``` mkdir -p /var/log/icingaweb2/ ``` ``` chgrp -R icingaweb2 /var/log/icingaweb2/ ``` ```bash chmod -R 775 /var/log/icingaweb2/ ``` ## **Настройте Icinga 2 через веб-интерфейс** Сгенерируйте токен установки. Сохраните его в легкодоступном месте. Вам нужно будет использовать его для доступа к настройке Icinga 2: ``` icingacli setup token create ``` Вывод этой команды должен быть примерно таким: ``` The newly generated setup token is: c0f22932e763ac41 ``` Примечание: показать сгенерированный токен, если вы его забыли, можно с помощью команды: ``` icingacli setup token show ``` Откройте порт HTTP для подключения к веб-интерфейсу: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` Откройте браузер и перейдите по адресу http://exampleIP/icingaweb2/setup. Замените exampleIP на IP-адрес вашего виртуального сервера. На первом этапе установки добавьте токен, созданный ранее: На следующем экране отметьте галочкой модули Doc и Monitoring и нажмите Next для продолжения: Icinga 2 проверит ваши системные требования и модули PHP, чтобы убедиться, что все требования выполнены, прежде чем продолжить процесс установки и настройки. Если не хватает некоторых модулей, то их необходимо доустановить. Прокрутите вниз до конца страницы и нажмите Далее, чтобы продолжить: В качестве типа аутентификации выберите** Database**: Используйте информацию из второй базы данных, созданной ранее, чтобы добавить учетные данные, необходимые для доступа к базе данных Icinga 2 для хранения пользователей и групп. В качестве имени для этого ресурса используйте icingaweb_db. Параметры Host и Port должны иметь значения localhost и 3306 соответственно. Не включайте постоянные и SSL-опции. Нажмите кнопку Validate configuration, чтобы подтвердить базу данных. После успешной проверки базы данных нажмите Next, чтобы перейти к следующему этапу процесса настройки Icinga 2: Определите имя для базы данных аутентификации и нажмите Next: Добавьте имя пользователя с надежным паролем для входа в веб-интерфейс Icinga 2 и нажмите Next: Далее настройте приложение и выполните настройку регистрации ошибок, используя следующие параметры: - Отметьте Show Stacktraces; - Storage Type = Database; - Logging Type = File; - Logging Level = Error; - File path = /var/log/icingaweb2/icingaweb2.log. Просмотрите информационный отчет и, если ошибок нет, нажмите Next для продолжения: В следующем окне нажмите Next для продолжения: Добавьте имя для Icinga 2 Backend, выберите IDO в качестве Backend Type и нажмите Next: Добавьте учетные данные базы данных для настройки среды ресурса IDO. После добавления нажмите кнопку Validate Configuration, чтобы проверить ресурс IDO мониторинга Icinga. После появления сообщения Successfully validated нажмите Next: Выполните настройку транспортного модуля, используя следующие параметры: ``` Transport Name = icinga2 Transport Type = Local Command File Command File = /var/run/icinga2/cmd/icinga2.cmd ``` Настройте переменные среды безопасности мониторинга (можно оставить значения по умолчанию): На следующем экране показан подробный отчет о текущей конфигурации. Проверьте конфигурацию и нажмите Готово, чтобы завершить процесс установки: После завершения процесса установки и настройки появится сообщение о том, что Icinga Web 2 успешно настроена: Выполните вход в панель Icinga 2 по адресу http://exampleIP/icingaweb2/authentication/login: Вы будете перенаправлены в панель управления Icinga Web 2, где вы увидите службы и ресурсы виртуального сервера, которые в настоящее время отслеживаются механизмом Icinga 2: Вы успешно установили, а также настроили приложение мониторинга Icinga 2 и интерфейс Icinga Web 2 в Debian 9. https://serverspace.by/support/help/kak-ustanovit-node-js-i-nginx-na-debian.md Grafana является програмным средством для сбора аналитической информации и отображения в графическом виде. Описание установки node.js и веб-сервера NGINX на виртуальный сервер с операционной системой Debian. ## **Что такое Node.js и NGINX?** Node.js — это платформа JavaScript, которая может обслуживать динамический и адаптивный контент. JavaScript обычно является встроенным языком браузера, таким как HTML или CSS. А Node.js является серверной платформой JavaScript, сравнимой с PHP. Node.js часто работает с другими популярными серверными приложениями, такими как NGINX или Apache. В этом руководстве будет рассмотрена настройка NGINX для обработки внешних запросов, а Node.js — для обработки внутренних запросов. ## **Первоначальные требования** Многие из команд в этом руководстве требуют привилегий суперпользователя. Если при использовании команды sudo появляется ошибка bash: sudo: command not found, вам необходимо активировать режим суперпользователя, установить команду sudo и добавить своего пользователя в группу sudo: ```bash su — apt-get install sudo -y usermod -aG sudo yourusername ``` Обновите локальные репозитории и пакеты: ```bash sudo apt-get update && sudo apt-get upgrade ``` ## **Установка и настройка NGINX** Установите NGINX, а также модуль screen, который будет использоваться позже: ```bash apt-get install nginx screen ``` Запустите NGINX: ```bash service nginx start ``` С помощью команды cd перейдите в следующий каталог: ``` cd /etc/nginx/sites-available/ ``` Создайте новый файл, заменив example.com вашим доменным именем или IP-адресом: ``` touch example.com ``` Вставьте следующие строки в созданный файл, заменив example.com вашим доменным именем или IP-адресом: ``` #Names a server and declares the listening port server { listen 80; server_name example.com www.example.com; ``` ``` #Configures the publicly served root directory #Configures the index file to be served root /var/www/example.com; index index.html index.htm; ``` ```css #These lines create a bypass for certain pathnames #www.example.com/test.js is now routed to port 3000 #instead of port 80 location /test.js { proxy_pass http://example.com:3000; proxy_set_header Host $host; } } ``` Сохраните изменения и перейдите в каталог: ``` cd /etc/nginx/sites-enabled/ ``` Создайте символьную ссылку на созданный файл: ``` ln -s /etc/nginx/sites-available/example.com ``` Удалите символьную ссылку по умолчанию: ``` rm default ``` Перезапустите NGINX, чтобы применить новую конфигурацию: ```bash service nginx reload ``` ## **Создание каталогов и HTML-файлов** Создайте следующую иерархию каталогов, заменив example.com: ``` mkdir -p /var/www/example.com ``` Перейдите в созданный каталог: ``` cd /var/www/example.com ``` Создайте индексный файл: ``` touch index.html ``` Вставьте следующие строки: ```html ``` ``` ``` ```xml ** If you have not finished the guide, the button below will not work. ** ``` ```xml The button links to test.js. The test.js request is passed through NGINX and then handled by the Node.js server. ``` ```xml [Go to test.js](test.js) ``` ```html ``` ## **Установка Node.js** На этом этапе NGINX прослушивает порт 80 и обслуживает контент. Он также настроен на передачу запросов приложения /test.js на порт 3000. Установите Node Version Manager: ```bash wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash ``` Закройте и снова откройте свой терминал. Установите Node.js с помощью следующей команды: ``` nvm install 0.10 ``` Создайте следующий файл: ``` touch /var/www/example.com/server.js ``` Вставьте в него следующее содержимое: ``` //nodejs.org/api for API docs //Node.js web server var http = require("http"), //Import Node.js modules url = require("url"), path = require("path"), fs = require("fs"); ``` ```javascript http.createServer(function(request, response) { //Create server var name = url.parse(request.url).pathname; //Parse URL var filename = path.join(process.cwd(), name); //Create filename fs.readFile(filename, "binary", function(err, file) { //Read file if(err) { //Tracking Errors response.writeHead(500, {"Content-Type": "text/plain"}); response.write(err + "n"); response.end(); return; } response.writeHead(200); //Header request response response.write(file, "binary"); //Sends body response response.end(); //Signals to server that }); //header and body sent }).listen(3000); //Listening port console.log("Server is listening on port 3000.") //Terminal output ``` Запустите новую сессию screen: ``` screen ``` Далее нажмите Enter и запустите сервер Node.js: ```bash node server.js ``` Нажмите комбинацию клавиш **Ctrl+A,** затем **D**. ## **Создание тестового приложения** Создайте файл с тестовыми данными: ``` touch /var/www/example.com/test.js ``` И вставьте в него следующие данные: ```html ``` ```xml ## Your Node.JS server is working. ``` ``` The below button is technically dynamic. You are now using Javascript on both the client-side and the server-side. ``` ```xml Display the date and time. ``` ```html ``` Откройте порт 80 для подключения по http: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` Перейдите в браузере по вашему домену или ip-адресу. Отобразится следующая страница. Нажмите кнопку **Go to the test.js**: Если все настроено корректно, с помощью кнопки **Display the date and time** на новой странице можно вывести текущее время и дату: Node.js и NGINX теперь работают в связке. https://serverspace.by/support/help/ustanovka-lamp.md Рассмотрим установку LAMP-сервера (Linux, Apache, MySQL, PHP) на VDS под управлением ОС Ubuntu. Устанавливаем компоненты сервера - Apache2, MariaDB, PHP7.0. LAMP — акроним, обозначающий комплекс серверного программного обеспечения Web-сервера. Расшифровывается как Linux, Apache, MySQL, PHP. В последнее время вместо MySQL, в качестве сервера баз данных, используется MariaDB. Рассмотрим установку LAMP-сервера на VDS под управлением ОС Ubuntu. Обычно, при установке ОС с носителя данных, программа инсталляции предлагает включить пакет программ в общую установку. Даже если этот момент был пропущен, всегда есть возможность исправить. Последовательно выполняем команды обновления данных о репозиториях и индексах пакетов, обновляем пакеты и компоненты системы до актуальных и перезагружаем сервер, если потребуется: ```bash sudo apt-get update ``` ```bash sudo apt-get upgrade ``` ``` sudo reboot ``` Устанавливаем компоненты сервера — Apache2, MariaDB, PHP7.0,: ```bash sudo apt-get install apache2 ``` ```bash sudo apt-get install mariadb-server mariadb-client ``` ```bash sudo apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0 php7.0-xml ``` Как установить последнюю стабильную версию MariaDB рассмотрено в [отдельной статье.](https://serverspace.by/support/help/installing-mariadb/) В ходе установки MariaDB, программа запросит ввод пароля для пользователя root и его подтверждение. После установки, следует выполнить команду настройки параметров безопасности СУБД: ``` sudo mysql_secure_installation ``` Перед использованием программа потребует ввод пароля для пользователя root. ## Модули PHP Устанавливаемые в примере модули php7.0 могут быть недостаточными и различный CMS требуют установку расширений. Полный список расширений можно получить командой: ```bash apt-cache search php7.0- ``` ``` ``` Их установка выполняется по шаблону: ```bash sudo apt-get install ``` В стандартных настройках, корень сайта располагается по пути /var/www/html. Любым текстовым редактором, например nano создадим php-файл: ``` cd /var/www/html ``` ``` sudo touch info.php ``` ``` nano info.php ``` Напишем в файл одну строку: ``` ``` Сохраним изменения и проверим работу, открыв сайт в браузере по ip-адресу: ``` http:///info.php ``` Результат должен получиться таким. Скриншот №1. Результат установки LAMP-стека Важно! Если сайт не доступен, проверьте включен ли iptables и существует ли разрешающее правило для 80 TCP-порта. Если правило не существует, то добавьте его: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` ``` iptables-save ``` https://serverspace.by/support/help/generaciya-ssh-kluchey.md Генерация SSH-ключей в Linux и Windows для подключения к серверу под управлением ОС Linux. Рассмотрим создание ключа через утилиту putty. Рассмотрим создание SSH-ключей в Linux и Windows для подключения к серверу под управлением ОС Linux. Использование SSH-ключей не только позволяет подключаться к серверу без пароля, но и повышает уровень безопасности сервера. Причина проста — пароль можно подобрать, а вот на подбор ключа могут уйти десятилетия. Ключ состоит из двух частей — открытой и закрытой. Именно открытый ключ передается на сервер, а закрытый ключ остается на ПК клиента. Если вы опасаетесь за безопасность ключа, его можно защитить парольной фразой при генерации. Создание ключей выполняется командой ```bash ssh-keygen -t rsa ``` На что стоит обратить внимание. OpenSSH поддерживает генерацию нескольких типов ключей: - dsa - ecdsa - ed25519 - rsa - rsa1 Последнее время, надежность DSA-ключей ставится под сомнение и рекомендуют использовать RSA-ключи. Если отсутствует каталог ".ssh" в каталоге вашей учетной записи (это скрытый каталог), то он будет создан. Так было не всегда и возможно его придется создать вручную. passphrase — парольная фраза для защиты ключа. Если не желаете её задавать, тогда просто нажимаете Enter. Далее вводится подтверждение этой фразы, либо также Enter. В результате выполнения команды, будет показан слепок ключа и его псевдографическое изображение. Открытый ключ располагается по пути /home/administrator/.ssh/id_rsa.pub. Закрытый — /home/administrator/.ssh/id_rsa. Рассмотрим создание ключа через утилиту PuTTY-Gen. Скачаем ее с [официального сайта](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html), выбрав соответствующую разрядность своей операционной системы (не серверной). Скриншот №1. Выбор разрядности операционной системы Запускаем программу. Скриншот №2. Запуск программы В открывшемся окне проверяем значение переключателя "Type of key to generate", должно быть RSA, кликаем по кнопке Generate. В обновленном окне программа нас просит выполнять случайные движения мышью в пустом поле программы. Таким образом программа получит случайные данные и создаст ключи. Скриншот №3. Создание ключей Должен получиться примерно такой результат: Скриншот №4. Сгенерированный ключ Копируем текст открытого ключа из поля "Public key for pasting into OpenSSH authorized_keys file:" временно в любой текстовый файл. Сохраняем закрытый ключ нажав соответствующую кнопку. При необходимости указываем парольную фразу. Открытый ключ должен начинаться с ssh-rsa. ## Добавление ключа. Для успешного подключения к серверу следует прописать полученный открытый ключ в файл authorized_keys расположенном на сервере по пути: ``` /home//.ssh ``` В данном случае, имя пользователя administrator. В *nix-подобный операционных системах экспорт открытого ключа на сервер выполняется командой: ``` cat ~/.ssh/id_dsa.pub | ssh -l remonet_user_name 10.10.0.1 "cat >> .ssh/authorized_keys" ``` remote_user_name — имя пользователя на удаленном сервере, под которым и будет происходить дальнейшее подключение. 10.10.0.1 — адрес сервера, в нашем случае, взят для примера. После выполнения команды, потребуется ввести пароль и более этого делать не придется., при попытках подключения с этого ПК. https://serverspace.by/support/help/installing-mariadb.md Давайте рассмотрим установку и настройку одной из самых популярных СУБД (систем управления базами данных) – MariaDB на Ubuntu и CentOS. Большое количество сервисов использует обращение к БД — web-приложения, сайты компаний, а также почтовые сервисы и различные системы учета. Сегодня рассмотрим установку одной из самых популярных СУБД — MariaDB. В данной статье мы не будем рассматривать как установить и настроить LAMP-сервер, это рассмотрено в отдельной статье (ссылка на статью о LAMP). Следует обратить внимание, что MySQL-сервер в репозиториях заменен на MariaDB по причине открытости кода и активного развития самого проекта. Добавляем репозиторий, так как система установит версию MariaDB 5.5. Для каждой ОС рассмотрим этот момент отдельно. Если это устраивает, то можно пропустить этот шаг. Если вы все же решили это выполнить, то открываем страницу[на официальном сайте](https://downloads.mariadb.org/mariadb/repositories/#mirror=timeweb) с информацией о репозиториях и их настройке. ## Ubuntu Перед установкой обновляем данные о репозиториях и индексах пакетов: ```bash sudo apt-get update ``` Обновляем пакеты и компоненты системы: ```bash sudo apt-get upgrade ``` Перезагружаем систему, иногда это требуется: ``` sudo reboot ``` Проверяем версию пакета MariaDB-server в репозитории: ```bash apt-cache show mariadb-server ``` Для Ubuntu 16.04 ответ будет таким Для Ubunru 18.04: Добавим информацию о репозитории с версией 10.3. Важно: для каждой версии Ubuntu свои репозитории. Для Ubuntu 16.04 по очереди выполняем следующие команды: ```bash sudo apt-get install software-properties-common ``` ```bash sudo apt-key adv —recv-keys —keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 ``` ``` sudo add-apt-repository 'deb [arch=amd64,arm64,i386,ppc64el] http://mirror.timeweb.ru/mariadb/repo/10.3/ubuntu xenial main' ``` Для Ubuntu 18.04: ```bash sudo apt-get install software-properties-common ``` ```bash sudo apt-key adv —recv-keys —keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 ``` ``` sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.timeweb.ru/mariadb/repo/10.3/ubuntu bionic main' ``` Обновим информацию о содержимом репозиториев и выполним установку ```bash sudo apt-get update ``` ```bash sudo apt-get install mariadb-server ``` Независимо от версии Ubuntu, программа установки потребует ввод пароля пользователя root и его подтверждение: ## CentOS Обновляем компоненты системы, а заодно и данные о репозиториях ```bash sudo yum update ``` Добавляем репозиторий для стабильной версии 10.3. Для этого переходим в каталог с файлами репозитория и создадим файл: ``` cd /etc/yum.repos.d/ ``` ``` sudo touch MariaDB.repo ``` Данные с официального сайта добавляем в файл любым редактором: ``` ``` # MariaDB 10.3 CentOS repository list - created 2019-05-07 06:43 UTC # http://downloads.mariadb.org/mariadb/repositories/ name = MariaDB baseurl = http://yum.mariadb.org/10.3/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 ``` ``` Устанавливаем пакет: ```bash sudo yum install MariaDB-server MariaDB-client ``` Программа yum соберет все необходимые данные для установки и будет ожидать действия пользователя Отвечаем на вопрос "y" и нажимаем Enter. Количество устанавливаемых пакетов у вас может быть другим. Команду следует выполнить повторно в случае следующей ошибки: ``` Error downloading packages: MariaDB-compat-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try. MariaDB-client-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try. MariaDB-common-10.3.14-1.el7.centos.x86_64: [Errno 256] No more mirrors to try. ``` После установки следует запустить сервер: ```bash sudo service mysql start ``` ## Настройка Большинство программ устанавливаются с параметрами по умолчанию. Независимо от дистрибутива рекомендуется выполнить оптимизацию параметров безопасности. ``` sudo mysql_secure_installation ``` Да, именно "mysql", потому что проект MariaDB "вытек" из MySQL. В самом начале программа запросит пароль для пользователя root. Если пароль не был установлен, то нажимаем Enter. На большинство вопросов можно ответить "y". Вопросы и перевод к ним приведены ниже: | Change the root password? [Y/n] | Изменить пароль пользователя root? | | --- | --- | | Remove anonymous users? [Y/n] | Удалить анонимных пользователей? | | Disallow root login remotely? [Y/n] | Запретить удаленное подключение от имени root? | | Remove test database and access to it? [Y/n] | Удалить базу данных test и доступ к ней? | | Reload privilege tables now? [Y/n] | Перезагрузить таблицу привилегий сейчас? | ## ## Проверка состояния сервера Иногда может потребоваться проверка состояния работы сервера. Данная операция может быть выполнена командой: ```bash sudo service mysql status ``` ``` ``` Следует обратить внимание, что если сервер не запущен, то его нужно запустить в ручном режиме командой: ```bash sudo service mysql start ``` ## Проверка подключения к СУБД Подключение к СУБД происходит следующей командой: ```bash mysql -u -p ``` Если это первое подключение и другие пользователи не были добавлены, следует подключаться от пользователя root: ```bash mysql -u root -p ``` Затем следует ввести пароль пользователя root, если пароль не был задан, то нажать Enter. Выход из оболочки по команде: ``` exit ``` https://serverspace.by/support/help/configuring-an-ftp-server-in-windows-server-2012.md Пошаговая инструкция по настройке FTP-сервера в ОС Windows Server 2012 R2, настройке защищенной передачи файлов, созданию самоподписанного сертификата. FTP (File Transfer Protocol) — протокол передачи файлов. Применяется для передачи файлов клиентами локальной сети, а также для загрузки данных на локальные и удаленные хранилища. Рассмотрим настройку FTP-сервера из набора IIS от компании Microsoft, создание самоподписанного сертификата, а также настройку защищенной передачи файлов. Операционная система — Windows Server 2012 R2. ## Установим Веб-сервер IIS Запускаем Диспетчер серверов из меню Пуск или кликом по значку на панели задач. Выбираем пункт Добавить роли и компоненты. В новом окне выбираем, слева, Тип установки, затем Установка ролей или компонентов, кликаем по кнопке Далее. Из предложенного пула серверов выбираем необходимый. В нашем случае он один, кликаем Далее. В списке ролей находим Веб-сервер (IIS) и ставим галочку напротив этого пункта. В новом окне Мастер добавления ролей и компонентов просто кликаем по Добавить компоненты. Данное окно обычно появляется при первой установке Веб-сервера (IIS). Кликаем Далее. Слева кликаем по Служба ролей (подпункт Роль Веб-сервера (IIS)). Ставим галку напротив FTP-сервер. При необходимости устанавливаем галку напротив Расширяемость FTP. Кликаем Далее. Проверяем компоненты для установки. При первой установке, рекомендуем установить галку в поле Автоматический перезапуск конечного сервера, если потребуется. Кликаем Установить. Важно! При первой установке Веб-сервера (IIS) будут установлены дополнительные компоненты службы. Ожидаем завершения процесса установки. По окончании кликаем Закрыть. ## Переходим к настройке сервера. 1. Открываем Администрирование. Можно из меню Пуск, но если там отсутствует этот пункт, то Пуск -> Панель управления -> Система и безопасность — > Администрирование 2. Запускаем Диспетчер служб IIS 3. В открывшемся окне, в левой части, разворачиваем ветку под необходимым сервером. Кликаем правой кнопкой мыши по элементу Сайты и выбираем пункт Добавить FTP-сайт 4. В новом окне Добавить FTP-сайт указываем имя и путь до каталога где будут расположены файлы. Кликаем Далее. 5. В обновленном окне указываем на каких IP-адресах будет запущен FTP-сервер (актуально, когда у сервера несколько сетевых интерфейсов либо алиасов), а также указываем порт, который будет прослушивать служба (по умолчанию 21 TCP-порт). Проверяем наличие галочки Запускать сайт FTP автоматически. В настройках SSL указываем Без SSL. Если требуется шифрование, тогда выбираем соответствующий пункт и указываем сертификат. Кликаем Далее. 6. Следующим этапом настраиваем аутентификацию. В разделе Проверка подлинности выбираем Обычный (если требуется анонимное предоставление доступа следует выбрать Анонимный). В разделе Авторизация можно гибко указать доступ для пользователей. В нашем примере разрешим доступ Всем пользователям, кроме анонимных. Разрешаем чтение и запись. Кликаем Готово. 7. В случае успешности, в окне Диспетчера служб IIS добавится строка с именем добавленного FTP-сервера (сайта). Сворачиваем или закрываем это окно. Оно нам более не понадобится. ## Настраиваем брандмауэр. 1. В окне Администрирование открываем Брандмауэр Windows в режиме повышенной безопасности. 2. В открывшемся окне, в левой части, выбираем Правила для входящих подключений. В правой части кликаем по Создать правило 3. В новом окне выбираем Предопределенные. Из выпадающего списка выбираем FTP-сервер. Кликаем Далее. 4. Отмечаем галочками все пункты, кликаем Далее. 5. Следующим шагом выбираем Разрешить подключение, кликаем Готово. Выбранные правила будут добавлены в общий список правил входящих подключений. Для применения настроек брандмауэра следует перезагрузить сервер. Подключиться к серверу можно любым FTP-клиентом указав IP-адрес сервера, имя пользователя и пароль, например FileZilla. Однако, доступность сервера можно проверить и с помощью Internet Explorer. В строке адреса указываем ftp://IP.адрес.нашего.сервера/ (либо доменное имя). Указываем имя пользователя и пароль. ## Настройка защищенного (Secure) FTP. Для защиты трафика рекомендуется использовать SSL-сертификаты. Можно использовать самоподписанные сертификаты либо выданные центром сертификации. Обратите внимание, что при подключении к серверу с самоподписанным сертификатом пользователь будет уведомлен об этом. ### Создадим самоподписанный сертификат. 1. Запускаем Диспетчер служб IIS (см. выше Настройку сервера). 2. В открывшемся окне, в левой части, разворачиваем ветку под необходимым сервером. Выбираем Сертификаты сервера. 3. В новом окне, в правой части, выбираем Создать самозаверенный сертификат. 4. В открывшемся окне указываем имя сертификата и его тип — Личный. Кликаем Ок. Сертификат создан. Теперь перейдем к настройке защищенного FTP. 1. В окне Диспетчер служб IIS, в левой части, разворачиваем ветку под необходимым сервером, выбираем созданный сервер. В основной части окна выбираем Параметры SSL FTP. 2. В обновленном окне, в выпадающем списке, выбираем созданный сертификат, либо выданный центром сертификации, если такой имеется. Выбираем Требовать SSL-соединения. В правой части окна выбираем Применить. Закрываем окно, если необходимо. Для подключения к защищенному FTP-серверу рекомендуем использовать программу WinSCP. Файловый протокол — FTP Шифрование — Явное шифрование TLS/SSL (TLS/SSL Explicit encryption) Имя узла — IP-адрес или доменное имя. Порт — 21, либо который был указан. Имя и пароль пользователя системы. Кликаем Войти (Login) https://serverspace.by/support/help/rdp-sessiya-problemi-s-buferom-obmena.md При проблеме с буфером обмена при RDP-подключении пользователям Windows Server 2008 R2 достаточно перезапустить процесс rdpclip.exe. Для этого запускаем диспетчер задач в RDP-сессии. Достаточно часто пользователи Windows Server 2008 R2 жалуются на проблемы с буфером обмена при RDP-подключении. Подобные ситуации возникают, когда используется несколько активных терминальных сессий. Именно это и является причиной того, что простая операция копирования/вставки перестает работать через RDP-сессию (копируете на своей машине, вставляете на удаленной или наоборот). Подобные сбои могут коснуться только одного соединения, а не всех сразу. В качестве временной меры пользователи вынуждены переподключаться к RDP-серверу выполнив выход из системы (Log off). Проблема этого метода в том, что приходится закрывать все открытые программы и документы, а после подключения — запускать снова, потратив уйму времени. Обычно, проблема копирования/вставки решается, иногда ненадолго. Существует решение этой проблемы — перезапуск процесса rdpclip.exe. Данный процесс отвечает за функционирование буфера обмена в терминальной сессии — Remote Desktop Clipboard. Каждый раз, когда пользователь подключается или переподключается к удаленному рабочему столу, процесс запускается заново. Для перезапуска процесса достаточно запустить Диспетчер задач в RDP-сессии, кликнув правой кнопкой мыши на панели задач и выбрав соответствующий пункт в меню. В открывшемся окне Диспетчера задач, на вкладке Процессы, кликаем правой кнопкой мыши по процессу rdpclip.exe. В контекстном меню выбираем Завершить процесс. В открывшемся окне с запросом на подтверждение выбираем Завершить процесс. Запуск процесса происходит из того же окна Диспетчера задач. Для этого в меню окна кликаем по Файл -> Новая задача (Выполнить.). В новом окне, в поле ввода пишем rdpclip.exe и кликаем по кнопке OK. В Windows Server 2012 процесс называется "Монитор буфера обмена RDP". Однако, запуск файла происходит аналогично рассмотренному выше. Важно помнить, что использование буфера обмена должно быть включено в настройках подключения удаленного доступа. Кликаем по кнопке "Показать параметры". На вкладке "Локальные ресурсы" проверяем наличие галки "Буфер обмена". В параметрах сервера также должно быть разрешено использование буфера обмена. Для этого открываем Пуск -> Администрирование -> Службы удаленных рабочих столов -> Конфигурация узла сеансов удаленных рабочих столов. В новом окне, двойным кликом мыши по имеющимся настройкам подключений, вызываем окно Свойства RDP-Tcp. Важно! Если сервер используется в качестве сервера терминалов, то следует выбирать соответствующий ему пункт подключений. На вкладке Параметры клиента проверяем отсутствие(!) галки напротив пункт "Буфер обмена". https://serverspace.by/support/help/configuring-the-network-interface-in-ubuntu-18-04.md Настройка сетевого интерфейса в Ubuntu 18.04. Хотя всем привычный конфигурационный файл /etc/network/interfaces существует, конфигурирование через ifupdown было заменено на netplan (ifupdown has been replaced). Как настроить сетевой интерфейс в Ubuntu 18.04: - [Осмотрите каталог /etc/netplan.](#stepone) - [Активируйте текущие настройки](#steptwo) - [Если система не использует netplan, получите список доступных интерфейсов](#stepthree) - [Настройте второй и последующий интерфейс аналогично, применив настройки](#stepfour) - [Если сервер не изменяет IP-адрес, перезапустите его](#stepfive) Конфигурирование сетевого интерфейса в Ubuntu 18.04 для многих стало сюрпризом. Хотя всем привычный конфигурационный файл /etc/network/interfaces существует, в нем сказано: Перевод. Конфигурирование через ifupdown было заменено на netplan. настройка через /etc/netplan. Хотите вернуться к ifupdown установите его командой: ```bash sudo apt install ifupdown ``` Устанавливать что-то иное не будем. Настроим то что есть. Для начала смотрим содержимое каталога /etc/netplan. Посмотрим что в этом файле. Конфигурационный файл пишется на языке YAML. Приведенные, в примере выше, настройки были сделаны еще на этапе установки операционной системы. Разберемся подробнее. - network — начало блока конфигурации сети; - ethernets — данный параметр сообщает, что далее пойдет настройка одноименного протокола; - enp0s3 — название конфигурируемого сетевого интерфейса. Вероятно, что в вашем случае название будет иным. Список всех интерфейсов можно посмотреть командой ifconfig -a; - addresses — блок IP-адресов назначаемых интерфейсу с префиксом сети. Один ip-адрес указывается как в примере, несколько адресов указываются в квадратных скобках "[ и ]", разделяются запятыми; - gateway4 — сетевой шлюз IPv4; - nameservers — блок настройки серверов имен. - addresses — именно в блоке nameservers, указывают к каким серверам DNS обращаться. Указываются без сетевого префикса. Несколько адресов указываются в квадратных скобках "[ и ]", разделяются запятыми. - version — версия языка YAML. Активируем текущие настройки командой: ``` netplan apply ``` Мы рассмотрели основные опции. Больше примеров настройки — [на официальном сайте](https://netplan.io/). Как быть, если система не использует netplan? Тут по старинке. Сначала получаем список доступных интерфейсов: ``` ifconfig -a ``` ``` ``` В данном случае имеется 2 сетевых интерфейса без IP-адресов (пока). Настраиваются средствами DHCP. Перейдем к настройкам. ``` sudo nano /etc/network/interfaces ``` ``` ``` Сервер, получающий IP от DHCP-сервера не очень хорошее решение. Приводим файл к виду: Что это означает. - auto enp0s3 — автоматический запуск конкретного интерфейса; - iface enp0s3 inet static — сообщает о статическом конфигурировании; - address 10.10.2.6 — собственно, сам IPv4-адрес для данного интерфейса; - netmask 255.255.255.0 — сетевая маска - gateway 10.10.2.1 — IPv4-шлюз - dns-nameservers 8.8.8.8 — указываем DNS-серверы [step num=»8″]Настройка второго и последующих интерфейсов выполняется аналогично, либо конфигурируется с помощью DHCP-сервера. Применяем настройки: ``` sudo /etc/init.d/networking restart ``` ``` ``` Если все выполнено правильно, то дожидаемся процесса перезапуска службы. Важно. Бывает ситуация, что файл настроек верный, но сервер не изменяет IP-адрес. В этом случае помогает перезапуск сервера командой: ``` sudo reboot ``` https://serverspace.by/support/help/ispolzovanie-platformy-salt.md В статье описаны основные понятия платформы Salt, примеры конфигурации и использования. Что такое Salt? Удаленное выполнение команд. Salt state, формулы и Top-файл. Функция Pillar. Шаблоны Jinja. В статье описаны основные понятия платформы Salt, примеры конфигурации и использования с комментариями. ## Что это такое? Salt — это платформа с открытым исходным кодом для управления инфраструктурой, построена на динамической коммуникационной шине. Salt может использоваться для управления конфигурацией для любого набора систем или приложений, для управления данными, для удаленного запуска команд и т.д. О там как установить и настроить взаимодействие Salt Master и Salt Minions на серверах под управлением операционной системы Ubuntu 18.04 вы можете прочитать в [нашей инструкции](https://serverspace.by/support/help/nastrojka-salt-master-minions-na-ubuntu/). ## Masters и Minions **Salt Master (Мастер)** — это сервер, который выступает в качестве центра управления для своих миньонов, именно от Master отправляются запросы на удаленное выполнение команд. Например, эта команда сообщает текущее использование диска каждым из миньонов, которыми управляет мастер: ``` salt '*' disk.usage ``` Таких команд большое множество. Например, вы можете установить NGINX на миньона с именем webserver1: ``` salt 'webserver1' pkg.install nginx ``` **Salt Minions (Ноды, Миньоны)** — это ваши серверы под управлением мастера, именно на них запускаются приложения и сервисы. Каждому миньону присваивается идентификатор, а мастер может ссылаться на этот идентификатор для назначения команд конкретным миньонам. Связь между мастером и миньонами осуществляется по транспортному протоколу [ZeroMQ](https://en.wikipedia.org/wiki/ZeroMQ), канал зашифрован парой открытого и закрытого ключей. Пара ключей генерируется миньоном, после чего он отправляет свой открытый ключ мастеру. ## Удаленное выполнение Salt предлагает очень широкий спектр модулей для удаленного выполнения команд. Модуль выполнения — это набор связанных функций, которые вы можете запускать на миньонах по команде от мастера. Например: ``` salt 'webserver1' npm.install gulp ``` В этой команде npm — это модуль, а install — это функция. Эта команда устанавливает пакет Gulp Node.js через диспетчер пакетов Node (NPM). Доступные модули выполнения представляют собой удобные решения для системного администрирования: - создание и управление пользователями системы - установка и удаление программного обеспечения - редактирование или создание файлов конфигурации Функция cmd.run используется для запуска произвольных команд на управляемых миньонах: ``` salt '*' cmd.run 'ls -l /etc' ``` Эта команда выведет содержимое каталога /etc для каждого миньона. ## Состояния, формулы и Top-файл Salt предлагает еще один способ управления нодой, с помощью которого необходимо описать состояние, в котором миньон должен находиться. Этот вид конфигурации называется Salt state (состояние), а методология обычно называется управлением конфигурацией. Состояния определяются в файлах состояний. После того, как состояния миньонов описаны, они применяются к миньону. ### Описание состояния Ниже приведен пример файла состояния /srv/salt/webserver_setup.sls, который гарантирует, что установлены следующие компоненты: rsync, curl, NGINX, и при этом NGINX запускается и включается при загрузке ОС: ```bash network_utilities: pkg.installed: - pkgs: - rsync - curl nginx_pkg: pkg.installed: - name: nginx nginx_service: service.running: - name: nginx - enable: True - require: - pkg: nginx_pkg ``` Файлы состояний заканчиваются расширением .sls (SaLt State). Файлы состояний могут иметь одно или несколько описаний состояния, которые являются разделами верхнего уровня (network_utilities, nginx_pkg и nginx_service в приведенном выше примере). Идентификаторы описаний являются произвольными, поэтому вы можете называть их по своему усмотрению. Описания состояний содержат модули состояний. Модули состояний отличаются от модулей выполнения, но часто выполняют аналогичные задания. Например, существует модуль состояния pkg с функциями, аналогичными модулю выполнения pkg, как с функцией состояния pkg.installed и функцией выполнения pkg.install. Файлы состояний — это просто наборы словарей, списков, строк и чисел, которые затем интерпретирует Salt. По умолчанию Salt использует синтаксис YAML для представления состояний. Файлы состояний обычно хранятся в файловой системе мастера Salt, но они также могут храниться в других местах файлового сервера, например, в репозитории Git. ### Применение состояния к Миньону Чтобы применить состояние к миньону, используйте функцию state.apply от имени мастера: ``` salt `webserver1` state.apply webserver_setup ``` Эта команда применяет пример состояния webserver_setup.sls к миньону с именем webserver1. При применении состояния суффикс .sls не упоминается. Применяются все описания состояния из файла состояния. ### Формулы Формулы — это просто наборы состояний, которые вместе настраивают компонент приложения или системы на миньоне. Формулы обычно организованы с помощью нескольких различных файлов .sls. Разделение состояний формулы по разным файлам может упростить организацию вашей работы. Объявления состояний могут включать и ссылаться на объявления в других файлах. ### Top-файл В дополнение к ручному применению состояний к миньонам, Salt предоставляет возможность автоматически отобразить, какие состояния должны применяться к различным миньонам. Это называется Top-файлом. Простой пример файла /srv/salt/top.sls: ``` base: '*': - universal_setup 'webserver1': - webserver_setup ``` base это среда окружения. Вы можете указать более одной среды, соответствующей различным этапам вашей работы; например: разработка, QA, производство. В приведенном выше примере сказано, что состояние universal_setup должно применяться ко всем миньонам (‘*’), а состояние webserver_setup должно применяться только к миньону webserver1. Если вы запустите функцию state.apply без аргументов, Salt проверит Top-файл и применит все состояния в нем в соответствии с созданным отображением: ``` salt '*' state.apply ``` ## Хранение Data (данных) и Secrets (секретов) В платформе Salt есть функция Pillar, которая берет определенные данные в мастере и распространяет их среди миньонов. Основное использование Pillar — хранение секретов, таких как учетные данные. Pillar также является удобным местом для хранения несекретных данных, которые вы не хотите записывать непосредственно в файлы состояния. Допустим, вы хотите создать системных пользователей для миньонов и назначить разные оболочки для каждого из них. Можно закодировать эту информацию в файл состояния, но для этого потребуется новое объявление для каждого пользователя. Если вы вместо этого сохраняете данные в Pillar, можно просто создать одно объявление состояния и вставить в него данные. Такие данные хранятся в файлах .sls, например файла /srv/pillar/user_info.sls: ```yaml users: joe: shell: /bin/zsh amy: shell: /bin/bash sam shell: /bin/fish ``` Как и в случае с файлами состояний, Top-файл (отдельно от Yop-файла состояний) отображает данные Pillar в миньоны, например /srv/pillar/top.sls: ``` base: 'webserver1': - user_info ``` ## Шаблоны Jinja Для использования данных Pillar в файлах состоянии, используют [шаблоны Jinja](https://docs.saltstack.com/en/latest/topics/jinja/index.html). Ниже приведен пример файла состояния /srv/salt/user_setup.sls, в котором используются данные Pillar из предыдущей секции для создания пользователей системы и установки оболочки: ``` {% for user_name, user_info in pillar['users'].iteritems() %} {{ user_name }}: user.present: — shell: {{ user_info['shell'] }} {% endfor %} ``` Salt скомпилирует файл состояния в подобный файл прежде чем применить его к миньону: ```yaml joe: user.present: - shell: /bin/zsh amy: user.present: - shell: /bin/bash sam: user.present: - shell: /bin/fish ``` В следующем примере файл состояния /srv/salt/webserver_setup.sls установит Apache и настроит имя для пакета в соответствии с операционной системой: ``` install_apache: pkg.installed: {% if grains['os'] == 'CentOS' %} - name: httpd {% else %} - name: apache {% endif %} ``` Дополнительную информацию можно найти в [официальной документации продукта](https://docs.saltstack.com/en/latest/). https://serverspace.by/support/help/installssliis.md Пошаговая инструкция процесса установки и настройки SSL-сертификата на веб-сервер IIS 8, доступный на VPS Windows, с помощью которого вы можете размещать сайты в сети Интернет, работать с большим стеком протоколов, создать собственный файл-сервер. ## Что это такое? IIS 8 — встроенный веб-сервер доступный на [VPS Windows](https://serverspace.by/services/virtual-server-vds/windows/), с помощью которого вы можете располагать сайты в сети Интернет, работать с большим стеком протоколов, создать собственный файл-сервер и использовать многие другие возможности продукта. Управление возможно как из приложения рабочего стола — для новичков, так и из консоли — для опытных системных администраторов. Установка данного свидетельства на сервер позволит защитить ваши данные и повысит уровень доверия клиентов. В нашей инструкции мы подробно рассмотрим этот процесс. ## Работа с панелью управления После заказа [SSL-сертификата](https://serverspace.by/services/ssl/) через панель управления Serverspace, необходимо установить полученные сертификаты **.CRT** и **.CA** на сервер. После успешного заказа SSL-сертификата файлы для его установки появятся в панели управления Serverspace (меню **SSL**): Скриншот №1. Панель управления Serverspace ## Установка сертификата Центра Сертификации (.CA) на IIS 8 Откройте **командную строку (Win+R)** и наберите в ней **mmc** для открытия **Корня консоли (Microsoft Management Console)**. В открывшемся окне **Консоль1 (Console1)**, откройте меню **Файл (File) **и выберите пункт **Добавить или удалить оснастку (Add/Remove Snap-in)**: Скриншот №2. Добавить или удалить оснастку Скриншот №3. Консоль1 В левой части открывшегося окна выберите пункт **Сертификаты (Certificates)** и нажмите кнопку **Добавить (Add)** по центру экрана: Скриншот №4. Добавить сертификат В открывшейся **Оснастке диспетчера сертификатов (Certificates Snap-in)** выберите пункт **Учетной записи компьютера (Computer Account)**. Во вкладке **Выбор компьютера (Select Computer) **выберите **Локальный компьютер (Local Computer)** и нажмите **Готово (Finish)**. Закройте оснастку **Add or Remove Snap-in** нажатием кнопки ОК. В той же **Консоли 1 (Console 1)** выберите пункт **Промежуточные центры сертификации (Intermediate Certification Authorities)**, кликните на него правой кнопкой мыши — **Все задачи (All tasks) — Импорт (Import)**: Скриншот №5. Импорт сертификата В открывшемся окне нажмите **Далее (Next)**. Выберите загруженный из панели управления Serverpsace файл **.CA-сертификата** и нажмите **Открыть (Open)**: Скриншот №6. Открыть .CA-сертификат В следующей вкладке выберите **Поместить все сертификаты в следующее хранилище (Place all certificates in the following store)**, нажмите **Обзор (Browse)** и выберите директорию **Промежуточные центры сертификации (Intermediate Certification Authorities)**. Нажмите **OK** и завершите Мастер импорта сертификатов. Закройте **Консоль 1 (Console 1)**, ответив **Нет** на запрос о сохранении изменений: Скриншот №7. Закрыть консоль без сохранения ## Установка SSL-сертификата сайта (.CRT) на IIS 8 Запустите **Диспетчер Серверов (Server Manager)**. В меню **Средства (Tools) **выберите **Диспетчер служб IIS (Internet Information Services Manager).** В меню **Подключения (Connections)** в левой части открывшегося окна выберите сервер, для которого вы ранее генерировали CSR-запрос на подпись сертификата. Примечание: CSR — Code Signing Request, запрос на выдачу SSL-сертификата. В центральной части окна откройте меню **Сертификаты Сервера (Server Certificates)**. Для файла .CRT выполните следующие действия: В панели **Действия (Actions)** в правой части окна выберите пункт **Запрос установки сертификатов (Complete Certificate Request)**: Скриншот №8. Запрос установки сертификатов В открывшемся окне заполните поля: Примечание: Для сертификатов Wildcard (сертификата для домена и его поддоменов) укажите имя, соответствующее значению **Common Name**, из SSL-сертификата. (напр., *.mydomain.com). - **Имя файла**, содержащего ответ центра сертификации (File name containing the certificate authority’s response): выберите расположение полученного от центра сертификации файла SSL-сертификата (.crt) и нажмите **Открыть (Open).** - В поле **Понятное имя (Friendly Name)** введите уникальное значение имени SSL-сертификата. - Выбрать хранилище сертификатов для нового сертификата (Select a certificate store for the new certificate): выберите **Личный (Personal)**: Скриншот №9. Выбор хранилища сертификатов Для сертификата .PFX выполните следующие действия: В панели **Действия (Actions)** в правой части найдите пункт **Импортировать (Import)**. В открывшемся окне введите путь до сертификата и пароль защищающий ваш сертификат из панели управления, выберете хранилище: Скриншот №10. Ввод пароля Скриншот №11. Выбор хранилища Действия для файлов .CRT и .PFX: В меню **Подключения (Connections)** в левой части окна Диспетчера IIS выберите сервер, для которого только что установили SSL-сертификат. Раскройте список сайтов на сервере и выберите сайт, который вы хотите защитить с помощью SSL-сертификата (эта процедура называется Привязка (Binding)). В панели **Действия (Actions)** в правой части окна выберите **Привязки (Bindings)**: Скриншот №12. Выбор сайта В открывшемся окне нажмите **Добавить (Add)**, и заполните необходимые поля: Скриншот №13. Настройки Примечение: для привязки Wildcard сертификата необходимо отдельно привязать каждый поддомен (напр., www.mydomain.com, subdomain.mydomain.com) - **Тип (Type):** https; - **IP-адрес (IP address):** все неназначенные или IP адрес сервера, на котором расположен веб-сайт; - **Имя узла (Hostname):** укажите доменное имя, для которого выпущен сертификат (напр., www.mydomain.com); - **Порт (Port):** 443; - **SSL-сертификат (SSL certificate):** выберите загруженный из панели Serverspace файл **.CRT-сертификата**. В панели **Управление веб-сайтом (Manage Web-Site)** в правой части окна Диспетчера IIS нажмите **Перезапустить (Restart)** для завершения процесса установки сертификата. На этом процедура установки SSL-сертификата на веб-сервер IIS 8 завершена. Для проверки корректности установки перейдите на ваш веб-сайт, используя префикс **https://** (напр., https://mydomain.com). Если сертификат установлен правильно, вы увидите замок в адресной строке браузера без отображения ошибок SSL-сертификата. При нажатии на иконку замка будет отображена информация о приобретенном вами SSL-сертификате. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/installsslbitrix.md Инструкция по установке SSL-сертификата в системе управления интернет-проектами 1С-Битрикс. Генерация CSR-кода, заказ SSL-сертификата, установка на сервер 1С-Битрикс. Для установки SSL-сертификата вашего веб-сайта в CMS 1C-Битрикс необходимо сперва сгенерировать CSR-запрос и заказать SSL-сертификат через панель управления Serverspace. И затем необходимо установить полученные сертификаты **.CRT** и **.CA** на сервер 1C-Битрикс. После получения SSL-сертификата файлы для его установки появятся в панели управления Serverspace (пункт меню SSL): **.CA** — файл цепочки сертификатов Центра Сертификации (Certificate Authority). **.CRT** — файл сертификата для вашего сайта (сайтов). ## Загрузка необходимых файлов на веб-сервер Прежде всего, необходимо загрузить представленные в панели управления файлы **.ca** и **.crt** на веб-сервер **1С-Битрикс**. Самый простой способ — загрузить эти файлы на другой компьютер, а затем перенести их на сервер одним из приведенных ниже способов. **_Примечание_**_: подразумевается, что необходимая для работы пара** закрытый/открытый ключ** была сгенерирована на том же веб-сервере 1С-Битрикс, на который вы будете переносить приобретенный сертификат. Если вы создавали ключи на другой машине, вам необходимо также **перенести файл закрытого ключа .key** на ваш веб-сервер по аналогии с описанной ниже процедурой копирования файлов сертификатов._ ### Перенос сертификатов с компьютера Linux/Mac OS: Самый простой способ загрузки сертификатов на сервер — опция [SCP](https://ru.wikipedia.org/wiki/SCP), встроенная в возможность терминала вашего компьютера: - Загрузите файлы **.CA** и **.CRT** из панели управления на локальный компьютер. - Откройте терминал и перейдите в папку, в которую вы сохранили сертификаты (напр., Downloads): ``` cd ~/Downloads ``` Скопируйте **сертификаты вашего сайта и Центра Сертификации** на веб-сервер: ```bash scp crt.crt ca.crt user@1.22.33.444:/etc/ssl ``` **Где:** **scp** — команда копирования файлов **mydomain.ru_crt.crt** — имя загруженного из панели файла сертификата вашего веб-сайта **mydomain.ru_ca.crt** — имя загруженного из панели файла сертификата Центра Авторизации **user** — имя вашего пользователя для подключения к серверу через ssh (часто используется root) **1.22.33.444** — IP-адрес вашего веб-сервера **/etc/ssl** — директория на удаленном сервере, в которую в хотите сохранить загружаемые файлы. ### Перенос сертификатов с компьютера Windows: - Установите программу **WinSCP**. Скачать ее можно [здесь](https://winscp.net/download/WinSCP-5.9.1-Setup.exe). - Запустите WinSCP. В открывшемся окне введите данные, которые вы используете для подключени я к вашему серверу по SSH. В левой части окна программы отображаются файлы на локальном компьютере, в правой — на подключенном удаленном сервере. Выберите или создайте директорию, в которую вы хотите сохранить сертификаты, в правой части окна. Перетащите файлы **.CA** и **.CRT** в эту директорию из левой части окна. **_Примечение: _**_для удобства в дальнейшем рекомендуем перенести файл закрытого ключа **(.key) **в ту же директорию, в которую вы скопировали файлы сертификатов. Вы можете не делать этого, но таком случае запомните путь до этого файла и в дальнейшем укажите его в файле конфигурации Apache вместо пути, приведеленного в нашем примере._ _Если закрытый ключ **.key** был сгенерирован непосредственно на сервере, то для его копирования в другую директорию вы можете использовать команду: ``` cp /home/root/private.key /etc/ssl/private.key ``` **Где:** **cp** — команда копирования **/home/root/ **— путь до файла ключа **private.key** — имя файла ключа **/etc/ssl/private.key** — путь, по которому необходимо скопировать файл ключа_ _Удалить файл ключа из старого расположения вы можете с помощью команды: ``` rm /home/root/private.key ``` (синтаксис команды аналогичен предыдущему примеру)_ ## Настройка сервера 1C-Битрикс на использование SSL-сертификата После копирования файлов сертификата сайта и Центра Сертификации необходимо **отредактировать параметры вашего сервера 1С-Битрикс**. Для этого подключитесь к вашему серверу по SSH от имени пользователя **root** и выполните следующие операции: - После подключения к серверу отобразится **консоль 1С-Битрикс с доступными действиями (Available Actions)**. Сейчас нам нужна не она, а непосредственно **командная строка CentOS**. Нажмите **0** для перехода в нее. - Объедените загруженные на сервер ранее файлы сертификата Центра Сертификации **(.CA)** и сертификата вашего веб-сайта **(.CRT) **в один документ: ``` cat /etc/ssl/mydomain.ru_crt.crt /etc/ssl/mydomain.ru_ca.crt >> mydomain.crt ``` - Откройте файл конфигурации **ssl.conf:** ``` nano /etc/nginx/bx/conf/ssl.conf ``` _**Примечание: **если редактор **nano **не установлен на вашем сервере, вы можете установить его с помощью команды **yum install nano**_ - В открытом файле отредактируйте пути до загруженных ранее файлов сертификатов: ``` ssl_certificate /etc/ssl/mydomain.crt; ssl_certificate_key /etc/ssl/private.key; ``` **Где:** **/etc/ssl/mydomain.crt **— путь до файла сертификатов вашего сайта и центра сертификации **/etc/ssl/private.key **— путь к файлу вашего закрытого ключа**_Пример файла ssl.conf:_**_ ``` # If they come here using HTTP, bounce them to the correct scheme # Nginx internal code used for the plain HTTP requests # that are sent to HTTPS port to distinguish it from 4XX in a log and an error page redirection. error_page 497 https://$host$request_uri; ``` _# Increase keepalive connection lifetime keepalive_timeout 70; keepalive_requests 150;# SSL encryption parameters ssl on; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ‘ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESG$ ssl_prefer_server_ciphers on;ssl_certificate /etc/ssl/mydomain.crt; ssl_certificate_key /etc/ssl/private.key;# performance ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; - Теперь нужно активировать опцию **SSL **в консоли управления **1C-Битрикс**. Для этого отключитесь от сервера, а затем повторно подключитесь к нему по SSH. В открывшейся консоли **Available Actions **вводим **6 (Manage sites in the pool)**, а затем **5 (Change https settings on sites).** Если на вашем сервере Битрикс установлен только один веб-сайт, можно просто нажать** Enter** в ответ на запрос имени сайта** (Enter site name). **Если же сайтов несколько, введите название веб-сайта, для которого вы устанавливаете SSL-сертификат и нажмите** Enter. **В ответ вам будет предложено отключить доступ по** HTTP **(незащищенному протоколу) для данного сайта**. **Если вы хотите сохранить такой доступ, нажмите** n. **Если вы хотите, чтобы сайт теперь был доступен только по защищенному протоколу** https, **нажмите** Y.** - Перезагрузите сервер: ``` reboot ``` ## Проверка настроек На этом процедура установки SSL-сертификата на CMS **1С-Битрикс** завершена. Для проверки корректности настроек откройте откройте ваш-веб сайт в браузере по протоколу **https (например, https://mydomain.ru)**. Если сертификат установлен корректно, в адресной строке вашего браузера вы увидите иконку замка, при клике на которую будет отображена информация о приобретенном вами SSL-сертификате. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/installsslapache.md Установка SSL-сертификата на веб-сервер Apache под управлением ОС Linux: Ubuntu, Debian, CentOS. Загрузка файлов на сервер, изменение конфигурации Apache. После генерации CSR-запроса и заказа SSL-сертификата через панель управления необходимо установить полученные сертификаты **.CRT** и **.CA** на сервер. Эта пошаговая инструкция поможет вам установить приобретенный SSL-сертификат на веб-сервер **Apache** под управлением **[Linux](https://serverspace.by/services/virtual-server-vds/linux/): Ubuntu, Debian** или **CentOS**. После получения SSL-сертификата файлы для его установки появятся в панели управления (меню SSL): **.CA** — файл цепочки сертификатов Центра Сертификации (Certificate Authority). **.CRT** — файл сертификата для вашего сайта (сайтов). ## Загрузка необходимых файлов на веб-сервер Прежде всего, необходимо загрузить представленные в панели файлы **.ca** и **.crt** на веб-сервер. Если ваш сервер не имеет графического окружения рабочего стола, вы можете загрузить эти файлы на другой компьютер, а затем перенести их одним из приведенных ниже способов. **_Примечание_**_: подразумевается, что необходимая для работы пара** закрытый/открытый ключ** была сгенерирована на том же веб-сервере, на который вы будете переносить приобретенный сертификат. Если вы создавали ключи на другой машине, вам необходимо также **перенести файл закрытого ключа .key** на ваш веб-сервер по аналогии с описанной ниже процедурой копирования файлов сертификатов._ ### Перенос сертификатов с компьютера Linux/Mac OS: Самый простой способ загрузки сертификатов на сервер — опция [SCP](https://ru.wikipedia.org/wiki/SCP), встроенная в возможность терминала вашего компьютера: - Загрузите файлы **.CA** и **.CRT** из панели управления на локальный компьютер. - Откройте терминал и перейдите в папку, в которую вы сохранили сертификаты (напр., Downloads): ``` cd ~/Downloads ``` Скопируйте **сертификаты вашего сайта и Центра Сертификации** на веб-сервер: ```bash scp crt.crt ca.crt user@1.22.33.444:/etc/ssl ``` **Где:** **scp** — команда копирования файлов **mydomain.ru_crt.crt** — имя загруженного из панели файла сертификата вашего веб-сайта **mydomain.ru_ca.crt** — имя загруженного из панели файла сертификата Центра Авторизации **user** — имя вашего пользователя для подключения к серверу через ssh (часто используется root) **1.22.33.444** — IP-адрес вашего веб-сервера **/etc/ssl** — директория на удаленном сервере, в которую в хотите сохранить загружаемые файлы. ### Перенос сертификатов с компьютера Windows: - Установите программу **WinSCP**. Скачать ее можно [здесь](https://winscp.net/download/WinSCP-5.9.1-Setup.exe). - Запустите WinSCP. В открывшемся окне введите данные, которые вы используете для подключения к вашему серверу по SSH. В левой части окна программы отображаются файлы на локальном компьютере, в правой — на подключенном удаленном сервере. Выберите или создайте директорию, в которую вы хотите сохранить сертификаты, в правой части окна. Перетащите файлы **.CA** и **.CRT** в эту директорию из левой части окна. **_Примечение: _**_для удобства в дальнейшем рекомендуем перенести файл закрытого ключа **(.key) **в ту же директорию, в которую вы скопировали файлы сертификатов. Вы можете не делать этого, но таком случае запомните путь до этого файла и в дальнейшем укажите его в файле конфигурации Apache вместо пути, приведеленного в нашем примере._ _Если закрытый ключ **.key** был сгенерирован непосредственно на сервере, то для его копирования в другую директорию вы можете использовать команду:_ ``` cp /home/root/private.key /etc/ssl/private.key ``` _**Где:** **cp** — команда копирования **/home/root/ **— путь до файла ключа **private.key** — имя файла ключа **/etc/ssl/private.key** — путь, по которому необходимо скопировать файл ключа_ _Удалить файл ключа из старого расположения вы можете с помощью команды:_ ``` rm /home/root/private.key ``` _(синтаксис команды аналогичен предыдущему примеру)_ ## Настройка веб-сервера Apache на использование SSL-сертификата После копирования файлов сертификата сайта и Центра Сертификации необходимо **отредактировать параметры вашего веб-сервера Apache**. Для этого подключитесь к вашему серверу по [SSH](https://serverspace.by/support/help/kak_podkljuchitsja_k_linux_serveru/) от имени пользователя **root** и выполните следующие операции: - Активируйте использование опции **SSL **веб-сервером Apache: **Ubuntu/Debian:** ``` a2enmod ssl ``` **CentOS:** ```bash yum install mod_ssl ``` - Откройте файл конфигурации сайта, для которого вы хотите установить SSL-сертификат. Например, если параметры веб-сайта хранятся в файле **/etc/apache2/sites-enabled/000-default.conf**: ``` nano /etc/apache2/sites-enabled/000-default.conf ``` _**Примечание: **На **Ubuntu/Debian** файлы параметров сайтов Apache как правило находятся в директории **/etc/apache2/sites-enabled/ .** На **CentOS **стандартное расположение — **/etc/httpd/conf.d/** Для поиска нужной конфигурации вы можете использовать команду **ls /директория/конфигураций (напр. ls /etc/apache2/sites-enabled)**, которая отображает полный список файлов в указанной директории. Затем с помощью команды **nano **вы можете открыть определенный файл (напр. **nano /etc/apache2/sites-enabled/000-default.conf**). Проверить, что открытый файл действительно является конфигурацией вашего сайта можно, найдя в нем строку **ServerName**. Ее значение должно соответствовать домену, для которого вы устанавливаете SSL-сертификат (напр. **www.mydomain.ru) Примечание для CentOS: **если редактор **nano **не установлен на вашем сервере, вы можете установить его с помощью команды **yum install 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 (порт 443)**, отредактируйте файл его конфигурации по аналогии с приведенным ниже **Примером 1. **Если же вы хотите, чтобы сайт также оставался по-прежнему доступен по незащищенному протоколу **http (порт 80)**, воспользуйтесь **Примером 2. Вносимые изменения выделены жирным шрифтом.**_Пример 1 (только HTTPS):__ ```xml **** # 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 ** SSLEngine on SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key** ``` __ **Пример 2 (HTTPS + HTTP):** __ ```xml **** # 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 ** SSLEngine on SSLCertificateFile /etc/ssl/mydomain.ru_crt.crt SSLCertificateChainFile /etc/ssl/mydomain.ru_ca.crt SSLCertificateKeyFile /etc/ssl/mydomain.ru_key.key** # 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 ``` _ - Перезапустите сервис **apache**: **Ubuntu/Debian:** ``` /etc/init.d/apache2 restart ``` **CentOS:** ``` apachectl restart ``` - Если на вашем сервере настроен файрвола **iptables, **вам необходимо разрешить входящие подключения по протоколу **https (порт 443) **для вашего файрвола. Для этого воспользуйтесь документацией к вашей ОС, т.к. в разных дистрибутивах Linux работа с iptables осуществляется по разному. Ниже приведено несколько примеров: **Ubuntu 16.04:** ``` ufw allow 443/tcp ``` **Debian:** ``` iptables -A INPUT -p tcp -m state —state NEW -m tcp —dport 443 -j ACCEPT ``` **CentOS:** ``` iptables -A INPUT -p tcp -m tcp —dport 443 -j ACCEPT ``` ## Проверка настроек На этом процедура установки SSL-сертификата на веб-сервер Apache завершена. Для проверки корректности настроек откройте откройте ваш-веб сайт в браузере по протоколу **HTTPS (например, https://mydomain.ru)**. Если сертификат установлен корректно, в адресной строке вашего браузера вы увидите иконку замка, при клике на которую будет отображена информация о приобретенном вами SSL-сертификате. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/firewall-nastrojka-seti.md Инструкция по настройке правил Firewall для сетей виртуальных серверов в панели управления. Инструкция по настройке правил Firewall для сетей виртуальных серверов в панели управления. ### Что это такое? С помощью межсетевого экрана прямо из панели управления можно управлять доступом к публичной сети серверов, входящими и исходящими пакетами данных. Данная опция отдельно не тарифицируется и входит в стоимость сети. На данный момент существует ограничение в 50 правил, если вам будет недостаточно этого лимита, то увеличить его можно по [запросу в техническую поддержку](https://panel.serverspace.by/support). ### Сетевая архитектура Для избежания конфликта правил межсетевого экрана и его правильной настройки необходимо понимать порядок действия существующих брандмауэров. Во-первых, вы можете настроить брандмауэр для частной сети. Во-вторых, для сервера через панель управления. В-третьих, вы можете настроить внутренний брандмауэр, например, для Linux через iptables, для Windows — встроенный. Для входящих пакетов первым будет применяться брандмауэр на уровне сети (при наличии). Если пакет прошел, дальше будет применяться фаерволл на уровне сервера, в последнюю очередь будет использоваться внутренний программный механизм. Для исходящих пакетов будет применена обратная последовательность действий: ### Создание правила Конфигурация брандмауэра доступна для сетей и находится в настройках сети в разделе Firewall. _Важно: — порядок правил имеет значение, чем меньше порядковый номер правила (чем выше он в списке), тем выше его приоритет. Изменять последовательность правил можно с помощью Drag and Drop, перетащив правило левой кнопкой мыши на нужную позицию; — в состоянии выключен — все пакеты данных, как входящие, так и исходящие проходят через маршрутизатор;_ Пакеты не попадающие ни под одно правило можно разрешить или запретить, по умолчанию они разрешены. Для создания правила нажмите кнопку **Добавить**: Перед вами откроется окно добавления правила. Необходимо заполнить следующие поля: - **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. Для создания правила нажмите **Сохранить.** В нашем примере правило блокирует входящие в сеть пакеты по протоколу Tcp на диапазон адресов 111.111.111.102-111.111.111.104: Чтобы созданное правило вступило в силу необходимо сохранить изменения с помощью кнопки **Сохранить**. Вы можете создать несколько правил и затем сохранить все разом: После этого страница будет выглядеть следующим образом: ### Пример настройки приоритета правил Чем меньше порядковый номер правила (чем выше оно в списке), тем выше его приоритет. **Например**, после того как было создано запрещающее правило для входящих Tcp пакетов на определенный диапазон адресов, создадим правило разрешающее получать входящие пакеты по 443 порту протокола Tcp с исходящего 443 порта. После сохранения изменений при такой конфигурации данный порт все также будет недоступен, в связи с тем, что запрещающее правило имеет более высокий приоритет: Для изменения приоритета правил перетащите с помощью левой кнопки мыши разрешающее правило на первое место и сохраните изменения: После сохранение порядковые номера правил изменятся, а также изменится их приоритет: Теперь конфигурация брандмауэра позволяет пропускать в сеть на определенный диапазон адресов пакеты по протоколу Tcp по 443 порту, остальные пакеты Tcp проходить не будут, а все остальные не попадающие под правила пакеты будут проходить в сеть. https://serverspace.by/support/help/sozdanie-marshruteziruemoi-seti.md В инструкции описано создание маршрутизируемой (routed) сети в панели управления Данная инструкция предназначена для создания и настройки **маршрутизируемой сети** в панели управления. Что означает маршрутизируемая сеть? Под маршрутизируемой сетью понимается такая частная сеть, к которой уже подключен маршрутизатор с публичным интерфейсом. В такой сети Все виртуальные серверы имеют доступ к Интернету через маршрутизатор и имеют возможность принимать входящие подключения с помощью NAT (Network Address Translation) Из чего состоит** стоимость** такой сети? Стоимость маршрутизируемой сети складывается из двух элементов: 1)одного внешнего IP-адреса маршрутизатора 2)ширины канала связи. ### Как создать маршрутизируемую сеть? Для создания сети в личном кабинете выберете раздел **Сети** и нажмите на кнопку **Добавить сеть**. 1)В качестве типа выберете **Маршрутизируемая.** 2)Выберете ЦОД (Центр обработки данных) в котором будет создана сеть. **Параметры сети** 1) Использовать протокол DHCP. С помощью Данного протокола осуществляется автоматическая настройка сети. 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. 4) Укажите название своей сети 5) Нажмите кнопку «Создать сеть» Чтобы подключить сервер к сети необходимо перевести тумблер «Подключить»в активное состояние и нажать **Сохранить**. Возможно подключить только серверы расположенные в ЦОДе, в котором эта сеть находится. При подключении к сети на ваш виртуальный сервер будет добавлен еще один сетевой адаптер, который необходимо настроить на уровне операционной системы. Во вкладке **Firewall **можно настроить правило для сети. Подробная [инструкции](https://serverspace.by/support/help/firewall-nastrojka-seti/) доступна на нашем сайте.. Во вкладке **VPN-туннелирование** описано правило создания VPN-туннелей. Подробно можно прочитать также на нашем сайте [здесь](https://serverspace.by/support/help/nastroika-vpn-v-paneli-upravleniya/). Во вкладке **NAT** возможно создать правила преобразования адресов, более подробно описано в нашей [инструкции](https://serverspace.by/support/help/nastroika-nat-v-paneli-upravleniya/). **Удаление сети ** Для удаления сети во вкладке **Удалить** подтвердите удаление и нажмите соответствующую кнопку. Также, можно удалить сеть из списка сетей, нажав на крестик. https://serverspace.by/support/help/nastrojka-salt-master-minions-na-ubuntu.md Инструкция по установке и настройке Salt на VPS с ОС Ubuntu 18.04. Основные компоненты, которые содержит Salt это один Salt Master и несколько Salt Minions. Инструкция по настройке взаимодействия Salt Master и Salt Minions на серверах под управлением операционной системы Ubuntu 18.04. ## Что это такое? Salt — это платформа с открытым исходным кодом для управления инфраструктурой, построена на динамической коммуникационной шине. Salt может использоваться для управления конфигурацией для любого набора систем или приложений, для управления данными, для удаленного запуска команд и т.д. ## Сетевая архитектура Salt Два основных компонента, которые содержит Salt это один Salt Master и несколько Salt Minions: **Salt Master (Мастер)** — это центральная система управления, используемая для отправки команд и конфигураций в Salt Minion (ноды). **Salt Minions (Ноды, Миньоны) **— это системы, которые работают на управляемых серверах и получают команды и конфигурации от мастера. Для настройки взаимодействия потребуется минимум 2 виртуальных сервера, один для мастера и один для узла. Настройка всех узлов выполняется аналогично. ## Установка Salt Следующие действия необходимо выполнить как Master-сервере, так и на управляемых узлах. Для начала необходимо импортировать ключ репозитория: ```bash wget -O — https://repo.saltstack.com/py3/ubuntu/18.04/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add - ``` Затем необходимо добавить репозиторий с помощью следующей команды: ``` echo "deb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/latest bionic main" | sudo tee /etc/apt/sources.list.d/saltstack.list ``` Обновите список системных пакетов: ```bash sudo apt update ``` Установите пакеты Salt, для Master: ```bash sudo apt -y install salt-api salt-cloud salt-master salt-ssh salt-syndic ``` для Minion: ```bash sudo apt -y install salt-minion ``` Откройте следующие порты, чтобы компоненты могли взаимодействовать по сети: ``` sudo ufw allow proto tcp from any to any port 4505,4506 ``` ## Настройка Salt Master С помощью текстового редактора, например vi, откройте файл /etc/salt/master: ``` vi /etc/salt/master ``` Найдите директиву: ``` #interface: 0.0.0.0 ``` Раскомментируйте найденную строку и вместо 0.0.0.0 укажите IP-адрес сервера: ``` interface: 121.122.121.122 ``` После внесения изменений перезагрузите службу: ``` /etc/init.d/salt-master restart ``` Выведите на экран главный ключ, который необходим для подключения управляемых узлов, выполнив следующую команду: ``` salt-key -F master ``` Ожидаемый вывод: ``` Local Keys: master.pem: c2:2b:2f:5f:91:f2:c3:8b:99:35:50:f9:eb:3f:5b:d7:e4:8d:c1:a2:50:9a:04:f9:e9:75:1b:3a:13:b3:24:0e master.pub: 10:e1:34:61:07:03:ba:aa:c2:56:61:ba:bb:1c:af:34:55:e9:a4:66:a1:35:73:00:17:9f:2f:98:d7:71:f3:09 ``` Скопируйте содержимое строки master.pub прямо из консоли. ## Настройка Salt Minion По умолчанию Salt Minion пытается подключиться к DNS-имени "salt". С помощью текстового редактора, например vi, откройте файл /etc/hosts: ``` vi /etc/hosts ``` Укажите IP-адрес Master Salt и имя salt, например, так: ``` 121.122.121.122 salt ``` Установите идентификатор для вашей ноды, для этого откройте файл: ``` vi /etc/salt/minion_id ``` И вставьте любое удобное и понятное название без пробелов, например: ``` ubuntu-sys ``` Откройте файл конфигурации ноды: ``` vi /etc/salt/minion ``` Найдите директиву master_finger и вставьте скопированный ключ master.pub, как показано в примере: ``` master_finger: '10:e1:34:61:07:03:ba:aa:c2:56:61:ba:bb:1c:af:34:55:e9:a4:66:a1:35:73:00:17:9f:2f:98:d7:71:f3:09′ ``` Сохраните изменения и выполните перезагрузку службы: ``` /etc/init.d/salt-minion restart ``` ## Настройка ключей Затем подключитесь к Master-ноде и проверьте появившиеся ключи: ``` salt-key -L ``` Ожидаемый вывод: ``` Accepted Keys: Denied Keys: Unaccepted Keys: ubuntu-sys Rejected Keys: ``` Примите ключ: ``` salt-key —accept='ubuntu-sys' ``` Перед вами появится следующее диалоговое окно: ``` The following keys are going to be accepted: Unaccepted Keys: ubuntu-sys Proceed? [n/Y] Y Key for minion ubuntu-sys accepted. ``` Для проверки выполните следующую команду: ``` salt-key -L ``` ## Проверка Master-Minion соединения Проверьте связь между Мастером и Миньоном, выполнив команду test.ping: ``` salt ubuntu-sys test.ping ubuntu-sys: True ``` Чтобы проверить связь между мастером и всеми нодами, используйте команду: ``` salt '*' test.ping/noindex> ``` https://serverspace.by/support/help/view-and-manage-processes.md Операционные системы семейства Linux для каждой задачи или операции запускают отдельный системный процесс. Рассмотрим один из инструментов работы с ними - утилиту Top. Операционные системы семейства Linux для каждой задачи или операции запускают отдельный системный процесс. Если во время работы происходит сбой службы или появляется ошибка, то необходимо принимать меры. Рассмотрим один из инструментов работы с процессами в ОС семейства Linux. ## Top – бог или менеджер Название Top ассоциируется с богом грома, но в Linux это утилита, которая управляет системными процессами. Она интегрирована в любой дистрибутив операционной системы. С помощью Top процессам можно задавать приоритеты, просматривать полный список, а также завершать. Запуск осуществляется вводом команды в терминале: ``` top ``` **Важно!** Приложение интерактивное, т.е. изменения происходят в режиме реального времени и отображаются на экране пользователя. ## Расшифровка Top Верхняя часть утилиты отображает сведения о технических характеристиках компьютера (сервера), общем количестве сервисов, а также об объеме оперативной памяти и файла подкачки: Скриншот №1. Сведения об устройстве Далее следует информация о процессах: Скриншот №2. Сервисы Каждая колонка отображает свое значение: 1. PID – идентификатор сервиса, который не повторяется. Он позволяет однозначно идентифицировать процесс. 2. USER – учетное имя, под которым запущена служба. 3. PR расшифровывается как приоритет расписания. Назначается на уровне ядра операционной системы. 4. NI означает nice. В терминологии Linux чем выше цифра, тем меньше системных ресурсов выделяется. Отрицательное значение показывает максимальный приоритет сервису. 5. VIRT – объем виртуальной памяти, который выделяется под конкретный процесс. Обозначает общий ресурс, т.е. в него входит информация, страницы памяти, коды ошибок и т.д. 6. RES – это часть VIRT, которая не помещена в раздел подкачки. По сути это физическое значение оперативной памяти, используемое данной службой. 7. SHR расшифровывается как совместная оперативная память. Она распределяется между другими процессами. 8. S – статус. Каждой службе присваивается свой код в зависимости от принятых кодов: Скриншот №3. Расшифровка кодов S 9. %CPU и %MEM – потребляемый ресурс процессора и памяти. Рассчитывается в процентном соотношении от общего времени. 10. TIME+ отображает время, которое служба использовала с момента своего запуска. Рассчитывается от общего времени работы процессора. 11. COMMAND проводит соответствие между процессом и программой, которая его запустила. ## Управление через Top Навигация в терминале осуществляется с помощью клавиатуры. Стрелки вверх и вниз перемещаются между строками, а вправо и влево отвечают за горизонтальную навигацию. Клавиша I убирает процессы, которые не используются: Скриншот №4. Убрать неактивные процессы Кнопка Z включает/выключает цветовой режим: Скриншот №5. Активация цвета Если требуется отобразить полный путь к приложению, которое запустило выбранный процесс, нажимаем клавишу C. ## Завершить процесс Нажатие клавиши K приведет к завершению выбранного сервиса. На экране отобразится дополнительная строка, в которой указываем идентификатор (PID): Скриншот №6. "Убить" процесс Следующая опция попросит указать звуковой сигнал, который оповестит об удачном завершении сервиса. **Важно!** Если первое поле оставить пустым, то утилита закроет самый верхний процесс в списке. ## Сортировка Преимущества Top в том, что он выполняет сортировку в режиме реального времени. Во время его работы нажимаем одну из четырех букв: Скриншот №7. Включение фильтра Стандартно выборка производится в порядке уменьшения. Для смены отображения – нажмите клавишу R. ## Заключение В публикации мы рассказали о системной утилите Top, расписали ее функции и возможности. Каждое описание сопровождается скриншотами. https://serverspace.by/support/help/razgranichenie-prav-polzovatelej.md В зависимости от семейства операционной системы существуют разные способы разграничения прав пользователей. Рассмотрим, как это происходит в ОС Ubuntu. Ограничение прав пользователей в операционной системе – тема сложная, но необходимая. В зависимости от семейства операционной системы существуют разные правила и стандарты. Рассмотрим подробнее, как это происходит в ОС Ubuntu. ## Права администратора Чтобы запускать привилегированные команды, пользователь должен обладать правами, как минимум, администратора системы. По умолчанию операционная система отключает повышенный уровень прав у любого пользователя. Чтобы его повысить, воспользуемся следующей командой. ``` usermod -a -G sudo username1 ``` Теперь пользователь с именем username1 добавлен в группу sudo и является администратором для операционной системы. Ему доступны настройки ОС, а также доступ к каталогу /dev с вложениями. Большинство привилегий администраторов схоже с возможностями суперпользователя, но они неполные. ### Как выставить запрет В корпоративных информационных системах большинство ОС являются многопользовательскими. Соответственно, необходимо для каждого владельца разграничить права доступа. Для этого используется внутренняя команда chmod, например: ```bash sudo chmod o-x $(which ls)> ``` Вышеуказанная строка означает, что только root имеет право запускать команду ls. Всем остальным в доступе будет отказано. Разберем другую ситуацию. Есть пользователь с именем username1. Ему необходимо ограничить доступ к команде ls. Для этого создаем группу пользователей usergroup1, в которую перенесём всех кроме username1. ``` sudo groupadd usergroup1 sudo useradd -G usergroup1 ``` Вторая строка добавляет в группу usergroup1 пользователей username2, username3 и т. д. Ограничим права на запуск команды ls. Её смогут активировать только участники usergroup1. ```bash sudo chown :group2 $(which ls) sudo chmod 754 $(which ls) ``` Теперь неучастник usergroup1 не сможет активировать ls. ### Немного о файле /etc/sudoers Sudoers содержит информацию о пользователях, которые могут использовать утилиту sudo. Чтобы открыть файл, используем специальную утилиту visudo. ``` visudo /etc/sudoers ``` Внутри содержится следующая информация: Скриншот №1. Содержимое sudoers Расскажем подробнее о строке: Скриншот №2. Задать правила %sudo означает, что к группе sudo применяется следующее правило. Если устанавливаем правила для конкретного пользователя, то % не нужен. Первая переменная ALL расшифровывает, как применить правило ко всем IP-адресам. Второй и третий ALL – указанный пользователь или группа имеют право исполнять команды в сессии любого пользователя или группы. Четвертая переменная означает, что данный шаблон применяется ко всем командам. Например, необходимо установить права на запуск утилиты apt get для группы admin. ``` %admin ALL=(ALL)NOPASSWD:/usr/bin/apt-get ``` ### Alias (псевдонимы) Для удобства разграничения прав доступа используются алиасы. Они объединяют один или несколько значений в один параметр. Например, присвоим IP-адресу облачного хранилища более удобное имя. ``` Host_Alias CLOUD = 105.17.125.37 ``` CLOUD – псевдоним, который указывается в параметрах вместо IP-адреса. При необходимости алиасы используются для объединения пользователей в одну группу. ``` User_Alias Name = user1,user2, ``` , где Name – псевдоним, а user1, user2 – имена пользователей. Также утилита Alias доступна и для команд, т. е. объединяем список инструкций в единую группу. ``` Cmnd_Alias Name = cmd1,cmd2 ``` - name – произвольное наименование для перечня команд; - cmd1, cmd2 – перечисление команд через запятую. Например, объединим обновление пакетов в алиас: ``` cmnd_Alias APT = /usr/bin/apt-get update,/usr/bin/apt-get upgrade ``` https://serverspace.by/support/help/installing-and-configuring-dfs.md DFS - Distributed File System - распределенная файловая система. Устанавливаем. Создаем пространство имен DFS. Добавляем новый каталог в существующее пространство имен. Настраиваем DFS-репликацию. Рано или поздно системные администраторы задаются вопросом о децентрализованном хранении информации или хотя бы об объединении нескольких существующих файловых серверов в единый. Параллельно этому поднимается вопрос о безопасности хранимой информации. Относительно простым, менее затратным и популярным среди администраторов AD (Active Directory) является использование DFS. Рассмотрим что это и как настроить. DFS — **D**istributed **F**ile **S**ystem — распределенная файловая система. Является продуктом компании Microsoft, предназначенный для упрощения доступа пользователей к файлам. Что примечательно, файлы могут быть разнесены территориально. Выделяют два типа DFS: 1. Namespace DFS (Пространство имен DFS). Данный тип реализует виртуальное дерево, которое объединяет общие каталоги сети в единое пространство имен. Существует возможность настройки нескольких пространств имен. 2. Replication DFS (Репликация DFS) — репликация уже существующего каталога с отслеживанием содержимого и внесенных изменений. ### Установка (DFS Installation) Сразу заострим внимание, что установку, в рамках данного примера, будем выполнять на уже настроенный контроллер домена. Открываем диспетчер серверов. В основной части окна кликаем по "**Добавить роли и компоненты**": В новом окне переходим к пункту "**Тип установки**", выбираем параметр "**Установка ролей и компонентов**", нажимаем кнопку "**Далее**": В обновленном окне выбираем текущий сервер и кликаем по кнопке "**Далее**": Следующим шагом, в списке доступных ролей находим "**Файловые службы и службы хранилища**" и раскрываем список, в котором необходимо отыскать "**Файловые службы и службы iSCSI**". Также раскрываем список параметров. Отмечаем галочками "**Пространства имен DFS**" и "**Репликация DFS**". В появившемся окне кликаем "**Добавить компоненты**". Нажимаем кнопку "**Далее**" несколько раз и дожидаемся окончания установки: ### Создание пространства имен DFS Перед тем, как приступить к созданию пространства имен DFS, необходимо создать хотя бы одну сетевую директорию на любом из серверов входящих в домен. В нашем случае будем использовать директорию созданную на том же контроллере домена. Для того чтобы папка стала доступна из сети, кликаем по ней правой кнопкой мыши, в контекстном меню выбираем "**Поделиться**", затем "**Отдельные люди**": В поле ввода указываем "**Пользователи домена**", нажимаем кнопку "**Добавить**", затем "**Поделиться**": Общий доступ к папке готов. Кликаем по кнопке "**Готово**": Теперь сервер доступен по пути: ``` WINSERVER2019net_share ``` Создадим пространство имен DFS. Для этого в меню "**Пуск**" выбираем "**Средства администрирования Windows**". Также можно через **Панель управления** **Система и безопасность** **Администрирование**. В открывшемся окне, выбираем "**Управление DFS**": В новом окне "**Управление DFS**", в правой части кликаем по "**Новое пространство имен** ": В окне мастера указываем имя сервера. Его можно отыскать как в окне, которое откроется при клике по кнопке "**Обзор**", так и в свойствах системы на вкладке "**Имя компьютера**". Нажимаем "**Далее**": Следующим шагом указываем имя пространства имен. В нашем случае, пусть будет "**MyDFS**". Нажимаем кнопку "**Изменить настройки**". В новом окне следует обратить внимание на строку "**Локальный путь общей папки**", при необходимости измените его. В том же окне установим переключатель на значение "**Использовать пользовательские разрешения**" и кликаем кнопку "**Настроить**": В открывшемся окне разрешаем полный доступ для всех и нажимаем кнопку "**OK**": Окно изменения настроек закрываем кликом по кнопке "**OK**", в окне мастера нажимаем кнопку "**Далее**": На новом этапе выбора типа пространства имен устанавливаем переключатель на значение "**Доменное пространство имен**", нажимаем кнопку "**Далее**". Внимательно просматриваем настройки. Все устраивает — нажимаем "**Создать**": В случае успеха мастер покажет следующее окно: Нажимаем кнопку "**Закрыть**". ### Добавляем новый каталог в существующее пространство имен Смысла в проделанном выше нет, если не добавить каталоги к уже существующему пространству имен. В примере процесс будет выполнен на том же сервере, однако, метод применим ко всем серверам в домене. В окне управления DFS, в левой его части, разворачиваем дерево управления DFS до существующего, кликаем по необходимому. В правой части окна, в разделе действий, выбираем "**Создать папку**": В открывшемся окне "**Создание папки**" указываем имя, в нашем случае "**Test**" и нажимаем кнопку "**Добавить**": В новом окне необходимо добавить путь к существующей сетевой папке. Список доступных каталогов можно посмотреть кликнув по кнопк "**Обзор**". По окончании, нажимаем "**OK**": Результат будет таким: Нажимаем "**OK**". Доступ к DFS можно получить из любой адресной строки (Пуск->Выполнить, или из адресной строки любой папки) по шаблону: ``` ``` Например: ``` laa.testMyDFS ``` Результат таков: ### Настройка DFS-репликации Для выполнения репликации данных необходимо добавить второй сервер в этот же домен и установить на нем роль сервера "**Репликация DFS**" с помощью диспетчера серверов: На этом же сервере создаем папку и разрешаем общий доступ к ней. В эту папку будут реплицироваться данные из директории, расположенной на сервере контроллера домена: При открытии доступа и позже, в меню свойств папки можно увидеть сетевой путь до каталога: Возвращаемся к контроллеру домена и развернутому на нем пространству имен DFS. Открываем уже знакомое из примеров выше окно "**Управление DFS**". В левой части окна, разворачиваем дерево до созданного пространства имен. В правой части окна выбираем "**Добавить конечный объект папки**". В новом окне вводим адрес до общего каталога на другом сервер (который создали ранее). Нажимаем кнопку "**OK**": Система задаст вопрос желании создать группу репликации. Нажимаем кнопку "**Да**": Дожидаемся окончания хода выполнения. Итогом будет открытое окно "**Мастера репликации папок**". Необходимо проверить имя группы репликации, а также имя каталога, который будет реплицирован. Переходим к следующему шагу кликнув по кнопке "**Далее**": На данном этапе проверяем пути до сетевых каталогов и нажимаем "**Далее**": Следующим шагом предстоит выбрать основной узел из выпадающего списка. Это тот узел с которого данные будут реплицироваться. В случае с примером, основной член репликации сервер с именем WINSERV2016 — это сервер, на котором поднят контроллер доменов. Конкретный пример, лишний раз напоминает о необходимости определения понятных имен для серверов и прочих узлов сети. Нажимаем "**Далее**": Теперь предстоит выбрать топологию подключений между членами репликации. Выбираем доступную — "**Полная сетка**", однако если вы желаете создать свою топологию репликации позже, то выбирайте "**Нет топологии**". Нажимаем "**Далее**": Настройка подходит к концу и на этом шаге следует определиться с периодичностью репликации данных. Выбираем вариант с постоянной репликацией. Преимущества этого метода в том, что данные будут дублироваться сразу. Недостаток — нагружает локальную сеть при больших объемах информации, а также нагрузка на жесткий диск. Второй вариант, предлагает настроить репликацию по расписанию. Минус этого способа в том, что данные будут синхронизированы "потом". Выбираем желаемый вариант и нажимаем "**Далее**": Программа предлагает просмотр выбранных параметров. Если все устраивает — нажимаем кнопку "**Создать**": В случае успеха результат будет таким: Нажимаем кнопку "**Закрыть**". Система напомнит о задержках репликации. Чтобы не получать это сообщение вновь, при желании, следует установить галочку в соответствующем месте. Нажимаем кнопку "**OK**": Настройку распределенной файловой системы, а также репликацию данных можно считать оконченной. https://serverspace.by/support/help/installing-seafile-cloud-storage.md Seafile позволяет синхронизировать информацию между разными ОС: Windows, Linux/Unix, Android и iOS. Рассмотрим установку и настройку дискового хранилища под требования администратора. Статья расскажет об "облаке", которое создано при помощи программного решения Seafile. Продукт позволяет синхронизировать информацию между разными операционными системами: Windows, Linux/Unix, Android и iOS. Рассмотрим, как установить и настроить дисковое хранилище под требования администратора. ### Требования Для инсталляции Seafile необходимо наличие предустановленного MySQL. О том, как это сделать, на нашем сайте присутствует отдельная публикация. В качестве серверной платформы (Seafile Server) используется Ubuntu Server 16.04. ### Установка Проверим наличие актуальных версий ПО. ```bash sudo apt-get update sudo apt-get upgrade ``` Проинсталлируем компоненты для работы с python. ```bash sudo apt-get install python-imaging python-mysqldb python-setuptools ``` Используя менеджер загрузок, скачаем последний релиз Seafile с официального сайта. ```bash wget https://download.seadrive.org/seafile-server_7.0.4_x86-64.tar.gz ``` **Важно!** На момент написания статьи (22.08.2019) актуальная версия серверной части 7.0.4. Распакуем архив. Перейдем в директорию. ```bash tar xzvf seafile-server* cd seafile-server_7.0.4_x86-64 ``` Внутри находим шаблон, запускаем его. Он проведет проверку необходимых компонентов. ``` ./setup-seafile-mysql.sh ``` Если все присутствует, то на мониторе появится надпись: Скриншот №1. Успешная проверка. Следуя подсказкам на экране, нажимаем Enter и переходим к конфигурированию. ### Настройка Seafile Придумываем произвольное наименование для серверной части. Имя не должно содержать более 15 символов: Скриншот №2. Прописываем имя сервера. Следующий шаг – указываем IP-адрес либо имя. В нашем примере используем первый вариант: Скриншот №3. Вводим IP-адрес. Выбираем домашнюю директорию для хранилища: Скриншот №4. Выбор папки. По умолчанию предлагается создать каталог Seafile-data под учетным именем root. Далее мастер настройки спросит про порт: Скриншот №5. Порт. Заводская настройка – порт 8082. Если менять не нужно, то оставляем как есть и переходим к следующем этапу. На пятом шаге мастер попросят придумать имя для БД, которые будут использоваться для работы, либо указать путь к существующим: Скриншот №6. Выбор БД. Так как рассказ идет про первоначальную установку и настройку, то выбираем первый пункт. Следующие два пункта – имя сервера MySQL и номер порта: Скриншот №7. Наименование хоста. Скриншот №8. Номер порта. Если изменения не требуются, то пропускаем и идем дальше. Задаем пароль для учетного имени администратора MySQL: Скриншот №9. Придумываем пароль. Рекомендуется использовать следующие правила: минимум 9 символов, спецсимволы, цифры и заглавные буквы. Мастер инсталляции по умолчанию создает пользователей, которые будут работать с файловым хранилищем: Скриншот №10. Пользователи БД и "облака". По желанию администратор меняет значения на собственные. На последнем этапе утилита настройки выводит итоговую конфигурацию на экран: Скриншот №11. Результаты настройки. Если значения указаны верно, то нажимаем Enter. ### Первоначальный запуск Seafile 1. Запустим сервис с шаблоном, созданным в предыдущем разделе. Добавим подключение через браузер, чтобы провести дальнейшую настройку. ``` ./seafile.sh start ./seahub.sh start ``` 2. Во время первого запуска необходимо указать учетное имя для администратора системы и электронный ящик: Скриншот №12. Настройка для учетной записи. Для примера возьмем имя admin, а e-mail укажем на домене serverspace.by. 3. Следующий шаг – ввод пароля для администратора: Скриншот №13. Паролирование. Система попросит дважды указать ключ, чтобы избежать ошибки. Если указано верно, то сервис запустится с указанными параметрами. 4. Последний этап – прописываем исключения в межсетевом экране. ``` iptables -A INPUT -p tcp —dport 8000 -j ACCEPT iptables-save ``` По умолчанию веб-интерфейс запускается на 8000 порту. ### Подключение через браузер Открываем обозревателя и прописываем IP-адрес, который указан выше во время настройки. В примере – 111.111.111.111. Обязательно прописываем номер порта через двоеточие: Скриншот №14. Имя сервера. Если адрес указан верно, то откроется окно авторизации. Используем для входа электронный ящик и пароль для администратора. В нашем примере e-mail – [admin@serverspace.by](mailto:admin@serverspace.by). Откроется панель управления файловым хранилищем. Создание нового пользователя Переходим во вкладку "Пользователи", нажимаем на кнопку "Добавить". В открывшемся окне вводим электронный ящик и придумываем пароль. При необходимости указываем имя человека и отдел. Нажимаем ОК. В рабочей области появится вновь созданный пользователь. https://serverspace.by/support/help/ustanovka-apache-kafka-na-ubuntu-18-04.md Установка и настройка Kafka (Install Kafka) на VPS под управлением Ubuntu 18.04. Пошаговое руководство. Install Apache Kafka. Публикация расскажет, как установить брокер сообщений Apache Kafka на серверную платформу. В качестве серверной ОС используется Ubuntu Server 18.04. ## **Немного теории** Apache Kafka не просто менеджер сообщений: он работает с большими объемами данных, оповещая каждого пользователя в зависимости от его подписок. Принцип работы сервиса следующий. В любой организации существует множество приложений и программ, которые генерирует различные сообщения и оповещения. С другой стороны находятся системы мониторинга, которым необходима информация, например, об авторизации пользователей в базе данных 1С. Apache Kafka обеспечивает стабильную связь между двумя точками, гарантируя доставку пакетов. Несомненным преимуществом является то, что обновление перечня сообщений происходит в автоматическом режиме. Система является масштабируемой по горизонтали, а также обладает высоким уровнем отказоустойчивости по сравнению с другими аналогичными продуктами. Ее используют такие крупные компании как Netflix, Twitter и др. ## **Предварительная подготовка** Apache Kafka создан на Java, т.е. для работы ему необходимы соответствующие компоненты на сервере. Для начала установим default-jre. Заведем пользователя с одноименным именем и паролем, который будет обрабатывать запросы брокера: ``` sudo useradd kafka –m ``` ``` sudo passwd kafka ``` Теперь добавим учетное имя к группе sudo для получения привилегированных прав доступа: ``` sudo adduser kafka sudo ``` Перелогинимся и перейдем к инсталляции продукта: ``` su -l kafka ``` ## **Скачивание дистрибутива** Сначала создаем директорию в домашнем разделе для сохранения загруженных файлов: ``` mkdir ~/Downloads ``` Загрузим дистрибутив с официального сайта продукта: ```bash curl "http://www-eu.apache.org/dist/kafka/2.3.0/kafka-2.3.0-src.tgz" -o ~/Downloads/kafka.tgz ``` **Важно!** На дату 22 августа 2019 года актуальный релиз — 2.3.0. Далее создаем каталог для распаковки архива, перейдем в него и извлечем информацию: ``` mkdir ~/kafka ``` ``` cd ~/kafka ``` ```bash tar -xvzf ~/Downloads/kafka.tgz —strip 1 ``` Теперь перейдем к конфигурированию решения. ## **Настройка Apache Kafka** Шаблон конфигурации, который поставляется вместе с брокером, расположен в kafka/config/server.properties. Чтобы сконфигурировать параметры Kafka под требуемые задачи, открываем его текстовым редактором и вносим соответствующие правки. К примеру, добавим опцию удаления тем брокера. Для этого откроем файл через редактор vi и внесем следующую строку. ```sql delete.topic.enable = true ``` ## **Первичный старт Kafka на сервере** Настроим параметры запуска "брокера" сообщений под требуемые задачи. Для этого воспользуемся сервисом ZooKeeper. Он отслеживает состояние и конфигурацию Kafka. Создадим файл конфигурации для ZooKeeper: ``` sudo vi /etc/systemd/system/zookeeper.service ``` Припишем в него следующую информацию: ``` Requires=network.target remote-fs.target After=network.target remote-fs.target ``` ``` Type=simple User=kafka ExecStart=/home/kafka/bin/zookeeper-server-start.sh /home/kafka/kafka/config/zookeeper.properties ExecStop=/home/kafka/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal ``` ``` WantedBy=multy-user.target ``` Файл содержит разные блоки. К примеру, Unit отвечает за работоспособность сети и файловой системы, а Install говорит о том, чтобы служба ZooKeeper перезапускалась в автоматическом режиме, если произошел сбой. Теперь создадим шаблон systemd для Apache Kafka. ``` sudo nano /etc/systemd/system/kafka.service ``` Также добавим в него строки: ``` Requires=zookeeper.service After=zookeeper.service ``` ``` Type=simple User=kafka ExecStart=/bin/sh -c '/home/kafka/kafka/bin/kafka-server-start.sh /home/kafka/kafka/config/server.properties > /home/kafka/kafka/kafka.log 2>&1' ExecStop=/home/kafka/kafka/bin/kafka-server-stop.sh Restart=on-abnormal ``` ``` WantedBy=multy-user.target ``` В данном файле каждая секция также отвечает за разные условия. После создания шаблонов, запустим службу kafka. Если необходимо, чтобы сервис запускался совместно с серверной частью, то прописываем: ```bash sudo systemctl enable kafka ``` Протестируем работоспособность брокера сообщений. ## **Тестирование** Для проверки создадим фразу "Good morning", а потом ликвидируем ее. Чтобы сообщение опубликовалось, необходимы producer (тот, кто публикует) и consumer (тот, кто читает). 1. Придумываем тему, в который будет публикация. Дадим ей имя Demo: ``` ~/kafka/bin/kafka-topics.sh —create —zookeeper localhost:2181 —replication-factor 1 —partitions 1 —topic Demo ``` 2. Используя внутреннюю команду kafka-console-producer.sh брокера, создаем producer. От его имени оформляем публикацию в теме Demo: ``` echo "Good Morning" | ~/kafka/bin/kafka-console-producer.sh —broker-list localhost:9092 —topic Demo > /dev/null ``` 3. Теперь создадим consumer, который прочитает публикацию в топике. Для этого также используем внутренний скрипт kafka-console-consumer.sh: ``` ~/kafka/bin/kafka-console-consumer.sh —bootstrap-server localhost:9092 —topic Demo —from-beginning ``` 4. В результате на мониторе появится "Good Morning". Чтобы остановить тестирование, нажимаем сочетание клавиш Ctrl+C. https://serverspace.by/support/help/using-ansible-playbooks.md В инструкции описано использование Ansible Playbook, рассмотрена структура и регистрация событий. Что такое Ansible Playbooks? Давайте разберемся в этой статье. В инструкции описано применение и работа с Ansible Playbook, а также кратко рассмотрена их структура. Вы можете прочитать о том, как установить [Ansible на Ubuntu 18.04 в другой нашей инструкции.](https://serverspace.by/support/help/ustanovka-ansible-na-ubuntu-18-04/) ## Что такое Ansible Playbooks? Playbook в Ansible определяет серию некоторых действий для выполнения и адресованы определенным наборам серверов. В отличие от некоторых других инструментов для выполнения настроек, Playbook не описывает состояние машины, а Ansible самостоятельно определяет все изменения, которые необходимо внести. Тем не менее, плейбуки должны быть разработаны как [идемпотенты](https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B5%D0%BC%D0%BF%D0%BE%D1%82%D0%B5%D0%BD%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C), а это значит, что они могут запускаться более одного раза без негативных последствий. Часто плейбуки используют для выполнения начальной настройки серверов — добавления пользователей и каталогов, управлением пакетами программного обеспечения и файлами. Playbook — это [YAML-файл](https://yaml.org/), который обычно имеет следующую структуру: ```yaml --- - hosts: [target hosts] remote_user: [yourname] tasks: - [task 1] - [task 2] ``` Например, следующий playbook будет входить на все серверы группы marketingservers и обеспечивать запуск веб-сервера Apache: ```bash --- - hosts: [marketingservers] remote_user: webadmin tasks: - name: Ensure the Apache daemon has started service: name=httpd state=started become: yes become_method: sudo ``` В плейбуке выше приведен пример задания (task): ```bash tasks: - name: Ensure the Apache daemon has started service: name=httpd state=started become: yes become_method: sudo ``` Каждое задание должно иметь имя, которое впоследствии регистрируется и может помочь отслеживать прогресс. После строки имени (name) находится модуль, который будет запущен, в данном случае это служебный модуль. Другие атрибуты разрешают больше опций, в примере Ansible разрешается использовать привилегии sudo. ## Запуск Ansible Playbook Запустить готовый плейбук можно используя следующую команду: ``` ansible-playbook playbook.yml ``` Например: ``` ansible-playbook nginx.yml ``` Однако, если есть необходимость отфильтровать список хостов, чтобы сценарий применялся только к одному из этих хостов, можно добавить флаг и указать подмножество хостов в файле: ``` ansible-playbook -l host_subset playbook.yml ``` Например: ``` ansible-playbook -l host3 nginx.yml ``` ## Регистрация результатов Когда вы устанавливаете и настраиваете службы вручную, почти всегда необходимо знать результат действий. Настроить эту функциональность можно с помощью регистрации. Для каждой задачи при желании возможно зарегистрировать ее результат (сбой или успех) в переменной, которую можно проверить позже. При использовании этой функциональности рекомендуется указывать Ansible игнорировать ошибки для такой задачи, так как обычно выполнение playbook прерывается в случае возникновения каких-либо проблем. Таким образом, если необходимо проверить, выполнилась ли задача или нет и принять решение о последующих шагах, необходимо использовать функциональность регистрации. Например, укажем playbook загрузить файл index.php, если он существует. Если эта задача не выполнится, то начнется загрузка файла index.html: ```bash --- - hosts: droplets tasks: - name: Installs nginx web server apt: pkg=nginx state=installed update_cache=true notify: - start nginx - name: Upload default index.php for host copy: src=static_files/index.php dest=/usr/share/nginx/www/ mode=0644 register: php ignore_errors: True - name: Remove index.html for host command: rm /usr/share/nginx/www/index.html when: php|success - name: Upload default index.html for host copy: src=static_files/index.html dest=/usr/share/nginx/www/ mode=0644 when: php|failed handlers: - name: start nginx service: name=nginx state=started ``` Этот сценарий пытается загрузить файл PHP на хост. Ansible регистрирует успех операции в переменной с именем php. Если эта операция прошла успешно, следующая задача — удалить файл index.html. Если операция завершилась неудачно, будет загружен файл index.html. https://serverspace.by/support/help/how-to-change-rdp-account-password.md Инструкция по изменению пароля учетной записи через “Подключение к удаленному рабочему столу” (RDP) в Microsoft Windows Server 2008, 2012, 2012 R2, 2016. Одной из хороших привычек любого пользователя ПК, а тем более системного администратора, является периодическая смена паролей учетных записей. Главное потом его не забыть. Как сменить пароль на удаленном рабочем столе: - [Как сменить пароль в ОС Windows Server 2008](#step1) - [Как сменить пароль в OC Windows Server 2012 и Windows Server 2012 R2](#step2) - [Как сменить пароль в ОС Windows Server 2016](#step3) - [Как альтернативно сменить пароль в ОС Windows Server 2016](#step4) - [Как сменить пароль на удаленном компьютере с помощью комбинации CTRL + ALT + END](#step5) - [Как сменить пароль на удаленном компьютере с помощью экранной клавиатуры](#step6) - [Как вызвать окно смены пароля в RDP сессии через VBS-скрипт или PowerShell](#step7) - [Как сменить пароль с помощью ярлыка расширения оболочки Windows Exploerer](#step8) - [Как сменить пароль через Remote Desktop Web Access](#step9) - [Как сменить пароль с помощью RDP при ошибке из-за CredSSP, NLA](#step10) - [Как сменить пароль с помощью специального RDP-файла](#step11) В операционных системах семейства Microsoft Windows Server, для смены пароля, привычно использовать сочетание клавиш Ctrl + Alt + Del. проблема в том, что "три кнопки" нельзя использовать через "Подключение к удаленному рабочему столу". Рассмотрим как все таки изменить пароль. ## Смена пароля в ОС Windows Server 2008 В ОС Windows Server 2008 это можно сделать из меню Пуск, кликнув по **"Безопасность Windows".** Скриншот №1. Смена пароля через меню «Пуск» На обновлённом экране выбираем экране выбираем **"Сменить пароль".** Скриншот №2. Сменить пароль Вводим старый пароль и новый и его подтверждение. Скриншот №3. Выбор нового пароля ## Смена пароля в ОС Windows Server 2012 и Windows Server 2012 R2 В ОС Windows Server 2012 и Windows Server 2012 R2 несколько усложнилась задача. Открываем блокнот и пишем две строки: ``` set objShell = CreateObject("shell.application") objshell.WindowsSecurity ``` Скриншот №4. Блокнот Сохраняем файл с расширением *.vbs (пишем вручную.). Для этого выбираем Файл -> Сохранить как В новом окне выбираем директорию для сохранения файла, например, Рабочий стол. В Тип файла выбираем Все файлы, а в Имя файла указываем произвольное имя, например, 1.vbs. Скриншот №5. Выбор директории После сохранения файла, он уже готов к исполнению. Двойной клик левой кнопкой мыши вызовет экран, в которым следует выбрать **"Сменить пароль".** Скриншот №6. Смена пароля Далее все привычно. Заполняем поля со старым паролем, указываем новый пароль и его подтверждение. Кликаем по иконке стрелки. Скриншот №8. Ввод нового пароля ## Смена пароля в ОС Windows Server 2016 ОС Windows Server 2016 радует своим расположением к пользователю, но чтобы изменить удаленно пароль, все равно нужно поискать этот пункт. Открываем меню Пуск и кликаем по значку пользователя, в открывшемся меню выбираем **"Изменить параметры учетной записи".** Скриншот №9. Меню пуск в Windows 16 В открывшемся окне "Параметры" выбираем "Параметры входа", а в секции Пароль кликаем по кнопке Изменить. Скриншот №10. Пункт «Параметры входа» В новом окне, указываем текущий пароль и кликаем по кнопке Далее. Скриншот №11. Ведение текущего пароля Окно обновится и запросит новый пароль, его подтверждение, а также подсказку к паролю. Кликаем по кнопке далее. В итоге, кликаем по кнопке Готово. Следующий вход в систему будет происходить под новым паролем. Скриншот №12. Введение нового пароля ## Альтернативный способ Этот способ применим как для изменения пароля к своей учетной записи, так и к учетным записям других пользователей. В меню Пуск, выбираем Администрирование ("Средства администрирования" в Windows Server 2016). Скриншот №13. Альтернативный метод через пункт «Администрирование» В новом окне двойным кликом мыши открываем **"Управление компьютером".** Скриншот №14. Управление компьютером В левой части открывшегося окна раскрываем ветку "Локальные пользователи и группы" и открываем папку Пользователи. В основной части окна, кликаем правой кнопкой мыши по пользователю и в контекстном меню выбираем "**Задать пароль".** Скриншот №15. Задать пароль для пользователя Система выдаст предупреждение. Внимательно прочитав которое и осознав все риски кликаем по кнопке "Продолжить". В противном случае — **"Отмена".** Скриншот №16. Предупреждение системы В новом окне указываем новый пароль и его подтверждение. По окончании кликаем по кнопке OK. Скриншот №17. Введение нового пароля ## **Как сменить пароль на удаленном компьютере с помощью комбинации CTRL + ALT + END.** Для получения комбинации CTRL + ALT + DEL на удаленном компьютере, нужно нажать CTRL + ALT + END. Нажатие этой комбинации откроет нам диалоговое окно, в котором нам нужно будет выбрать «Сменить пароль»: Для смены пароля нам нужно будет указать некоторые данные: ## **Смена пароля на удаленном рабочем столе с помощью экранной клавиатуры.** При удаленном подключении к рабочему столу, пароль можно сменить с помощью использования экранной клавиатуры. Чтобы вызвать экранную клавиатуру введите в меню «Пуск» «Экранная клавиатура» или же «OSK». После того, как появится экранная клавиатура, зажмите клавиши ALT + CTRL и с помощью мыши нажмите кнопку Del. У вас вылезет диалоговое окно, в котором вам ам нужно будет выбрать «Сменить пароль»: Для смены пароля нам нужно будет указать: имя пользователя, старый пароль и два раза повторить новый пароль. ## **Вызов окна смены пароля в RDP сессии через VBS-скрипт или PowerShell.** Чтобы вызвать окно смены пароля с помощью VBS-скрипта, создайте файл WindowsSecurity.vbs и введите туда данные строчки кода: ``` set objShell = CreateObject("shell.application") ``` ``` objshell.WindowsSecurity ``` После чего, после двойного щелчка по данному VBS-скрипту, перед вами откроется диалоговое окно, в котором нам нужно будет выбрать «Сменить пароль»: Для смены пароля нам нужно будет указать: имя пользователя, старый пароль и два раза повторить новый пароль. Также чтобы открыть окно смены пароля с помощью PowerShell, откройте сам PowerShell с помощью меню «Пуск» и воспользуйтесь командой: ``` New-Object -COM Shell.Application).WindowsSecurity() ``` После чего, перед вами откроется диалоговое окно, в котором нам нужно будет выбрать «Сменить пароль»: Для смены пароля нам нужно будет указать: имя пользователя, старый пароль и два раза повторить новый пароль. ## Чтобы открыть диалоговое окно со сменой пароля, можно создать ярлык со ссылкой на расширение оболочки Windows Explorer. Для начала создаем ярлык и указываем данный путь для него: ``` C:\Windows\explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0} ``` Далее выбираем название для ярлыка и создаем его: После двойного щелчка по данному ярлыка, перед вами откроется диалоговое окно, в котором нам нужно будет выбрать «Сменить пароль»: Для смены пароля нам нужно будет указать: имя пользователя, старый пароль и два раза повторить новый пароль. ## Cмена пароля через Remote Desktop Web Access В Windows Server 2012 /R2 и выше у удаленных пользователей с правами Remote Desktop Web Access появилась возможность самостоятельно сбрасывать свой пароль через специальную веб-страницу на сервере Remote Desktop Web Access. Функционал удаленной смены пароля доступен на сервере с ролью Remote Desktop Web Access, но по-умолчанию эта функция отключена. Чтобы включить данную функцию: Открываем консоль управления сервером IIS Manager и переходим в [Name of your Server] – Sites – Default Web Site – RDWeb – Pages и открываем раздел Application Settings. В правой панели выбираем параметр с именем PasswordChangeEnabled и меняем его значение на true. Чтобы проверить доступность страницы смены пароля, переходим по: https://[RD-WEB-1]/RDWeb/Pages/en-US/password.aspx **Важно! Если у вас русская версия Windows Server путь к файлу password.aspx будет отличаться и выглядеть так:** ``` C:\Windows\Web\RDWeb\Pages\ru-RU. ``` После успешной смены пароля пользователя должно появится сообщение: ``` Your password has been successfully changed. ``` ## СredSSP, NLA и смена пароля через RDP **Credential Security Support Provider (CredSSP)** — протокол для передачи учетных данных, который используется при RDP для защиты DDoS атак и несанкционированного исполнения процессов. **Network Level Authentication (NLA)** — это функция служб удаленных рабочих стол, которая требует, чтобы подключающийся пользователь аутентифицировал себя до установления сеанса с сервером. Есть одна важная особенность, касающаяся смены истекшего пароля пользователя по RDP, связанная с опцией Network Level Authentication (NLA) и протоколом Credential Security Support Provider (CredSSP). По умолчанию CredSSP с NLA для RDP включен во всех версиях Windows, начиная с Windows Server 2012/Windows 8. NLA обеспечивают защиту RDP сервера за счет выполнения аутентификации пользователя до установки RDP сеанса с сервером. Если у пользователя истек пароль, или администратор AD пользователя включил ему опцию «userAccountControl» — Требовать смену пароля при первом входе в систему, то при входе в систему по RDP появится ошибка: ``` Remote Desktop Connection You must change your password before logging on the first time. Please update your password or contact your system administrator or technical support. ``` или ``` Подключение к удаленному рабочему столу Перед первым входом в систему необходимо сменить пароль. Обновите пароль либо обратитесь к вашему системному администратору или в службу технической поддержки. Подключение к удаленному рабочему столу Перед первым входом в систему необходимо сменить пароль ``` Как результат — пользователь не сможет подключиться к RDP серверу и сменить пароль. В этом случае, чтобы пользователь мог самостоятельно сменить пароль, можно: 1)Настроить Remote Desktop Web Acces (RDWA) со страницей смены пароля как в данной части инструкции : [Смена пароля через Remote Desktop Web Access](#step9) 2)Создать отдельный сервер для смены паролей пользователей. На данном сервере нужно отключить функцию NLA. В этом случае пользователи смогу сменить пароль. 3)Пользователь может изменить свой пароль удаленно через PowerShell — как показано в данной части инструкции [Как вызвать окно смены пароля в RDP сессии через VBS-скрипт или PowerShell](#step7) ## Смена пароля на удаленном рабочем столе с помощью специального RDP-файла: Если ситуация требует того, чтобы пользователь изменил пароль с помощью RDP-файла, то это потребует некоторого изменения уровня безопасности настроек протокола RDP на стороне RDP сервера и подготовки специального RDP-файла на стороне клиента. Сначала на клиентской стороне откроем mstsc.exe. В меню пуск вводим «mstsc» и выбираем «Подключение к удаленном рабочему столу»: Далее настраиваем все нужные параметры для подключения к серверу. Нажимаем «Показать больше», вводим туда IP-адресс нашего удаленного компьютера и имя пользователя, затем, используя кнопку Сохранить как, создаем RDP-файл: После этого откроем RDP-файл с помощью текстового редактора и добавим в конце файла строку: ``` enablecredsspsupport:i:0 ``` Пояснение: Добавление данного параметра в свойствах RDP-подключения позволит клиенту успешно установить RDP-сессию с удалённой системой и сменить пароль до получения доступа к удалённому рабочему столу. Однако этот параметр понизит уровень безопасности RDP-подключения, так как клиент не сможет использовать проверку подлинности на уровне сети — Network Level Authentication (NLA), которую мы [описывали выше в нашей статье](#helpNLA). Если NLA включен — то пользователь не сможет подключиться и получит соответствующую ошибку: Исправить эту ошибку можно только понизив уровень безопасности RDP на стороне RDS сервера, отключив обязательное требование проверки подлинности на уровне сети (NLA). ## Важно! **Не рекомендуем делать этого, если ваш удаленный компьютер может быть подвергнут DDoS-атакам и несанкционированным процессам.** Чтобы изменить эту настройку, на удаленном компьютере, в меню пуск вводим «Панель управления»: Затем переходим в «Система и безопасность»: Затем переходим в «Система»: Открываем окно, которое появилось, на весь экран и выбираем «Дополнительные параметры системы»: «Разрешить подключения только с» : У нас появится окно с «Свойствами системы», перейдем в часть с «Удаленным доступом» и уберем галочку с пункта «Разрешить подключения только с», затем нажмем «Применить» и «ОК»: После того, как мы отключили функцию NLA на стороне RDS сервера, клиент с помощью специального RDP-файла, может успешно установить RDP-сессию и уже в ней сменить пароль: После этого вы сможете подключаться с новым паролем. Таким образом, мы рассмотрели все возможные способы смены пароля учетной записи по RDP. https://serverspace.by/support/help/nastroika-planirovshika-linux.md Планировщик заданий Cron используется по умолчанию в дистрибутивах Linux, а также FreeBSD. Рассмотрим, как его настроить несколькими способами. Планировщик заданий является по праву одним из важных компонентов системы. По умолчанию, в дистрибутивах Linux, а также FreeBSD, используется планировщик заданий Cron. Рассмотрим как его настроить. Настроить cron можно несколькими способами. Самый простой и быстрый — указать задание руками в файл /etc/crontab. Проблема в том, что это может сделать только пользователь root. Структура файла /etc/crontab представляет собой последовательность установок даты и времени, имени пользователя от которого выполняется задача и явное указание исполняемого файла. # m h dom mon dow user command **# **— строка закомментирована, т.е. не выполняется планировщиком **m **— минуты. Диапазон значений 0-59 **h **— часы. Диапазон значений 0-23. **dom **— day of month — день месяца (число). Диапазон значений 1-31 **mon **— месяц. Диапазон значений 1-12 **dow **— day of week — день недели. указывается числом, где 0 — воскресенье, 6 — суббота. **user **— пользователь от которого выполняется задача. **command **— выполняемая задача. Важно! Значения минут, часов, дней месяца, дней недели, а также месяца могут быть * (звездочкой) принимая все доступные значения. Также можно использовать список параметров разделенных запятой. Примеры разберем подробнее немного позже. Простым пользователям доступна системная утилита crontab. Для гибкости использования используются параметры: | crontab -e | Используется для редактирования или создания файла расписания для текущего пользователя | | --- | --- | | crontab -l | Вывод существующих задач в расписании пользователя | | crontab -r | Удаление файла расписания текущего пользователя | | crontab -u username | Работа с расписаниями указанных пользователей. Выполняется только от пользователя root | Добавим задание. Для этого в консоли пишем команду: ``` crontab -e ``` Запустится редактор файла используемый по умолчанию (Ubuntu — nano/vi, FreeBSD — ee), в нашем случае mcedit из пакета Midnight Commander. Синтаксис команд идентичен как и для файла /etc/crontab, за исключением отсутствия параметра имени пользователя. Это значит, что после сохранения файла, все задачи будут выполняться от текущего пользователя. Сохраняем файл, выходим из редактора и проверяем список заданий crontab -l. Проверим как работает удаление файла заданий — crontab -r. Важно! Программа не спрашивает уверены ли вы в удалении файла заданий. Если нужно удалить конкретное задание, следует использовать crontab -e. Для администратора важно, чтобы не все пользователи могли пользоваться планировщиком. Для этих целей можно использовать файлы /etc/cron.allow и /etc/cron.deny (в некоторых дистрибутивах эти файлы должны размещаться в /etc/cton.d). По умолчанию, использование cron разрешено всем пользователям. Примеры использования в файле /etc/crontab. Выполнение задачи каждые 5 минут от пользователя root: ``` */5 * * * * root /root/scripts/script1.sh ``` В полдень и полночь: ``` 0 */12 * * * root /root/scripts/backup.sh ``` Перезагрузка сервера в 0:00 в первый день месяца (исключительно как пример): ``` 0 0 1 * * root reboot ``` Выполнение скрипта с понедельника по пятницу в полночь: ``` 0 0 * * 1-5 root /root/script/backup_db.sh ``` Неправильный пример: ``` * 0 * * 1-5 root /root/script/backup_db.sh ``` Ошибка в том, что скрипт будет запускаться с понедельника по пятницу каждую минуту с 0:00 по 0:59 В заданиях назначаемых через crontab -e (т.е. от текущего пользователя) не указывается параметр имени пользователя, в случае примеров — root. На что еще следует обратить внимание: Все пути до исполняемых файлов следует писать абсолютными. Скрипты исполняются из корневой директории, а следовательно, при написании скрипта следует указывать рабочий каталог, либо абсолютные пути до целевых файлов (если в ходе работы скрипта генерируются файлы-отчета и им подобные) https://serverspace.by/support/help/validaciya-ssl-sertificata.md Для того чтобы подтвердить, что домен принадлежит именно вам, существует несколько способов. Рассмотрим валидацию различных SSL сертификатов (DV, OV, EV). **Валидация домена (DV — Domain Validation).** Начальный уровень доверия. Для того чтобы подтвердить что домен принадлежит именно вам существует три способа. Рассмотрим каждый по отдельности. **С помощью электронной почты.** Администратору домена необходимо создать почтовый ящик, на который будет получено письмо от центра сертификации. Допускаются следующие имена: - admin@<доменное_имя> - administrator@<доменное_имя> - webmaster@<доменное_имя> - hostmaster@<доменное_имя> - postmaster@<доменное_имя> В письме вы получите уникальный код и ссылка для подтверждения. Скопируйте код и перейдя по ссылке, вставьте его в соответствующее поле. Другие способы требуются для получения сертификатов Comodo. **С помощью DNS-записей.** После генерации CSR (Certificate Signing Request — запрос подписи сертификата), вы получите хеш-значения вашего запроса, которые необходимо в запись CNAME вашей доменной зоны. Данная запись имеет строгий формат и будет выглядеть следующим образом: ``` _.. CNAME .[.]comodoca.com. ``` Следует обратить внимание, что: - SHA-256 хеш-последовательность разделена символом "." (точка) надвое, по 32 символа с обеих сторон; - Запись считается верной, если в конце доменного имени стоит символ "." (точка); - Мультидоменные сертификаты требуют индивидуальные CNAME-записи, т.е. в вашем заказе они должны быть созданы для каждого домена отдельно; - В CNAME-записи не нужно указывать "www", даже если вы получаете сертификат именно для этого поддомена. Для наглядности, рассмотрим пример для поддомена: _09f7e02f1975bf211da707a341f153b3.subdomain0.mydomain.com. CNAME 3d874ab7b199418a9014258369048163.9eb1f1472f4da5aa1ab5bcca1b0df53.comodoca.com. Для домена www: _81f9e13a1855bf221da717a341f153b3.mydomain.com. CNAME 3d874ab7bacd5f2e3a9e1f2b3a3cc163.1ae0cbd19f4da5aa1ab5bcca1aedf64.comodoca.com. **С помощью HTTP(S)** После генерации CSR (Certificate Signing Request — запрос подписи сертификата), вы получите хеш-значения вашего запроса. Для прохождения валидации необходимо создать текстовый файл и разместить его согласно правилам: Файл должен быть доступен по ссылке: ``` http:///.well-known/pki-validation/.txt ``` Содержимое файла — 2 строки: <Хеш-значение SHA-256> comodoca.com Важно! - Валидация не будет выполнена, если используются перенаправления; - Обязательно проверяем существование всех каталогов по указанному выше пути; - Если заказан Мультидоменный сертификат, то файлы должны быть доступны для каждого домена; - Проверка www-доменов происходит на основном домене; - Имя txt-файла не начинается с символа подчеркивания (_) и указано в верхнем регистре; - Содержимое файлов не требует разделения "точкой". После comodoca.com символ точки не ставится. **Рассмотрим примеры.** для основного домена и в случае с "www": URL — http://mydomain.com/.well-known/pki-validation/81F9E13A1855BF221DA717A341F153B3.txt Содержимое файла: 3d874ab7bacd5f2e3a9e1f2b3a3cc1631ae0cbd19f4da5aa1ab5bcca1aedf64 comodoca.com Для домена третьего уровня — subdomain0.mydomain.com: URL — http://subdomain0.mydomain.com/.well-known/pki-validation/09F7E02F1975BF211DA707A341F153B3.txt Содержимое файла: 3d874ab7b199418a90142583690481639eb1f1472f4da5aa1ab5bcca1b0df53 comodoca.com **Валидация организации (OV — Organization validation)** Для проведения OV, следует выполнить три этапа. **Этап 1.** Выполнить валидацию домена (DV). Способы описаны выше. **Этап 2.** Непосредственно валидация организации. Несколько способов: - Центр сертификации самостоятельно проверяет существование организации через госреестры организаций; - Открытые реестры данных, например, Companies House GOV.UK, Lursoft.lv, Duns & Bradstreet, [Hoovers](http://www.hoovers.com/company-information.html). - Адрес организации следует подтвердить одним из следующих документов: устав организации (с указанием адреса); - выданная правительством лицензия на ведение коммерческой деятельности (с указанием адреса); - копия выписки о состоянии банковского счета организации за последние 6 месяцев; (можно указать номер счета) - копия телефонного счета организации за последние 6 месяцев; - копия счета за коммунальные услуги организации за последние 6 месяцев или текущий договор аренды для организации. - Нотариально заверенное письмо (Legal Opinion Letter). **Этап 3.** Сотрудники центра сертификации (зачастую робот) звонят для подтверждения подлинности запроса сертификата, а также для завершения процесса валидации. Сертификат будет подписан и выпущен после успешного завершения всех шагов. **Расширенная валидация (EV — Extended validation ).** **Этап 1 ** Заполняете формы центра сертификации. Специальные бланки вам будут предоставлены. **Этап 2** Валидация организации, процесс описан выше. **Этап 3** Валидация домена. Процесс описан в самом начале. **Этап 4** Как и в случае OV, сотрудники центра сертификации звонят для подтверждения подлинности запроса сертификата и завершения процесса валидации. Сертификат будет подписан и выпущен после успешного завершения всех шагов. Подборки SSL-сертификатов: [DV сертификат для домена](https://serverspace.by/services/ssl/dv.md), [EV сертификат "зеленая строка"](https://serverspace.by/services/ssl/ev.md), [WC сертификат для поддоменов](https://serverspace.by/services/ssl/wc.md), [SAN мультидоменный сертификат](https://serverspace.by/services/ssl/san.md). https://serverspace.by/support/help/ping-v-windows-server-2012.md Для того, чтобы включить ответ на ICMP-запросы (Ping), существует два системных способа: 1. Разрешить пинги через настройки брандмауэра Windows. 2. Воспользоваться программной оболочкой Powershell. Характерной особенностью сетевой безопасности Windows Server 2012 и Windows Server 2012 R2 является то, что ответ на ICMP-запросы отключен в системе по умолчанию, иными словами, система не пингуется. Для того чтобы исправить эту проблему существует два системных способа: 1. Разрешить пинги через настройки брандмауэра Windows. 2. Воспользоваться программной оболочкой Powershell. Первый способ. 1. В главном меню открываем "Администрирование", затем "Брандмауэр Windows в режиме повышенной безопасности". Альтернативный путь — Пуск -> Панель управления -> Система и безопасность -> Брандмауэр Windows -> Дополнительные параметры. 2. В новом окне, в левой части, выбираем Правила для входящих подключений, а в основной части ищем "Общий доступ к файлам и принтерам (эхо-запрос — входящий трафик ICMPv4)". Кликаем правой кнопкой мыши и из контекстного меню выбираем "Включить правило". 3. Проверяем результаты с другой машины. Второй способ. Если вы не сторонник пользовательского интерфейса и/или он по какой-то причине не работает, то можно воспользоваться PowerShell. 1. Запускаем PowerShell 2. Поочередно вводим две команды ``` Import-Module NetSecurity ``` Set-NetFirewallRule -DisplayName "Общий доступ к файлам и принтерам (эхо-запрос — входящий трафик ICMPv4)" -enabled True Важно! Имена существующих правил следует указывать как они вписаны в общий список и на том же языке. В английской версии правило называется "File and Printer Sharing (Echo Request – ICMPv4-In)" 3. Проверяем Следует обратить внимание, что если в сети используется протокол IPv6, то следует выполнять аналогичные действия подставляя протокол IPv6. Если указанные методы решения проблем не помогли, то рекомендуем: -проверить используется ли Firewall стороннего производителя и проверить его настройки; -проверить разрешено ли хождение ICMP-трафика через шлюз; Аналогичную проверку нужно сделать и на удаленной машине. https://serverspace.by/support/help/kak-activirovat-promocod.md Инструкция по использованию промокода в сервисе Serverspace.by. Для активации промокода вам потребуется авторизоваться в панели управления. В случае получения промокода Serverspace вы можете активировать его следующим образом: 1. [Зарегистрируйтесь](https://auth.serverspace.by/register) и активируйте аккаунт с помощью регистрационного письма. 2. Авторизуйтесь в панели управления, нажмите на три точки в правом верхнем углу экрана и выберите раздел "Настройки": 3. Перейдите во вкладку "Промокод", введите полученный прокомод в одноименном поле и нажмите кнопку "Активировать промокод": https://serverspace.by/support/help/redaktirovanie-fayla-hosts.md Когда требуется редактирование файла hosts? При настройке почтового сервера или если к проекту требуется доступ по доменному имени. Внесенные изменения в файл hosts нельзя проверить с помощью утилит. ARPANET появился в 1969 году и до появления DNS (датируется 1983 годом), указание имен узлов сети, доменных имен и их соответствие IP-адресам производилось в текстовом файле hosts. Данный файл составлялся на предприятии и был доступен на файлообменных серверах или просто рассылался между компьютерами сети. Немного теории. Структура файла представляет собой указание IP-адреса узла, соответствующего ему имени и комментарии. Для понимания написанного, ниже немного отредактированный файл. Как видно, комментарии начинаются с символа "решетка" (sharp) #. Принцип работы прост — указываем IP-адрес удаленной, а можно и собственного сервера или рабочей станции, напротив пишем имя. В операционных системах семейства Microsoft Windows, в том числе и серверные версии, файл располагается по пути C:Windowssystem32driversetchosts. В Unix-подобных системах, файл доступен по пути **/etc/hosts**. Две разные операционные системы, а структура файлов одинакова. Редактировать файл можно любым текстовым редактором, в Windows среде — Блокнот; в Ubuntu — nano, в FreeBSD — ee. Изменение в файл можно вносить только из-под учетной записи с правами администратора. Когда требуется редактирование файла hosts? 1. При настройке почтового сервера, а также для нормального функционирования Web-сервера. 2. Если вы ведете работу над неким проектом и он требует доступ по доменному имени. Важно то, что внесенные изменения в файл hosts нельзя проверить с помощью утилит nslookup, dig и им подобных, так как они работают непосредственно с DNS-серверами, а не с этим файлом. Также важно, что некоторые антивирусы считают неприемлемым редактирование этого файла и отменяют изменения в нем. https://serverspace.by/support/help/windows-server-adding-a-new-user.md Подробная инструкция по добавлению нового пользователя, а также назначению ему определенных прав в операционных системах семейства Microsoft Windows Server. В обязанности системного администратора помимо всего прочего входит и добавление нового пользователя, а также назначение ему определенных прав. Рассмотрим как это сделать в операционных системах семейства Microsoft Windows Server. Данный способ универсален для большинства существующих версий данной ОС. Возможны некоторые фразеологические отличия. В меню Пуск, выбираем **Администрирование** ("Средства администрирования" в Windows Server 2016). В новом окне двойным кликом мыши открываем "**Управление компьютером**". В левой части открывшегося окна раскрываем ветку "Локальные пользователи и группы" и открываем папку Пользователи. В основной части окна, кликаем правой кнопкой мыши по свободному месту и в контекстном меню выбираем "**Новый пользователь**". В новом окне вводим логин пользователя, пароль и подтверждение пароля. Для полноты понимания какому пользователю принадлежит учетная запись, а также чтобы у коллег не возникало вопросов рекомендуется заполнять поля "Полное имя" и "Описание". Для повышения безопасности рекомендуется установить галку "Требовать смены пароля при следующем входе в систему" только в том случае, если вы используете один и тот же пароль для всех создаваемых учетных записей. Отключение учетной записи допустимо, например, если пользователь только заступает в должность. Кликаем по кнопке **Создать**. Учетная запись создана. Перейдем к ее настройке. Для этого все в том же окне "Управление компьютером" кликаем по учетной записи правой кнопкой мыши. В контекстном меню выбираем **Свойства**. Настройки учетной записи пользователя, для удобства, представлены на нескольких вкладках. Общие — управляет базовыми параметрами учетной записи. Членство в группах — позволяет задать пользователю членство в группах. Профиль — на этой вкладке определяется расположение пользовательского домашнего каталога, путь к профилю пользователя, а также сценарий для входа. Среда — дает возможность назначить запуск определенной программы при входе в систему, а также разрешает подключение жестких дисков, принтеров и выбор принтера по умолчанию при входе. Сеансы — позволяет накладывать ограничения на общую длительность сеанса, на время бездействия и многое другое. Профиль служб удаленных рабочих столов — задает профиль пользователя, который будет загружен при входе на сервер средствами удаленного рабочего стола. Входящие звонки — определяет параметры сетевых соединений, а также их права. Рассмотрим делегирование прав пользователю на доступ к удаленному рабочему столу. Выбираем вкладку **Членство в группах** и кликаем по кнопке **Добавить**. В открывшемся окне кликаем по кнопке Дополнительно. Затем в новом окне кликаем по кнопке Поиск. Внизу окна отобразятся все доступные группы. Выбираем Пользователи удаленного рабочего стола двойным кликом или одиночным с последующим нажатием на кнопку ОК. Окно Выбор: "Группы" изменит внешний вид. Нажимаем кнопку ОК. Теперь под учетными данными этого пользователя можно подключиться к серверу. https://serverspace.by/support/help/otkluchit-usilennuya-bezopasnosti-ie.md Инструкция по отключению настроек усиленной безопасности Internet Explorer (IE ESC) на Windows Server 2012. Как убрать всплывающие окна с предложением добавить каждый новый URL в доверенную зону. Так бывает, что для выполнения каких-либо задач нужно воспользоваться браузером Internet Explorer, но в серверных версиях операционной системы Microsoft Windows его функционал сильно ограничен безопасностью. Будем разбираться как это исправить. На панели задач кликаем по значку "**Диспетчер серверов**". В открывшемся окне, в левой части, кликаем по "**Локальный сервер**", а в основной части окна, по ссылке "**Включено**" напротив "**Конфигурация усиленной безопасности Internet Explorer**". В новом окне отключаем параметр для администраторов и пользователей. Кликаем по кнопке ОК. Окно закроется. В предыдущем окне, спустя несколько секунд, параметр изменится на "Отключено". Возможно потребуется обновить содержимое окна. Операцию по включению параметра следует проделать в обратной последовательности. Альтернативный путь решения — использовать **PowerShell** Открываем окно PowerShell **** Вставляем в него скрипт (клик правой кнопкой мыши в окне). ``` function Disable-IEESC { $AdminKey = "HKLM:SOFTWAREMicrosoftActive SetupInstalled Components{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}" $UserKey = "HKLM:SOFTWAREMicrosoftActive SetupInstalled Components{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0 Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0 Stop-Process -Name Explorer Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." -ForegroundColor Green } Disable-IEESC ``` Исполняем его нажатием по клавише **Enter** (иногда требуется двойное нажатие). Internet Explorer теперь работает в обычном режиме. https://serverspace.by/support/help/ustanovka-open-vm-tools.md Для оптимизации работы виртуальных машин под управлением VMware используют Open-VM-Tools. Рассмотрим подробнее установку для Debian, Ubuntu, CentOS, FreeBSD Для оптимизации и ускорения работы виртуальных машин под управлением VMWare используют программное решение Open-VM-Tools. Рассмотрим подробнее установку для разных ОС. ## Debian или Ubuntu Обновляем текущее состояние программ до последнего через apt-get. Установка пакета Open-VM-Tools происходит стандартными средствами ОС. Ожидаем окончания операции, после чего решение доступно для работы: ```bash sudo apt-get install open-vm-tools ``` ## CentOS Обновляем базу продуктов. Установка производится через стандартную команду YUM. Для CentOS 6 версии есть отличия. После установки OVT, запускаем сервис: ```bash yum -y install open-vm-tools ``` Теперь добавим его в автозагрузку: ``` chkconfig vmtoolsd on ``` ## FreeBSD Здесь все просто. Набираем в терминале: ``` pkg install open-vm-tools ``` Процесс займет некоторое время. После чего администратору будет доступен полный функционал. https://serverspace.by/support/help/uvelichenie-diskovo-prostranstva-vyos.md В этом руководстве будет рассмотрен процесс увеличения дискового пространства сервера под управлением операционной системы vyOS В этом руководстве будет рассмотрен процесс увеличения дискового пространства сервера под управлением операционной системы vyOS. ### Настройка _Примечание: все последующие действия необходимо выполнять в режиме суперпользователя vyos:_ ``` sudo su ``` Для начала выведете на экран все существующие диски с помощью команды fdisk: ``` fdisk -l ``` ``` Disk /dev/sda: 32.2 GB, 32212254720 bytes 255 heads, 63 sectors/track, 3916 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000b4645 Device Boot Start End Blocks Id System /dev/sda1 * 1 1306 10484736 83 Linux ``` Затем необходимо перечитать увеличенный размер диска: ``` echo 1 > /sys/block/sda/device/rescan ``` Запустите fdisk: ``` fdisk -u -c /dev/sda ``` Далее выполните действия в интерфейсе команды fdisk. Удалите единственные существующий раздел опцией d: ``` Command (m for help): d Selected partition 1 ``` Опцией n создайте новый раздел на vyos: ``` Command (m for help): n ``` Выберете тип — основной: ``` Command action l logical (5 or over) p primary partition (1-4) p ``` Укажите номер: ``` Partition number (1-4): 1 ``` Выберите начало и конец занимаемого пространства по умолчанию (при нажатии клавиши Enter выберите значения по умолчанию): ``` First sector (XXX-YYY, default ZZZ): Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ): ``` Далее с помощью опции t изменим файловую систему на созданном разделе: ``` Command (m for help): t Selected partition 1 ``` Введите шестнадцатеричный код файловой системы Linux: ``` Hex code (type L to list codes): 83 ``` Опцией w сохраните внесенные изменения и выйдите из утилиты. ``` Command (m for help): w ``` ``` The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks. ``` Необходимо сообщить ядру об изменениях, для этого перезагрузите сервер: ``` /sbin/shutdown -r now ``` Заново подключитесь к нему с правами суперпользователя по протоколу SSH. С помощью следующей команды сообщите ядру об изменении таблицы разделов: ``` partx /dev/sda ``` Далее настройте размер файловой системы: ``` resize2fs /dev/sda1 ``` Проверить изменения можно с помощью команды df: ``` df -h ``` Дисковое пространство VyOS увеличено. https://serverspace.by/support/help/ustanovka-postfix-i-dovecot-na-ubuntu.md Создание почтового сервера под Ubuntu 16.04 LTS, установка и настройка Postfix (агента передачи почты) и Dovecot из ssh-клиента putty. Пошаговая инструкция. Иногда на предприятии или в быту требуется создать собственный почтовый сервер. Рассмотрим создание такого сервера под управлением ОС Ubuntu 16.04 LTS, а также установку и настройку почтовых агентов Postfix и Dovecot. Все действия будем выполнять из SSH-клиента PuTTY. Postfix — агент передачи почты (MTA — mail transfer agent), является свободным программным обеспечением и создавался как альтернатива Sendmail. Dovecot — свободный IMAP- и POP3-сервер, разработанный с акцентом на безопасность, гибкость настройки и быстродействие. Перед установкой обновляем данные о репозиториях и индексах пакетов: ```bash sudo apt-get update ``` Обновляем пакеты и компоненты системы: ```bash sudo apt-get upgrade ``` Перезагружаем систему, иногда это требуется: ``` sudo reboot ``` Приступим к установке. Сперва устанавливаем Postfix: ```bash sudo apt-get install postfix ``` Система спрашивает о необходимости установки пакетов и намерении продолжать. Отвечаем Y. Запустится пользовательский интерфейс установки: На клавиатуре нажимаем курсорную клавишу вправо (->). Будет подсвечен "Ok". На клавиатуре нажимаем Enter. В обновленном окне Выбираем Internet site, нажимаем курсорную клавишу вправо (->), подсветится "Ок" — нажимаем Enter: В новом окне, в поле System mail name, нужно указать доменное или локальное имя сервера и нажать Enter на клавиатуре: Установка Postfix завершена. Приступаем к настройке. Переходим в каталог /etc/postfix: ``` cd /etc/postfix ``` Создаем файл virtual, в котором будут храниться почтовые адреса и имена пользователей почтового сервера: ``` sudo touch virtual ``` Создаем директорию private для хранения файлов настроек yandex smtp: ``` sudo mkdir private ``` Проверим результаты командой ls: Перейдем в каталог /etc/postfix/private/ и создадим еще три необходимых файла: ``` cd /etc/postfix/private/ ``` ``` sudo touch canonical sender_relay sasl_passwd ``` canonical — в файле определяются правила подмены адресов sender_relay — определяется соответствие доменов и конкретных отправителей к внешним службам sasl_passwd — в этот файл добавим внешние учетные данные почтового провайдера Теперь внесем изменения в файл конфигурации main.cf: ``` sudo nano /etc/postfix/main.cf ``` Записи в данном файле имеют формат параметр = значение1, значение2, значение3. Комментарии начинаются с символа "решетка" #. Заменим значение параметра myhostname на ваше доменное имя. Если доменного имени нет — оставляем по умолчанию: ``` myhostname = example.org ``` В параметр mydestination следует указать IP-адрес сервера, а также доменное имя, через запятую, если таковое имеется. Чтобы письмо можно было переслать на другие домены или адреса, заменяем параметр alias_maps на virtual_alias_maps и изменяем расположение хеш-файла. Должно получиться так: ``` virtual_alias_maps = hash:/etc/postfix/virtual ``` В параметре mynetworks определяем список авторизованных сетей: ``` mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 ``` Для отправки почты с помощью Yandex SMTP добавим в конец файла следующие строки: ``` smtp_sasl_auth_enable = yes ``` ``` smtp_sasl_mechanism_filter = login ``` ``` smtp_sasl_password_maps = hash:/etc/postfix/private/sasl_passwd ``` ``` smtp_sasl_security_options = noanonymous ``` ``` smtp_sasl_type = cyrus ``` ``` smtp_sender_dependent_authentication = yes ``` ``` sender_dependent_relayhost_maps = hash:/etc/postfix/private/sender_relay ``` ``` sender_canonical_maps = hash:/etc/postfix/private/canonical ``` Выйдем из редактирования файла сочетанием клавиш Ctrl+X, и на вопрос о желании сохранить файл нажимаем Y и Enter. Следует объяснить, что значат добавленные строки: ``` smtp_sasl_auth_enable — параметр отвечает за включение поддержки sasl для проверки подлинности почтовых серверов; ``` ``` smtp_sasl_password_maps – указываем путь до файла sasl_passwd с внешними учетными данными; ``` ``` smtp_sasl_security_options – параметр безопасности, запрещающий механизмы, которые разрешают анонимную проверку подлинности. ``` Возможные значения параметра: ``` noplaintext — не использовать механизмы, которые передают незашифрованное имя пользователя и пароль; ``` ``` nodictionary — не использовать механизмы, которые уязвимы для атак по словарю; ``` ``` mutual_auth — использовать только механизмы, которые прошли проверку подлинности клиента и сервера друг с другом; ``` ``` smtp_sasl_type — тип плагина sasl, используемый для проверки подлинности, по умолчанию установлен cyrus; ``` ``` smtp_sasl_mechanism_filter — список поддерживаемых методов аутентификации; ``` ``` smtp_sender_dependent_authentication – проверка подлинности будет зависеть от домена отправителя; ``` ``` sender_dependent_relayhost_maps — указываем путь до файла sender_relay; ``` ``` sender_canonical_maps — указываем путь до файла canonical. ``` Далее внесем изменения в файлы: ``` echo "@yandex.ru username@yandex.ru" >> /etc/postfix/private/canonical echo "@yandex.ru smtp.yandex.ru" >> /etc/postfix/private/sender_relay ``` Вместо ****** указываем пароль от почты: echo "[smtp.yandex.ru] username@yandex.ru:******" >> /etc/postfix/private/sasl_password Для переадресации писем на другие почтовые адреса следует создать псевдонимы. Для этого отредактируем файл virtual: ``` sudo nano /etc/postfix/virtual ``` Указываем произвольные электронные адреса, которые необходимо создать, и имена существующих системных пользователей, которым нужно доставлять почту: ``` mailbox_1@example.org username1 ``` ``` mailbox_2@example.org username1, username2 ``` Чтобы посмотреть список всех системных пользователей, выполним команду: ``` cut -d: -f1 /etc/passwd ``` Преобразуем файл /etc/postfix/virtual и файлы в директории /etc/postfix/private/ в справочные таблицы выполнив команду postmap и перезапускаем сервис: ``` sudo postmap /etc/postfix/virtual ``` ``` sudo postmap /etc/postfix/private/* ``` ``` sudo /etc/init.d/postfix restart ``` С помощью iptables (это Firewall в Unix-системах) добавим разрешающие правила для отправки почты. Аналогичное следует выполнить и для других портов (465 и 587) если такие используются: ``` sudo iptables -A INPUT -p tcp —dport 25 -j ACCEPT ``` Проверим работу с помощью утилиты mutt. Для начала установим её: ```bash sudo apt-get install mutt ``` Теперь проверяем: ``` echo "Text message" | mutt -s "Subject" mailbox@yandex.ru ``` Настроим получение писем с помощью Dovecot, но вначале установим: ```bash sudo apt-get install dovecot-imapd dovecot-pop3d ``` Перейдем к настройке. В файле /etc/dovecot/dovecot.conf перечислим протоколы, с которыми будем работать: ``` protocols = pop3 pop3s imap imaps ``` В файле /etc/dovecot/conf.d/10-mail.conf проверяем значение параметра mail_location: ``` mail_location = mbox:~/mail:INBOX=/var/mail/%u ``` Перезапускаем сервис: ``` sudo /etc/init.d/dovecot restart ``` В файл /etc/hosts, добавим собственное доменное имя: ``` ip-address example.com ``` С помощью iptables (это Firewall в Unix-системах) добавим разрешающие правила для получения почты: ``` sudo iptables -A INPUT -p tcp —dport 220 -j ACCEPT ``` ``` sudo iptables -A INPUT -p tcp —dport 993 -j ACCEPT ``` ``` sudo iptables -A INPUT -p tcp —dport 110 -j ACCEPT ``` ``` sudo iptables -A INPUT -p tcp —dport 995 -j ACCEPT ``` Для проверки нужно отправить письмо с любого почтового сервиса на созданные почтовые адреса. Письмо должно быть доставлено только одному адресату, только существующему системному пользователю и только на адрес с указанием доменного имени. Доставка писем по IP-адресу невозможна. Следует обратить внимание, что после перезагрузки сервера правила iptables следует указать заново. Для решения этой проблемы следует прибегнуть к чтению руководства к iptables: ``` man iptables ``` ``` man iptables-save ``` ``` man iptables-restore ``` https://serverspace.by/support/help/pfsense-2-3-configuring-site-to-site-vpn.md Процесс настройки условно разделим на два этапа: 1. Настройка pfSense и конфигурирование частных сетей; 2. Реализация Site-to-Site. Приступаем. Рассмотрим настройку pfSense. Для начал, думаю, стоит объяснить что такое pfSense и Site-to-Site VPN и в чем преимущества. Затем перейдем к реализации. pfSense — это дистрибутив межсетевого экрана основанный на операционной системе FreeBSD. Дистрибутив позволяет реализовать такие механизмы, как NAT, CARP, VPN (в т.ч. PPTP, IPsec, OpenVPN), Captive portal. Кроме этого выполняет функционал классического файрволла, динамического DNS, DHCP и прокси сервера. Прост в развертывании. Почему Site-to-Site? Site-to-Site позволяет сконфигурировать только шлюзы в удаленных подсетях, при этом отпадает необходимость конфигурирования самих узлов сети. Говоря простым языком, способ Site-to-Site соединяет два офиса в единую сеть, а Point-to-Site — удаленных сотрудников с офисом. В статье рассмотрим пример соединения двух уже существующих сетей — физической и виртуальной. Процесс настройки условно разделим на два этапа: 1. Настройка pfSense и конфигурирование частных сетей; 2. Реализация Site-to-Site. Приступаем. Сперва настроим внутреннюю локальную сеть и интерфейс шлюза. Для этого, в браузере, переходим по IP-адресу сервера или доменному имени, если такое имеется. Вводим логин и пароль и попадаем на Главный экран (Dashboard). В меню программы переходим в раздел интерфейсов (Interfaces) -> Назначение (Assignments). В нашем примере только два интерфейса и уже распределены — оставляем как есть. Если у Вас несколько интерфейсов, следует выбрать необходимый интерфейс по mac-адресу и нажать кнопку добавить (Add). Назначаем IP-адрес интерфейсу "смотрящему" в локальную сеть. В меню программы переходим в раздел интерфейсов (Interfaces) -> LAN. По окончании настройки нажимаем кнопку Сохранить (Save). Для всех серверов в локальной сети, в качестве шлюза по умолчанию, устанавливаем IP-адрес, указанный в LAN. Важно! Если вы используете облачные сервисы, то объединять узлы сети необходимо из панели администрирования облачного сервиса через "Виртуальные сети". Настраиваем Firewall для локальных соединений. В меню программы выбираем Firewall -> Правила (Rules) -> LAN. Наживаем кнопку Добавить (Add). На новой странице проверяем параметры: настраиваемый интерфейс (Interface) — LAN; Протокол (Protocol) — TCP, но можно и Any; Источник (Source) — Any; Назначение (Destination)- Any. Настройки сохраняем кликнув по клавише Сохранить (Save). Следует обратить внимание, что эти же настройки надо сделать на всех удаленных серверах pfSense, соединяемых в единую сеть. Приступаем к настройке туннеля Site-to-Site. В начале настраиваем OpenVPN. В главном меню выбираем VPN -> OpenVPN и кликаем по кнопке Добавить (Add). На новой странице выбираем: Режим работы сервера (Server mode) — Peer to Peer (Shared Key); Протокол (Protocol) — UDP on IPv4 only; Device mode — tun — Layer 3 Tunnel Mode; Интерфейс (Interface) — WAN; Порт (Local port) — 1194; Shared key — Устанавливаем галку напротив Automatically generate a shared key; Алгоритм шифрования (Encryption algorithm) — оставляем по умолчанию; Аппаратное шифрование (Hardware Crypto) — No hardware crypto acceleration; IPv4 Tunnel Network: 10.0.10.0/24 — указываем адреса используемые в туннеле; IPv4 Remote networks: 10.0.1.0/24 — указываем адрес сети находящийся за удаленным шлюзом pfSense. Сохраняем настройки и не забываем кликнуть по зеленой кнопке Применить изменения (Apply Changes). Настроим Firewall для нового интерфейса. В главном меню выбираем Firewall -> Правила (Rules). Выбираем пункт OpenVPN и кликаем по кнопке Добавить (Add). На обновленной странице проверяем параметры: Интерфейс (Interface) — OpenVPN; Протокол — TCP, но лучше Any; Источник (Source) и назначение (Destination) — Any. По окончании кликаем по кнопке Сохранить (Save). Не забываем кликнуть по зеленой кнопке Применить изменения (Apply Changes) Настроим Firewall для интерфейса WAN. В главном меню выбираем Firewall -> Правила (Rules). Выбираем пункт OpenVPN и кликаем по кнопке Добавить (Add). Интерфейс (Interface) — WAN; Протокол (Protocol) — UDP; Диапазон портов назначения (Destination port range) в обоих выпажающих списках (From и To) выбираем OpenVPN (1194). Сохраняем настройки. Не забываем кликнуть по зеленой кнопке Применить изменения (Apply Changes). Теперь копируем сгенерированный ключ, для передачи его на удаленный маршрутизатор. В главном меню выбираем VPN -> OpenVPN. Кликаем по значку "Карандаш" (редактировать). На обновленной странице из пункта Shared Key копируем всё содержимое поля в текстовый редактор, например, Блокнот. Осталось настроить удаленный pfSense-шлюз в качестве клиента. В главном меню выбираем VPN -> OpenVPN и кликаем по пункту Clients, затем по кнопке Добавить (Add). На открывшейся странице проверяем параметры: Режим работы сервера (Server mode) — Peer to Peer (Shared Key); Протокол (Protocol) — UDP on IPv4 only; Device mode — tun — Layer 3 Tunnel Mode; Интерфейс (Interface) — WAN; Адрес сервера (Server host address) — указывается именно WAN интерфейс сервера, который настраивали ранее; Порт (Local port) — 1194; Shared key — Снимаем галку напротив Automatically generate a shared key; Алгоритм шифрования (Encryption algorithm) — оставляем по умолчанию; Аппаратное шифрование (Hardware Crypto) — No hardware crypto acceleration; IPv4 Tunnel Network: 10.0.10.0/24 — указываем адреса используемые в туннеле; IPv4 Remote networks: указываем адрес сети находящийся за удаленным сервером — шлюзом pfSense. Кликаем Сохранить (Save). Затем по зеленой кнопке Применить изменения (Apply Changes). На этом настройка окончена. https://serverspace.by/support/help/ustanovka-ansible-na-ubuntu-18-04.md Инструкция по установке и настройке системы управления конфигурациями Ansible на виртуальный VPS сервер под управлением Ubuntu 18.04. Шаг 1: Обновите локальную базу пакетов. Инструкция по установке Ansible на виртуальный сервер под управлением Ubuntu 18.04. ## Что такое Ansible? Ansible это один из главных трендов автоматизации технологических процессов и производств с помощью программных средств. Это инструмент с открытым исходным кодом для управления программным обеспечением, конфигурацией и развертыванием приложений на множестве хостов. Ansible довольно просто использовать, но при этом он достаточно мощный, чтобы автоматизировать сложные многоуровневые среды ИТ-приложений. ## Установка Обновите локальную базу пакетов: ```bash sudo apt update ``` Для начала установите пакет software-properties-common, который позволяет легко управлять дистрибутивами и источниками программного обеспечения от независимых поставщиков: ```bash sudo apt install software-properties-common ``` С помощью этого инструмента можно управлять персональными архивами пакетов (PPA), которые позволяют распространять собственные пакеты и утилиты без лишних сложностей. Затем добавьте репозиторий Ansible PPA с помощью следующей команды: ```bash sudo apt-add-repository ppa:ansible/ansible ``` В процессе присоединения потребуется нажать клавишу Enter. Еще раз обновите базу пакетов и выполните установку Ansible: ```bash sudo apt update ``` ```bash sudo apt install ansible ``` Теперь на виртуальном сервере установлено программное обеспечение Ansible, необходимое для администрирования ваших хостов. ## Настройка доступа к хостам по SSH Ansible в основном связывается с клиентскими компьютерами через SSH. В нашей инструкции рассмотрено использование SSH-ключей, т.к. этот способ помогает упростить процесс подключения и является более безопасным, чем использование паролей. Подробнее о том, что такое SSH-ключи и как с ними работать, можно прочитать в нашей инструкции. С помощью следующей команды создайте SSH-ключ, который будет использоваться для подключения к хостам: ```bash ssh-keygen -t rsa -b 4096 ``` Скопируйте сгенерированный ключ на каждый хост, который будет обслуживаться Ansible: ```bash ssh-copy-id user_name@ip-address ``` Например: ssh-copy-id root@123.122.123.122 С помощью текстового редактора откройте следующий файл конфигурации: ``` vi /etc/ansible/hosts ``` Используя следующий синтаксис, где group_name — удобное название группы серверов, а your_server_ip_1 и your_server_ip_2 — IP-адреса обслуживаемых серверов, добавьте строки в открытый файл hosts: ``` your_server_ip_1 your_server_ip_2 ``` Например: ``` 123.122.123.122 46.122.123.20 ``` Сохраните изменения и закройте файл. Важно: на каждом хосте должен быть установлен язык python и пакет python-apt: ```bash apt-get install python python-apt ``` ## Проверка подключения По умолчанию Ansible выполняет подключение к удаленному хосту от имени пользователя root, если вы используете другого пользователя, то необходимо выполнить дополнительные настройки. Создайте каталог в структуре конфигурации, в котором будут находиться файлы в формате YAML для каждой группы: ``` sudo mkdir /etc/ansible/group_vars ``` Создайте подкаталог с названием вашей группы: ``` sudo nano /etc/ansible/group_vars/group_name ``` Например: ``` sudo nano /etc/ansible/group_vars/servers_ubuntu ``` Вставьте следующую строку, вместо user_name указав имя вашего пользователя: ``` — ansible_user: user_name ``` Сохраните изменения. Примечание: отдельные хосты можно настроить, создав алиасы и файлы с именами в соответствии с их псевдонимом в каталоге /etc/ansible/host_vars Для проверки подключения выполните команду ping: ``` ansible -m ping all ``` Ожидаемый результат: ``` 123.122.123.122 | SUCCESS => { "changed": false, "ping": "pong" } 46.122.123.20 | SUCCESS => { "changed": false, "ping": "pong" } ``` https://serverspace.by/support/help/nastroika-firewall-iptables-na-linux.md Для пользователей операционный системы Linux был разработан файрвол Iptables для защиты от угроз извне. Ниже в инструкции мы объясним, как его установить и настроить на любых машинах. Для новичков и продвинутых пользователей операционный системы Линукс был разработан специальный межсетевой экран (так называемый "файрвол") для защиты от угроз извне, который носит имя Iptables. Ниже в инструкции мы объясним, как его установить и настроить на любых машинах под ОС Linux. ## Что представляет собой Iptables Данная утилита – это надежный межсетевой экран, минимизирующий риск вирусных и хакерских атак. Процесс настройки файрвола происходит через командную строку при помощи установленных команд, которые позволяют юзеру самостоятельно контролировать поступление и отправление трафика. При попытке установки соединений с ПК, утилита обращается к своим правилам и проверяет, пропустить или ограничить соединение. В случае, когда никакого конкретного правила не выставлено, действия проходят по умолчанию. Файрвол предусмотрен стандартно во всех операционных системах Линукс. Для установки, если его внезапно не оказалось в сборке, или обновления следует применить такую команду: ```bash sudo apt-get install iptables ``` Альтернативой данной утилите может послужить Firestarter – он имеет графический интерфейс и разработан специально для пользователей, которые испытывают трудности с работой через командную строку. В случае настроек Iptables по удаленному SSH-соединению, пользователю следует проявлять аккуратность: одно ошибочное правило способно прервать подключение и запретить юзеру доступ к удаленной машине. ## Какие бывают правила Для легкой работы с файрволом разработана тройка основных правил (команд): **1.Input.** Правило применяется, когда необходимо контролировать входящий трафик. Например, когда юзер подключается к удаленному серверу по протоколу Secure Shell, файрвол начнет сравнивать его айпи с другими айпи из своего списка. В зависимости от результата, то есть от наличия в списке запретов, доступ пользователю будет открыт или закрыт. **2.Forward.** Правило применяется в случаях, когда необходимо проверить входящее сообщение, проходящее через данный компьютер. Например, маршрутизатор постоянно пересылает сообщения к адресату от сетевых пользователей или приложений. Зачастую данное правило не используется, если только юзер целенаправленно не настраивает маршрутизацию на своем устройстве. **3.Output.** Правило применяется к исходящим соединениям. Например, юзер хочет проверить пинг к одному из заданных сайтов – утилита вновь сверится со своими правилами из списка и определит, как поступить при пинге веб-сайта: разрешить или запретить. Примечание: Делая ping к внешнему хосту, машина не только отправляет пакет, но и дожидается обратного ответа. Поэтому, настраивая Iptables, не нужно забывать о наличии двухсторонних коммуникаций и запрещать подключение к серверам через протокол SSH. ## Как определиться с назначением файрвола Перед тем, как заниматься настройкой утилиты, потребуется разобраться с ее предназначением, а именно – действующими цепочками правил, то есть то, что она будет делать по умолчанию. Как отреагировать, когда запрашиваемые соединения не подходят ни к одному правилу? Для начала потребуется понять, какие из настроек межсетевого экрана уже установлены. Для этого применяется команда –L: Скриншот №1. Настройки межсетевого экрана Для четкого и понятного вывода информации можно воспользоваться дополнительной командой "grep". В итоге мы получаем тройку цепочек, у каждой из которых стоит разрешение приема трафика. Подобные правила предпочитают устанавливать при стандартной настройке. Если в процессе эксплуатации Iptables конфигурация была кем-то изменена, значения могут стоять другие. Проверить это можно за пару секунд, достаточно ввести команды: ``` iptables —policy INPUT ACCEPT ``` ``` iptables —policy OUTPUT ACCEPT ``` ``` iptables —policy FORWARD ACCEPT ``` Правильнее будет заблаговременно разрешить все входящие/исходящие подключения, после чего выставлять запреты под конкретный порт и айпи-адрес. Можно поступить диаметрально противоположным методом: установить запрет на все соединения, после чего давать разрешения только некоторым из них. Это можно реализовать таким способом: ``` iptables —policy INPUT DROP ``` ``` iptables —policy OUTPUT DROP ``` ``` iptables —policy FORWARD DROP ``` ## Что делать с соединением Настроив поведение утилиты, которое будет происходить автоматически, следует приступать к правилам, обрабатывающим входящий/исходящий трафик. Основные способы взаимодействия с трафиком: Accept – разрешение определенного соединения; Drop – игнорирование запросов (межсетевой экран продолжает свое функционирование, будто никакого запроса не происходило, а запрашивающие ресурсы не узнают об игнорировании); Reject – блокировка входящего трафика и отправка ответных сообщений с обозначением ошибки (в таком случае запрашивающие ресурсы будут уведомлены о блокировке их трафика). Пример того, как будет выглядеть ping для Разрешенного соединения (Accept): Скриншот №2. Ping для разрешенного соединения Проигнорированного трафика (Drop): Скриншот №3. Ping для проигнорированного трафика Отклоненного подключения (Reject): Скриншот №4. Ping для отклоненного подключения ## Разрешение и блокировка указанных соединений Iptables Как только политика отношения к трафику настроена, пора приступать к определению правил для конкретных соединений. Мы рассмотрим вариант с отклонением указанного подключения. Способы для разрешения и игнорирования будут устанавливаться похожим методом. Воспользуемся командой –А. Она позволит добавить новое правило к уже имеющейся цепочке. Межсетевой экран начинает проверку с самого верха, проходя по каждому из правил до тех пор, пока не обнаружит совпадения или не закончит список. В случае, когда необходимо разместить правила в определенное место (перед каким-то определенным), следует воспользоваться командой: iptables -I [цепочка] [номер позиции по списку для нового правила] ## Что делать с соединениями от одного айпи Для блокировки трафика, поступающего из одного и того же источника (например, айпи 120.120.120.120) подойдет команда: ``` iptables -A INPUT -s 120.120.120.120 -j DROP ``` Для блокировки трафика, поступающего с нескольких айпишников в определенном диапазоне, следует воспользоваться стандартной записью масок посредством слэша: ``` iptables -A INPUT -s 120.120.120.0/24 -j DROP ``` Либо записью необходимого диапазона: ``` iptables -A INPUT -s 120.120.120.0/255.255.255.0 -j DROP ``` ## Подключения к определенному порту Следующая команда сделает блокировку соединений типа Secure Shell с хостом 120.120.120.120: ``` iptables -A INPUT -p tcp —dport ssh -s 120.120.120.120 -j DROP ``` На месте Secure Shell допустимо применение любого протокола. После команды –р указывается тип подключений, в данном случае – TCP. В случае, когда используется другой тип, следует указывать его. Любому айпишнику будет запрещено подключаться к машине по Secure Shell соединению, если выполнить: ``` iptables -A INPUT -p tcp —dport ssh -j DROP ``` ## О состояниях соединения Существует множество протоколов, которым требуется двусторонняя коммуникация. К примеру, пользователю понадобилось поработать с SSH-соединением, ему придется внести правило сразу и в Output, и в Input. Что делать, если юзер хочет предоставить разрешение исключительно входящему соединению? В этом случае поможет состояние соединения. Оно даст возможность пользователю описать любую двустороннюю коммуникацию, в которой разрешено подключение заданного направления. Разрешим соединение типа SSH, приходящее через хост 120.120.120.120. Система будет отправлять данные по этому протоколу только, если сессия установлена. ``` iptables -A INPUT -p tcp —dport ssh -s 120.120.120.120 -m state —state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp —sport 22 -d 120.120.120.120 -m state —state ESTABLISHED -j ACCEPT ``` ## Как сохранить изменения в конфигурации файрвола После всех изменений, которые мы внесли в цепочку межсетевого экрана, понадобится их сохранение. Иначе перезапуск утилиты удалит проделанные нами настройки. Команда сохранения будет различаться от дистрибутива к дистрибутиву Линукс. Для Убунту команда выглядит так: ``` =sudo /sbin/iptables-save ``` Для Red Hat и CentOS: ``` =/sbin/service iptables save ``` Либо ``` =/etc/init.d/iptables save ``` ## Дополнительно Чтобы вывести сконфигурированное ранее правило: ``` iptables –L ``` Чтобы просмотреть данные о входящих/исходящих пакетах и трафике, достаточно добавить ключ –v. Данные об имени хоста, протоколах, сетях появятся в цифровом виде, если дописать в команду –n. Разом удалить все имеющиеся установленные правила возможно командой: ``` iptables –F ``` https://serverspace.by/support/help/upravlenie-logami-s-pomoshhyu-logrotate-na-ubuntu-16.md В статье расскажем о настройке утилиты Logrotate, установленной на серверной ОС Ubuntu 16.04. И как с ее помощью сохранять и получать доступ к логам. Любая информационная система сохраняет операции и действия в специальных текстовых файлах – логах. Чтобы ИС исправно сохраняла логи, а администраторы могли получить к ним доступ, используют специализированное ПО. В статье расскажем об одной утилите – Logrotate, которая установлена на серверной ОС Ubuntu 16.04. ### Предварительная подготовка Logrotate архивирует лог-файлы в автоматическом режиме по заданным параметрам. Если не сжимать логи и не удалять старые версии, то со временем закончится место на жестком диске. Чтобы избежать подобной ситуации, системные администраторы используют программы. Прежде, чем настраивать логирование, подключаемся к серверной платформе по SSH и выполняем нижеуказанные действия от имени суперпользователя. ### Установка Подключившись к Ubuntu Server, проверяем наличие программы командой: ``` logrotate — version ``` **Важно!** На середину августа 2019 года релиз 3.15.0. Если вместо ответа в виде цифр, пользователь получает сообщение, что утилита не установлена, то инсталлируем стандартными средствами "Убунту". ### Настройка Стандартная конфигурация Logrotate хранится по двум путям: 1. Файл /etc/logrotate.conf хранит часть конфигураций по умолчанию. Также он содержит шаблоны архивирования для несистемных файлов. 2. Второй путь – /etc/logrotate.d/ предназначен для сохранения сторонних параметров, которые администратор задает самостоятельно. Здесь хранятся шаблоны ротаций для системных утилит (apt, rsyslog, dpkg и др.). После инсталляции утилита использует стандартный шаблон еженедельной ротации данных. Согласно параметрам архивируются логи, которые относятся к пользователю root и системной группе syslog. Зайдем во второй файл, который отвечает за системную команду apt, чтобы изучить стандартные параметры. ``` cat /etc/logrotate.d/apt ``` Внутри расположено два раздела: Скриншот №1. Содержимое файла. Как видно, данные хранятся в виде одинаковых блоков условий: - rotate 12 указывает, что утилита сохраняет последние двенадцать логов; - вторая строка означает обновление содержимого один раз в месяц; - compress – команда архивирования, по умолчанию используется стандартная утилита Linux-систем – gzip, если же требуется изменить на другую, то указываем ключи после команды; - четвертый параметр говорит logrotate о том, чтобы не сохранять сообщение с ошибкой, если лог-файла нет; - последний параметр отменяет архивацию, если лог пустой. Если необходим собственный скрипт для ротации, то создаем его в директории /etc/logrotate.d/. Ниже приведем тестовый вариант создания шаблона ротации. ### Пример №1 Исходное: существует виртуальный сервер. Необходимо сохранять логи в access.log и error.log. Они находятся в каталоге /var/log/example-app/. На сервере присутствует пользователь www-data и группа с аналогичным именем. Создаем файл через текстовый редактор. ``` sudo vi /etc/logrotate.d/example-app ``` Вставляем следующие команды в него: Скриншот №2. Пример файла. **Важно!** Если необходима подробная информация о команде, то используем утилита man. Например, ``` man logrotate ``` После добавления информации сохраняем изменения. Тестируем результат: ``` sudo logrotate /etc/logrotate.conf –debug ``` **Важно!** В рабочем окне терминала отображается информация об операциях, которые в данный момент проводит logrotate. ### Пример №2 Исходные данные: Logrotate запущен от учетного имени Sammy. Лог-файлы сохраняются в директорию /home/sammy/logs/. Необходимо настроить архивирование с интервалом каждый час. **Важно!** Настройки будут выполняться в другом каталоге, а не в /etc/logrotate.d. Создаем новую конфигурацию через редактор vi. ``` vi /home/sammy/logrotate.conf ``` В него добавим следующую информацию: ```sql /home/sammy/logs/*.log { hourly missingok rotate 24 compress create } ``` Команды hourly и rotate 24 указывают на то, что архивирование происходит ежечасно. Закрываем файл с сохранением. Для проверки создадим тестовый файл, в котором будут храниться логи. ``` cd ~ mkdir logs touch logs/access.log ``` Теперь укажем logrotate новый путь для сохранения информации. ``` logrotate /home/sammy/logrotate.conf —state /home/sammy/logrotate-state –verbose ``` На мониторе после запуска утилиты появится следующее: Скриншот №3. Результат тестирования. Для программы логирования – это новый файл. Для ежечасного запуска утилиты – сконфигурируем планировщик заданий cron. Откроем его: ``` crontab –e ``` Внесем последнюю строку в виде: ``` 15 * * * * /usr/sbin/logrotate /home/sammy/logrotate.conf —state /home/sammy/logrotate-state ``` Сохраняем изменения, закрываем файл. https://serverspace.by/support/help/rezervnoe-kopirovanie-linux-serverov.md Создание резервных копий с помощью встроенных утилит dd и tar на семействах ОС Linux. Рассмотрим, как создать бэкап и восстановить систему из резервной копии. Создание резервных копий – одна из неотъемлемых задач системного администратора. Рассмотрим, как осуществить процедуру с помощью встроенных утилит dd и tar на семействах ОС Linux. ### Создаем бэкап Утилита dd является одной из первых в своем направлении. У нее отсутствуют некоторые опции, которые доступны на современных аналогах, но она удобна и проста в использовании. К тому же, исходный файл бэкапа читается другими программами без проблем. Запускаем утилиту с заданными параметрами: ``` dd if=xxx of=yyy bs=8M conv=sync,noerror ``` Синтаксис следующий. XXX – имя диска, с которого производится резервное копирование, а YYY – наименование файла бэкапа. Операнд bs задает размер кэша жесткого диска. Установим его на 8 Мб, чтобы копирование происходило быстрее. Параметр conv указывает на то, что копирование файлов происходит побитно с пропуском ошибок чтения. Команда tar в основном используется для создания архивов, но ее используют и для бэкапов: ```bash tar -cvpzf name1.tar.gz —exclude=name2 —one-file-system folder1 ``` - name1 – произвольное имя для новой резервной копии; - exclude=name2 означает, что из архива исключаем все папки и файлы с таким именем; - one file system сообщает архиватору о том, что используем только одну файловую систему; - folder1 – имя директории, резервная копия которой создается командой tar. ### Как восстановить Чтобы выполнить восстановление из резервной копии, используем следующий синтаксис: ``` dd if=ZZZ of=QQQ bs=8M conv=sync,noerror ``` Расшифровка следующая. ZZZ – имя бэкапа с указанием пути до него. Например, /mnt/backup/21082019.img, QQQ – диск, на который восстанавливается копия. Архиватор использует немного другой набор команд: ```bash sudo tar -xvpzf XXX -C YYY —numeric-owner ``` - XXX – полное наименование архива; - YYY – директория, в которой будет перемещена разархивированная информация. Последний ключ (—numeric-owner) означает, что пользователи тоже будут восстановлены, но не по учетному имени, а по числовому значению. https://serverspace.by/support/help/ustanovka-oblachnogo-xranilishha-owncloud-na-linux.md Рассмотрим установку и настройку облачного хранилища ownCloud. В качестве операционной системы возьмем Linux Ubuntu 16.04. Конфигурирование. Подключение к хранилищу. [Облачные хранилища](https://serverspace.by/services/storage.md) используются не только в компаниях и корпорациях, но также в повседневной жизни граждан. Основная цель — резервные копии важной информации и обмен файлами. Рассмотрим установку и настройку одного из представителей — ownCloud. В качестве операционной системы возьмем Ubuntu 16.04. ## **Предварительный этап** На серверной платформе должен стоять пакет LAMP. Если его нет, то вводим: ```xml sudo apt-get install tasksel sudo tasksel install lamp-server ``` **Важно!** В репозиториях Linux систем присутствует готовый пакет LAMP. ## **Установка ownCloud** Загрузим актуальный релиз с официального сайта, используя утилиту Wget. Для начала переместим дистрибутив в директорию временного репозитория, чтобы установить доверенный сертификат: ```xml wget -nv https://download.owncloud.org/download/repositories/production/Ubuntu_16.04/Release.key -O Release.key sudo apt-key add — < Release.key ``` Теперь пропишем в официальном перечне обновляемого ПО Ubuntu сайт ownCloud, а затем установим: ```xml sudo echo 'deb http://download.owncloud.org/download/repositories/production/Ubuntu_16.04/' > /etc/apt/sources.list.d/owncloud.list ``` ```bash sudo apt-get update sudo apt-get install owncloud-files ``` Перейдем к настройке серверной части. ## **Конфигурирование** Отредактируем шаблон owncloud.conf через vi или nano. Добавляем следующие строки: ```xml Alias /owncloud "/var/www/owncloud/" Options +FollowSymlinks AllowOverride All Dav off SetEnv HOME /var/www/owncloud SetEnv HTTP_HOME /var/www/owncloud ``` Используя команду ln создаем ссылку: ``` ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf ``` Корректируем права доступа к папке ownCloud, добавив уровень –R. Перезагружаем Apache. ## **Как подключиться к хранилищу** Открываем браузер. В адресной строке прописываем IP-адрес виртуального сервера, на котором установлено облако. В конце через добавляем "/owncloud". Отобразится страница входа. Учитывая, что это первый вход — создаем администраторскую учетную запись. В качестве примера используем имя Admin, а пароль придумываем самостоятельно: Скриншот №1. Регистрация администратора. **Важно!** Обязательно указываем путь к рабочей папке (Data Folder). После успешного входа переключаемся в профиль Admin и добавляем новых клиентов при необходимости. Опция доступна в разделе "Пользователи". Для подключения к облаку также используется протокол WebDAV. Расскажем на примере программы CyberDuck, загрузить которую можно на официальном сайте: https://cyberduck.io/download/. Устанавливаем утилиту, заходим в раздел "Настройки", выбираем новое соединение и прописываем следующие параметры: Скриншот №2. Создание подключения. В строке "сервер" прописываем IP-адрес нашего сервера с добавлением "/owncloud". Пользователь и пароль — добавляем учетное имя и ключ, которые зарегистрированы в ownCloud. В нашем примере используем admin. Теперь для работы с облачным хранилищем используем CyberDuck. https://serverspace.by/support/help/vnc-dlya-udalennogo-dostupa-k-ubuntu-c-obolochkoj-xfce4.md Рассмотрим подключение к удаленному рабочему столу при помощи системы VNC. В качестве примера используется Ubuntu Server 16.04 с графической средой xfce4. Осуществить подключение к удаленному рабочему столу можно разными способами. Рассмотрим подробно один из множества – систему VNC. В качестве примера используется Ubuntu Server 16.04 с графической средой xfce4. ### Предварительный этап Подготовим "Убунту" для удаленного подключения: проинсталлируем пакет VNC и графическую оболочку xfce4. ```bash sudo apt-get update sudo apt-get install xfce4 xfce4-goodies tightvncserver xorg lightdm ``` **Важно!** Перед инсталляцией нового ПО обязательно обновляем локальные пакеты (первая строка). Задаем парольную защиту для доступа к удаленному рабочему столу, набрав строку: ``` vncserver ``` VNC подразделяет пароль на два типа: один для полного доступа, а другой – только на просмотр. В терминологии системы удаленного доступа – view-only. Рекомендуется задать два разных значения. ### Конфигурирование Перейдем к настройке серверной части VNC, значения которой хранятся в файле ~/.vnc/xstartup. VNC-сервер активируется на порте 5901, но в системе прописан как ":1". Соответственно, при запуске на других присваивается номера по порядку – ":2", ":3" и т. д. 1. Сначала деактивируем первый порт. ``` vncserver –kill :1 ``` Это необходимо для дальнейшей настройки системы удаленного доступа. 2. Обязательно создаем резервную копию настроек: ``` mv ~/.vnc/xstartup ~/.vnc/xstartup.bak ``` **Важно!** Бэкап имеет расширение .BAK 3. Откроем его через встроенную утилиту Vi: ``` vi ~/.vnc/xstartup ``` Добавим три строки: ```bash #!/bin/bash xrdb $HOME/.Xresources startxfce4 & ``` Графическая оболочка перемещена в меню автозапуска на стороне сервера. 4. Скорректируем права доступа к файлу xstartup. Разрешим доступ на активацию. ```bash sudo chmod +x ~/.vnc/xstartup ``` 5. Добавим пользователя, и создадим сценарий запуска. Открываем через Vi: ``` sudo vi /etc/init.d/vncserver ``` Вносим корректировки, как показано на скриншоте. Расшифровка каждого пункта ниже: Скриншот №1. Скрипт для VNC-сервер. В первой строке меняем имя пользователя на необходимое. Вторая часть текста регулирует параметры дисплея: разрешения, глубину цвета, качество цветопередачи и другие параметры. Третий блок запускает логирование при активности VNC. Предпоследние строки закрывают приложение и останавливают службу, а последняя часть связывает между собой команды открытия и закрытия VNC. 6. Добавляем права на активацию кода ```bash sudo chmod +x /etc/init.d/vncserver ``` 7. Теперь откроем удаленный доступ путем проброса портов. ``` iptables -A INPUT -p tcp —dport 5901 -j ACCEPT iptables-save ``` 8. Активируем автозапуск сервиса при старте VNC и перезапустим его для применения изменений. ```bash sudo update-rc.d vncserver defaults sudo service vncserver start ``` Запустится рабочий стол, недоступный пока что по удаленному соединению. Завершим процесс. ``` vncserver -kill :1 ``` 9. Переходим к старту дополнительных служб на VNC-сервере. ``` sudo /etc/init.d/lightdm start sudo /etc/init.d/x11-common start ``` Активируем менеджер дисплея и рабочего окна (lightdm и x11-common). 10. Теперь запустим удаленный рабочий стол, чтобы администратор мог подключиться к нему. ``` vncserver ``` Не стоит забывать, что при каждом подключении открывается новое соединение, то есть новые порты. Соответственно, для каждого придется выполнять проброс. Команда выглядит так: ``` iptables -A INPUT -p tcp —dport 59zz -j ACCEPT iptables-save ``` , где zz – цифры порта, для которого открываем доступ. 11. Теперь запускаем VNC-клиент и подключаемся к серверу. Например, через программу Remmina, UltraVNC, Vino и др. https://serverspace.by/support/help/ustanovka-lemp-steka-na-ubuntu-16-04.md Инструкция по установке комплекта LEMP (Linux, Nginx, MySQL, PHP) на Ubuntu Server. Подготовим серверную платформу для дальнейших работ — установим Nginx. О том, как установить комплект LAMP на Ubuntu Server, написано десятки публикаций. Но гораздо меньше известно о LEMP. Отличие в том, что первый вариант использует Apache, а второй — Nginx. Расскажем подробнее про инсталляцию и первичное конфигурирование. В качестве примера используется Ubuntu 16.04. ## **Как установить LEMP** Подготовим серверную платформу для дальнейших работ — установим Nginx. Подключаемся к оборудованию по SSH и устанавливаем его стандартными средствами операционной системы. Дистрибутив доступен в официальных репозиториях. Откроем стартовую страницу Nginx в обозревателе: пропишем IP в адресной строке программы. Должно появиться следующее изображение: Скриншот №1. Успешная инсталляция. Если изображение не открывается, добавляем строки в параметры брандмауэра. Вводим команды: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` ``` iptables-save ``` Откроется порт 80. Он предоставляет доступ Nginx в "белом" списке файрвола. Предварительная подготовка завершена, переходим к конфигурированию. 1. Установим СУБД. В LAMP используют MySQl, а в LEMP — MariaDB. Оба продукта идентичны, за исключением способа распространения: MariaDB поставляется бесплатно, а у MySQL есть ограничения. Используем штатные средства установки ПО: ```bash sudo apt-get install mariadb-server mariadb-client ``` Во время операции пакет потребует придумать секретный ключ для учетной записи с правами администратора. **Важно!** Рекомендуются следующие правила — минимум 9 символов, заглавные буквы, цифры и спецсимволы. По окончании проверяем работоспособность: ```bash sudo systemctl status mariadb ``` Результат показан на скриншоте: Скриншот №2. Проверка статуса. 2. Повышаем уровень безопасность пакета: ``` sudo mysql_secure_installation ``` Команда отключает гостевой вход в базу данных, удаленный доступ для суперпользователя, ликвидирует временные таблицы и обновляет права. 3. Следующий шаг — установка PHP. Для установки используем утилиту apt-get. Список пакетов, которые требуется установить: ```bash sudo apt-get install php7.2 sudo apt-get install php7.2-mysql sudo apt-get install php7.2-curl sudo apt-get installphp7.2-json sudo apt-get installphp7.0-cgi sudo apt-get installphp7.0 libapache2-mod-php7.0 sudo apt-get installphp7.0-xml ``` Процесс займет примерно 10 минут. Дополнительных действий не потребуется, следуем подсказкам мастера. 4. После установки можно подключить дополнительные модули на PHP. Список доступен по команде: ```bash apt-cache search php7 ``` На мониторе появится перечень команд с расшифровкой. Выбираем требуемый и устанавливаем стандартными средствами Ubuntu. 5. Соединим установленные приложения между собой. Набираем: ```bash sudo apt-get install php-fpm php-mysql ``` По окончании открываем конфигурационный файл PHP через встроенную утилиту vi. Находим строку cgi.fix, и присваиваем значение ноль. Красным показан путь к php.ini: Скриншот №4. Внесение изменений. **Важно!** Чтобы строка была активной, удаляем точку с запятой в начале строки. Выходим из утилиты, сохранив изменения. Чтобы применить новую конфигурацию, перезапустим службу php7.2-fpm. Процесс займет меньше минуты. 6. Скорректируем конфигурационный файл Nginx: ``` sudo vi /etc/nginx/sites-available/default ``` Находим строку с именем Index и вносим дополнительные значения: ``` index.php index.html index.htm index.nginx-debian.html ``` Скриншот №5. Добавить строку. Если требуется поменять имя сервера, используем команду: ``` server_name XXX ``` где XXX — произвольное наименование серверной части. В нашем примере используем имя LEMP. Добавляем возможность обрабатывать запросы PHP: удаляем символ ";" перед строками. На изображении это отмечено цифрами "3" и "4": Скриншот №6. Итоговая конфигурация. Сохраним изменения и перезагрузим сервис штатными средствами ОС. На этом настройка закончена. Проверим. ## **Проверка** Откроем тестовую страницу для проверки. Создаем пробный вариант: ``` vi /var/www/html/info.php ``` Добавим информацию: ```php ``` Закрываем редактор с сохранением. Открываем браузер, вводим IP-адрес серверной платформы с ключом info: http://xxx.xxx.xxx.xxx/info.php, где xxx.xxx.xxx.xxx – адрес. Если конфигурирование прошло успешно, на странице отобразится следующее: Скриншот №7. LEMP-сервер установлен. https://serverspace.by/support/help/ustanovka-cacti-na-centos-7.md Как установить систему мониторинга сетевых устройств и сервера Cacti на VPS с Centos 7? Рассмотрим в нашей инструкции. Настройка репозиториев, установка компонентов, оптимизация БД. Инструкция по установке системы для мониторинга серверов и сетевых устройств Cacti на виртуальный сервер под управлением Centos 7. ### Что такое Cacti? Cacti — это инструмент с открытым исходным кодом для мониторинга сервера, визуализации собранных данных и построения графиков, написан на PHP/MySQL. Cacti использует RRDTool (инструмент для работы с базами данных Round-Robin) для хранения данных и генерации графики, сборка периодических данных происходит через Net-SNMP — набор приложений для реализации SNMP (Simple Network Management Protocol). ### Настройка репозиториев Необходимо отключить функции безопасности SELinux, для этого с помощью текстового редактора, например vi откройте следующий системный файл: ``` vi /etc/sysconfig/selinux ``` Измените значение параметра SELINUX на disabled: ``` SELINUX=disabled ``` Перезагрузите виртуальный сервер, чтобы изменения вступили в силу: ``` reboot ``` Настройте репозиторий EPEL: ``` rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm ``` Установите репозиторий [Remi](https://rpms.remirepo.net/): ```bash wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm ``` Выведите список доступных репозиториев: ```bash yum repolist ``` ### Установка компонентов В первую очередь необходимо установить веб-сервер Apache: ```bash yum install httpd httpd-devel systemctl start httpd ``` Установите утилиты RRDTool и SNMP, для дальнейшей обработки и визуализации данных: ```bash yum install net-snmp net-snmp-utils net-snmp-libs rrdtool systemctl start snmpd ``` Далее установите MariaDB и запустите сервис: ```bash yum install mariadb-server systemctl start mariadb ``` Запустите скрипт, с помощью которого задайте пароль администратора и дополнительные параметры безопасности: ``` mysql_secure_installation ``` Запустите следующую команду, чтобы установить несколько компонентов PHP: ```bash yum —enablerepo=remi install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-intl php-snmp ``` ### Создание базы данных Cacti Подключитесь к СУБД MariaDB: ```bash mysql -u root -p ``` С помощью следующих команд создайте БД и пользователя, задав надежный пароль: ```sql CREATE DATABASE fosslinuxcacti; CREATE USER 'fosslinuxuser'@'localhost' IDENTIFIED BY 'password'; ``` Предоставьте привилегии пользователю: ``` grant all privileges on fosslinuxcacti.* to fosslinuxuser@localhost; FLUSH PRIVILEGES; ``` Созданный пользователь базы данных должен иметь доступ к таблице mysql.time_zone_name. Поэтому необходимо импортировать mysql_test_data_timezone.sql в базу данных MySQL: ```bash mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql ``` Выполните вход в MariaDB: ```bash mysql -u root -p ``` Предоставьте доступ пользователю базы данных cacti и обновите привилегии: ``` GRANT SELECT ON mysql.time_zone_name TO fosslinuxuser@localhost; FLUSH PRIVILEGES; ``` ### Оптимизация базы данных Для повышения производительности нужно изменить параметры базы данных. Откройте файл конфигурации. ``` vi /etc/my.cnf.d/server.cnf ``` Вставьте следующие строки в секцию [mysqld]: ``` event_scheduler=ON plugin-load=BLACKHOLE=ha_blackhole.so blackhole=FORCE collation-server = utf8mb4_unicode_ci init-connect='SET NAMES utf8′ character-set-server = utf8mb4 max_heap_table_size = 128M max_allowed_packet = 16777216 tmp_table_size = 64M join_buffer_size = 64M innodb_file_per_table = on innodb_buffer_pool_size = 512M innodb_doublewrite = off innodb_additional_mem_pool_size = 80M innodb_lock_wait_timeout = 50 innodb_flush_log_at_trx_commit = 2 innodb_file_format = Barracuda innodb_large_prefix = 1 innodb_flush_log_at_timeout = 3 innodb_read_io_threads = 32 innodb_write_io_threads = 16 innodb_io_capacity = 5000 innodb_io_capacity_max = 10000 ``` Перезапустите СУБД для применения изменений: ```bash systemctl restart mariadb.service ``` ### Установка и конфигурация Cacti Установите Cacti используя yum: ```bash yum -y install cacti ``` Импортируйте файл базы данных cacti по умолчанию в созданную базу данных. ``` cd /usr/share/doc/cacti-1.2.5/ ``` _Примечание: версия Cacti может отличаться._ Импортируйте SQL-файл: ```bash mysql -u root -p fosslinuxcacti < cacti.sql ``` Отредактируйте файл конфигурации Cacti, указав базу данных, пароль, пользователя и пр.: ``` vi /usr/share/cacti/include/config.php ``` Измените следующие параметры: ``` $database_type = 'mysql'; $database_default = 'fosslinuxcacti'; $database_hostname = 'localhost'; $database_username = 'fosslinuxuser'; $database_password = 'password'; $database_port = '3306'; $database_ssl = false; ``` ### Настройка Apache Выполнить настройку Apache необходимо для удаленного подключения: ``` vi /etc/httpd/conf.d/cacti.conf ``` Замените строку **Require host localhost** на **Require all granted** и **Allow from localhost** на **Allow from all**. Файл будет выглядеть следующем образом: ``` Alias /cacti /usr/share/cacti ``` ```xml # httpd 2.4 Require all granted # httpd 2.2 Order deny,allow Deny from all Allow from all ``` ```xml Require all denied Order deny,allow Deny from all ``` ```xml Require all denied Order deny,allow Deny from all ``` Далее откройте файл конфигурации PHP: ``` vi /etc/php.ini ``` Измените значения следующих параметров: ``` date.timezone = Europe/Minsk memory_limit = 800M max_execution_time = 360 ``` Перезапустите запущенные сервисы: ```bash systemctl restart httpd.service systemctl restart mariadb.service systemctl restart snmpd.service ``` Не забудьте настроить Firewall, чтобы подключиться Cacti: ``` firewall-cmd —permanent —zone=public —add-service=http firewall-cmd —reload ``` ### Подключение к веб-интерфейсу Cacti Перейдите в браузере по следующему адресу: ``` /cacti ``` Например: ``` 121.123.123.121/cacti ``` При первом подключении используйте логин и пароль admin/admin: Вам сразу же необходимо будет изменить значения по умолчанию: Далее необходимо выбрать язык и принять пользовательское соглашение: На следующем шаге будет выполнена проверка наличия зависимостей и необходимых конфигураций PHP и MySQL: Выберите тип установки, можно оставить значение по умолчанию: Далее будет выполнена проверка прав и доступов: Выберите профиль по умолчанию и подсети для сканирования: На следующих шагах вы можете выбрать все шаблоны и таблицы: Подтвердите установку: По завершении установки отобразится лог с ошибками, если они имели место быть: Далее вы можете зайти в панель Cacti и приступать к мониторингу: Пример графиков со статистикой: https://serverspace.by/support/help/ustanovka-platformy-kanboard-na-ubuntu-18-04.md Инструкция по установке платформы управления проектами и задачами Kanboard на VPS с ОС Ubuntu 18.04. В нашем руководстве платформа управления Kanban будет установлена поверх LAMP-стека. Инструкция по установке платформы управления проектами и задачами Kanboard на виртуальный сервер под управлением Ubuntu 18.04. ### Что такое Kanboard? Kanboard — это платформа для управления проектами с открытым исходным кодом, основанная на стеке LAMP/LEMP, которая помогает пользователям создавать и управлять рабочим процессом проектов с использованием методологии Kanban. Независимо от того, создаете ли вы личную или общую платформу управления проектами, Kanboard может помочь вам создавать и управлять своими задачами с помощью интуитивно понятных и мощных панелей пользователей и администратора. Примечание: с отличиями Kanboard и Trello можно ознакомиться [здесь](https://project-management.zone/system/kanboard,trello). ### Первоначальные требования В нашем руководстве платформа управления Kanban будет установлена поверх LAMP-стека. Подробнее о том, что это такое и как выполнить установку на Ubuntu 18.04 написано в [нашей инструкции](https://serverspace.by/support/help/ustanovka-lamp/). ### Настройка PHP и установка дополнительных модулей С помощью следующей команды установите дополнительные модули PHP: ```bash sudo apt install libapache2-mod-php7.2 php7.2-common php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-pgsql php7.2-xml php7.2-cli php7.2-zip ``` После установки PHP откройте файл конфигурации PHP для Apache с помощью текстового редактора, например vi: ``` sudo vi /etc/php/7.2/apache2/php.ini ``` Затем внесите изменения в значения следующих параметров. Приведенные ниже значения — это оптимальные настройки для работы Kanboard: ``` file_uploads = On allow_url_fopen = On short_open_tag = On memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = Europe/Minsk ``` После внесения изменений перезапустите веб-сервер: ```bash sudo systemctl restart apache2.service ``` ### Создание базы данных Для создания базы данных подключитесь к СУБД MySQL (MariaDB): ```bash sudo mysql -u root -p ``` Создайте БД с именем kanboard: ```sql CREATE DATABASE kanboard; ``` Создайте нового пользователя и задайте ему надежный пароль: ```sql CREATE USER 'kanboarduser'@'localhost' IDENTIFIED BY 'secure_password'; ``` Затем предоставьте пользователю полный доступ к базе данных: ``` GRANT ALL ON kanboard.* TO 'kanboarduser'@'localhost' WITH GRANT OPTION; ``` Наконец, сохраните изменения и выполните выход: ``` FLUSH PRIVILEGES; EXIT; ``` ### Установка Kanb Загрузить последний релиз Kanban board возможно из Github-репозитория разработчиков. Установите [composer](https://ru.wikipedia.org/wiki/Composer), [cURL](https://ru.wikipedia.org/wiki/CURL) и [Git](https://ru.wikipedia.org/wiki/Git): ```bash sudo apt install curl git curl -sS https://getcomposer.org/installer | sudo php — —install-dir=/usr/local/bin —filename=composer ``` После установки перейдите в каталог /tmp, загрузите и распакуйте, а затем переместите содержимое Kanboard в корневой каталог Apache и выполните установку: ```bash cd /tmp git clone https://github.com/kanboard/kanboard.git sudo mv kanboard /var/www/kanboard cd /var/www/kanboard sudo mv config.default.php config.php sudo composer install ``` Для конфигурации Kanboard откройте файл с настройками: ``` sudo vi /var/www/kanboard/config.php ``` Установите значения для следующих параметров, указав пароль созданный для пользователя kanboarduser: ``` define('DB_DRIVER', 'mysql'); define('DB_USERNAME', 'kanboarduser'); define('DB_PASSWORD', 'kanboarduser_password'); define('DB_NAME', 'kanboard'); ``` Измените права на каталог с доской: ```bash sudo chown -R www-data:www-data /var/www/kanboard/ sudo chmod -R 755 /var/www/kanboard/ ``` ### Настройка Apache Необходимо настроить файл конфигурации Apache для Kanboard. Создайте новый файл конфигурации с именем kanboard.conf: ``` sudo vi /etc/apache2/sites-available/kanboard.conf ``` Вставьте следующие строки, заменив e-mail администратора сервера и доменное имя: ```xml ServerAdmin admin@example.com DocumentRoot /var/www/kanboard ServerName example.com Options FollowSymlinks AllowOverride All Require all granted ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined ``` Сохраните изменения и перезапустите сервис: ```bash systemctl reload apache2 sudo a2ensite kanboard.conf sudo a2enmod rewrite sudo systemctl restart apache2.service ``` ### Подключение к Kanban Board Подключитесь к вашему серверу, например: ``` http://example.com ``` Или просто по IP-адресу: ``` 121.123.123.121 ``` Войдите с именем пользователя — admin и паролем — admin. Обязательно измените значения по умолчанию сразу после подключения: Если по каким-то причинам вы не можете подключиться, то проверьте [настройки firewall](https://serverspace.by/support/help/firewall-configuring-the-server-firewall/), а именно состояние 80 порта. После подключения вы можете начинать работу с платформой управления проектами Kanban: https://serverspace.by/support/help/ustanovka-graylog-na-ubuntu-18-04.md Инструкция по установке централизованного сборщика логов и сообщений Graylog на VPS с ОС Ubuntu 18.04. Обновление системы и установка Oracle JDK. Установка Elasticsearch. Подключение к web-интерфейсу Graylog. Описание установки системы сбора логов Graylog на виртуальный сервер под управлением операционной системы Ubuntu 18.04. ### Что такое Graylog? В крупных корпорациях, как правило, одновременно работает много систем и приложений, что усложняет ведение журнала ошибок. Для эффективного управления этими записями используются специализированные инструменты для их централизации. Graylog — это профессиональное приложение, которое предоставляет унифицированную и централизованную систему сообщений из разных источников: операционной системы, приложений, информационных систем с целью централизации и упрощения администрирования журналов ошибок или логов. ### Предварительные требования - Для работы Graylog рекомендуемый объем оперативной памяти на виртуальном сервере — не менее 2Gb. - Метаданные Graylog хранятся в СУБД MongoDB, для ее установки можно воспользоваться нашей [инструкцией](https://serverspace.by/support/help/ustanovka-mongodb-na-ubuntu-18-04/). ### Обновление системы и установка Oracle JDK Обновите локальную базу пакетов: ```bash apt update && apt upgrade ``` Далее установите OpenJDK и дополнительные пакеты: ```bash apt install apt-transport-https uuid-runtime pwgen openjdk-8-jre-headless ``` ### Установка Elasticsearch Graylog требует установки Elasticsearch, масштабируемого приложения, которое позволяет выполнять поиск данных в реальном времени, а также хранить и анализировать. Выполните базовую установку Elasticsearch. Сначала необходимо загрузить GPG-ключ: ```bash wget -qO — https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add - ``` Загрузите deb-пакет: ``` echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list ``` Обновите локальную базу пакетов и установите Elasticsearch: ```bash apt update && apt install elasticsearch ``` Далее разрешите запуск приложения после загрузки ОС и запусти его: ```bash systemctl enable elasticsearch systemctl start elasticsearch ``` В файле конфигурации необходимо изменить название кластера. С помощью текстового редактора vi откройте следующий файл: ``` nano /etc/elasticsearch/elasticsearch.yml ``` Найдите следующий параметр cluster.name и установите имя кластера: ``` сluster.name: graylog ``` Также в конец файла добавьте следующие строки: ``` script.inline: false script.indexed: false script.file: false ``` Сохраните внесенные изменения и перезапустите Elasticsearch: ```bash systemctl restart elasticsearch ``` ### Установка Graylog С помощью команды wget загрузите пакет graylog: ```bash wget https://packages.graylog2.org/repo/packages/graylog-2.4-repository_latest.deb ``` Выполните установку пакета: ``` dpkg -i graylog-2.4-repository_latest.deb ``` Обновите информацию о пакетах и запустите процесс установки Graylog: ```bash apt update && apt install graylog-server ``` После завершения установки необходимо отредактировать файл конфигурации, чтобы установить в нем пароль. Пароль должен содержать 64 символа, для его генерации рекомендуем использовать pwgen: ``` pwgen -N 1 -s 96 ``` В результате, в консоль будет выведена строка, пример: _iQflncka906AZkfcJtMAuuehAjMoj9MfDiYnrj6NDIFaprVY3jP6rQszcd56MwGT4Ra0ckoxpeZnxbpg2pJPEUTa0qYaNtDw_ Далее с помощью откройте файл конфигурации: ``` vi /etc/graylog/server/server.conf ``` Установите параметру password_secret значение сгенерированного пароля, например: _password_secret = iQflncka906AZkfcJtMAuuehAjMoj9MfDiYnrj6NDIFaprVY3jP6rQszcd56MwGT4Ra0ckoxpeZnxbpg2pJPEUTa0qYaNtDw_ Далее сгенерируйте хеш для пароля пользователя admin, указав значение пароля: ``` echo -n ваш_пароль | sha256sum ``` В результате будет выведена строка следующего вида: _6c8ccf159a4b150dc29e7b013b1d04700821a5c44a17f6d85dd6e317f7b4e209 —_ Установите параметру root_password_sha2 значение сгенерированного пароля, например: _root_password_sha2 = 6c8ccf159a4b150dc29e7b013b1d04700821a5c44a17f6d85dd6e317f7b4e209_ Также заполните параметр root_email: root_email = "example@domain.com" В конец файла добавьте следующую строку, указав IP-адрес вашего VPS: ``` elasticsearch_discovery_zen_ping_unicast_hosts = :9300 ``` Например: ``` elasticsearch_discovery_zen_ping_unicast_hosts = 121.123.123.121:9300 ``` Далее необходимо изменить адрес web-интерфейса и апи, для этого найдите следующие строки и замените IP-адрес на адрес вашего виртуального сервера: ``` web_listen_uri = http://:9000/ ``` ``` web_listen_uri = http://:9000/ ``` _Примечание: при необходимости также можно изменить порт._ Сохраните изменения в файле конфигурации. Перезапустите сервис для применения изменений: ```bash systemctl restart graylog-server ``` Проверить статус сервиса можно с помощью следующей команды: ```bash systemctl status graylog-server ``` ### Подключение к web-интерфейсу Graylog Для подключения к Web-интерфейсу Graylog для начала необходимо открыть соответствующий порт, по умолчанию мы везде используем 9000. Открыть порт можно с помощью [межсетевого экрана прямо в панели управления](https://serverspace.by/support/help/firewall-configuring-the-server-firewall/) или на уровне сервера с помощью простой утилиты iptables: ``` iptables -A INPUT -p tcp —dport 9000 -j ACCEPT iptables-save ``` После этого в браузере можно перейти по следующей ссылке: ``` :9000 ``` Например: ``` 121.123.123.121:9000 ``` На открывшейся странице введите логин admin и созданный ранее пароль: Подготовка интерфейса может занять несколько дней: Теперь вы можете приступать к работе с Graylog: https://serverspace.by/support/help/ustanovka-i-ispolzovanie-docker-na-centos.md Платформа Docker создана для разработки, развертывания и запуска приложений в контейнерах, которые находятся в изоляции друг с другом. Контейнеризация – процесс, при котором приложения Linux развертываются в контейнерах. Рассмотрим использование Docker на виртуальном сервере с операционной системой Centos 7. Ниже рассказано, как провести установку платформы Docker и использовать ее на виртуальном сервере с операционной системой Centos 7. ## Описание платформы Для того, чтобы системные администраторы и разработчики могли заниматься разработкой, развертыванием и запуском приложений в контейнерах, которые находятся в изоляции друг с другом, была создана платформа Docker. Контейнеризация – процесс, при котором приложения Линукс развертываются в контейнерах. Идея об изолировании приложений возникла еще при создании первых моделей ПК, а применяться на практике начала только недавно. Популярности контейнеризации поспособствовали высокие темпы развития ПО. Итак, в чем главные отличия образа от контейнера: - Под образом подразумевается некий исполняемый пакет, в который включены библиотеки, программный код, конфигурационные файлы, среда выполнения и ее переменные – все, что требуется для открытия приложения. - Под контейнером подразумевается экземпляр образа. То есть один образ может вмещать в себя сразу несколько контейнеров. Открыть образы можно в режиме "для чтения". Образы платформы делятся на два вида: дистрибутивы Линукс и сконфигурированное корпоративное ПО, подготовленное к запуску. Вид можно прописать в специальном файле Dockerfile. Он представляет собой файл текстового формата, который может понять только демон Docker. Файл создается для того, чтобы можно было запустить новый образ. _Обратите внимание: демоном называется компонент Docker, которому поручено выполнять трудные задачи создания, распределения и запуска изображений сразу после поступления команды от Docker-клиентов._ Открыть приложение на платформе можно в несколько шагов: - Выбрать нужное приложение. - Описать его в Dockerfile, указать среду для выполнения приложения. - Сформировать общий файл – образ, который будет включать в себя набор библиотек (без общей системной) и исполняемые файлы. Все элементы войдут в контейнер и станут неизменными при дальнейшей работе. - Запустить платформу, в которой уже указан образ приложения, использующегося для решения прикладной задачи. ## Как установить Docker Первым шагом станет обновление локальной базы пакетов. Для этого используется команда: ```bash sudo yum check-update ``` Чтобы установить последнюю вышедшую версию платформы, потребуется сформировать обращение к официальному репозиторию. Через команду, описанную ниже, можно добавить необходимые репозитории и установить актуальную версию Docker: ```bash curl -fsSL https://get.docker.com/ | sh ``` Обратите внимание: администраторам, которые собираются запускать платформу не от имени стандартного пользователя root, нужно будет прописать нового юзера. Внесение пользователя проходит сразу после загрузки группы Docker: ``` sudo usermod -aG docker ``` Полная команда будет выглядеть таким образом: ``` sudo usermod -aG docker cloud ``` По окончанию загрузку платформы на сервер потребуется запустить демона Docker: ```bash sudo systemctl start docker ``` Необходимо убедиться, что запуск демона прошел гладко и никаких предупреждений об ошибках не обнаружено: ```bash sudo systemctl status docker ``` Если все хорошо, в окне появится такой текст: ``` docker.service — Docker Application Container Engine ``` ``` Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled) ``` ``` Active: active (running) since Thu 2018-04-26 14:06:06 MSK; 1min 56s ago ``` ``` Docs: https://docs.docker.com ``` ``` Main PID: 1601 (dockerd) ``` ``` Tasks: 16 ``` ``` Memory: 40.0M ``` ``` CGroup: /system.slice/docker.service ``` ``` ├─1601 /usr/bin/dockerd ``` ``` └─1605 docker-containerd —config /var/run/docker/containerd/conta ``` ## Как работать с образами Команды платформы обладают своим синтаксисом, в котором за названием следуют разные опции и аргументы: ```bash docker ``` Инструкцию по доступным командам и их описанию можно запустить через короткую команду: ```bash docker ``` Все образы записаны в [Docker Hub](https://hub.docker.com/). Каждый пользователь сможет вносить свои образы в данный реестр. Многие дистрибутивы Линукс, системы управления базами данных и приложения создают собственные образы в Docker Hub. Может ли пользователь доставать и вносить образы в реестр проверяется такой командой: ```bash docker run hello-world ``` При положительном ответе на экране возникнет следующий текст: ``` Unable to find image 'hello-world:latest' locally ``` ``` latest: Pulling from library/hello-world ``` ``` 9bb5a5d4561a: Pull complete ``` ``` Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 ``` ``` Status: Downloaded newer image for hello-world:latest ``` ``` Hello from Docker! ``` ``` This message shows that your installation appears to be working correctly. ``` Для выполнения поиска конкретного образа используется такой синтаксис команды: ```bash docker search ``` К примеру, чтобы найти образ nginx, следует написать: ```bash docker search nginx ``` В качестве результата на экран высветятся все доступные пользователю образы: NAME DESCRIPTION STARS OFFICIAL AUTOMATED nginx Official build of Nginx. 8341 [OK] jwilder/nginx-proxy Automated Nginx reverse proxy for docker con 1328 [OK] richarvey/nginx-php-fpm Container running Nginx + PHP-FPM capable of 547 [OK] jrcs/letsencrypt-nginx-proxy-companion LetsEncrypt container to use with nginx as p 364 [OK] kong Open-source Microservice & API Management la 184 [OK] webdevops/php-nginx Nginx with PHP-FPM 102 [OK] Произвести загрузку выбранного образа можно при помощи строчки: ```bash docker pull ``` К примеру, для образа nginx синтаксис будет выглядеть: ```bash docker pull nginx ``` Выполненная команда выведет на экран загрузку образа: Using default tag: latest latest: Pulling from library/nginx f2aa67a397c4: Downloading [===============> ] 7.13MB/22.5MB 3c091c23e29d: Downloading [================> ] 7.091MB/22.11MB 4a99993b8636: Download complete По окончанию процесса образ будет загружен на виртуальный сервер. Для его запуска следует воспользоваться опцией run: ```bash docker run ``` Опция images продемонстрирует образы, которые загружены на сервер: ```bash docker images ``` Результатом будет служить небольшая таблица со списком: REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest ae513a47849c 8 days ago 109MB hello-world latest e38bc07ac18e 3 weeks ago 1.85kB ## Как работать с контейнерами Нижеописанная команда поможет на базе образа image сделать новый контейнер example: ```bash docker run —name -d ``` Обратите внимание: для получения интерактивного доступа к контейнерной оболочке shell используются ключи -i и -t. Создать контейнер example на базе nginx можно следующей командой: ```bash docker run —name example -d nginx ``` Опция ps продемонстрирует контейнеры, которые были запущены: ```bash docker ps ``` Обратите внимание: для просмотра всех существующих контейнеров можно воспользоваться ключом -l. В результате появится: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b8f970efcc91 nginx «nginx -g ‘daemon of» 15 seconds ago Up 13 seconds 80/tcp example Команда для запуска контейнера в фоновом режиме: ```bash docker container start ``` К примеру: ```bash docker container start example ``` Если контейнер функционирует фоново, зайти в него можно при помощи команды: ```bash sudo docker exec -i -t /bin/bash ``` Как это выглядит на практике: ```bash sudo docker exec -i -t b8f970efcc91 /bin/bash root@b8f970efcc91:/data# ``` Команда exit позволит выйти из контейнера, а stop – остановит его работу: ```bash docker container stop ``` Как выглядит полная команда остановки: ```bash docker container stop example ``` Для удаления следует воспользоваться опцией rm: ```bash docker rm -f ``` К примеру: ```bash docker rm -f example ``` Обратите внимание: чтобы удалить открытые контейнеры без необходимости предварительно их останавливать, следует использовать ключ -f. Для того, чтобы запустить nginx через определенный порт (для примера берем порт 80) и убедиться в его работоспособности, подойдет следующая команда: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT iptables-save ``` Перед выполнением нужно проверить, что в настройках файрволла открыл доступ к порту 80. Запуск контейнера example: ```bash docker run —name example -d -p 80:80 nginx ``` Далее в адресную строку браузера нужно вписать адрес сервера, указав порт. В результате появится следующая страница: https://serverspace.by/support/help/ustanovka-hranilisha-next-cloud.md Давайте рассмотрим установку и настройку облачного хранилища Nextcloud на VPS под Linux. Создание конфигурации Apache. Подключение через браузер. Создание пользователей. Подключение через WebDav. Ниже подробно рассмотрено, как установить на виртуальный сервер (Линукс) и настроить облачное хранилище Nextcloud, подключить его по протоколу WebDAV. ## Описание хранилища [Nextcloud Files](https://nextcloud.com/) является облачным хранилищем, его исходный код открыт для публичного доступа, позволяя пользователям синхронизироваться и совместно использовать файлы. Отличается легкостью в освоении и отличной защищенностью. Организации применяют данное хранилище для получения быстрого доступа к файлам, изображениям и электронной документации. Хранилищем могут пользоваться клиенты компании, ее сотрудники и партнерские фирмы. Среди особенностей: возможность работы с контактами, календарными событиями и планировщиком. Nextcloud предоставляет приложения для самых популярных платформ и набор [платных пакетов](https://nextcloud.com/pricing/) для бизнеса. ## Что нужно для загрузки Nextcloud Чтобы установка хранилища прошла без сбоев, на виртуальном сервере должна стоять операционная система Centos 7 или Убунту, а юзер обладать правами суперпользователя. Для того, чтобы была возможность пользоваться функциями PHP, необходимы модули XML Writer, ctype, posix, JSON, zlib, XML Reader, mbstring, zip, Simple XML, libxml, GD и другие. Как установить Рассмотрим, как загрузить хранилище на Убунту версии 16. Процедура проходит одинаково для всех дистрибутивов, различаются только незначительные нюансы. Для начала при помощи wget скачивается папка архива с Nextcloud самой свежей версии. Для примера берется облачное хранилище 13.0.4: ```bash wget https://download.nextcloud.com/server/releases/nextcloud-13.0.4.tar.bz2 ``` Понадобится загрузить контрольные суммы SHA265 либо MD5: ```bash wget https://download.nextcloud.com/server/releases/nextcloud-13.0.4.tar.bz2.md5 ``` Затем нужно загрузить цифровую подпись: ```bash wget https://download.nextcloud.com/server/releases/nextcloud-13.0.4.tar.bz2.asc wget https://nextcloud.com/nextcloud.asc ``` Посмотреть, соответствуют ли контрольные суммы, можно такой командой (для MD5 и SHA256): ``` md5sum -c nextcloud-13.0.4.tar.bz2.md5 < nextcloud-13.0.4.tar.bz2 sha256sum -c nextcloud-13.0.4.tar.bz2.sha256 < nextcloud-13.0.4.tar.bz2 ``` Если все хорошо, появится строчка: ``` nextcloud-13.0.4.tar.bz2: OK ``` Проверка цифровой подписи проходит следующим образом: ``` gpg —import nextcloud.asc gpg —verify nextcloud-13.0.4.tar.bz2.asc nextcloud-13.0.4.tar.bz2 ``` Затем архив нужно разархивировать: ```bash tar -xjf nextcloud-13.0.4.tar.bz2 ``` И скопировать в директорию сервера: ``` cp -r nextcloud /var/www ``` ## Как прописать конфигурацию Apache Посредством текстового редактора vi создается файл с конфигурацией: ``` vi /etc/apache2/sites-available/nextcloud.conf ``` В нем записывается: ``` Alias /nextcloud "/var/www/nextcloud/" Options +FollowSymlinks AllowOverride All Dav off SetEnv HOME /var/www/nextcloud SetEnv HTTP_HOME /var/www/nextcloud ``` Обратите внимание: путь к каталогу может быть другим. Создается символьная ссылка: ``` ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf ``` Подключаются модули: ``` a2enmod rewrite a2enmod headers a2enmod env a2enmod dir a2enmod mime a2enmod setenvif ``` Следующим шагом нужно поменять право владения: ```bash chown -R www-data:www-data /var/www/nextcloud/ ``` Для сохранения изменений необходимо перезапустить сервер: ```bash service apache2 restart ``` ## Как подключиться к хранилищу через браузер Чтобы подключиться к Nextcloud, нужно использовать IP-адрес. Для создания учетки администратора потребуется ввести имя юзера и придумать длинный пароль. В конце – кликнуть по кнопке "Завершить установку". На следующем шаге пользователь увидит окно с каталогами и расположенными в них файлами. Интерфейс легок и понятен. ## Как создавать пользователей Чтобы добавить еще одного юзера Nextcloud, в окне справа вверху необходимо кликнуть по иконке и через выпадающее меню найти пункт "Пользователи". Потребуется придумать имя для нового юзера и пароль. По желанию можно указать группу. После создания в таблице пользователей отобразится новый юзер Nextcloud. ## Как подключиться через WebDav Для подключения к Nextcloud можно использовать клиент Cyberduck протокола WebDAV. Первым делом потребуется инсталлировать приложение, затем перейти к созданному подключению. В настройках графы протокола указывается WebDAV, для сервера записывается полный адрес (посмотреть его можно через настройки страницы в браузере). В качестве порта указывается 80. После этого нужно еще раз ввести данные юзера. После подключения в окне появится новый каталог. https://serverspace.by/support/help/perenos-failov-na-vds.md Использование RDP-клиента для перенаправления дисков с локального устройства на VPS. Для того, чтобы перенести данные с ПК на веб-сервер, их не нужно копировать по отдельности. Для того, чтобы перенести данные с ПК на веб-сервер, их не нужно копировать по-отдельности. Есть разнообразные методы решения задачи: к примеру, синхронизировать каталоги либо перенаправить диски с локального устройства на VPS, используя при этом RDP-клиент. Ниже будет описан второй метод переноса информации. _Обратите внимание: синхронизировать несколько директорий можно посредством BitTorrent._ ## Как настроить RDP Первым делом потребуется зайти в параметры RDP-файла (кликнуть по нему ПКМ, вызвать контекстное меню и нажать "Изменить") и включить возможность проброса локальных данных к VPS. Появится меню, в левом нижнем углу нужно кликнуть по параметрам и открыть вкладку с локальными ресурсами. Для дальнейших настроек надо кликнуть на "Подробнее". Откроется окно, графу "Диски" необходимо полностью развернуть. В появившемся списке отмечаются галочками разделы и носители, предназначенные для проброса на [VPS](https://serverspace.by/services/vps-server.md). Проверить изменения можно через раздел "Мой компьютер", расположенный на виртуальном сервере. Подборки VPS/VDS: [аренда VPS в Европе](https://serverspace.by/services/vps-server.md), [аренда VPS на Linux](https://serverspace.by/services/vps-server/linux/) и [Windows](https://serverspace.by/services/vps-server/windows/). https://serverspace.by/support/help/problemi-pri-podkluchenii-po-rdp.md 6 способов решения проблемных случаев с подключениями по RDP к Windows серверу: не работает протокол RDP, не подключается удаленный рабочий стол, ошибка при соединении с Windows Server. Большинство проблемных случаев с подключениями по RDP можно решить одним из ниже описанных способов. Прочтите внимательно [инструкцию по подключению](https://serverspace.by/support/help/kak_podkljuchitsja_k_windows_serveru/) к Windows серверу. Проверьте, не скопировался ли лишний символ перед или после пароля (например, пробел – его наличие трудно заметить). Посмотрите через панель управления, включен ли требуемый сервер. Проверьте чтобы в настройках подключения не было указано домена. Если компьютер включен в корпоративную сеть, проверьте отсутствие блокировки на порте 3389 (зачастую администраторы корпоративных сетей блокируют его). Для более тяжелых случаев, когда предыдущие методы не дают результатов, нужно зайти в Пуск и в строчке Выполнить написать "cmd" — откроется командная строка. В ней напишите "ping <имя сервера для подключения>": - Ответ "Reply from IP-адрес: bytes=xx time=xms TTL=xxx" — попробуйте еще раз выполнить способы, описанные ранее; - Ответ "Превышен интервал времени для запроса" — обратитесь к местному провайдеру, причиной ошибки стало отсутствие сетевого доступа. https://serverspace.by/support/help/dobavleni-diskovogo-prostranstva-windows-server-2016.md Для увеличения размера дискового пространства требуется совершить ряд операций в панели, после чего его использование станет возможно на уровне ОС Windows Server. Для увеличения размера пространства, требуется совершить несколько последовательных операций в панели, и только после них пользоваться дисковым пространством станет возможно на уровне ОС Windows Server. Вам необходимо: - [step num=»1″]Открыть выпадающее меню и зайти в Computer Management. Среди пунктов выбрать Server Manager, кликнуть по Инструментам (Tools) и найти Computer.[/step] - [step num=»2″]В списке, расположенном слева, будет пункт Storage. Кликните по нему, откроется два подпункта, из которых необходимо выбрать Disk Management. После обновления окна (клавиша F5) появится неразмеченная область. В примере зона "Unallocated" имеет черный цвет, ее размер составляет 40 Гб.[/step] - [step num=»3″]Правой кнопкой мышки кликните по системному диску из списка. В выпадающем контекстном меню выберите команду Extend Volume.[/step] - [step num=»4″]Сразу появится окно Extend Volume Wizard.[/step] - [step num=»5″]В окне нужно выставить, какого размера должна быть неразмеченная область. Чаще всего пользователи выбирают все пространство, которое сейчас свободно. После выставления размера кликните по кнопке Next.[/step] - [step num=»6″]Подтвердить изменения можно кнопкой Finish.[/step] - [step num=»7″]Проверить результат можно в Computer Manager – в окне не должна появиться неразмеченная область.[/step] https://serverspace.by/support/help/ustanovka-mongodb-na-ubuntu-18-04.md Инструкция по установке СУБД MongoDB и проверке подключения на VPS с ОС Ubuntu 18.04. Что такое MongoDB? Преимущества MongoDB. Рассмотрим подробнее. Описание процесса установки СУБД MongoDB и проверки подключения на виртуальных серверах Ubuntu 18.04. ## Что такое MongoDB? MongoDB — это документо-ориентированная база данных с открытым исходным кодом, которая обеспечивает высокую производительность, высокую доступность и автоматическое масштабирование. MongoDB предоставляется бесплатно по лицензии [General Public](https://ru.wikipedia.org/wiki/GNU_General_Public_License), а также по [коммерческой лицензии](https://www.mongodb.com/community/licensing) от производителя. Компания-производитель определила MongoDB как: _"MongoDB is a scalable, open source, high performance, document-oriented database."_ ## Преимущества MongoDB - прежде всего, СУБД очень легко установить и настроить; - самой основной особенностью MongoDB является то, что это база данных без схемы. Поскольку MongoDB не содержит схемы, только ваш код определяет вашу схему. - возможность вывести модель данных на основе документов. Способ хранения данных в формате BSON (двоичный JSON), хэши ruby ​​и т.д. помогает хранить данные удобным образом, в то же время он способен хранить массивы и другие документы; - язык запросов документов, играет важную роль в поддержке динамических запросов; - легко масштабируется; - настройка производительности абсолютно проста по сравнению с любыми реляционными базами данных; - нет необходимости сопоставлять объекты приложения с объектами данных; - обеспечивает более быстрый доступ к данным благодаря своей природе использования внутренней памяти для хранения; - MongoDB также можно использовать в качестве файловой системы, которая помогает распределять нагрузку: - MongoDB поддерживает поиск по регулярным выражениям и полям; - MongoDB также может быть запущена как служба Windows; - доступно большое количество документации; - поддержка Sharding является одной из ключевых функций. Разделение — это процесс хранения данных на разных машинах и способность MongoDB обрабатывать данные по мере увеличения размера данных. Это приводит к горизонтальному масштабированию. С помощью шардинга можно записывать и считывать больший объем данных по мере увеличения объема данных. ## Установка Прежде чем начать устанавливать документо-ориентированную СУБД MongoDB, необходимо скачать и импортировать ключ GPG в операционную систему. ```bash sudo apt-key adv —keyserver hkp://keyserver.ubuntu.com:80 —recv 9DA31620334BD75D9DCB49F368818C72E52529D4 ``` После импорта ключа GPG добавьте репозиторий: ``` echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list ``` Обновите локальную базу пакетов и установите MongoDB: ```bash sudo apt-get update sudo apt-get install mongodb ``` Запустите СУБД на виртуальном сервере: ```bash sudo systemctl start mongodb ``` Если необходимо запускать сервис сразу после загрузки сервера, то выполните следующую команду: ```bash sudo systemctl enable mongodb ``` Проверьте статус запущенного сервиса: ```bash sudo systemctl status mongodb ``` Если все установлено корректно, то в консоли отобразится подобное сообщение: ``` ● mongodb.service — An object/document-oriented database Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-07-22 14:30:11 MSK; 36min ago Docs: man:mongod(1) Main PID: 31599 (mongod) Tasks: 23 (limit: 507 CGroup: /system.slice/mongodb.service └─31599 /usr/bin/mongod —unixSocketPrefix=/run/mongodb —config /etc/mongodb.conf Jul 22 14:30:11 Ubuntu1804x64 systemd[1]: Started An object/document-oriented database. ``` По умолчанию сервис должен прослушивать порт 27017, чтобы это проверить выполните следующую команду: ``` ss -tunelp | grep 27017 ``` Вы увидите следующий вывод: ``` tcp LISTEN 0 128 127.0.0.1:27017 0.0.0.0:* users:(("mongod",pid=31599,fd=11)) uid:112 ino:72894 sk:1 ``` ## Проверка подключения Для тестового соединения с СУБД MongoDB можно выполнить команду: ``` mongo —eval 'db.runCommand({ connectionStatus: 1 })' ``` Краткая информация по результату подключения в формате json: ``` MongoDB shell version v3.6.3 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.6.3 { "authInfo" : "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 } ``` Для подключения к субд используйте простую команду: ``` mongo ``` Ниже приведены простые примеры по работе с mongo. Создание базы данных: ``` > use cloud_db switched to db cloud_db ``` Показать текущую БД: ``` > db cloud_db ``` Вставить данные: ``` > db.files.insert({"name":"serverspace"}) WriteResult({ "nInserted" : 1 }) ``` Вывести все БД на сервере: ``` > show dbs admin 0.000GB config 0.000GB local 0.000GB сloud_db 0.000GB ``` Удалить текущую БД: ``` > db.dropDatabase() { "dropped" : "cloud_db", "ok" : 1 } ``` Команда выхода: ``` > exit bye ``` https://serverspace.by/support/help/ustanovka-elk-na-centos-7.md Установка Elasticsearch, Logstash и Kibana (ELK) на виртуальный сервер с ОС Centos 7. Установка Java. Настройка Nginx. Пошаговая инструкция. В инструкции описана установка ELK Stack на виртуальный сервер под управлением Centos 7. ## Что такое ELK Stack? "ELK" — это сокращение от трех проектов с открытым исходным кодом: Elasticsearch, Logstash и Kibana. Elasticsearch — это поисковая и аналитическая система. Logstash — это конвейер обработки данных на стороне сервера, который получает данные из нескольких источников одновременно, преобразует их, а затем отправляет в "тайник", подобный Elasticsearch. Kibana позволяет пользователям визуализировать данные с помощью диаграмм и графиков в Elasticsearch. ## Первоначальные требования Минимальные системные требования для нормальной работы ELK — 4Gb RAM и 2 СPU ## Установка Java Для развертывания стека Elastic требуется установка Java. Выполните следующую команду: ```bash yum -y install java-1.8.0 ``` Проверить установленную версию можно с помощью команды: ``` java -version ``` ## Установка и настройка Elasticsearch С помощью команды rpm загрузите ключ Elasticsearch: ``` sudo rpm —import [https://artifacts.elastic.co/GPG-KEY-elasticsearch](https://artifacts.elastic.co/GPG-KEY-elasticsearch) ``` Добавьте репозиторий: ``` sudo vi /etc/yum.repos.d/elasticsearch.repo ``` Вставьте в него следующее содержимое и сохраните файл: ``` [elasticsearch-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ``` Запустите процесс установки: ```bash sudo yum install elasticsearch ``` Далее необходимо отредактировать файл конфигурации, для начала его нужно открыть с помощью текстового редактора vi: ``` vi /etc/elasticsearch/elasticsearch.yml ``` В файле необходимо раскомментировать следующую строку: ``` bootstrap.memory_lock: true ``` Раскомментировать и установить значения следующим параметрам: ``` network.host: localhost http.port: 9200 ``` Сохраните изменения и закройте текстовый редактор. Следующим шагом является редактирование файла конфигурации sysconfig для Elasticsearch: ``` vi /etc/sysconfig/elasticsearch ``` Раскомментируйте параметр MAX_LOCKED_MEMORY и убедитесь, что установлено значение unlimited: ``` MAX_LOCKED_MEMORY=unlimited ``` Перед тем, как запустить сервис, сначала перезагрузите системы и разрешите запуск Elasticsearch во время загрузки: ```bash systemctl daemon-reload systemctl enable elasticsearch systemctl start elasticsearch ``` ## Установка и настройка Kibana Используйте wget для загрузки Kibana 6.2.4, а затем установите его с помощью команды rpm: ```bash wget https://artifacts.elastic.co/downloads/kibana/kibana-6.2.4-x86_64.rpm rpm -ivh kibana-6.2.4-x86_64.rpm ``` Далее необходимо отредактировать конфигурационный файл Kibana: ``` vi /etc/kibana/kibana.yml ``` Раскомментируйте следующие строки и установите значения: ``` server.port: 5601 server.host: "[IP-адрес вашего сервера]" elasticsearch.url: "http://localhost:9200″ ``` Например: ``` server.port: 5601 server.host: "123.234.123.234" elasticsearch.url: "http://localhost:9200″ ``` Запустите службу Kibana и настройте ее на автоматический запуск при загрузке: ```bash systemctl enable kibana systemctl start kibana ``` Откройте порт 5601 для подключения к веб-интерфейсу Kibana: ``` sudo firewall-cmd —add-port=5601/tcp —permanent sudo firewall-cmd —reload ``` ## Настройка Nginx На вашем виртуальном сервере должен быть установлен веб-сервер NGINX, о том как это сделать написано в нашей [инструкции](https://serverspace.by/support/help/ustanovka-nginx-na-centos-7/). Установите дополнительные инструменты для работы с веб-сервером: ```bash yum install httpd-tools ``` Далее необходимо создать новый файл конфигурации виртуального хоста в каталоге conf.d: ``` vi /etc/nginx/conf.d/[Домен или IP-адрес].conf ``` Например: ``` vi /etc/nginx/conf.d/123.234.123.234.conf ``` И вставить следующие данные: ```css server { listen 80; server_name [Домен или IP-адрес]; auth_basic "Restricted Access"; auth_basic_user_file /etc/nginx/htpasswd.kibana; location / { proxy_pass http://localhost:5601; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } ``` Затем создайте с помощью команды htpassw новый файл базовой аутентификации. Потребуется создать пароль для пользователя admin: ``` sudo htpasswd -c /etc/nginx/htpasswd.kibana admin ``` Перезапустите сервер nginx: ```bash systemctl restart nginx ``` ## Установка и настройка Logstash Загрузите и установите Logstash: ```bash wget https://artifacts.elastic.co/downloads/logstash/logstash-6.2.4.rpm rpm -ivh logstash-6.2.4.rpm ``` По завершении установки Logstash запустите сервис: ```bash systemctl restart logstash systemctl enable logstash ``` ## Подключение к kibana После завершения настроек подключитесь к Kibana в браузере, для этого перейдите по следующей ссылке: ``` http://[IP-адрес вашего сервера]:5601 ``` Например: http://123.234.123.234:5601 https://serverspace.by/support/help/active-directory-group-policies.md Для чего необходимы групповые политики Active Drirectory? Рассмотрим примеры работы с этим инструментом на VDS под управлением ОС семейства Windows Server. Групповые политики Windows являются неотъемлемой частью администрирования Windows-систем. Рассмотрим примеры работы с этим инструментом на VDS под управлением ОС семейства Windows Server. Что такое групповые политики и как ими пользоваться: - [Для чего необходимы групповые политики](#step1) - [Клиентский и серверный компоненты групповых политик](#step2) - [Настройка управления групповыми политиками](#step3) - [Как создать новый объект групповой политики](#step4) - [Как настроить управление групповыми политиками](#step5) - [Как найти нужный объект групповой политики](#step6) - [Как удалить объект групповой политики](#step7) ## Для чего необходимы групповые политики Говоря простым языком, Групповая политика — это инструмент архитектуры Active Directory, который позволяет управлять настройками серверов и рабочих терминалов, подключенных к домену, централизованно. Также, с помощью групповых политик достаточно просто распространить программное обеспечение. Администратор может указать политики для группы в одном месте, а затем применить их к целевой группе пользователей. Во многих компаниях, как правило, применяется деление на отделы: отдел кадров, бухгалтерия, юристы, отдел системного администрирования. Предположим, что каждому отделу необходим собственный минимальный набор программного обеспечения, а рабочие станции должны быть настроены для конкретных нужд и под конкретные задачи. Благодаря групповым политикам появляется возможность создать настройки для конкретных групп пользователей в домене. При помощи Active Directory GPO администратор может устанавливать и управлять стандартизированными наборами настроек, конкретно для бухгалтерии или отдела кадров. Настроить рабочие места (компьютеров и пользователей) проще и эффективнее потому что расположены по тому что располагаются централизованно и требуют дублирования на каждом ПК. ## Клиентский и серверный компоненты групповых политик Выделяют два компонента групповых политик — клиентский и серверный, т.е. формируется структура "клиент-сервер". Серверный компонент представляет оснастка MMC (Microsoft Management Console), предназначенная для настройки групповой политики. MMC можно использовать для создания политик, а также для контроля и управления административными шаблонами, настройками безопасности (установка ПО, скрипты и т.п.). Обобщенное название "возможностей" называется расширением. Каждое расширение может иметь дочернее расширение, которое разрешает добавление новых или удаление старых компонентов, а также их обновление. Клиентский компонент получает и применяет настройки групповой политики. Клиентские расширения являются компонентами запускаемыми на клиентской ОС, которые отвечают за интерпретацию и обработку объектов групповой политики. Для администрирования GPO используют оснастки MMC — Group Policy Management Console (GPMC) и Group Policy Management Editor. Сценарии использования Active Directory GPO: - Централизованная настройка пакета программ Microsoft Office. - Централизованная настройка управлением питанием компьютеров. - Настройка веб-браузеров и принтеров. - Установка и обновление ПО. - Применение определенных правил в зависимости от местоположения пользователя. - Централизованные настройки безопасности. - Перенаправление каталогов в пределах домена. - Настройка прав доступа к приложениям и системным программам. ## Как настроить управление групповыми политиками Сперва следует установить роль сервера Active Directory Domain Service (AD DS) на контроллер домена. После этого будет доступна оснастка Group Policy Management, для ее запуска вызываем окно "Выполнить" (Windows + R). В открывшемся окне вводим команду: ``` gpmc.msc ``` И нажимаем "**OK**". Возможно оснастка не сможет открыться т.к. не была установлена ранее. Исправим это. Открываем диспетчер серверов и выбираем установку ролей и компонентов. На этапе выбора типа установки, отметим параметр "**Установка ролей и компонентов**". Кликаем по кнопке "**Далее**". Так как установка выполняется для текущего сервера — нажимаем "**Далее**". Установку серверных ролей пропускаем нажатием на кнопку "**Далее**". На этапе выбора компонентов отметим галкой "**Управление групповой политикой**". Кликаем по кнопке "**Далее**". Завершаем установку компонентов как обычно. Окно оснастки управления групповой политикой выглядит так: ## Как создать новый объект групповой политики Добавим новый объект групповой политики. В левой части, проследуем по пути: **Лес → Домены → <Ваш Домен> → Объекты групповой политики**. В правой части окна, кликаем правой кнопкой мыши в свободном месте. В открывшемся контекстном меню, выбираем "**Создать**". В открывшемся окне, вводим имя новой политики. Нажимаем "**OK**". Добавленный объект появится в общем списке: ## Настройка созданного объекта групповой политики Для настройки нового объекта кликаем по нему правой кнопкой мыши. В контектстном меню выбираем "**Изменить**". Откроется окно редактора управления групповыми политиками. Займемся "полезным" делом — удалим папку со стандартными играми из меню Пуск. Для этого, в меню слева проследуем по пути Конфигурация пользователя Конфигурация пользователя → Политики → Административные шаблоны: получены определения политик (ADMX-файлы) с локального компьютера → Меню "Пуск" и панель задач. В правой части окна найдем параметр "Удалить ссылку "Игры" из меню "Пуск"". Для удобства поиска можно воспользоваться сортировкой по имени, вверху окна. https://serverspace.by/support/help/routing-in-pfsense-port-forwarding.md Рассмотрим настройки маршрутизации в pfSense - проброса портов (Port Forwarding). pfSense — это дистрибутив ПО на FreeBSD, предназначенный для организации маршрутизатора либо межсетевого экрана. Сетевые специалисты делят маршрутизаторы на два больших класса — программные и аппаратные. Аппаратные маршрутизаторы представляют оборудование разрабатываемое на предприятиях как готовый продукт. Программные реализации представляют собой набор программ или готовые сборки операционных систем, которые можно установить практически на любой современный компьютер или серверную платформу. Иногда бывает необходимо предоставить доступ из Интернета к машинам находящимся в локальной сети. Рассмотрим настройки маршрутизации — проброса портов (Port Forwarding) с помощью pfSense. pfSense — это дистрибутив ПО основанный на ОС FreeBSD и предназначенный для организации маршрутизатора либо межсетевого экрана, либо все сразу . Данная ОС может быть установлена практически на любой компьютер или сервер. Ключевая особенность pfSense — решение поставленных задач через web-интерфейс. ## Настройка сети Если настройка выполняется через VPS/VDS, то следует создать все требуемые серверы, один из которых будет под управлением pfSense. Добавить сетевые адаптеры и объединить в в одну виртуальную сеть. ## Приступаем к настройке В основном меню программы (горизонтальное черное) выбираем** Interfaces → Assignments**. Веб-страница обновится, появится список всех сетевых интерфейсов. "**Свободные**" интерфейсы находятся в поле Available network ports. Все интерфейсы показаны с mac-адресами на них. Из выпадающего списка выбираем необходимый и нажимаем кнопку "**Add**". После завершения действия, система уведомит об успешном добавлении. Интерфейс получит название "**LAN**". Сохраняем настройки кликом по кнопке "**Save**". Настроим сетевой адаптер. Для этого в главном меню открываем** Interfaces → LAN**. Установкой галки в поле Enable задействуем интерфейс. Установим настройку IPv4 как статичный IP (Static IPv4). В секции настроек конфигурации "**Static IPv4 Configuration**" указываем IP-адрес для этого интерфейса, в нашем случае 10.0.0.254, возможно у вас будет другой. В самом низу страница нажимаем кнопку "**Save**" для сохранения внесенных изменений. Система уведомит о внесенных изменениях. Применим их кликом по кнопке "**Apply changes**". ## Настроим сетевые интерфейсы клиентов При настройке сетевых интерфейсов клиентов важно помнить, что адрес сервера pfSense должен быть указан в качестве шлюза, в нашем случае 10.0.0.254. ### Настройка в Ubuntu Редактируем файл /etc/network/interfaces: ``` auto ens31 ``` ``` iface ens31 inet static ``` ``` address 10.0.0.2 ``` ``` netmask 255.255.255.0 ``` ``` dns-nameserver 8.8.8.8 ``` ``` gateway 10.0.0.254 ``` Перезапускаем службу сети: ``` /etc/init.d/networking restart ``` ### Windows Для настройки сетевого адаптера в среде Windows необходимо открыть **Пуск → Панель управления → Сеть и интернет → Сетевые подключения** либо **Пуск → Панель управления → Сеть и интернет → Центр управления сетями и общим доступом → Изменение параметров адаптера**. В открывшейся папке кликаем правой кнопкой мыши по значку сетевого адаптера, выбираем "**Свойства**". В открывшемся окне кликом мыши по названию (не по галке) выбираем "**Протокол Интернета версии 4 (TCP/IPv4)**". Нажимаем кнопку "**Свойства**". В новом окне указываем: - IP-адрес — 10.0.0.3; - Маска подсети: 255.255.255.0; - Шлюз — 10.0.0.254; - Предпочитаемый DNS-сервер: 8.8.8.8. Для сохранения нажимаем кнопку "**OK**". В окне Свойств сетевого адаптера также нажимаем кнопку "**OK**". Важно! Еще раз обращаем внимание, что IP-адрес сервера pfSense должен быть указан в качестве основного шлюза и шлюза по умолчанию. ## Настроим маршрутизацию В главном меню веб-приложения выбираем **Firewall → NAT**. На вкладке "**Port Forward** ". Нажимаем кнопку **Add**. На открывшейся странице редактирования правила перенаправления трафика создадим правило для RDP-интерфейса. В поле **Destination **указываем **Any**. Destination port range (from port) — выбираем порт назначения, в нашем случае MS RDP. Поле "to port" заполнится автоматически. Redirect target IP — указываем IP-адрес сервера или компьютера под управлением ОС Windows. Redirect target port — MS RDP. При желании заполняем поле описания — "**Description**". Нажимаем кнопку "**Save**". И не забываем нажать кнопку "**Apply changes**". **Важно! В случае если порт RDP был изменен (по умолчанию 3389), имя порта выбираем "Other", в поле Custom указываем текущее значение.** Созданное правило отображается как в примере ниже. Аналогичным способом создаются правила, скажем, для SSH-доступа. ## Проверка подключения Для проверки работоспособности настроек требуется подключиться SSH-клиентом или приложением для доступа к удаленному рабочему столу на внешний IP-адрес сервера pfSense. Также, проверку можно выполнить с помощью сниффера сетевых портов — **nmap**. https://serverspace.by/support/help/setting-timeouts-for-rdp-sessions.md Настройка таймаутов для RDP-сессий решает проблему прекращения работы программ, скриптов и макросов при разрыве сессии. Рассмотрим, как это сделать. В ходе удаленной работы пользователей, бывает важным выполнить настройку таким образом, чтобы программы, а также скрипты и макросы запущенные клиентом продолжали свою работу, а не закрывались сразу при разрыве сессии. В основе решения проблемы лежит всего лишь настройка таймаутов для RDP-сессий. Рассмотрим как это сделать. Устанавливаем Службу удаленных рабочих столов. Для этого открываем "**Панель управления сервером**". В открывшемся окне выбираем второй пункт — "**Добавить роли и компоненты**". В окне мастера установки ролей приводится общий ознакомительный материал. Данный текст будет появляться при каждой попытке добавить роли или компонент сервера. Чтобы эта информация не появлялась вновь, рекомендуем установить галочку "**Пропускать эту страницу по умолчанию**". Нажимаем кнопку "**Далее**". Следующим шагом выбираем тип установки — "**Установка служб удаленных рабочих столов**". Нажимаем "**Далее**". На следующем этапе выбираем тип развертывания — "**Службы Multipoint**". Обычно этот параметр установлен по умолчанию. Кликаем по кнопке "**Далее**". Следующим шагом выбираем сервер для которого выполняется установка. В нашем случае сервер уже добавлен, так как рассматриваем установку на единичный сервер не добавленный в домен. Нажимаем "**Далее**". Следующим шагом подтверждаем выбор. Установим галку, которая позволит системе перезагрузить сервер автоматически в случае необходимости. Нажимаем кнопку "**Развернуть**". **Важно! В ходе установки могут быть закрыты все RDP-соединения, а также сервер может быть несколько раз перезагружен без дополнительного уведомления об этом.** Дожидаемся окончания процесса установки. В окне трижды написано "**Успешно**". Закрываем окно установки. **Приступаем к настройке групповых политик.** Для настройки групповых политик запускаем соответствующую консоль. В программе выполнить (Windows + R) вводим "gpedit.msc". Нажимаем кнопку "**OK**" или **Enter**. В открывшемся окне следуем по пути **Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удаленных рабочих столов → Узел сеансов удаленных рабочих столов → Ограничение сеансов по времени**. Следующим параметрам необходимо установить значение "**Включено**": - Завершать сеанс при достижении ограничения по времени — Установка данного параметра разрешает или запрещает использовать таймауты. - Задать ограничение по времени для активных, но бездействующих сеансов служб удаленных рабочих столов — параметр определяет задержку для неактивных сеансов, когда пользователь бездействует. - Задать ограничение по времени для отключенных сеансов — параметр задает таймаут для завершенных сеансов, когда сеанс завершен, но в фоновом режиме запущены некоторые процессы. Для изменения значений, кликаем правой кнопкой мыши по каждому из пунктов. В контекстном меню выбираем "**Редактировать**". Аналогичное окно откроется по двойному клику. В открывшемся окне устанавливаем состояние как "**Включено**". Затем устанавливаем временные рамки. По окончании нажимаем кнопку "**OK**". Выбор временных диапазонов остается на усмотрение системного администратора. Параметр "**Завершать сеанс при достижении ограничения по времени**" не имеет временных диапазонов. Данный параметр нужно просто включить. После включения всех опций окно будет выглядеть следующим образом. На этом настройка окончена. https://serverspace.by/support/help/ustanovka-nginx-na-centos-7.md Рассмотрим процесс установки NGINX на виртуальный VPS сервер с ОС Centos 7 из репозитория EPEL. Сконфигурировать firewall сервера можно также в настройках в панели управления. Описание установки web-сервера NGINX на VPS/VDS под управлением Centos 7. ## Что такое NGINX? NGINX, произносится как "engine-ex", является известным веб-сервером с открытым исходным кодом. Изначально он предназначался для веб-обслуживания HTTP трафика, но в результате развития Nginx также может работать как почтовый прокси-сервер IMAP/POP3, а также как балансировщик нагрузки и HTTP-кэш-сервер. Официальный релиз NGINX состоялся в октябре 2004 года. Создатель программного обеспечения, Игорь Сысоев, начал свой проект в 2002 году, пытаясь решить проблему [C10k](https://ru.wikipedia.org/wiki/C10k). C10k — это задача одновременного управления 10000 соединениями. По этой причине NGINX предлагает управляемую событиями асинхронную архитектуру. Это делает NGINX одним из самых надежных серверов по скорости и масштабируемости. ## Первоначальные требования Для установки web-сервера nginx требуются права суперпользователя. ## Процесс установки В первую очередь необходимо добавить репозиторий EPEL: ```bash sudo yum install epel-release ``` Примечание: репозиторий EPEL (Extra Packages for Enterprise Linux) — поддерживается в рамках проекта Fedora и содержит дополнительные пакеты, не входящие в стандартный набор CentOS. Далее установите NGINX на ваш виртуальный сервер: ```bash sudo yum install nginx После того, как программное обеспечение будет установлено, необходимо запустить веб-сервер: [code]sudo systemctl start nginx ``` Также необходимо открыть порты 80 (http) и 443 (https) для подключения из сети Интернет: ``` sudo firewall-cmd —permanent —zone=public —add-service=http sudo firewall-cmd —permanent —zone=public —add-service=https sudo firewall-cmd —reload ``` Сконфигурировать firewall сервера можно также в настройках сервера в панели управления, о том как это сделать [написано в нашей инструкции](https://serverspace.by/support/help/firewall-configuring-the-server-firewall/). Для проверки перейдите в браузере по доменному имени или ip-адресу вашего сервера: http://IP-or-domain-name/ Если необходимо запускать NGINX при загрузке системы, то выполните следующую команду: ```bash sudo systemctl enable nginx ``` https://serverspace.by/support/help/ustanovka-php-mysql-plus-iis.md Рассмотрим, как создать связку IIS + MySQL + PHP. IIS - это набор служб Интернета от компании Microsoft, иными словами web-платформа. Установка и настройка PHP и MySQL. Так бывает, что на Windows-сервер необходимо использовать как web-сервер. Первое, что приходит на ум, так это установить [WAMP](https://serverspace.by/support/help/installing-and-configuring-the-wamp-server/). Или просто по отдельности установить Apache, MySQL и PHP. Однако случаются и частности, например вместо Apache требуется использовать IIS. Причины могут быть совершенно разными. От отсутствия желания у системного администратора изучить что-то новое, до радикальных взглядов со стороны службы информационной безопасности. Рассмотрим как создать связку IIS + MySQL + PHP. IIS — это набор служб Интернета от компании Microsoft, иными словами web-платформа. Особенность IIS такова, что он поддерживает большое количество модулей и приложений, в том числе и работу с MySQL и PHP. Устанавливаем IIS. Запускаем Диспетчер серверов. В открывшемся окне выбираем "Добавить роли и компоненты". В появившемся окне мастера установки ролей и компонентов, по желанию, устанавливаем галочку "Пропускать эту страницу по умолчанию". Данная страница будет появляться при каждой попытке добавления роли или компонентов. Нажимаем кнопку "**Далее**". На следующем шаге — Тип установки — проверяем, чтобы был выбран параметр "**Установка ролей и компонентов**". Кликаем по кнопке "**Далее**". На этапе выбора серверов просто нажимаем "**Далее**", так как в нашем случае существует один сервер. На шаге выбора ролей сервера отмечаем галкой "**Веб-сервер (IIS)**", кликаем по кнопке "**Далее**". В открывшемся окне нажимаем кнопку "**Добавить компоненты**". Окно закроется. В оставшемся окне мастера кликаем по кнопке "**Далее**". На этапе выбора компонентов, рекомендуем отметить галочкой "Функции .NET Framework 3.5". Нажимаем "**Далее**". На шаге "**Роль веб-сервера (IIS)" — "Далее**". При желании можно отметить дополнительные службы роли Веб-сервера, например FTP-сервер. Нажимаем кнопку "**Далее**". Подтверждаем установку кликом по кнопке "**Установить**". Дожидаемся окончания процесса установки. В окне "Диспетчер серверов" появится значок IIS. Кликаем по нему. В обновившемя окне кликаем правой кнопкой мыши по имени сервера. Из контекстного меню выбираем "**Диспетчер служб IIS**". В появившемся окне диспетчера, а левой части, выбираем текущий сервер. В правой части окна — "**Получить новые компоненты веб-платформы**". Откроется окно браузера используемого в системе по умолчанию с предложением скачать и установить установщик Web-платформ. Пакет установки скачиваем, запускаем и устанавливаем. После установки, еще раз нажимаем "Получить новые компоненты веб-платформы". Запустится мастер установки Web Platform Installer, **Устанавливаем MySQL и PHP.** В окне программы есть поле поиска. Воспользуемся им. В результатах поиска выбираем пакет PHP. Кликаем по кнопке "**Добавить**". Аналогичным образом находим пакет MySQL, кликаем "**Добавить**". Когда добавлены все пакеты, нгажимаем кнопку "**Установить**". Как и в Linux системах, программа установки запросит пароль для пользователя root к СУБД MySQL. Не забываем введенный пароль. Нажимаем "**Продолжить**". В центральной части окна перечислен список программ которые будут установлены. Чтобы посмотреть текст лицензионного соглашения устанавливаемого ПО, кликаем по гиперссылке. Если согласны, нажмите кнопку "**Принимаю**". Дожидаемся окончания установки. Результат установки. Нажимаем "**Готово**". Как видно, не был установлен пакет "Диспетчер PHP для IIS". Установим его аналогичным спом. Находим через поле поиска, кликаем по кнопке "**Добавить**", затем по кнопке "**Установить**". Помним, что программа не установилась из за неверной цифровой подписи. Такое бывает. Скачаем программу с [github](https://github.com/phpmanager/phpmanager/releases). Не забываем о разрядности ОС. В результате будет получен MSI-файл. устанавливаем как обычную программу. Возможно, в ходе установки, потребуется закрыть диспетчер IIS. После завершения установки, в окне диспетчера IIS появится значок "**Администратор PHP**". Откроем его двойным кликом. В открывшемся окне проверим phpinfo(). кликнем по соответствующей гиперссылке. В открывшемся окне выбора сайта и URL, выбираем сайт по умолчанию. Нажимаем "OK". Результат выполнения функции phpinfo() будет отображен в диспетчере IIS. **Проверим результат установки MySQL.** Открываем окно PowerShell и перейдем в директорию расположения СУБД с помощью команды: [/code]cd "C:Program FilesMySQLMySQL Server 5.5bin"[/code] [/step]**** Пробуем подключиться к СУБД: ``` ./mysql -u root -p ``` Вводим пароль указанный при установке. https://serverspace.by/support/help/using-ps-command-to-view.md Серверы с предустановленной ОС семейства Linux идут без графического интерфейса. Расскажем про утилиту PS, которая отвечает за просмотр процессов на экране пользователя. Серверы с предустановленной ОС семейства Linux идут без графического интерфейса. Для работы и настройки используют терминал. Расскажем про одну из утилит, которая отвечает за просмотр процессов. В качестве примера рассмотрим Ubuntu Server 18.04. ### Что такое PS Системная утилита PS отвечает за отображение процессов на экране пользователя. Совместно с ней используются команды more, less и grep для фильтрации. PS доступна в любом дистрибутиве серверной ОС Linux. Запускается через команду PS: Скриншот №1. Утилита PS. Где первый столбец означает идентификатор процесса (PID), второй – его наименование. Третий отображает процессорное время, затраченное сервисом, а четвертый – приложение, которое его запустило. ### Синтаксис PS Команда работает со следующими дополнительными ключами. Ключ –e (-A). Выводит на экран перечень всех процессов, которые запущены на сервере. ``` ps –e ``` Опция –d покажет системному администратору все процессы, за исключением так называемых "лидеров". Лидерство – это когда один процесс запускает другие. При запуске процесса с данным ключом пользователь не увидит первый сервис, но ему покажут зависимые от него. ``` ps –d ``` Ключ –N меняет значения опции с точностью до наоборот. Возьмем для примера предыдущий пункт. Если необходимо увидеть только лидеров, то после ключа D вводим N. ``` ps –d –N ``` Для отображения сервисов, которые запущены в текущей терминальной сессии, используем букву T, а для просмотра только работающих в данный момент – r. ### Сортировка Рассмотрим возможности утилиты PS как фильтра. Если требуется отобразить информацию о конкретном сервисе, то указываем его идентификатор (PID). ``` ps 1721 ``` **Важно!** Если требуется показать несколько процессов, то указываем PID каждого через запятую. Администраторы не запоминают идентификаторы каждого процесса, но помнят наименования. Соответственно, для поиска конкретного сервиса указываем имя через специальный ключ. ``` ps –C bash ``` Другой способ сортировка – использовать имя группы. Для этого используется ключ –G или –Group. ``` ps —Group users ``` Альтернативный вариант: совместить поиск по идентификатору группы. За это отвечает опция –g либо –group. **Важно!** Ключи –G и –g отличаются только написанием: заглавная и прописная, но они выполняют разные функции. Чтобы просмотреть перечень процессов, которые запустил конкретный пользователь, используем функцию –U. ``` ps –U name_user ``` , где user_name – учетное имя, для которого проводится выборка. **Важно!** Если требуется отображать процессы, которые запустил пользователь, то берем его имя в прямые кавычки. ### Дополнительные возможности Как было показано выше, PS по умолчанию выводит краткую информацию о процессах. Чтобы получить подобное описание, используем ключ –eF. ``` ps –eF ``` Добавится информация о размере, который забирает сервис из оперативной памяти, временной интервал работы, идентификатор учетного имени, под которым запущен процесс и другие данные. Чтобы финализировать информацию используют ключ —sort совместно с дополнительными опциями, которые проводят сортировку по значениям, например, %mem, cp, comm и др. ``` ps –eF —sort ``` , где option – один из многочисленных ключей. Подробная информация доступна в справочной службе команды PS. Ключи less и more регулируют размеры страницы в терминале, т.е. позволяет смотреть под одной странице за каждое нажатие клавиши. Команда grep отбирает данные, которые содержат определенное слово, например: ``` Ps –eF | grep nginx ``` После запуска команды в окне терминала отобразится информация о всех строках, содержащих слово nginx. https://serverspace.by/support/help/checklist-bezopasnogo-windows-server.md Пройдемся по списку и настроим ключевые моменты для обеспечения безопасности сервера под управлением Windows: настройка межсетевого экрана, учетная запись администратора, настройка политики безопасности. Вопрос безопасности сервера был и будет актуальным. Рассмотрим базовые правила обеспечения безопасности серверов под управлением ОС семейства Window Server. **Регулярно устанавливать обновления операционной системы и установленного программного обеспечения.** В быту существует мнение, что Windows не нуждается в обновлениях и их вообще лучше отключить, якобы "чтобы система не тормозила". Это одна из самых главных ошибок. Обновления важно устанавливать своевременно, особенно критические. Упрощает эту задачу специальная утилита, с которой можно ознакомиться на официальном сайте [Центра обновления Windows](https://www.microsoft.com/ru-ru/itpro/windows). Также важно поддерживать в актуальном состоянии установленное сопутствующее программное обеспечение, в том числе СУБД, различные фреймворки и прочее. **Использовать ПО из проверенных источников.** Рекомендуем перед загрузкой установочного пакета программного обеспечения, в том числе и Open Source, убедиться в надежности источника. Нередко бывает так, что визуально похожий на официальный сайт ресурс, распространяет уже скомпрометированое ПО. В пакет установки может быть добавлен файл с вредоносным кодом. **Грамотно настроить межсетевой экран.** Важно понимать, что сервер доступен из сети Интернет. По этой причине, ОС должна быть защищена любым устройством выполняющим функции файрволла. Если подобных устройств нет, то Брандмауэр Windows будет последней надеждой на защиту от несанкционированных подключений к серверу. Чем меньше TCP/UDP портов доступно извне, тем меньше шансов провести атаку на сервер. В этом вопросе важно разобраться что блокировать. Если речь идет о web-сервере, то доступными необходимо оставить 80 и 443 TCP-порты (эти порты служба слушает по умолчанию). Это были публичные порты, но не стоит забывать, что существуют порты, доступ к которым должен предоставляться по принципу "белого" списка, т.е. только определенному кругу лиц. Пример портов: - 3389 — RDP (Remote Desktop Protocol); - 135-139 — NetBIOS; - 445 — Samba (общий доступ к файлам и папкам); - 5000 — 5050 — FTP в пассивном режиме; - 1433 — 1434 — порты SQL; - 3306 — стандартный порт MySQL; - 53 — DNS Создать правило не сложно. Открываем **Пуск → Панель управления → Система и безопасность → Администрирование → Брандмауэр Windows в режиме повышенной безопасности.** В окне программы кликаем правой кнопкой мыши по "**Правила для входящих подключений"**. В открывшемся контекстном меню выбираем "**Создать правило..**.". **Переименовать учетную запись администратора.** **Использовать несколько аккаунтов администратора.** Если администрированием сервера занимается несколько специалистов, следует создать индивидуальную учетную запись для каждого. Подобная мера позволит выследить виновника в произошедшем. **Использовать учетную запись пользователя с ограниченными правами.** Для выполнения повседневных задач не всегда требуется использовать учетную запись с правами администратора. Рекомендуем создать учетную запись с ограниченными правами. В случае если учетная запись будет скомпрометирована, злоумышленнику придется постараться чтобы получить права администратора. Также, подобная мера может помочь спасти сервер от собственных действий. В случае несанкционированного доступа под учетной записью администратора, злоумышленник получит полный доступ к системе. **Ограничить общий доступ к файлам и папкам, включить защиту паролем.** Мы настоятельно не рекомендуем предоставлять подключение к общим каталогам анонимным пользователям и пользователям без пароля. Даже если файлы, хранящиеся в папках, не представляют никакой ценности, ничто не мешает злоумышленнику подменить файл на файл с вредоносным содержимым. Последствия такой подмены могут быть самыми разными. Кроме использования парольной защиты, рекомендуем ограничить разных пользователей в уровне доступа как к файлам, так и папкам (чтение, запись, изменение). **Включить запрос пароля для входа в систему при выходе из режима ожидания, а также отключение сессий при бездействии.** При использовании физического сервера (не удаленного и не виртуального), рекомендуется включить запрос пароля пользователя при выходе из режима ожидания. Данный параметр настраивается в панели управления: **Панель управления → Все элементы панели управления → Электропитание.** Также важно установить лимиты бездействия пользователя, а "по возвращении" запросить пароль. Это исключит возможность входа другого лица от имени пользователя, в случае если тот отлучился или забыл закрыть RDP-сессию. Чтобы настроить этот пункт, следует воспользоваться настройкой локальных политик** secpol.msc**. **Использовать Мастер настройки безопасности.** Мастер настройки безопасности ([SCW – Security Configuration Wizard](https://docs.microsoft.com/en-us/previous-versions/orphan-topics/ws.11/cc754997(v=ws.11))) позволяет создавать XML-файлы политик безопасности, которые впоследствии, можно перенести на другие серверы. Эти политики включают в себя не только правила использования сервисов, но и общие параметры системы и правила Firewall. **Корректно настроить политики безопасности.** Кроме первоначальной настройки групповых политик Active Directory, периодически следует проводить их ревизию и повторную настройку. Это один из основных способов обеспечения безопасности Windows-инфраструктуры. Для удобства управления групповыми политиками, можно воспользоваться не только встроенной в Windows Server утилитой "gpmc.msc", но и предлагаемую Microsoft утилиту "Упрощенные параметры настройки безопасности" ([SCM-Security Compliance Manager](https://technet.microsoft.com/ru-ru/library/cc677002.aspx)). **Использовать локальные политики безопасности.** Кроме использования групповых политик безопасности Active Directory следует использовать и локальные политики, которые затрагивают права как удаленных пользователей, так и локальные аккаунты. Для управления локальными политиками вы можете использовать соответствующую оснастку "Локальная политика безопасности", вызываемую командой secpol.msc из Пуск -> Выполнить (клавиша Windows + R). **Защитить службу удаленных рабочих столов (RDP).** 1. Блокировать RDP-подключения для пользователей с пустым паролем. Наличие пользователей без паролей недопустимо, но если этого миновать не удается, то можно хотя бы запретить подключение к RDP. Для этого открываем **Пуск → Средства администрирования**. В открывшемся каталоге, запускаем **Локальная политика безопасности**. В окне локальный политик безопасности, слева, выбираем **Локальные политики → Параметры безопасности**. В основной части окна, находим "**Учетные записи**: Разрешить использование пустых паролей только при консольном входе". Выбираем этот пункт двойным кликом и переводим переключатель в положение "**Отключен**". Нажимаем кнопку "**OK**". 2. Поменить стандартный TCP-порт RDP. Замена номеров TCP-портов стандартных сервисов на другие значения, вполне может повысить безопасность сервера, главное не забыть новый номер порта. Для замены порта: 1. открываем редактор Реестра Windows — Windows + R 2. На всякий случай, создаем резервную копию реестра (Файл → Экспорт) 3. Разворачиваем ветку **HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp** и, в правой доле окна, находим параметр PortNumber. 4. Открываем параметр двойным кликом мыши. В открывшемся окне выбираем **Систему исчисления: Десятичная**, указываем новое значение порта, нажимаем кнопку "OK" и закрываем окно редактора реестра. 5. Чтобы была возможность подключиться к серверу, создаем соответствующее правило для Брандмауэра Windows. Кликаем правой кнопкой мыши по "**Правила для входящих подключений**", в контекстном меню выбираем "**Создать правило**". В окне "**Мастера**", выбираем "**Для порта**" Затем выбираем "**Протокол TCP**", "**Определенные локальные порты**" и указываем новый номер порта. Следующим шагом выбираем "**Разрешить подключение**" Настраиваем для каких сетей будет действовать правило, нужное отмечаем галками. На итоговом шаге, указываем название правила и описание к нему. 6. Перезагружаем сервер чтобы применить изменения. 7. Для подключения к удаленному рабочему столу теперь используем IP-адрес или доменное имя, а через двоеточие указываем порт. **Настроить шлюз службы терминалов.** Служба "Шлюз TS (служб удаленных рабочих столов)" позволяет обезопасить подключение к удаленному рабочему столу путем использования протокола HTTPS(SSL), тем самым избавляя системного администратора от необходимости настройки VPN. Инструмент способен комплексно контролировать доступ к машинам, а также устанавливать правила авторизации и требования к удаленным пользователям, например: - Пользователи или группы пользователей, которым разрешено подключаться к внутренним сетевым ресурсам; - Сетевые ресурсы, к которым могут подключаться пользователи; - Должны ли клиентские компьютеры иметь членство в Active Directory; - Необходимо ли клиентам использовать проверку подлинности на основе смарт-карт или пароля, или они могут использовать один из вышеперечисленных способов аутентификации. Логика работы работы шлюза удаленных рабочих столов требует использования отдельной машины. Однако, не запрещает использовать самостоятельную виртуальную машину. **Установим службу шлюза TS.** 1. Открываем Диспетчер серверов. 2. Выбираем "**Добавить роли и компоненты**" 3. На этапе "Тип установки", выбираем "Установка ролей и компонентов. 4. Следующим шагом выбираем текущий сервер. 5. Роль сервера — **Служба удаленных рабочих столов**. 6. Переходим к службе ролей. Выбираем "**Шлюз удаленных рабочих столов**". 7. Переходим к этапу подтверждения, нажимаем кнопку "**Установить**". **Устанавливаем SSL-сертификат.** После установки роли, в окне Диспетчера серверов, выбираем **Средства → Remote Desktop Services → Диспетчер шлюза удаленных столов**. В открывшемся окне, в левой его части, нажимаем по значку сервера. В основной части окна, выбираем "**Просмотр и изменение свойств сертификата**". В открывшемся окне "**Свойства**" переходим на вкладку "**Сертификат SSL". Выбираем пункт "Создать самозаверяющий сертификат**", нажимаем кнопку "**Создать и импортировать сертификат**". Если у вас есть созданный ранее сертификат, можно воспользоваться одним из пунктов ниже, в зависимости от того, кем он был выдан. В новом окне следует проверить параметры. Если все верно — нажимаем "OK". Новым окном система оповестит об успешном создании сертификата и выдаст путь до файла. Переходим к окну свойств сервера. Нажимаем "**Применить**". **Остается только настроить групповые политики.** В окне "**Диспетчер шлюза удаленных рабочих столов**", в левой колонке, раскрываем ветку сервера, выбираем "**Политики**", затем "**Политики авторизации подключений**". В правой колонке того же окна, выбираем "Создать новую политику" → "**Мастер**". В новом окне выбираем "**Создать только политику авторизации подключений к удаленным рабочим столам**", нажимаем "**Далее**". Указываем желаемое имя для политики. Мы рекомендуем указывать имя латиницей. Следующим шагом будет выбор удобного метода аутентификации — пароль или [смарт-карта](https://docs.microsoft.com/ru-ru/windows/win32/secauthn/smart-card-authentication). Оставляем отмеченным только "**Пароль**". Нажимаем кнопку "**Добавить группу**" В окне выбора групп кликаем по кнопке "**Дополнительно**". Размер окна изменится. Кликаем по кнопке "**Поиск**". В найденных результатах выбираем "**Администраторы домена**" и нажимаем кнопку "**OK**". В окне выбора группы проверяем выбранные имена объектов и нажимаем "**OK**". Группа добавлена. Для перехода к следующему шагу нажимаем кнопку "**Далее**". На следующем этапе выбираем пункт "**Включить перенаправление устройств для всех клиентских устройств**" и нажимаем "Далее". Настраиваем таймауты сессий. И действия по их истечении. Рекомендуем отключать сеанс, чтобы фоновые пользовательские процессы не отнимали процессорное время. Нажимаем "Далее". На крайнем этапе просматриваем сводку, нажимаем "**Готово**". На подтверждение создания политики нажимаем "**Закрыть**". **Настроим политику авторизации ресурсов.** Процесс выполняется подобно предыдущему. В окне диспетчера шлюза удаленных рабочих столов, раскрываем ветку **Политики → Политики авторизации подключений**. В правой части окна выбираем "**Создать новую политику" → "Мастер**". В открывшемся окне выбираем "**Создать только политику авторизации ресурсов удаленных рабочих столов**", нажимаем кнопку "**Далее**". Первым шагом указываем желаемое имя для политики авторизации. Настоятельно рекомендуем указывать имя латиницей. Нажимаем кнопку "Далее". В окне выбора групп кликаем по кнопке "**Дополнительно**". Окно изменит размеры. Нажимаем кнопку "**Поиск**". В результатах поиска находим "**Администраторы домена**" и нажимаем кнопку "**OK**". В окне выбора группы проверяем выбранные имена объектов и нажимаем "**OK**". Группа добавлена. Для перехода к следующему шагу нажимаем кнопку "**Далее**". На следующем шаге разрешаем подключение пользователей к любому сетевому ресурсу. Для этого выбираем соответствующий параметр и нажимаем кнопку "**Далее**". Настраиваем разрешенные порты. сли порт RDP-сервера не был изменен, то оставляем 3389. Нажимаем "**Далее**". Финальным этапом проверяем настройки и нажимаем кнопку "**Готово**". В обновленном окне нажимаем "**Закрыть**". **Изолировать серверные роли. Отключить неиспользуемые сервисы.** На этапе предварительного планирования сетевой архитектуры, одной из основных задач является планирование рисков в случае выхода из строя какого-либо элемента сети. Причин этому может быть много — от выхода из строя оборудования, до "взлома" извне. Чем большее количество ролей возложено на сервер, тем тяжелее будут последствия при отказе сервера. Для минимизации рисков и ущерба следует, по возможности, разграничить роли серверов еще на этапе проектирования. Отключение сервисов и ролей сервера, в которых необходимости, также положительно скажется на его работе. Идеальный случай — один сервер выполняет одну конкретную функцию, например Контроллер домена или файловый сервер, или сервер терминалов. На практике, подобное разделение ролей труднодостижимо. С изоляцией ролей вполне могут справиться и виртуальные серверы. Современные технологии виртуализации предлагают высокий уровень производительности и стабильности, при том, что не администратор, не пользователь не испытывают каких-либо ограничений. Грамотно подобранная аппаратная и настроенная программная части могут являться полноценной заменой целому парку техники. **Обзор Windows Nano Server.** Дальнейшим развитием **Windows Server Core** стал **Nano Server**. Данная версия дистрибутива исключает использование графического интерфейса пользователя. Всё управление сосредоточено на WMI — инструментарий управления Windows, а также Windows PowerShell. Данный дистрибутив Windows-сервер имеет на 92% меньше критических рекомендаций безопасности. Nano Server доступен только для клиентов Microsoft Software Assurance и на платформах облачных вычислений, например, Microsoft Azure и Amazon Web Services. Начиная со сборки Windows Server 1709, Nano Server можно устанавливать только внутри хоста контейнера . https://serverspace.by/support/help/configuring-the-remote-desktop-gateway.md Рассмотрим настройку шлюза удаленных рабочих столов (Remote Desktop Gateway / Terminal Services Gateway) в домене Active Directory. Для того чтобы повысить уровень безопасности Windows-сервера бывает недостаточно [сменить TCP-порт RDP](https://serverspace.by/support/help/smena-nomera-rdp-v-windows-server-2012/) . Рассмотрим настройку шлюза удаленных рабочих столов (Remote Desktop Gateway / Terminal Services Gateway) в домене Active Directory. **Remote Desktop Gateway, что это?** Remote Desktop Gateway — это роль Windows-сервера, обеспечивающая защищенное соединение, с помощью протокола SSL, с сервером по RDP. Главное преимущество этого решения в том, что не требуется развертывание VPN-сервера, для этого и используется шлюз. Следует отметить, что начиная с Windows Server 2008 R2, [были изменены названия](https://docs.microsoft.com/ru-ru/windows/win32/termserv/terminal-services-is-now-remote-desktop-services) всех служб удаленных рабочих столов. Именуемые ранее службы Terminal Services были переименованы в Remote Desktop Services. Преимущества Remote Desktop Gateway в следующем: - Используя зашифрованное соединение, шлюз позволяет подключаться к внутренним сетевым ресурсам без необходимости использования VPN-соединения удаленными пользователями; - Шлюз дает возможность контроля доступа к определенным сетевым ресурсам, тем самым реализуя комплексную защиту; - Шлюз разрешает подключение к сетевым ресурсам, которые размещены за межсетевыми экранами в частных сетях или NAT; - С помощью консоли диспетчера шлюза появляется возможность настраивать политики авторизации для тех или иных условий, которые должны быть выполнены при подключении к сетевым ресурсам удаленными пользователями. В качестве примера, можно указать конкретных пользователей, которые могут подключаться к внутренним сетевым ресурсам, а также должен ли клиентский компьютер при этом быть членом группы безопасности AD, допустимо ли перенаправление устройства и диска; - Консоль диспетчера шлюза содержит инструменты, предназначенные для отслеживания состояния шлюза. Используя их, вы можете назначить отслеживаемые события для аудита, например, неудачные попытки подключения к серверу шлюза служб терминалов. Важно! Шлюз служб терминалов должен входить в домен Active Directory. Настройка шлюза выполняется только от имени администратора домена, на любом сервере в домене. **Установим роль.** [step num=»1″]Открываем Диспетчер серверов.[/step] [step num=»2″]Выбираем "**Добавить роли и компоненты**".[/step] [step num=»3″]На этапе "**Тип установки**", выбираем "**Установка ролей и компонентов**".[/step] [step num=»4″]Следующим шагом выбираем текущий сервер.[/step] [step num=»5″]Роль сервера — **Служба удаленных рабочих столов**.[/step] [step num=»6″]Переходим к службе ролей. Выбираем "**Шлюз удаленных рабочих столов**".[/step] [step num=»7″]Переходим к этапу подтверждения, нажимаем кнопку "**Установить**".[/step] **Настройка политики авторизации подключения и ресурсов.** [step num=»8″]В открывшемся окне диспетчера шлюза удаленных рабочих столов, в левой части окна, раскрываем ветку с именем сервера → Политики → Политики авторизации подключений. В правой части того же окна выбираем **Создать новую политику → Мастер**.[/step] [step num=»9″]В открывшемся окне "**Мастер создания новых политик авторизации**" выбираем рекомендуемый параметр "Создать политику авторизации подключений к удаленным рабочим столам и авторизации ресурсов удаленных рабочих столов". Нажимаем кнопку "**Далее**".[/step] [step num=»10″]На следующем шаге вводим удобное имя для политики авторизации подключения. Мы рекомендуем давать имена на английском языке.[/step] [step num="11″]Следующим этапом будет выбор удобного метода аутентификации — пароль или [смарт-карта](https://docs.microsoft.com/ru-ru/windows/win32/secauthn/smart-card-authentication). В нашем случае оставляем отмеченным только "**Пароль**". Добавляем группы, которые могут подключаться к данному RD-шлюзу, для этого нажимаем кнопку "**Добавить группу**".[/step] [step num=»12″]В окне выбора групп кликаем по кнопке "**Дополнительно**".[/step] [step num=»13″]Окно изменит размеры. Нажимаем кнопку "**Поиск**". В результатах поиска находим "**Администраторы домена**" и нажимаем кнопку "**OK**".[/step] [step num=»14″]В окне выбора группы проверяем выбранные имена объектов и нажимаем "**OK**".[/step]  [step num=»15″]Группа добавлена. Для перехода к следующему шагу нажимаем кнопку "**Далее**".[/step] [step num=»16″]На следующем этапе выбираем пункт "**Включить перенаправление устройств для всех клиентских устройств**" и нажимаем "**Далее**".[/step] [step num=»17″]Устанавливаем таймауты — время простоя и время работы сессии, значения указаны в часах. Нажимаем "**Далее**".[/step] [step num=»18″]Проверяем выполненные настройки. Все правильно — нажимаем "**Далее**".[/step] [step num=»19″]На следующем этапе настроим политику авторизации ресурсов. Указываем желаемое имя политики. Нажимаем "**Далее**".[/step] [step num=»20″]Следующим шагом установим членство в группах. Обычно, группа уже установлена, но если это не выполнено, следует выполнить действия приведенные выше. Нажимаем "**Далее**".[/step] [step num=»21″]Выбираем доступные сетевые ресурсы. Для этого необходимо выбрать группу, которая содержит серверы на которых требуемые группы пользователей могли бы работать с удаленным рабочим столом. Нажимаем кнопку "**Обзор**".[/step] [step num=»22″]В окне выбора группы, нажимаем кнопку "**Дополнительно**".[/step] [step num=»23″]В измененном окне нажимаем кнопку "**Поиск**". В окне результатов находим "**Контроллеры домена**". Нажимаем "**OK**".[/step] [step num=»24″]Проверяем выбранные объекты и нажимаем "**OK**".[/step] [step num=»25″]Еще раз проверяем какая сетевая группа добавлена и нажимаем "**Далее**".[/step] [step num=»26″]Если номер RDP-порта неизменялся, устанавливаем значение переключателя в "**Разрешить подключение только к порту 3389**". Если порт был изменен, следует указать новое значение.[/step] [step num=»27″]Кликаем "**Готово**"[/step] [step num=»28″]На этапе подтверждения создания политики нажимаем кнопку "**Закрыть**".[/step] [step num=»29″]По окончании настройки окно будет выглядеть подобным образом.[/step] **Установим SSL-сертификат.** В том же окне "**Диспетчер шлюза удаленных рабочих столов**", в левой окна кликаем по значку сервера, в основной части окна — "**Просмотр и изменение свойств сертификата**". В открывшемся окне "Свойства <имя_сервера>" переходим на вкладку "Сертификат SSL". Устанавливаем переключатель "Создать самозаверяющий сертификат" и кликаем по кнопке "Создать и импортировать сертификат". Хотя возможны еще 2 варианта: - импорт ранее загруженного сертификата (самоподписанного ранее или стороннего); - загрузка стороннего сертификата (например, Comodo) и его импорт; В окне "**Создание самозаверяющего сертификата**" проверяем параметры и нажимаем кнопку "**OK**". Система уведомит, что сертификат был создан успешно. также присутствует информация, где можно найти сам файл сертификата. Нажимаем кнопку "**OK**". В окне свойств сервера, нажимаем кнопку "**Применить**". Самозаверенный сертификат установлен на TCP-порт 443 (SSL-порт по умолчанию). Мы рекомендуем, в целях безопасности, изменить порт SSL, используемый по-умолчанию. Для этого, в основном меню окна, выбираем "**Действия" → "Свойства**". Переходим на вкладку "**Параметры транспорта**" и устанавливаем желаемое значение поля "**HTTPS-порт**". Сохраняем параметры нажимая кнопку "**Применить**". Система запросит подтверждение — отвечаем "**Да**". **Выполним подключение через шлюз.** Открываем RDP-клиент, переходим на вкладку "**Дополнительно**" и нажимаем кнопку "**Параметры**". В открывшемся окне выбираем "**Использовать следующие параметры сервера шлюза удаленных рабочих столов**". Указываем доменное имя сервера и через двоеточие (:) указываем SSL-порт. Метод входа — "**Запрашивать пароль**". Нажимаем "**OK**" Переходим на вкладку "**Общие**". Указываем адрес компьютера и пользователя под которым будет выполняться подключение. Нажимаем кнопку "**Подключить**" Программа запросит пароль от учетной записи. Результаты работы шлюза можно проверить трассировкой — команда tracert. https://serverspace.by/support/help/how-to-add-a-server-to-an-existing-windows-domain.md Рассмотрим, как добавить новый сервер в уже существующий домен Windows. Для этого открываем Панель управления → Система и безопасность → Система. Одним из значимых событий роста и развития локальной сети является появление нового сервера. Рассмотрим как новый сервер добавить в уже существующий домен Windows. Доменные службы Active Directory — это реализация службы каталогов Microsoft, представляющая централизованные службы авторизации и проверки подлинности. Active Directory Domain Services в Windows Server — это развитая служба каталогов предназначенная для централизованного хранения данных, а также управления безопасностью. В задачи "безопасности" входит управление компьютерами, пользователями и их группами, обеспечение безопасного и централизованного доступа к ресурсам сети. AD DS используют для организации ЛВС. Перед началом настройки. Для нормального функционирования сети и AD, в частности, необходимо создать серверы и контроллеры домена. Для этого, на этапе заказа VDS, в панели управления, в личном кабинете, следует отметить галочкой поле "Выполнить системную подготовку Windows". По окончании процесса формирования серверов, необходимо все машины объединить в одну частную сеть. В результате этих действий, серверы получат дополнительные сетевые адаптеры и локальные IP-адреса. Предварительно должен быть настроен контроллер домена и создан пользователь. Настраиваем сетевой адаптер. Подключаемся к серверу по RDP. Открываем настройки сети. Выбираем "IP версии 4". Указываем, в качестве первичного DNS-сервера, адрес сервера с контроллером домена. Нажимаем кнопку "OK". **Добавляем сервер в домен.** Для добавления сервера в домен откроем свойства системы. Для этого открываем **Панель управления → Система и безопасность → Система **(Или кликаем правой кнопкой мыши по значку "Этот компьютер", в контекстном меню выбираем "**Свойства**"). В открывшемся окне кликаем по ссылка "**Изменить параметры**". В появившемся окне указываем описание сервера и нажимаем кнопку "**Изменить**" для смены рабочей группы на домен. Кликаем по переключателю, что данный компьютер является членом домена и указываем имя домена. Также, следует ввести понятное имя компьютера. Для сохранения настроек кликаем по кнопке "**OK**". Система попросит ввести пользовательские данные, для того, чтобы можно было подключиться к домену. В случае, если пользовательские данные корректны, появится системное уведомление. А также появится уведомление о необходимости перезагрузки сервера. О необходимости перезагрузки система напомнит еще раз. И предложит принять решение. Если нет неотложных задач, то перезагружаем сервер. **Подключение к серверу.** Пробуем подключиться по протоколу RDP с учетными данными созданного пользователя, через значок "@" ("собака") указываем домен. Если подключение прошло успешно, значит сервер в домен добавлен верно. Несмотря на то, что Windows рекомендует держать Брандмауэр включенным для всех сетей, мы рекомендуем, во избежание непредсказуемого поведения, отключить его для доменной и частной сетей. Для публичной сети, все же, рекомендуем оставить его включенным. https://serverspace.by/support/help/configuring-samba.md Samba - серверное приложение, реализующее доступ клиентских терминалов к папкам, принтерам и дискам про протоколу SMB/CIFS. Рассмотрим настройку Samba для Linux и Windows. Пожалуй нет ни одного офиса, в котором не применялись бы общие ресурсы локальной сети, будь то папки или принтеры. Крупные и средние компании используют возможности Active Directory, компании поменьше — используют штатные средства ОС Windows или Samba, но на серверах под управлением ОС Linux. Рассмотрим все случаи. Как настроить Samba? - [Что такое Samba?](#step1) - **[Как настроить общую папку](#step2)** - [Как настроить общую папку в Linux](#step3) - [Как настроить общую папку в Windows](#step4) - **[Как подключиться к общей папке](#step5)** - [Как подключиться к общей папке Linux](#step6) - [Как подключиться к общей папке Windows](#step7) - [Как создать общий сетевой ресурс в Samba](#step8) ## Что такое Samba? Samba — серверное приложение, реализующее доступ клиентских терминалов к папкам, принтерам и дискам про протоколу SMB/CIFS. ## Настройка общих папок ### Linux Установка и настройка Samba-сервер для Ubuntu выполняется следующими этапами. Обновляем информацию о репозиториях и устанавливаем обновления для существующих пакетов в системе: ```bash apt-get update && apt-get upgrade ``` Устанавливаем пакет Samba: ```bash apt-get install -y samba samba-client ``` Создадим резервную копию файла конфигурации: ``` cp /etc/samba/smb.conf /etc/samba/smb.conf_sample ``` Создадим директории для файлов, например в каталоге /media: ``` mkdir /media/samba ``` Важно! По умолчанию, директория /media располагается в корне системы /, для нее редко создается свой раздел. По этой причине возможно переполнение корневого раздела. Во избежание этой неприятной ситуации, рекомендуем [монтировать отдельный жесткий диск](https://serverspace.by/support/help/mounting-a-disk-and-creating-partitions-in-linux/) в /media/samba. Создаем каталог для всех пользователей: ``` mkdir /media/samba/public ``` Изменим права доступа к каталогу: ```bash chmod -R 0755 /media/samba/public ``` Также следует воспользоваться командой chown для смены владельца и/или группы. Создаем директорию для ограниченного круга лиц: ``` mkdir /media/samba/private ``` С помощью системных инструментов создадим группу пользователей: ``` groupadd smbgrp ``` Добавляем пользователей Samba: ``` useradd user1 ``` Созданных пользователей добавляем в группу: ``` usermod -aG smbgrp user1 ``` Изменим группу, которой принадлежит приватная директория: ``` chgrp smbgrp /media/samba/private ``` С помощью инструментов Samba создадим пароль для добавленного пользователя: ``` smbpasswd -a user1 ``` С помощью текстового редактора, например, nano, редактируем конфигурационный файл samba: ``` nano /etc/samba/smb.conf ``` Удаляем все строки из файла. Вставляем следующие: ``` workgroup = WORKGROUP security = user map to guest = bad user wins support = no dns proxy = no path = /media/samba/public guest ok = yes force user = nobody browsable = yes writable = yes path = /media/samba/private valid users = @smbgrp guest ok = no browsable = yes writable = yes ``` Сохраняем используя сочетание **Ctrl + X**, затем нажимаем Y и Enter. Объясним значения строк. конфигурационный файл состоит из трех секций: **global **— данная секция отвечает за общие настройки Samba-сервера; **public **и **private **— секции описания настроек директорий общего доступа. В секции **global **присутствуют пять параметров: - **workgroup **— рабочая группа. Для упрощения работы пользователей WORKGROUP указывается, как группа по умолчанию. Если в вашей сети имя рабочей группы изменено, то следует изменить это значение и для Samba; - **security **— уровень безопасности сервера. Значение user означает авторизацию по паре логин/пароль; - **map to guest** — параметр определяет способ обработки запросов. Значение bad user означает, что запросы с неправильным паролем будут отклонены, даже если такое имя пользователя существует; - **wins support** — включить или выключить поддержку WINS; - **dns proxy** — возможность проксирования запросов к DNS. Настройки директорий выполняются в соответствующих секциях: **path **— полный путь до директории на жестком диске; **guest ok** — возможность доступа к каталогу без пароля (гостевой); **browsable **— показывать ли каталог ("шару") на сервере среди прочих. Если параметр установлен как "no", то доступ будет возможен по полному пути, например ip-addresshidden_directory; **force user **— пользователь от которого ведется работа с каталогом. Для повышения безопасности сервера, обычно используют nobody. Главное, не использовать пользователя root — это небезопасно. **writable** — установка значения как "yes" позволяет пользователю выполнять действия над файлами внутри каталога — переименование, добавление, удаление, перемещение в подкаталог и копирование; **valid users** — список пользователей у которых есть доступ к каталогу. Если пользователей несколько, их имена указываются через запятую. Если необходим доступ для пользователей принадлежащих группе, перед именем группы устанавливается символ "at" @ ("собака"). Важно! Имя директории общего доступа, отображаемое пользователям, равно имени секции в которой оно описано. Проверяем настройки с помощью команды: ``` testparm -s ``` Перезапускаем сервер: ```bash service smbd restart ``` ```bash service nmbd restart ``` Настроим межсетевой экран. Для этого в правилах откроем TCP-порты 139 и 445, а также UDP-порты 137 и 138, но только для тех подсетей, которым доверяете. Для указания собственного диапазона адресов, замените значение после ключа "-s": ``` iptables -A INPUT -p tcp -m tcp —dport 445 -s 10.0.0.0/24 -j ACCEPT iptables -A INPUT -p tcp -m tcp —dport 139 -s 10.0.0.0/24 -j ACCEPT ``` ``` iptables -A INPUT -p udp -m udp —dport 137 -s 10.0.0.0/24 -j ACCEPT ``` ``` iptables -A INPUT -p udp -m udp —dport 138 -s 10.0.0.0/24 -j ACCEPT ``` Для сохранения правил и применения их после перезагрузки сервера следует воспользоваться пакетом iptables-persistent. Установим его: ```bash apt-get install iptables-persistent ``` Входе установки пакета, программа предложит запомнить существующие правила iptables. Подтверждаем это действие. Для проверки существующих правил используем: ``` iptables -L ``` ### Windows По аналогии с Linux, настроим общий доступ к папкам public и private, но в ОС Windows. Для создания общего доступа к каталогу без парольной защиты, необходимо настроить ограничения защиты в панели управления. Для этого открываем: **Панель управления → Сеть → Центр управления сетями и общим доступом → Расширенные настройки общего доступа.** В обновленном окне открываем раздел "Все сети" и ищем секцию "Общий доступ с парольной защитой". Устанавливаем параметр в положение "Отключить общий доступ с парольной защитой". Для сохранения значений параметра кликаем по кнопке "**Сохранить изменения**". Теперь откроем доступ к самому каталогу. Кликаем по папке правой кнопкой мыши, в контекстном меню выбираем "Свойства". Открываем вкладку "Доступ" и кликаем по "Расширенная настройка". В открывшемся окне расширенных настроек общего доступа отмечаем галочкой "Открыть общий доступ к этой папке", в поле "Имя общего ресурса" указываем название, которое будет отображено пользователям. Кликаем по кнопке "Разрешения". В открывшемся окне, в группах пользователей выбираем "Все", а в разрешениях для группы, устанавливаем галку "Полный доступ". Нажимаем "OK" в этом и остальных окнах. В окне свойств папки public кликаем по кнопке "Общий доступ". В открывшемся окне добавляем пользователя "Все", а также делегируем права на "Чтение и запись". Кликаем по кнопке "Поделиться". В обновленном окне нажимаем "Готово". Настроим папку общего доступа, но для ограниченного круга лиц. Кликаем правой кнопкой мыши по папке, выбираем "**Свойства**". В открывшемся окне переходим на вкладку "**Доступ**". Кликаем по кнопке "**Расширенные настройки**". В новом открывшемся окне, устанавливаем галку **"Открыть общий доступ к этой папке**". Затем кликаем по кнопке "**Разрешения**". В открывшемся окне, в поле "**Группы или пользователи**" выбираем "**Все**" и нажимаем кнопку "**Удалить**". Таким образом установлен запрет на анонимный доступ к папке. Окно обновится. Кликаем по кнопке "**Добавить**". В открывшемся окне кликаем по кнопке "**Дополнительно**". Окно изменится в размере. Кликаем по кнопке "**Поиск**". Двойным кликом выбираем пользователя, которому необходим доступ к этому каталогу, например, buhgalter. В открывшемся окне, при желании, можем добавить еще одного пользователя через "**Дополнительно**" — "**Поиск**". Аналогичным образом можно добавить группу пользователей, например, "**Администраторы**", при этом следует понимать, что доступ будет предоставлен всем пользователям из этой группы. Установим права доступа для пользователя "buhgalter". Если требуется полный доступ к директории, устанавливаем галку в соответствующем месте. Нажимая кнопки "**OK**" возвращаемся к окну свойств папки, в котором кликаем по кнопке "**Общий доступ**". В данном окне необходимо найти и добавить пользователя "бухгалтер". В окне выбора пользователей и групп кликаем по кнопке "**Дополнительно**". Окно снова изменит свои размеры. Кликаем по кнопке "**Поиск**". В найденном ниже списке пользователей и групп выбираем искомого пользователя. Выбираем его двойным кликом. В оставшемся окне проверяем правильно ли указан пользователи и нажимаем кнопку "**OK**". Устанавливаем требуемый уровень разрешений для пользователя и кликаем по кнопке "**Поделиться**". Кликаем по кнопке "**Готово**". ## Подключение к общим папкам ### Из Linux Для подключения к общим папкам из среды Linux требуется установка отдельного программного обеспечения — smbclient. Установим: ```bash sudo apt-get install smbclient ``` Для подключения к серверу используется следующий формат команды: ``` smbclient -U ``` Пример: ``` smbclient -U buhgalter 10.0.0.1public ``` Для того, Чтобы не вводить эту команду каждый раз, можно настроить монтирование общей директории как сетевого диска. Для этого установим пакет cifs-utils: ```bash sudo apt-get install cifs-utils ``` Монтирование выполняется по следующему шаблону: ``` mount -t cifs -o username=,password= /// ``` Пример: ``` mount -t cifs -o username=Everyone,password= //10.0.0.1/public /media ``` Важно! Если требуется подключение к общим папкам расположенным на Windows-сервере, то в для не защищенных паролем директорий, в качестве имени пользователя, следует использовать "Everyone". Для подключения к Linux-серверу рекомендуем использовать в качестве имени пользователя "nobody". В случае доступа к защищенным директориям следует использовать те учетные данные, которые вы указали. ### Из Windows Подключение к удаленным папкам из среды Windows выполняется немного иначе. Для этого в проводнике или окне запуска программ (Windows + R), следует использовать следующий шаблон: ``` ``` Указав просто IP-адрес сервера вы получите список общих папок. При подключении к Windows-сервер, система безопасности может потребовать ввод учетных данных. Для подключения к общей открытой папке используем Everyone, а поле пароля оставляем пустым. При подключении к Linux-серверу из ОС Windows, следует использовать указанный ранее шаблон: ``` ``` или просто адрес сервера: ``` ``` ## Как создать общий сетевой ресурс в Samba Создайте директорию, которую в хотите сделать общей: ``` mkdir /home// ``` Создайте бэкап, если что-то пойдет не так: ``` sudo cp /etc/samba/smb.conf ~ ``` Отредактируйте файл «/etc/samba/smb.conf»: ``` sudo nano /etc/samba/smb.conf ``` Добавьте следующее содержимое в файл: ``` [] path = /home// valid users = read only = no ``` Заполните файл своими данными, сохраните его и затем закройте Перезапустим Samba: ```bash sudo service smbd restart ``` Использую данную команду проверьте вашу директорию smb.conf на ошибки: ``` testparm ``` Чтобы получить доступ к вашему общему сетевому ресурсу: ```bash sudo apt-get install smbclient # Просмотр всех общих ресурсов: smbclient -L /// -U # Подключение: smbclient /// -U ``` Note 1: Чтобы подключиться к вашему общему сетевому ресурсу используйте имя вашего пользователя () и пароль, который находится «smb:////» Учтите, что «» значение передается в «[]», другими словами, имя общего ресурса, которое вы ввели в «/etc/samba/smb.conf». Note 2: Группа пользователей samba по умолчанию это — «WORKGROUP». https://serverspace.by/support/help/installing-and-configuring-openvpn-on-centos.md Руководство по установке и настройке OpenVPN на сервер под управлением ОС CentOS7. Отличительной особенностью OpenVPN является возможность создания зашифрованных туннелей. Руководство по установке и настройке OpenVPN на сервер под управлением Ubuntu доступно по [ссылке](https://serverspace.by/support/help/configuring-openvpn-on-ubuntu/). Рассмотрим установку OpenVPN на сервер под управлением ОС CentOS7. OpenVPN — открытая программная реализация протокола VPN. Отличительной особенностью данного продукта является возможность создания зашифрованных туннелей, при этом существуют реализации под большинство популярных ОС, в том числе и для мобильных платформ. Особенность репозитория CentOS такова, что OpenVPN в него не входит. Зато этот пакет можно получить используя репозиторий EPEL (Enterprise Linux), который управляется Fedora Project. Из данного репозитория, кстати, можно получить и другие пакеты, которые не входят в стандартный репозиторий CentOS. Установим командой: ```bash yum install epel-release ``` Приступаем к установке OpenVPN. Устанавливаем пакет: ```bash yum install openvpn easy-rsa -y ``` Приступаем к настройке сервера. Копируем server.conf: ``` cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/ ``` Важно обратить внимание на "*". Если выполнялась только одна попытка установить, то версию программы можно заменить символом "звездочки". Если же было несколько попыток установки, возможно придется указать путь до файла полностью. **Перед генерацией ключей, внесем несколько изменений в файл конфигурации сервера. ** Открываем server.conf любым редактором. ``` nano /etc/openvpn/server.conf ``` Находим строку "Diffie hellman parameters." и ищем: ``` dh dh2048.pem ``` Если указано именно, так, то изменения вносить не нужно. Нюанс новой версии пакета заключается в том, что параметру уже соответствуют значения. В старых версиях там просто "dh". Приводим к виду, как у нас. Далее ищем строку "# Certain Windows-specific network settings". раскомментируем один из параметров ниже (удалим символ "точка с запятой" (;) в начале строки). Должно получиться примерно так: ``` push "dhcp-option DNS 8.8.8.8″ ``` DNS-сервер можно указать свой, по желанию. Также, можно раскомментировать вторую строку, чтобы передавать клиентам еще и альтернативный DNS-сервер. Для безопасности сервера будем запускать от пользователя nobody и группы nogroup. Раскомментируем строки: ``` user nobody ``` ``` group nobody ``` **Приступаем к созданию сертификатов.** С помощью установленного ранее пакета easy-rsa создадим ключи сервера и клиента. Создаем директорию, в которой будут лежать ключи: ``` mkdir -p /etc/openvpn/easy-rsa/keys ``` В только что созданную директорию easy-rsa копируем скрипты: ``` cp -r /usr/share/easy-rsa/3.0/* /etc/openvpn/easy-rsa ``` Переходим в каталог /etc/openvpn/easy-rsa/3/ и создаем скрипт vars cd /etc/openvpn/easy-rsa/ ``` nano vars ``` Важно! Версия easy-rsa может быть другой, а следовательно путь необходимо будет скорректировать. В открытый файл добавляем следующие строки: ``` set_var EASYRSA "$PWD" ``` ``` set_var EASYRSA_PKI "$EASYRSA/pki" ``` ``` set_var EASYRSA_DN "cn_only" ``` ``` set_var EASYRSA_REQ_COUNTRY "RU" ``` ``` set_var EASYRSA_REQ_PROVINCE "Moscow" ``` ``` set_var EASYRSA_REQ_CITY "Moscow" ``` ``` set_var EASYRSA_REQ_ORG "MyOrg" ``` ``` set_var EASYRSA_REQ_EMAIL "openvpn@mydomain.net" ``` ``` set_var EASYRSA_REQ_OU "CA" ``` ``` set_var EASYRSA_KEY_SIZE 2048 ``` ``` set_var EASYRSA_ALGO rsa ``` ``` set_var EASYRSA_CA_EXPIRE 7500 ``` ``` set_var EASYRSA_CERT_EXPIRE 365 ``` ``` set_var EASYRSA_NS_SUPPORT "no" ``` ``` set_var EASYRSA_NS_COMMENT "CERTIFICATE AUTHORITY" ``` ``` set_var EASYRSA_EXT_DIR "$EASYRSA/x509-types" ``` ``` set_var EASYRSA_SSL_CONF "$EASYRSA/openssl-1.0.cnf" ``` ``` set_var EASYRSA_DIGEST "sha256″ ``` Сохраняем файл и закрываем редактор. Разрешаем исполнение файла: ```bash chmod +x vars ``` Инициализируем PKI директорию и создадим CA сертификат: ``` ./easyrsa init-pki ``` ``` ./easyrsa build-ca ``` Важно! При создании CA-сертификата скрипт запросит ввод пароля минимум из 4 символов. Введенный пароль следует запомнить. Создаем ключ сервера. ``` ./easyrsa gen-req server nopass ``` Если не указывать атрибут "nopass", то при создании ключа, скрипт запросит пароль. Подписываем сертификат сервера: ``` ./easyrsa sign-req server server ``` Первым действием скрипт поинтересуется в нашей уверенности, отвечаем "Yes". Затем запросит пароль, который был указан при создании CA-сертификата. Проверяем, подписался ли сертификат: ``` openssl verify -CAfile pki/ca.crt pki/issued/ server.crt ``` Генерируем дополнительный ключ сервера ta.key: ``` openvpn —genkey —secret /etc/openvpn/easy-rsa/keys/ta.key ``` **Пользовательские сертификаты.** Процесс создания пользовательского сертификата идентичен созданию сертификата сервера. 1. Создаём без парольной защиты: ``` ./easyrsa gen-req client01 nopass ``` 2. Подписываем сертификат: ``` ./easyrsa sign-req client client01 ``` 3. Проверяем подпись: ``` openssl verify -CAfile pki/ca.crt pki/issued/client01.crt ``` Диффи-Хеллман. **Создаем сертификат:** ``` ./easyrsa gen-dh ``` В итоге будет создан файл dh.pem, а в конфиге dh2048.pem. Переименуем его позже, при копировании ключей. **Переносим сертификаты.** Копируем файлы ключей сервера. Для этого последовательно выполняем: ``` cp pki/ca.crt /etc/openvpn/ ``` ``` cp pki/issued/server.crt /etc/openvpn/ ``` ``` cp pki/private/server.key /etc/openvpn/ ``` ``` cp /etc/openvpn/easy-rsa/keys/ta.key /etc/openvpn/ ``` **Копируем ключи клиента:** ``` cp pki/ca.crt /etc/openvpn/client/ ``` ``` cp pki/issued/client01.crt /etc/openvpn/client/ ``` ``` cp pki/private/client01.key /etc/openvpn/client/ ``` **Копируем файл ключа Диффи-Хеллмана:** ``` cp pki/dh.pem /etc/openvpn/dh2048.pem ``` Важно! Целевое имя файла намеренно изменено под имя в конфиге. **Настраиваем маршрутизацию.** Для ускорения настройки, работы будут выполняться с iptables, а не c FirewallD. Последовательно выполняем: ```bash yum install iptables-services -y ``` ```bash systemctl mask firewalld ``` ```bash systemctl enable iptables ``` ```bash systemctl stop firewalld ``` ```bash systemctl start iptables ``` ``` iptables —flush ``` Перед дальнейшей настройкой следует заглянуть вы названия интерфейсов с помощью команды: ``` ifconfig -a ``` Добавляем правило для NAT: ``` iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o -j MASQUERADE ``` ``` iptables-save > /etc/sysconfig/iptables ``` Как пример: ``` iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE ``` ``` iptables-save > /etc/sysconfig/iptables ``` Разрешаем форвардинг пакетов между сетевыми интерфейсами. Для этого редактируем системный файл sysctl.conf: ``` nano /etc/sysctl.conf ``` В начале файла вставляем строку: ``` net.ipv4.ip_forward = 1 ``` Сохраняем файл, закрываем редактор и перезапускаем сетевую службу командой: ```bash systemctl restart network.service ``` **Запускаем OpenVPN-сервер.** Для начала добавим службу в автозагрузку: ```bash systemctl -f enable openvpn@server.service ``` Запускаем OpenVPN: ``` openvpn /etc/openvpn/server.conf ``` Настройка клиента. Сервер настроен, осталось выполнить настройку клиента, чтобы он мог подключиться. Независимо от используемой ОС, будь то мобильная, серверная или домашняя версии, Linux или Windows, всегда понадобятся 4 файла: - ca.crt; - client.crt; - client.key; - client.ovpn Первые 3 файла расположены в директории /etc/openvpn/client/, а client.ovpn придется создать. Для этого перейдем в каталог, где лежат все ключи клиента: ``` cd /etc/openvpn/client/ ``` Создадим файл: ``` nano client.ovpn ``` Заполним следующим содержимым: ``` client ``` ``` dev tun ``` ``` proto udp ``` ``` remote 1194 ``` ``` resolv-retry infinite ``` ``` nobind ``` ``` persist-key ``` ``` persist-tun ``` ``` comp-lzo ``` ``` verb 3 ``` ``` ca ca.crt ``` ``` cert client01.crt ``` ``` key client01.key ``` Вместо IP_ADDRESS вставляем IP-адрес сервера, либо его доменное имя. Сохраняем файл сочетанием Ctrl + X и закрываем редактор. Передаем файлы клиенту. Это возможно сделать, например, через SFTP или заархивировать каталог и "отдать" его через web-сервер. **Подключение клиента.** В зависимости от операционной системы скачиваем установочный файл либо выполняем инсталляцию из репозитория. Также OpenVPN можно получить с [официального сайта](https://openvpn.net/download-open-vpn/). Windows: Для компьютеров под управлением Windows следует следует скачать дистрибутив продукта с официального сайта, полученные "четыре файла", следует положить в папку, C:Program FilesOpenVPNconfig. После запуска OpenVPN GUI, в системном трее появится значок программы. Кликаем по нему правой кнопкой мыши, выбираем Connect (подключиться). **MacOS:** С OpenVPN для MacOS немного сложнее. Следует воспользоваться open-source инструментом Tunnelblick. Ключи и конфигурационный файл следует положить в ~/Library/Application Support/Tunnelblick/Configurations. Либо дважды кликнуть по файлу конфигурации. **Linuix:** Следует выполнить установку из репозитория. **Для Debian/Ubuntu:** ```bash apt-get install openvpn ``` **Для CentOS/OpenSUSE/Fedora:** ```bash yum install openvpn -y ``` После установки следует перейти в папку, в которой расположен конфигурационный файл с ключами и выполнить команду: ``` sudo openvpn —config client.ovpn ``` Для проверки работы сервера следует воспользоваться любым из сайтов, показывающих ваш IP-адрес. https://serverspace.by/support/help/configuring-openvpn-on-ubuntu.md OpenVPN - открытая реализация одной из технологий VPN, предназначенная для организации защищенных виртуальных частных сетей. Рассмотрим ее настройку в Ubuntu Linux. OpenVPN — открытая реализация одной из технологий VPN, предназначенная для организации защищенных виртуальных частных сетей между территориально удаленным локальными сетями, а также отдельными клиентами. Безопасность туннелей обеспечивается шифрованием с помощью OpenSSL. ## Как работает OpenVPN? По окончании настройки сервера и его запуске, он перейдет в режим готовности приема и перенаправления внешних защищенных SSL-соединений на виртуальный сетевой адаптер (tun/tap). По желанию, маршрутизация сервера может быть настроена таким образом, чтобы Интернет-трафик клиентов проходил через сервер и становился трафиком сервера. В этом случае OpenVPN будет выполнять проксирование трафика (proxy). ## Что требуется от операционной системы? Перед установкой OpenVPN необходимо убедиться в корректности базовых параметров. 1. У сервера есть хотя бы один "белый" статичный IP-адрес. Т.е. сервер должен быть доступен из сети Интернет. Если адрес динамический, но сервер все же остается быть доступным из глобальной сети — воспользуйтесь услугами DynDNS. 2. Разрешена загрузка и установка пакетов из официальных репозиториев. Для проверки выполните cat /etc/apt/sources.list. Строки с указаниями репозиториев должны быть раскомментированы (не должно быть символа "#" решетка в начале строки). Скриншот 1. Репозитории 3. Должны быть верно указаны параметры сети — hostname, параметры DNS-серверов. Для обеспечения должного уровня безопасности, рекомендуем ознакомиться с нашими [рекомендациями](https://serverspace.by/support/help/bazovaya-bezopasnost-linux/). **Приступаем к установке.** Все действия по установке будем выполнять от пользователя root. 1. Обновляем информацию о репозиториях: ```bash apt-get update ``` 2. Устанавливаем текущие обновления системы и установленных программ: ```bash apt-get upgrade ``` 3. Устанавливаем OpenVPN: ```bash apt-get install openvpn ``` Скриншот 2. Установка OpenVPN Важно. В базовых репозиториях, зачастую отсутствует новейшая версия пакета. Разработчики OpenVPN ведут собственный репозиторий, о том как его настроить можно ознакомиться на [официальном сайте](https://community.openvpn.net/openvpn/wiki/OpenvpnSoftwareRepos). 4. Аналогичным образом устанавливаем пакет easy-rsa: ```bash apt-get install easy-rsa ``` **Действия после установки.** Размещаем скрипты easy-rsa: ``` cd /etc/openvpn/ && make-cadir easy-rsa ``` Подготавливаем публичные ключи (PKI — Public Key Infrastructure): 1. Переходим в директорию /etc/openvpn/easy-rsa: ``` cd /etc/openvpn/easy-rsa ``` 2. Создаем символьную ссылку на файл конфигурации openssl: ``` ln -s openssl-1.0.0.cnf openssl.cnf ``` 3. Инициализируем скрипт vars: ``` source ./vars ``` Система сообщит: NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys 4. Выполняем ``` ./clean-all ``` Скриншот 3. Подготавливаем публичные ключи 5. Для создания центра сертификации выполняем скрипт: ``` ./build-ca ``` В ходе своей работы, программа задаст несколько вопросов. Отвечать на них следует латиницей. Если вы не заполните какое-либо поле, программа подставит значения по умолчанию, обычно указанные в скобках. Скриншот 4. Создание центра сертификации **Создаем ключ сервера.** Для создания ключа сервера выполним команду: ``` ./build-key-server server ``` Скриншот 5. Создание ключа сервера Следует обратить внимание, что процесс похож на генерацию сертификата центра сертификации, однако, перед подписанием сертификата программа задаст 2 уточняющих вопроса. Если все указано верно, отвечаем "y". ## Генерация клиентских ключей. Аналогично генерации серверных ключей создаются и клиентские: ``` ./build-key client1 ``` Следует обратить внимание, что созданный client1.key не имеет парольной или криптографической защиты. Это может привести к тому, что любой пользователь завладевший файлом может попробовать подключиться к серверу. Если такая угроза существует, лучше генерировать ключи другим скриптом: ``` ./build-key-pass client2 ``` Скрипт запросит парольную фразу в самом начале. Далее процесс ничем не отличается от генерации ключей сервера и простого клиента. Скриншот 6. Создание ключа клиента Следует помнить, что имена ключей должны быть уникальными. Один пользователь — один ключ с уникальным именем. Бывает так, что в процессе работы сервера, по прошествии некоторого времени, необходимо создать еще один или несколько сертификатов. Для этого потребуется повторно инициализировать скрипт vars и только потом запустить процесс генерации ключа: ``` cd /etc/openvpn/easy-rsa ``` ``` source ./vars ``` ``` ./build-key client3 ``` ## Генерация ключа Диффи-Хеллмана Благодаря протоколу Диффи-Хеллмана, две и более стороны могут получить один секретный ключ, который позволит выстроить защищенный канал связи. Генерируются ключи командой: ``` ./build-dh ``` Результат будет примерно таким. Скриншот 7. Генерация ключа Диффи-Хеллмана По окончании работы программы, в директории /etc/openvpn/easy-rsa/keys/ появится файл dh2048.pem ## Перемещение сертификатов и ключей **Сервер** Ключи и сертификаты созданы. Настало время раздать их пользователям, а серверные ключи скопировать в соответствующие каталоги на сервере. 1. Переходим в каталог с ключами: ``` cd /etc/openvpn/easy-rsa/keys ``` 2. Копируем только необходимые серверу файлы: ``` cp ca.crt ca.key dh2048.pem server.crt server.key /etc/openvpn ``` Важно понимать, что перечисленные выше файлы являются основой работы и безопасности VPN сервера. Утеря или подмена этих файлов может иметь крайне негативные последствия. Важно хранить их в надежном месте и не передавать по открытым каналам связи. **Клиенты** Клиенту понадобится всего 3 файла ca.crt, client1.crt, client1.key. Каждому клиенту необходимо отдавать только его ключи. Данные файлы можно разместить в директории /etc/openvpn на машине клиента, если она под управлением Linux-подобной ОС. В ОС Windows их следует разместить в пользовательский каталог. ## Настройка сервера и клиента **Сервер** Большинство устанавливаемых программ в ОС Linux имеют так называемые sample-файлы. Эти файлы содержат примеры настройки и объяснения их. OpenVPN не стал исключением. Распакуем серверный конфигурационный файл в директорию /etc/openvpn: ``` gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf ``` С полученным файлом сервер уже готов к работе. Он сконфигурирован с возможностью туннелирования, однако не имеет возможности к проксированию, т.е. отправки клиентского трафика от своего имени. Исправим это. Для начала, проверяем какие файлы оказались в директории /etc/openvpn: ``` ls /etc/openvpn ``` Скриншот 8. Содержимое директории OpenVPN Открываем файл конфигурации: ``` nano /etc/openvpn/server.conf ``` И проверяем соответствие файлов прописанных в конфигурации с файлами находящимися в каталоге. Интересны строки после "SSL/TLS root certificate (ca), certificate (cert), and private key (key)." Скриншот 9. Файл конфигурации OpenVPN Если имена отличаются от существующих, следует внести необходимые исправления. Выходим из редактора сочетанием клавиш Ctrl + X. Запускаем сервер: ``` /etc/init.d/openvpn start ``` Проверим результат запуска: ``` /etc/init.d/openvpn status ``` Скриншот 10. Запуск службы OpenVPN Настройки клиента. Предполагается, что на стороне клиента уже установлен пакет OpenVPN. 1. Копируем файл клиентских настроек в домашний каталог пользователя: ``` cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /root ``` 2. Копируем сгенерированные ключи — client1.key, client1.crt, ca.crt: ``` cd /etc/openvpn/easy-rsa/keys ``` ``` cp client1.key client1.crt ca.crt /root ``` 3. Редактируем файл конфигурации клиента: ``` nano /root/client.conf ``` 4. Находим закомментированные строки "# The hostname/IP and port of the server". Для параметра remote меняем my-server-1 на IP-адрес сервера или его доменное имя. Скриншот 11. Редактирование настроек 5. В том же файле, ниже, находим блок "#SSL/TLS parms.". Редактируем имена ключей. Скриншот 12. Редактирование SSL TLS parms 6. Выходим из редактирования сочетанием Ctrl + X. На вопрос о сохранении изменений отвечаем "Y". Имя файла оставляем неизменным. 7. Переносим файлы client1.key, client1.crt, ca.crt и client.conf на компьютер клиента с которого будет происходить подключение к серверу OpenVPN. Важно! Некоторые клиентские реализации OpenVPN работают только с файлами *.ovpn. В подобных случаях достаточно изменить расширение файл (переименовать) с client.conf на client.ovpn. 8. Подключаемся к серверу командой: ``` openvpn openvpn.conf ``` Следует обратить внимание, что проксирование до сих пор не настроено. При этом, когда клиентская машина подключена к OpenVPN-серверу, доступ в Интернет прекращается. Связано это с тем, что созданный адаптер TUN, а в месте с ним и сам сервер, являются шлюзом по умолчанию. Настройка маршрутизации. 1. На сервере редактируем файл server.conf: ``` nano /etc/openvpn/server.conf ``` 2. В файле находим следующую строку и удаляем перед ней символ ";", таким образом раскомментируем ее: ``` push "redirect-gateway def1 bypass-dhcp" ``` 3. Сохраняем и закрываем редактор. 4. Редактируем файл /etc/sysctl: ``` nano /etc/sysctl.conf ``` 5. В конец файла добавляем следующую строку: ``` net.ipv4.ip_forward=1 ``` Это разрешит системе пересылать трафик между интерфейсами, но изменения вступят в силу только после перезагрузки. Сохраняем файл и закрываем редактор. 6. Разрешаем форвардинг пакетов без перезагрузки сервера: ``` echo 1 > /proc/sys/net/ipv4/ip_forward ``` 7. Настроим NAT в iptables. Поочередно вводим команды: ``` 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 ``` Также их можно просто вписать в файл /etc/rc.local до строки "exit 0" или выполнить настройку firewall как это указано в [нашей статье](https://serverspace.by/support/help/nastroika-iptables/). Скриншот 13. Настройка автозагрузки iptables Сервер уже готов к использованию. Однако, задача проксировать весь трафик, а следовательно необходимо настроить форвардинг DNS-запросов. Настроим. 1. Устанавливаем dnsmasq Если установка выполняется в ОС Ubuntu: ```bash apt-get install dnsmasq ``` Несмотря на то, что в большинстве современных версий ОС Ubuntu dnsmasq уже предустановлен, в старых версиях необходимо выполнить так: ```bash apt-get install dnsmasq && dpkg-reconfigure resolvconf ``` Возможно запустится диалоговое окно мастера установки. В нем будет 2 вопроса. В первом случае, на вопрос "prepare /etc/resolv.conf for dynamic updates" отвечаем "Yes", а на следующий — "Append original file to dynamic file?" отвечаем "No". Для ОС Debian 7: ```bash apt-get install dnsmasq resolvconf ``` 2. Отредактируем файл настроек dnsmasq: ``` nano /etc/dnsmasq.conf ``` Добавим следующие параметры: ``` listen-address=10.8.0.1 ``` ``` bind-interfaces ``` Сохраняем файл и закрываем редактор. 3. Редактируем файл сетевых настроек: ``` nano /etc/network/interfaces ``` Требуется указать адрес DNS-серверов в соответствующих секциях настроек адаптера: ``` dns-nameservers 8.8.8.8 8.8.4.4 ``` Возможно это действие уже произведено,. Повторно его выполнять не нужно. 4. Учитывая особенность запуска и последующей работы dnsmasq — возможность аварийного завершения до инициализации виртуального tun-адаптера, добавим следующую строчку в файл rc.local, перед "exit 0": ``` /etc/init.d/dnsmasq restart ``` Скриншот 14. Настройка перезапуска dnsmasq 5. Теперь разрешим клиентам OpenVPN-сервера использовать DNS. С помощью редактора nano раскомментируем строку: ``` push "dhcp-option DNS 10.8.0.1″ ``` Фиксируем изменения в файле. 6. Перезагружаем сервер: ``` reboot ``` Проверка работы Выполняем повторное подключение к серверу. Пробуем открыть [сайт](http://2ip.ru) для проверки IP-адреса. В результате должен быть IP-адрес сервера. https://serverspace.by/support/help/ustanovka-apache-php-mysql.md Эта статья поможет установить Apache, PHP, MySQL на Windows Server. Самый простой способ, облегчающий установку, настройку и управление всеми компонентами Эта статья поможет установить Apache, PHP, MySQL на Windows Server. Самый простой способ, облегчающий установку, настройку и управление всеми компонентами — WampServer. WampServer это платформа для веб-разработки под Windows для динамических веб-приложений с помощью сервера Apache2, интерпретатора скриптов PHP и базы данных MySQL. В него также входит веб-приложение PHPMyAdmin для наиболее простой обработки баз данных. ### Установка Перед началом установки WampServer необходимо настроить Windows Firewall, указав специфические порты: 80 и 443. Подробнее в [статье](https://serverspace.by/support/help/dobavlenie-pravila-v-windows-firewall/). Также необходимо [настроить браузер Internet Explorer](https://serverspace.by/support/help/otkluchit-usilennuya-bezopasnosti-ie/), для того чтобы загрузить файлы из внешних источников. Перед работой с WampServer для начала установим необходимые библиотеки. Для этого требуются компоненты The Visual C++ Redistributable Packages (2008-2019), которые можно загрузить по следующей [ссылке](http://wampserver.aviatechno.net/files/vcpackages/all_vc_redist_x86_x64.zip) и установить все компоненты из каждого исполняемого файла. Теперь загружаем [установщик WampServer.](http://www.wampserver.com/ru/) После запуска исполняемого файла начнется установка Wampserver Принимаем лицензионное соглашение, указываем папку для установки (указываемый путь не должен содержать пробелов!). Нажимаем Next и Install. Дожидаемся окончания установки. На предложение изменить стандартный браузер и текстовый редактор нажимаем "No". Установка завершена, нажимаем Finish На рабочем столе появится иконка с Wampserver64, запускаем сервер двойным щелчком. В нижней панели справа появится зеленый значок запущенного сервера. В браузере перейдите по ссылке http://localhost/ или вашему ip адресу для проверки. ### Конфигурирование Apache Откройте файл C:wamp64binapacheapache2.4.39confhttpd.conf с помощью текстового редактора. С помощью поиска найдите первое вхождение строки "Require local", и замените параметр "local" на "all granted". Меняем на Сохраните изменения и закройте файл. Откройте файл конфигурации виртуальных хостов C:wamp64binapacheapache2.4.39confextrahttpd-vhosts.conf и замените содержимое тега Directory на следующие параметры: ``` Options +Indexes +Includes +FollowSymLinks +MultiViews ``` ``` AllowOverride All ``` ``` Order deny,allow ``` ``` allow from all ``` Сохраните изменения и закройте файл. Перезапустите WampServer нажав правой кнопкой мыши в нижней панеле на значок сервера и выберите пункт "Refresh". ### Проверка C другого компьютера в браузере попытайтесь перейти по адресу: ``` /index.html ``` где ip-address — адрес вашего Windows Server. Его можно узнать в панели управления сервером Serverspace. Например: ### Настройка phpMyAdmin На своем локальном хосте на главной странице WampServer в меню "Tools" выберете "phpmyadmin", или перейдите по ссылке http://localhost/phpmyadmin/ в браузере. В открывшемся окне введите значения логина и пароля по умолчанию: Логин: root Пароль: оставьте поле пустым После авторизации вы можете изменить пароль для пользователя root, а также добавить новых пользователей. Для этого перейдите во вкладку "Учетные записи пользователей". Для добавления пользователя перейдите по ссылке "Добавить учетную запись пользователя". Чтобы изменить пароль для уже существующих пользователей выберите действие "Редактировать привилегии", далее "Изменить пароль". Сохраните изменения и перезапустите WampServer нажав правой кнопкой мыши в нижней панеле на значок сервера и выберите пункт "Refresh". Веб-сервер готов к работе. https://serverspace.by/support/help/dobavlenie-pravila-v-windows-firewall.md Рассмотрим процесс добавления новых правил в Брандмауэре Windows (Firewall) на примере портов 80 и 443, используемых веб-сервером. Пошаговая инструкция. Развернув на виртуальном сервере какую-либо сетевую службу, пользователи нередко сталкиваются с проблемой доступности, когда к настроенному сервису не проходят внешние подключения. Одна из возможных причин заключается в том, что входящие запросы блокируются встроенным брандмауэром операционной системы. Чтобы не столкнуться с подобной проблемой, необходимо создать разрешающее правило. Рассмотрим создание такого правила на примере развернутого на виртуальной машине веб-сервера, принимающего запросы на стандартных TCP-портах 80 (http) и 443 (https). Управление брандмауэром осуществляется через оснастку **Брандмауэр Windows в режиме повышенной безопасности** (**Windows Firewall with Advanced Security**). Запуск оснастки можно осуществить разными способами, например, командой **control** **firewall****.****cpl** из строки запуска: Или через **Панель управления – Система и безопасность – Брандмауэр ****Windows** (**Control** **panel** **– ****Security** **and** **Maintenance** **– ****Windows** **Defender** **Firewall**): В открывшемся окне отображается важная информация относительно текущей конфигурации. Здесь мы увидим имеющиеся профили брандмауэра. В нашем случае их два: **Частные сети** (**Private networks**) и **Гостевые или общедоступные сети** (**Guest or public networks**). На серверах, подключенных к домену Active Directory, имеется также третий профиль **Доменная сеть** (**Domain network**). Профиль представляет собой набор отдельных правил, применяемых к сетевому подключению, поэтому важно понимать какой профиль активирован для нужного сетевого интерфейса. В нашем примере для сети активирован профиль **Guest** **or** **public** **networks** (ключевое слово **Connected** — **Подключено**). Иконка с зеленым щитом означает, что брандмауэр включен. Чтобы увидеть список имеющихся правил нажимаем в левой панели ссылку **Дополнительные параметры****** (**Advanced** **settings**): Слева, в разделе **Правила для входящих подключений** (**Inbound** **rules**), содержатся правила обработки поступающих на интерфейс сетевых пакетов. Раздел **Правила для исходящих подключений** (**Outbound** **rules**), содержит правила обработки сетевых пакетов, отправляемых сервером. Так как нам нужно разрешить входящие извне запросы, в разделе **Правила для входящих подключений** (**Inbound** **rules**) выбираем **Создать правило** (**New** **Rule**) на панели действий справа: В открывшемся **Мастере создания правила для нового входящего подключения** (**New** **Inbound** **Rule** **Wizard**) выбираем тип правила. Так как нам известно, на какие порты будут приходить входящие запросы, и эти порты фиксированные, выбираем тип правила **Для порта** (**Port**), нажимаем **Далее** (**Next**): В следующем разделе указываем основные признаки входящих соединений, к которым будет применяться создаваемое правило. Выбираем протокол TCP и прописываем **Определенные локальные порты** (**Specific** **local** **ports**) 80, 443. Нажимаем **Далее** (**Next**): На шаге **Действие** (**Action**) выбираем что делать с соединениями, подпадающими под действие данного правила. В нашем случае выбираем **Разрешить подключение** (**Allow** **the** **connection**). Нажимаем **Далее** (**Next**): Далее определяем профили, в которых данное правило будет создано. По умолчанию правило создается во всех сетевых профилях и без особой необходимости менять это не стоит. Исключением являются ситуации, когда на сервере имеется несколько сетевых интерфейсов, для каждого из которых требуются отдельные настройки безопасности: На последнем шаге необходимо указать имя нового правила, чтобы было проще определить его в общем списке: Нажимаем **Готово** (**Finish**) и видим созданное правило в общем списке: На данный момент веб-сервер принимает входящие соединения. В случае, если понадобится скорректировать какие-либо параметры, необходимо сделать правый клик по нужному правилу и выбрать **Свойства** (**Properties**). В открывшейся форме находим нужную вкладку и указываем свои настройки. Например, на вкладке **Протоколы и порты** (**Protocols** **and** **ports**) можно добавить/удалить локальные или удаленные порты для входящих подключений. А на вкладке **Область** (**Scope**) можно ограничить список удаленных IP адресов, соединения с которых будут разрешены: в разделе **Удаленный ****IP****-адрес** (**Remote** **IP** **address**) выбираем пункт **Указанные ****IP****-адреса** (**These** **IP** **addresses**) и через кнопку **Добавить** (**Add**) добавляем нужные адреса в список: Подобное ограничение может быть удобно, например, в правилах, разрешающих удаленные RDP-соединения, когда мы точно знаем с каких IP-адресов предполагаются подключения. https://serverspace.by/support/help/backing-up-using-the-windows-server-backup-component.md Настройка Windows Server Backup - встроенного компонента семейства операционных систем Windows Server, предназначенного для создания резервных копий ОС. Резервное копирование важной информации — полезная привычка в системном администрировании, позволяющая сэкономить ценное время. Рассмотрим как избавить себя от мучений в час "X" с помощью компонента Windows Server Backup. Windows Server Backup — встроенный компонент семейства операционных систем Windows Server предназначенный для создания резервных копий ОС и работы с ними. Приступаем к настройке. Из меню Пуск запускаем Диспетчер серверов. В открывшемся окне "Диспетчер серверов" выбираем "Добавить роли и компоненты". В открывшемся окне мастера добавления ролей и компонентов, в левой части окна, выбираем "Тип установки", в правой — "Установка ролей или компонентов" и кликаем по кнопке "Далее". В обновленном окне, на этапе выбора сервера, выбираем из пула текущий. Нажимаем "Далее". В обновленном окне мастера, в левой его части, кликаем по "Компоненты". В центральной части окна, в основной части окна, выбираем "Система архивации данных Windows Server". Кликаем по кнопке "Далее". На этапе подтверждения кликаем по кнопке "Установить". Дожидаемся окончания процесса установки. По окончании, нажимаем кнопку "Закрыть". Окно "Диспетчер серверов" остается открытым. В верхней правой части выбираем "Средства". В открывшемся меню, выбираем "Система архивации данных Windows Server". В открывшемся окне "wbadmin", в левой части, выбираем "Локальная архивация", в правой части станут доступны действия с локальной архивацией. Настроим резервное копирование по расписанию — выбираем "Расписание архивации". В открывшемся окне мастера расписания активации, на начальном этапе, кликаем по кнопке "Далее". Следующим шагом следует выбрать тип конфигурации — весь сервер или что-то конкретное. Создадим копию всего сервера. Кликаем "Далее". Теперь необходимо определиться сколько раз в день делать резервную копию и в какое время. Слишком часто это делать не рекомендуется. Также, лучше настроить резервное копирования на конец рабочего дня или задолго до его начала. В нашем случае пусть будет 21:00. Нажимаем "Далее". Теперь выбираем "куда" будет сохраняться резервная копия. Параметр имеет смысл оставить рекомендуемый системой. При желании, можно выбрать и сохранение в сетевую папку, но важно помнить, что процесс будет сильно зависеть от скорости локальной сети. Жмем "Далее". В обновленном окне мастера, следует выбрать диск назначения. Кликаем по кнопке "Показать все доступные диски". Предварительно вам необходимо создать дополнительный диск для бэкапов в разделе «Настройки» вашего сервера, вкладка «Диски». В открывшемся дочернем окне, будут показаны другие (несистемные) диски. Устанавливаем галочку напротив необходимого носителя. Важно! Резервные копии рекомендуется выполнять на физический, а не логический диски. Кликаем по кнопке "OK". Выбранный диск добавится в общий список доступных дисков. Отмечаем его галкой и нажимаем кнопку "Далее". Система уведомит о намерении отформатировать выбранные ранее диски. Отвечаем нажатием на кнопку "Да". На этапе подтверждения операций, если все действия корректны, нажимаем кнопку "Готово". После непродолжительного форматирования диска программа уведомит об успешном создании события в планировщике, а также укажет дату первого выполнения резервного копирования. Кликаем по кнопке "Закрыть". Результат выполнения резервного копирования можно посмотреть в центральной части окна wbadmin. Рассмотрим восстановление из резервной копии. Все в том же окне wbadmin, в правой его части, кликаем по "Восстановление". В окне мастера восстановления, выбираем место хранения архива с резервной копией. Выбираем "Этот сервер" и кликаем по кнопке "Далее". Следующим шагом выбираем дату создания резервной копии и кликаем "Далее". В обновленном окне, предстоит выбрать "Что нужно восстановить", например, "Файлы и папки". Нажимаем "Далее". Выбираем все файлы и каталоги, располагающиеся на диске "C:". Нажимаем кнопку "Далее". На следующем этапе необходимо определиться что делать с файлами, если таковые уже существуют. Выбор данного действия остается за системным администратором. Мы будем перезаписывать эти файлы. Кликаем "Далее". На следующем шаге проверяем каталоги, которые будут восстановлены. В случае, если все указано верно, кликаем "Восстановить". Дожидаемся окончания процесса восстановления. По окончании нажимаем кнопку "Закрыть". Важно! Процесс может занять некоторое время. https://serverspace.by/support/help/active-directory-struktura-hranilisha.md У многих, кто впервые сталкивается с Active Directory, возникает вопрос что это такое и как устроена структура хранилища. Домены и леса, DNS, схема, хранилище данных. У многих, кто впервые сталкивается с Active Directory возникает вопрос "что это такое". Ответим на этот вопрос, а также разберемся с терминологией и структурой хранилища. **Терминология** | Сервер | Компьютер, выполняющий одну или несколько ролей в домене. | | --- | --- | | Контроллер домена | Сервер, на котором расположен каталог. Задача контроллера — обслуживание запросов пользователей к каталогу. Также, контроллер домена может выступать в качестве одной из FSMO-ролей (Владелец схемы, владелец доменных имен и прочее) | | Домен | Минимальная структурная единица Active Directory (состоит из пользователей, принтеров, компьютеров и прочих ресурсов) | | Дерево доменов | Иерархическая система доменов с единым корнем — корневой домен. | | Лес доменов | Множество деревьев доменов, находящихся в различной форме доверительных отношений. | **Что же такое AD?** Зачастую технология Active Directory используется системными администраторами для хранения и организации объектов сети в защищенную логическую иерархическую структуру, например, пользователей, принтеров, компьютеров, внешних хранилищ и прочих ресурсов. Домены и леса — основа логической структуры. Для обеспечения независимости данных и сервисов (но не их изоляция), а также оптимизации и репликации, домены можно структурировать в деревья, а затем и в леса. Разделение логических структур от физических может улучшить управляемость системы, снизив затраты на администрирование. Это связано с тем, что на изменения в физическом устройстве не влияют на логическую структуру. В свою очередь, логическая структура используется для контроля к блокам данных. Хранимые в AD данные могут поступать из различных источников. Для поддержания целостности хранящейся информации, большое количество различных источников данных, а также множество их различных типов, требуют от Active Directory использования некого стандартизированного механизма хранения. Для хранения информации, объекты в AD используют каталоги. Все объекты определены в схеме. Определения объектов содержат информацию, такую как тип данных и синтаксис. Данную информацию использует каталог, чтобы гарантировать достоверность хранения. Данные сохраняются в каталоге только после определения в схеме. По умолчанию, схема содержит все определения и описания объектов, необходимые для корректной работы AD. При доступе к каталогу через логическую структуру, состоящую из доменов и леса, реализация каталога происходит через физическую структуру, которая состоит из базы данных. База данных хранится на всех контроллерах домена леса. Хранилище AD обрабатывает весь доступ к базе данных. В свою очередь, хранилище данных состоит из физических файлов и служб, которые управляют правами доступа, процессами чтения и записи данных внутри БД на жестком диске каждого контроллера. ## Архитектура хранилища и структура Active Directory **Домены и леса** Организационные единицы (OU — Organization Unit), домены и леса являются основными элементами логической структуры AD. Лес определяет единый каталог и обозначает границу безопасности. Домены входят в состав Лесов. **DNS** DNS применяется для разрешения имен в иерархической архитектуре, которую использует AD. **СХЕМА (SCHEMA)** Схема содержит определения объектов, которые используются для их создания, хранящихся в каталоге. **ХРАНИЛИЩЕ ДАННЫХ (DATA STORE)** Хранилище данных является частью каталога, который управляет хранением и извлечением данных на каждом контроллере домена. Более подробно вы можете ознакомиться с материалами на официальном [сайте](https://docs.microsoft.com/ru-ru/windows-server/identity/ad-ds/active-directory-domain-services). https://serverspace.by/support/help/resilio-sync.md Рассмотрим, как при помощи Resilio Sync от компании BitTorrent перенести изменения, выполненные в одном файле, на несколько машин. Синхронизация данных, конфигурационных файлов, программ. Какие варианты синхронизации данных, конфигурационных файлов, программ или проектов вам знакомы? Первое что приходит на ум — копирование с сервера на сервер. Второе — различные системы контроля версий ПО. А что если таких серверов более двух? Рассмотрим как перенести изменения выполненные в одном файле на несколько машин. На помощь приходит решение компании BitTorrent — Resilio Sync. Открываем любой браузер, переходим на официальный [сайт](https://www.resilio.com/individuals-sync/?) проекта. Скриншот №1. Выбор версии продукта (Free) Выбираем желаемую версию продукта. В нашем случае "Бесплатная" (Free). Скриншот №2. Выбор варианта использования (Home) Теперь выбираем желаемый вариант использования. В нашем случае будет выбран "Домашний" (Home) исключительно для ознакомления. После загрузки файла, запускаем его. Скриншот №3. Настройки Resilio Sync Если есть желание запускать в качестве службы — ставил галку в соответствующем поле. Кликаем по кнопке Далее. Запустится программа Sync. Вводим желаемое имя, а также отмечаем галками соответствующие поля, если согласны с условиями. Кликае по кнопке "Начать работу". Скриншот №4. Диспетчер задач Программа перезапустится с функциональным пользовательским интерфейсом. Кликаем по значку "+", чтобы добавить папку для синхронизации. Скриншот №5. Добавление папки В предложенных вариантах выбираем стандартную папку. Скриншот №6. Стандартная папка В открывшемся окне, выбираем папку, например, "Документы". По окончании, кликаем по кнопке "Выбор папки". Скриншот №7. Выбор папки После выбора папки. Программа предложит настроить политики доступа. Скриншот №8. Настройки доступа По окончании настроек, копируем ссылку. На стороне клиента выполняем те же действия, но на этапе добавления каталога следует выбрать "Введите ключ или ссылку". Скриншот №9. Выбор действия В новом окне вставляем ссылку и кликаем по кнопке "Далее". Скриншот №10. Вставляем ссылку В обновленном окне указываем по какому пути следует располагать принимаемые файлы. Для удобства указания пути, можно кликнуть по кнопке "Изменить". По окончании настроек кликаем по кнопке "Подключить". На первоначальной машине появится запрос на разрешения действия. Скриншот №11. Запрос на разрешения действия Если разрешаем доступ — кликаем по галке. Теперь добавленные файлы в каталог будут синхронизированы между машинами. https://serverspace.by/support/help/ustanovka-gitlab-na-ubuntu.md GitLab - это система управления репозиториями для Git. В пакет включен wiki, Web-интерфейс, а также система отслеживания ошибок. Рассмотрим настройку GitLab под Ubuntu 18.04. GitLab — это система управления репозиториями для Git. В пакет включен wiki, Web-интерфейс, а также система отслеживания ошибок. Рассмотрим настройку GitLab под Ubuntu 18.04. Для удобства работы переходим в режим суперпользователя: ``` sudo su ``` В самом начале обновляем данные о пакетах в репозитории и компоненты системы: ```bash apt-get update && apt-get upgrade ``` Устанавливаем основные пакеты: ```bash apt-get install ca-certificates curl openssh-server ``` Если какие-либо компоненты уже установлены, система проигнорирует их. Приступаем к установке. Переходим в каталог /tmp. ``` cd /tmp ``` Скачиваем установочный скрипт для Debian/Ubuntu: ```bash curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh ``` Выполняем скрипт: ``` bash /tmp/script.deb.sh ``` Программа установит недостающие пакеты, импортирует gpg-ключи, а также настроит сервер для поддержки репозиториев GitLab. Устанавливаем актуальную версию GitLab: ```bash apt-get install gitlab-ce ``` В ходе установки будет выкачано около 81 Мб пакетов. Итоговый результат: Выполняем первоначальную конфигурацию: ``` gitlab-ctl reconfigure ``` Этот процесс полностью автоматизирован. По окончании процесса в консоли будет примерно такая картина. Настраиваем межсетевой экран. Для того чтобы была возможность подключаться к GitLab извне, необходимо настроить межсетевой экран. Для этого добавляем разрешающее правило для web-порта: ``` iptables -A INPUT -p tcp —dport 80 -j ACCEPT ``` Важно! Если 80-порт вас не устраивает по каким-либо причинам, например, на этом сервере уже существует web-служба, тогда можно изменить порт. Для этого отредактируем файл: ``` nano /etc/gitlab/gitlab.rb ``` Изменяем параметр external_url. После указанного доменного имени через двоеточие (":") указываем номер порта, например 8080. Как пример было: ``` external_url 'http://gitlab.example.com' ``` Стало: ``` external_url 'http://gitlab.example.com:8080' ``` При первом переходе по адресу сервера, web-интерфейс предложит установить пароль для учетной записи администратора. После ввода пароля и его подтверждения, вы будете перенаправлены на страницу авторизации. Вводим имя пользователя root и пароль из пункта выше. Настроим правила регистрации. Переходим в Admin Area. Затем, в боковом меню открываем настройки (Settings). Далее General. Напротив пункта Sign-up restrictions кликаем по кнопке Expand. Проверяем наличие галки Sign-up enabled. Данный параметр разрешает регистрацию. Важно! Чтобы пользователи могли получать письма при регистрации на сервере необходимо настроить агент передачи электронной почты. https://serverspace.by/support/help/utilita-rsync-dlya-sinkhronizatsii-fajlov.md Использование утилиты Rsync для синхронизации файлов и каталогов между VPS, а также на локальной машине Linux. Rsync — это remote sync или удаленная синхронизация. Инструкция по использованию небесполезной утилиты Rsync для синхронизации файлов и каталогов между удаленными серверами, а также на локальной машине на базе операционных систем семейства Linux. ## Что такое Rsync? Rsync — это remote sync или удаленная синхронизация, является средством удаленной и локальной синхронизации файлов. Он использует алгоритм, который минимизирует объем копируемых данных, перемещая только те части файлов, которые были изменены. Утилита в основном используется для синхронизации деревьев веб-сайтов от промежуточных до рабочих серверов, а также может использоваться для резервного копирования ключевых областей файловых систем через cron. Rsync помогает легко передавать большие объемы данных, обеспечивая сверхбыстрое и эффективное резервное копирование. ## Основной синтаксис Синтаксис утилиты rsync очень прост и похож на ssh, scp и cp. Для создания тестовых директорий и файлов с помощью выполните следующие команды: ``` cd ~ mkdir directory1 mkdir directory2 touch directory1/file{1..50} ``` В результате в каталоге directory1 появятся 50 пустых файлов. Для просмотра можно выполнить команду: ``` ls directory1 ``` Для синхронизиронизаци каталогов directory1 и directory2 на одной операционной системе, введите: ```bash rsync -r directory1/ directory2 ``` Ключ -r обеспечивает рекурсивную синхронизацию каталогов. Вместо опции -r чаще всего на практике используют опцию -a. Опция позволяет выполнять рекурсивную синхронизацию, сохраняет символические ссылки, специальные файлы и файлы устройств, время модификации, группу, владельца и права. ## Синхронизация удаленной системы Синхронизация с удаленным каталогом выполняется по аналогии с синхронизацией локальных каталогов. Используйте команду в следующем формате: ```bash rsync -a ~/directory1 username@remote_host:destination_directory ``` В терминах git данную операцию можно назвать push. Операцию аналогичную pull также можно выполнить: ```bash rsync -a username@remote_host:/home/username/directory directory1 ``` ## Полезные опции Rsync предоставляет множество опций для изменения поведения утилиты по умолчанию. Если вы передаете файлы, которые еще не были сжаты, например, текстовые файлы, то включить сжатие можно с помощью опции -z: ```bash rsync -az source destination ``` Для отображения процесса синхронизации можно использовать флаг -P: ```bash rsync -azP source destination ``` Вывод в консоль будет выглядеть примерно следующим образом: ``` sending incremental file list file1 0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=99/101) file10 0 100% 0.00kB/s 0:00:00 (xfer#2, to-check=98/101) file2 0 100% 0.00kB/s 0:00:00 (xfer#3, to-check=87/101) ``` https://serverspace.by/support/help/smena-nomera-rdp-v-windows-server-2012.md Рассмотрим, как сменить номер службы RDP в Windows Server 2012. Решение данной задачи лежит через редактирование параметров реестра. Читать далее... RDP **(R**emote **D**esktop** P**rotocol), он же протокол удаленного подключения к рабочему столу, разработанный компанией Microsoft в 1996 году, активно применяется и сегодня. Сложно представить работу в "окнах" через консоль. Данный протокол, по умолчанию, работает на TCP-порту 3389, однако, политика безопасности некоторых организаций может потребовать скорректировать это. Рассмотрим как сменить номер службы RDP в Windows Server 2012. Решение данной задачи лежит через редактирование параметров реестра. Просмотр дерева системного реестра выполняется средствами стандартной программы ОС Windows — regedit. Для запуска программы вызываем окно запуска программ сочетанием клавиш **Wndows + R**. В открывшемся окне пишем regedit и кликаем по кнопке OK. В открывшемся окне "Редактор реестра" переходим по пути: ``` HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp ``` В правой части окна обращаем внимание на элемент реестра PortNumber. Двойным кликом открываем окно редактирования параметров. В открывашемся окне переключаем систему счисления в Десятичную, указываем значение порта, например, 62000 и кликаем по кнопке OK. При выборе нового порта важно понимать, что новое значение не должно быть таким же, как из уже существующих. Посмотреть список "слушаемых" портов можно командой: ``` netstat -nal ``` Также важно понимать, что порты распределены между системными службами. Таким образом, диапазон портов: - от 0 до 10213 определяются организацией IANA. Это известные порты и именно этот диапазон используют системные приложения и службы по умолчанию; - от 1024 до 49151 — зарегистрированные порты, которые также назначаются IANA, но их уже регламентируют для использования в частных сетях; - от 49152 до 65535 — частные порты, которые могут использоваться любыми приложениями и службами. Теперь следует изменить настройки межсетевого экрана. Открываем Администрирование. Можно из меню Пуск, но если там отсутствует этот пункт, то Пуск → Панель управления → Система и безопасность → Администрирование → Брандмауэр Windows в режиме повышенной безопасности. В открывшемся окне кликаем правой кнопкой мыши по "Правила для входящих подключений". В открывшемся контекстном меню выбираем "Создать правило". В открывшемся окне "Мастер создания правила для нового входящего подключения" создаем правило "Для порта" и кликаем по кнопке "Далее". В обновленном окне отмечаем "Протокол TCP" и "Определенные локальные порты", а в поле напротив указываем установленный вами порт ранее (в реестре). В нашем случае 62000. Кликаем по кнопке "Далее". В обновленном окне выбираем "Разрешить подключение" и кликаем по кнопке "Далее". На следующем этапе необходимо выбрать для каких сетей будет применяться правило. Важно помнить, что если доступ к серверу будет через сеть Интернет, то необходимо указать "Публичный". Кликаем по кнопке "Далее". Окно обновится и потребует ввод имени правила и описания к нему. Рекомендуется указывать логически понятные имена и описания для упрощения администрирования. По окончании настроек кликаем по кнопке "Готово". Для применения настроек необходимо перезагрузить сервер. Для подключения к серверу, по новому порту средствами стандартного RDP-клиента, в поле "Компьютер" следует указывать адрес сервера и через двоеточие указать номер порта для подключения. https://serverspace.by/support/help/windows-2016-creating-a-user.md Создание учетной записи пользователя в Windows 2016 - через панель управления и через консоль. И предоставление возможности доступа к удаленному рабочему столу. Создание собственной учетной записи для каждого пользователя важный атрибут безопасности сервера. Рассмотрим как добавить пользователя в Windows 2016. **Способ 1. Традиционный** Открываем **Пуск → Панель управления.** В открывшемся окне кликаем по **"Учетные записи пользователей".** В обновленном окне еще раз кликаем по** "Учетные записи пользователей".** Особенность операционной системы такова, что откроются параметры текущей учетной записи, а нам нужно создать новую. Кликаем по надписи **"Управление другой учетной записью".** В нижней части обновленного окна кликаем по** "Добавить учетную запись пользователя".** В новом окне** "Добавление пользователя"** следует заполнить все поля: - имя пользователя; - пароль; - подтверждение пароля; - подсказка к паролю. Если пароль не соответствует критериям безопасности, программа об этом уведомит. В обновившемся окне кликаем по кнопке **"Готово"**. Окно добавления пользователя закроется и в окне** "Управление учетными записями"** появится возможность выбора учетной записи для изменения параметров. **Способ 2. Через консоль управления компьютером.** Сочетанием клавиш **"Windows + R" вызываем системное окно "Выполнить"**. В его единственное поле впишем команду mmc. Откроется пустая консоль оснасток. Для того чтобы появилась возможность создать пользователя, необходимо добавить необходимую оснастку в консоль. Для этого открываем **Файл → Добавить или удалить оснастку** В открывшемся окне "Добавление и удаление оснасток", в левой его части, находим "Локальные пользователи и группы". Теперь кликаем по кнопке "Добавить".** "Локальные пользователи и группы"** переместится в секцию **"Выбранные оснастки"**. Сразу после действия выше, откроется окно** "Выбор целевого компьютера"**. Выбираем параметр "Локальный компьютер (на котором запущено окно этой программы консоли)", обычно этот параметр установлен по умолчанию. Кликаем по кнопке** "Готово"**. Окно закроется. В оставшемся окне кликаем по кнопке "OK". Окно "Добавления и удаления оснасток" закроется. Останется только окно Консоль 1. В левой части окна развернем деров "Локальные пользователи и группы", затем кликнем по папке "Пользователи". В основной части окна, кликаем правой кнопкой мыши и в контекстном меню выбираем **"Новый пользователь"**. В открывшемся окне "Новый пользователь" важными для заполнения являются поля: - Пользователь; - Полное имя; - Пароль; - Подтверждение пароля. Рекомендуем понятно заполнить поле **"Описание"**. Важно обратить внимание на параметр **"Требовать смены пароля при следующем входе в систему"**. Галка устанавливается по умолчанию. Таким образом, когда администратор передает пароль пользователю, при первом входе, операционная система потребует от пользователя указать новый пароль для входа в систему. Кликаем по кнопке** "Создать"**. Результат будет примерно таким. Разрешаем удаленное подключение. Изначально планировалось чтобы созданный пользователь имел возможность подключения к удаленному рабочему столу на этом сервере. Предоставим эту возможность. **Способ 1. Через консоль сервера.** Из способа выше, все в том же окне "Консоль 1", кликаем по созданному пользователю правой кнопкой мыши. В открывшемся контекстном меню выбираем пункт "Свойства". Открываем вкладку **"Членство в группах"** и кликаем по кнопке "Добавить". В окне выбора группы кликаем по кнопке **"Дополнительно"**. В правой части обновленного окна кликаем по кнопке** "Поиск"**. В поле "Результаты поиска" следует выбрать** "Пользователи удаленного рабочего стола"** двойным кликом. В окне выбора групп кликаем по кнопке "OK". В окне свойств учетной записи появится соответствующее членство в группах. Закрываем окно кликом по кнопке "OK" **Способ 2.** Рассмотрим альтернативный способ предоставления возможности доступа к удаленному рабочему столу. Открываем меню Пуск и выбираем Панель управления. В открывшемся окне, кликаем по **"Система и безопасность"**. В обновленном окне кликаем по **"Система"**. В левой части нового окна кликаем по **"Настройка удаленного доступа"**. В открывшемся окне** "Свойства системы"** переходим на вкладку "Удаленный доступ" и кликаем по кнопке "Выбрать пользователей". В открывшемся окне кликаем по кнопке **"Добавить"** В окне выбора пользователей кликаем по кнопке** "Дополнительно.."** В обновленном окне кликаем по кнопке **"Поиск"**, а в нижней части окна, где результаты поиска, находим нужного нам пользователя. Выбираем его двойным кликом мыши. В окно выбора пользователя добавится строка с логином и на каком сервере находится пользователь. Если все правильно — кликаем по кнопке "OK". В окне** "Пользователи удаленного рабочего стола" **проверяем пользователей и по окончании кликаем по кнопке "OK". Теперь можно пробовать подключаться. Запустить **"Подключение к удаленному рабочему столу"** возможно через меню Пуск → Стандартные — Windows → Подключение к удаленному рабочему столу. Возможно, данная программа будет находиться на "плитке" справа. Откроется окно программы. В нем необходимо ввести IP-адрес удаленной машины или ее доменное имя. И кликаем по кнопке **"Подключить"**. Удаленный компьютер запросит имя пользователя и пароль, вводим их и кликаем по кнопке "OK". https://serverspace.by/support/help/rezervnoe-kopirovanie.md Как настроить создание резервных копий (иначе - backup, бэкапов) сервера в панели управления Serverspace, тарификация и стоимость услуги. Услуга **Резервное копирование** доступна для всех [виртуальных серверов](https://serverspace.by/services/vps-server.md). ### Как работает Резервное копирование выполняется 1 раз в сутки на территориально удаленный дисковый массив. Параметр **Глубина хранения** определяет сколько будут храниться резервные копии (1, 2, 3 или 4 недели). Копии старше выбранного срока автоматически удаляются. ### Как подключить услугу При создании нового сервера подключение резервного копирования происходит с помощью соответствующего поля и выбора глубины хранения копий. Для уже созданного сервера подключить услугу можно в меню сервера **Backup**, так же указав глубину хранения копий. Не забудьте сохранить изменения. ### Как восстановить сервер из резервной копии Для восстановления сервера из резервной копии перейдите на вкладку **Backup** → **Восстановить из копии** и выберете способ восстановления сервера: Рядом или Поверх. В первом случае будет создан дубликат сервера во втором случае на основном сервере будет восстановлена выбранная копия. Выберете дату создания резервной копии, которую необходимо восстановить. При восстановлении Поверх отметьте галочкой дополнительное поле. Нажмите кнопку **Восстановить**. ### Как отключить услугу Для отключения услуги перейдите на вкладку **Backup** → **Расписание** и нажмите кнопку **Выключено**. Подтвердите свои действия с помощью кнопки **Изменить**. ### Тарификация и стоимость Стоимость услуги рассчитывается по формуле: _Z = G * S * (N / 7)_ Здесь G — стоимость услуги за 1 гигабайт, S — суммарный объем всех дисков сервера, N — глубина хранения копий. Информацию о текущей стоимости всегда можно найти на вкладке **Биллинг** заказанного сервера. Правила тарификации: - услуга тарифицируется каждые 10 минут; - сумма списания не зависит от состояния сервера (включен или выключен). Подборки VPS/VDS: [аренда VPS в Европе](https://serverspace.by/services/vps-server.md), [аренда VPS на Linux](https://serverspace.by/services/vps-server/linux/) и [Windows](https://serverspace.by/services/vps-server/windows/). https://serverspace.by/support/help/kak-sozdat-snapshot.md Снапшот — моментальная копия всей файловой системы сервера. В инструкции описано создание моментального снимка и процесс восстановления из него. Снапшот — моментальная копия всей файловой системы сервера. В отличии от резервного копирования снапшот создается оперативно и только по непосредственной команде пользователя. Вы можете хранить только один снапшот для каждого сервера. Длительность хранения снимка — 7 дней, по истечению этого периода снимок автоматически удаляется. Стоимость услуги зависит от объема дискового пространства сервера. ### Создание снимка Для создания снимка сервера, выберете нужный и в горизонтальном меню перейдите на вкладку **Снимки** → **Сделать снимок**. В пустое поле введите имя снимка и нажмите **Сделать снимок**. ### Восстановление из снимка Для восстановления сервера из снимка перейдите в меню **Снимки** → **Восстановить из снимка**. На снимке будет указано его название и временной штамп. Для восстановления нажмите на кнопку **Восстановить**. [/step] Также на этой странице возможно удалить созданный снапшот. https://serverspace.by/infrastructure.md Облачная инфраструктура - расположение ЦОД, архитектура дата-центров (data center). Подробнее об оборудовании центров обработки данных и наших сервисах. В этом разделе вы можете узнать о том, в каких центрах обработки данных представлен наш сервис, какое оборудование мы используем, и подробности о том, как устроена архитектура нашего облака. https://serverspace.by/infrastructure/hardware.md Мы используем оборудование enterprise-класса ведущих мировых производителей: Cisco и NetApp. Аренда виртуальных серверов в ЦОДах высокой надежности. Облачные услуги нашей компании построены на оборудовании enterprise уровня от ведущих мировых производителей (Cisco, NetApp) и размещено в ЦОД соответствующих международному стандарту качества Uptime Institute TIER III: [beCloud](https://serverspace.by/infrastructure/datacenter-minsk.md) (Минск), [DataSpace](https://serverspace.by/infrastructure/datacenter-moskva.md) (Москва), [Equinix AM2](https://serverspace.by/infrastructure/datacenter-amsterdam.md) (Амстердам). География присутствия постоянно расширяется. Архитектура наших сервисов построена по принципу отсутствия единой точки отказа. Это означает, что все критически значимые компоненты (провайдеры интернет, сетевая инфраструктура, вычислительные хосты и системы хранения данных) зарезервированы на физическом уровне и настроены механизмы автоматического переключения. [tabs_horizontal id=»361″][tab id=»157″ title=»Серверы» active] ### Серверы Виртуальные серверы размещаются на blade-серверах Cisco UCS: - B480 M5 с четырьмя 18-ядерными серверными процессорами Intel Xeon Gold 6154 (итого 72 ядра на хост) и 1024 ГБ DDR4 оперативной памяти; - B200 M4 с двумя 20-ядерными серверными процессорами семейства Intel Xeon E5-2698 v4 (итого 40 ядер на хост) и 512 ГБ DDR4 оперативной памяти в Беларуси. Серверы серии Cisco UCS размещаются в промежуточном корпусе называемом "шасси". Каждое шасси содержит 4 блока питания, которые резервируют друг друга, 8 модулей системы охлаждения и 2 Fabric Extender для обеспечения связи с коммутаторами. Каждый компонент поддерживает функцию "горячей" замены. Cisco UCS считается одной из лучших платформ для построения облачных сред, поскольку имеет единую систему управления аппаратными компонентами, автоматическое распознавание добавленных "лезвий" и развитый программный API. [/tab][tab id=»279″ title=»Сетевое оборудование»] ### Сетевое оборудование На границе сети каждой нашей площадки установлены по два высокопроизводительных маршрутизатора Cisco ASR 9001, соединённых с внутренними коммутаторами Cisco Nexus 93180 так, чтобы исключить единую точку отказа. Для соединения шасси Cisco UCS с сетевыми свитчами используются коммутаторы Cisco Fabric Interconnect предусматривает коммутацию на высоких скоростях без потерь пакетов и с крайне малой задержкой. Используемые модели: Cisco UCS 6332UP Fabric Interconnect 40 Гбит/с, Cisco UCS 6454 Fabric Interconnect до 100 Гбит/с и Cisco UCS 6248UP Fabric Interconnect. Доступ в интернет обеспечивается при помощи подключения двух независимых Uplink от двух независимых провайдеров по разным физическим трассам. [/tab][tab id=»365″ title=»NetApp»] ### NetApp Дисковое пространство для виртуальных машин предоставляется с высокопроизводительных дисковых массивов NetApp AFF A300 с быстрыми твердотельными дисками (SSD). Массивы серии A300 оснащены многоядерными процессорами Intel Broadwell DE, используют высокопроизводительную оперативную память и энергонезависимую память NVRAM и обеспечивают уровень доступности не ниже 99,999%. Все данные, хранящиеся на дисковом массиве, сохраняются и резервируются на трех максимально удаленных друг от друга физических дисках, что обеспечивает максимальную сохранность ваших данных. Для продолжительного хранения данных и резервного копирования мы используем дисковые массивы Netapp E2860, построенные на жёстких дисках с интерфейсом NLSAS. [/tab][/tabs_horizontal] [slider background=»on»][slide uri=»/wp-content/uploads/2019/10/hardware-1.jpg» caption=»Cisco UCS B200 M4″][/slide][slide uri=»/wp-content/uploads/2019/10/hardware-2.jpg» caption=»Cisco UCS B200 M4″][/slide][slide uri=»/wp-content/uploads/2019/10/hardware-3.jpg» caption=»Cisco UCS 6248UP Fabric Interconnect»][/slide][slide uri=»/wp-content/uploads/2019/10/hardware-4.jpg» caption=»NetApp AFF-300″][/slide][slide uri=»/wp-content/uploads/2019/10/hardware-5.jpg» caption=»Дисковые массивы»][/slide][slide uri=»/wp-content/uploads/2019/10/hardware-6.jpg» caption=»NetApp E2860″][/slide][/slider] https://serverspace.by/conditions.md Условия использования сервиса аренды виртуальной инфраструктуры: цены и способы оплаты, SLA (соглашение об уровне обслуживания) и финансовые гарантии, публичная оферта. Для комфортной работы клиентов, представляющих организации, в Serverspace предусмотрена возможность оплаты по счёту и заключения двустороннего договора. Чтобы заключить договор, вам достаточно создать соответствующее обращение в службу поддержки в личном кабинете Serverspace. https://serverspace.by/about-old.md На странице представлена информация о сервисе ServerSpace.by в Беларуси, Минск. Serverspace.by – сервис по аренде виртуальной инфраструктуры в облаке. Serverspace — идеальный онлайн-сервис аренды облачной ИТ-инфраструктуры. Наш сервис позволяет конфигурировать и разворачивать виртуальные серверы, настраивать сетевую схему, заказывать SSL-сертификаты, управлять доменными зонами и мониторингом. ## Наши возможности Облачные технологии проще, чем вам кажется. С нами вы сможете легко разворачивать виртуальную ИТ-инфраструктуру в крупнейших дата-центрах мира всего за пару кликов. https://serverspace.by/conditions/payment-methods.md Принимаются банковские карты, оплата по счету, обещанный платеж. Минимальная сумма пополнения 3 белорусских руб. Удобный интерфейс для пополнения с карты. ## Банковские карты - **К оплате принимаются банковские карты VISA, MasterCard и Белкарт.** - **Минимальная сумма пополнения составляет 3 белорусских рубля.** - **Удобный интерфейс для пополнения с карты интегрирован в личный кабинет пользователя.** Пополнение баланса с банковских карт осуществляется в панели управления Serverspace, в разделе «Пополнение баланса». Перед совершением платежа требуется ввести реквизиты карты, с которой производится оплата, а именно номер карты, срок ее действия и CVC-код. Для упрощения процесса оплаты банковские карты можно привязывать к аккаунту, сохраняя введенные реквизиты. Для этого перед совершением платежа, на этапе ввода реквизитов, необходимо поставить галочку в чекбоксе «Запомнить карту». ## Оплата через ЕРИП Вы можете сформировать счет на оплату через систему «Расчет» (ЕРИП). Для этого необходимо: - **В разделе «Оплата» перейти во вкладку «ЕРИП»** - **Указать сумму, на которую вы хотите пополнить счет** - **Выбрать email-адрес для формирования счета в выпадающем списке.** Затем перейдите в систему ЕРИП и совершите платеж. ## Оплата по счёту Юридические лица могут пополнять свой счет в Serverspace по выставленному счету на оплату. В личном кабинете пользователя можно как выставить счет, так и настроить правила автоматического выставления счетов. Также в настройках личного кабинета можно указать финансовый email, на который будут отправляться выставленные счета и закрывающие документы. ## Обещанный платёж Мы понимаем, что в жизни есть обстоятельства, которые не позволяют вовремя пополнить баланс. Чтобы избежать простоя в работе вашей инфраструктуры мы даём возможность использовать опцию "Обещанный платеж". - **Опция "Обещанный платеж" доступна пользователям, которые хотя бы раз пополняли свой баланс, и расходование средств которых за последнюю неделю не нулевое.** - **Сумма обещанного платежа рассчитывается на основании суммы потребления ресурсов пользователем за последние 7 дней.** Обратите внимание: для физических лиц услуга доступна через 2 месяца после регистрации, для юридических сразу. https://serverspace.by/infrastructure/architecture.md Для построения облачной архитектуры мы используем оборудование уровня Enterprise от лидеров рынка — компаний Cisco и NetApp. Наша архитектура не имеет единой точки отказа. При создании инфраструктуры мы ориентируемся на собственный и международный опыт в сфере облачных технологий, выбирая самые эффективные решения для построения облачных сред. ## Геораспределенные дата-центры[Дата-центры] Отсутствие привязки к конкретной технологической площадке делает управление облаком более эффективным. Именно поэтому наше оборудование распределено по нескольким центрам обработки данных: [tabs_horizontal id=»53″][tab id=»142″ title=»Минск» active] ### beCloud Единственный в Беларуси модульный дата-центр четвертого поколения, обеспечивающий высокий уровень надежности и безопасности. Признан крупнейшим и первым сертифицированным Tier III дата-центром. [Подробнее](https://serverspace.by/infrastructure/datacenter-minsk.md) [/tab][tab id=»249″ title=»Москва»] ### DataSpace Первый российский ЦОД, прошедший сертификацию Tier lll Gold от Uptime Institute. Центр обработки данных оказывает свои услуги уже более 6 лет. [Подробнее](https://serverspace.by/infrastructure/datacenter-moskva.md) [/tab][tab id=»393″ title=»Амстердам»] ### АМ2 Один из самых современных дата-центров в Европе, имеет сертификаты высокого уровня надежности, сертифицирован по стандарту PCI DSS. [Подробнее](https://serverspace.by/infrastructure/datacenter-amsterdam.md) [/tab][/tabs_horizontal] ## Enterprise-оборудование[Оборудование] Для построения облачной архитектуры мы используем оборудование уровня Enterprise от лидеров рынка — компаний **Cisco** и **NetApp**, — признанное самым производительным и надежным. За счет настроенных механизмов автоматического переключения и резервирования всех критически значимых компонентов инфраструктуры на физическом уровне, наша архитектура **не имеет единой точки отказа**. ## Блейд-серверы Cisco[Серверы] В наших дата-центрах установлены блейд-серверы **Cisco UCS**, позволяющие управлять аппаратными компонентами с помощью единой системы управления. При добавлении новых "лезвий" происходит их автоматическое распознавание, а программный API-интерфейс существенно расширяет функционал платформы. ## Системы хранения данных NetApp[СХД] Для хранения виртуальных машин, их дисков и других данных виртуальной среды, мы используем дисковые массивы NetApp. ## Сетевая связность и сетевое оборудование[Сеть] На границе сети каждой облачной площадки установлены дублированные магистральные маршрутизаторы **Cisco ASR 9001**, соединенные с внутренними коммутаторами **Cisco Nexus 93180**, и подключенные по высокоскоростным физическим каналам связи к двум независимым и территориально распределенным магистральным провайдерам. Cisco ASR 9001 Маршрутизаторы непрерывно отслеживают состояние доступности друг друга. В случае выхода одного из них из строя, вся нагрузка по обработке трафика переносится на другой маршрутизатор, благодаря чему достигается постоянная связь облака с интернетом. ## Аппаратная виртуализация[Виртуализация] Для виртуализации серверов мы используем **гипервизор VMware ESXi**, позволяющий запускать гостевые операционные системы, платформу централизованного управления VMware vCenter Server, сопутствующие инструменты, входящие в состав vSphere, а также компоненты VMware DRS и VMware HA, чтобы контролировать весь набор серверов и виртуальных машин на системном уровне. [tabs_horizontal id=»171″][tab id=»144″ title=»VMware DRS» active] ### VMware DRS VMware DRS отвечает за динамическое распределение нагрузки на аппаратную часть облака и следит за тем, чтобы конкретный "железный" сервер не был чрезмерно загружен. В случае увеличения нагрузки, виртуальные машины переносятся на менее нагруженный хост. Если необходимость переноса ВМ все-таки произошла, VMware DRS выполняет прозрачный для пользователей переезд без остановки работы виртуальной машины. [/tab][tab id=»216″ title=»vmware high availability (HA)»] ### VMware High Availability (HA) VMware HA следит за тем, чтобы виртуальные машины были постоянно доступны. Если какая-либо из ВМ потеряла связь и перестала отвечать на запросы, VMware HA выполняет автоматический запуск экземпляра (идентичной копии) на другом физическом узле. [/tab][/tabs_horizontal] ## Панель управления Чтобы наши клиенты могли легко создавать виртуальные серверы любой конфигурации, выполнять настройку сети и многое другое, мы разработали удобную панель управления: [slider][slide uri=»/wp-content/uploads/2019/10/panel-1.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/10/panel-2.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/10/panel-3.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/10/panel-4.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/10/panel-5.jpg» caption=»»][/slide][slide uri=»/wp-content/uploads/2019/10/panel-6.jpg» caption=»»][/slide][/slider] - Виртуальная инфраструктура отдельно взятого клиента, включая виртуальные серверы и подсети, изолированы друг от друга. - Для автоматизации управления облачной инфраструктурой мы предоставляем возможность использовать программный интерфейс API, существенно упрощающий решение целого спектра задач. ## Технические лимиты[Лимиты] При создании виртуальной инфраструктуры можно воспользоваться готовыми решениями с заданными характеристиками, либо создавать собственные конфигурации, рассчитывая на следующие технические лимиты: | Число ядер процессора | 1 — 32 | Процессоры Intel Xeon Gold 6154 Ядро виртуальной машины соответствует ядру физического процессора аппаратной платформы | | --- | --- | --- | | Оперативная память | 0,5 ГБ — 320 ГБ | DDR4 / 2 666 МГц | | Дисковое пространство | 10 ГБ — 5 ТБ | К виртуальному серверу можно подключить любое количество виртуальных дисков на SSD или SATA | | Сеть | 1 Гбит/с или 10 Гбит/с | Скорость между виртуальными машинами и с сетью интернет | Если же потребуются больше ресурсов, достаточно написать нашей техподдержке, которая обязательно подберет индивидуальное решение. https://serverspace.by/err404.md Страница не найдена - 404 ошибка. Приносим свои извинения. Возможно, в ссылку, по которой вы перешли, закралась ошибка или страница была удалена. ### Страница не найдена https://serverspace.by/conditions/sla.md SLA - соглашение об уровне обслуживания. Гарантированные параметры качества сервиса, доступность (uptime). Порядок финансовых компенсаций. Данное соглашение является приложением к пользовательскому соглашению и определяет количественные и качественные целевые показатели услуг сервиса Serverspace, а также финансовые гарантии их соблюдения. ## Сетевая доступность **Простой** — период, когда арендуемые виртуальные машины недоступны клиенту по сети. **Время простоя** — суммарная продолжительность простоев за период (1 месяц), за исключением простоев, вызванных: - проведением работ в запланированные окна технического обслуживания; - неработоспособностью каналов связи и оборудования, находящихся вне зоны ответственности/контроля ООО "ИТГЛОБАЛКОМ БЕЛ"; - приложениями или компонентами Клиента не подконтрольными или не управляемыми компанией ООО "ИТГЛОБАЛКОМ БЕЛ", которые привели к невозможности оказать Услугу; - негативной деятельностью Клиента, его работников, партнеров, покупателей и т. п., которая привела к негативному воздействию на компоненты Услуги (спам, спуфинг, нарушение правил использования Услуги и т. п.); - другими неподконтрольными событиями, классифицируемыми как форс-мажорные обстоятельства. **Согласованное время работоспособности (СВР)** – время, когда услуга должна нормально функционировать. В Serverspace СВР = 24×7. **% доступности** — отношение времени, когда услуга была доступна, к СВР. % доступности = 100%*(СВР-Время простоя)/СВР Например, если время простоя за ноябрь составило 1 час, то % доступности = 100%*(60*24*30 – 1*60)/ 60*24*30 = 99,86(1) | Параметр | Целевое значение | | --- | --- | | % доступности арендуемой виртуальной машины | 99,9% | ## Производительность СХД **IOPS** (Input/Output Operations Per Second) – количество операций ввода-вывода, выполняемых системой хранения данных (СХД), за одну секунду. **Latency** – задержка – максимальное время ответа дисковой подсистемы при совершении операций ввода/вывода. | Параметр | Гарантированные значения | | --- | --- | | Гарантированное количество IOPS для СХД | 30 IOPS на 1 GB SSD 0.1 IOPS на 1 GB SATA для блоков чтения-записи в 32 килобайта. | | Latency | 40 ms | Примечание: в случае превышения гарантированного числа IOPS, допускается отклонение от целевого значения параметра Latency. Данная ситуация не является нарушением SLA. ## Техническая поддержка **Пользовательское обращение** – обращение клиента Serverspace в службу технической поддержки сервиса через встроенную в личный кабинет пользователя систему регистрации и обработки обращений. **Типовое обращение** – пользовательское обращение, решение по которому формализовано в служебных инструкциях для сотрудников 1-й линии поддержки (ServiceDesk) сервиса Serverspace, не требует привлечения сотрудников 2-й и 3-й линий поддержки и не связанное с недоступностью или существенной деградацией качества услуги. **Нетиповое обращение** – пользовательское обращение, решение по которому не формализовано в служебных инструкциях ServiceDesk или требует привлечения сотрудников 2-й или 3-й линий поддержки, но не связанное с недоступностью или существенной деградацией качества услуги. **Инцидент** – пользовательское обращение, связанное с недоступностью или существенной деградацией качества оказываемой услуги. Данный тип обращений имеет наивысший приоритет при обработке. **Время реакции на обращение** – допустимая задержка между регистрацией обращения и началом его обработки (определение типа обращение, начало работ / передача, обращения на 2-й или 3-й уровень поддержки). ### Режимы обработки пользовательских обращений | Тип пользовательского обращения | Режим обработки | | --- | --- | | Инцидент | 24×7 | | Типовое обращение | 24×7 | | Нетиповое обращение | 8×5 (Пн-Пт c 10.00 до 18.00 UTC/GMT +3 часа) | ### Время реакции на пользовательское обращение | Тип пользовательского обращения | Режим обработки | | --- | --- | | Инцидент | 20 минут | | Типовое обращение | 30 минут | | Нетиповое обращение | 1 час | ## Регламентные работы ### Окна технического обслуживания | Тип работ | Окна тех. обслуживания | | --- | --- | | Плановые | Первая и третья пятницы каждого месяца с 06:00 до 08:00 (UTC/GMT +3 часа) | | Срочные | По необходимости, с уведомлением не менее чем за 2 часа | ## Финансовые гарантии В случае нарушения SLA в части % доступности арендуемых виртуальных машин, клиенту полагается выплата компенсации согласно следующей таблице: | % доступности виртуальной машины (Д) | Размер компенсации (% от месячной стоимости аренды виртуальной машины) | | --- | --- | | Д ≥ 99,9 | 0%, целевой показатель по SLA | | 99,9 > Д ≥ 99,72 | 5% | | 99,72> Д ≥ 99,45 | 10% | | 99,45> Д ≥ 98,90 | 15% | | 98,90> Д ≥ 96,71 | 20% | | 96,71> Д ≥ 76,98 | 50% | | 76,98 > Д | 100% | https://serverspace.by/about/blog/kak-obespechit-bezopasnost-vps-servera.md Рассмотрим несложные методы, позволяющие оставить хакеров и всех любопытных без добычи. Эти советы позволят вам защитить и Linux и Windows-системы Стали владельцем [VPS-сервера](https://serverspace.by/services/vps-server.md)? Поздравляем с полезным приобретением! Но пить шампанское и праздновать открытие нового веб-сайта или приложения еще рано. Ведь хакеры ежедневно присматривают себе новых жертв, да и любопытные школьники постоянно ищут свежие площадки для применения [кидди-скриптов](https://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82-%D0%BA%D0%B8%D0%B4%D0%B4%D0%B8). В этой статье мы рассмотрим несложные методы, позволяющие защитить Linux и Windows-системы, и оставить хакеров и всех любопытных без добычи. ## Общие советы **Регулярно обновляйте программное обеспечение** Регулярная установка обновлений и новейших версий программного обеспечения помогает обеспечить защиту сервера от уязвимостей, пока еще не известных хакерам, но о которых уже известно разработчикам. Для Windows рекомендуем настроить автоматическую загрузку и установку важных обновлений через "Центр обновления": В Linux для систем на основе CentOS можно использовать пакет yum-cron, который будет автоматически скачивать и устанавливать обновления, или пакет unattended-upgrades для систем на основе Ubuntu. В системах на основе FreeBSD можно настроить ежедневную автоматическую проверку и загрузку патчей безопасности при помощи команды freebsd-update с параметром cron. Эта команда проверяет и скачивает обновления, но не устанавливает их автоматически. После скачивания пользователь получит электронное письмо с уведомлением и сможет установить обновления с помощью команды freebsd-update install. Хорошей практикой является проверка обновлений на тестовом сервере до их установки в рабочей среде. Дело в том, что некоторые обновления могут изменить поведение нужных программ и служб таким образом, что потребуется изменять их конфигурацию. **Используйте ПО только из проверенных источников** Несмотря на распространенность open-source продуктов, перед установкой рекомендуем предварительно изучить найденные в них уязвимости, а скачивать такие программы советуем только с официальных сайтов. Неофициальные сайты, даже находящиеся в первой десятке поисковой выдачи Google, могут содержать вредоносные скрипты. Установка уязвимого или зараженного софта часто является причиной проблем с безопасностью инфраструктуры. **Знайте и ограничивайте свои сервисы** Деактивировав неиспользуемые сервисы и неиспользуемых [демонов](https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D0%BC%D0%BE%D0%BD_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0)), можно достаточно сильно усилить безопасность виртуального сервера. Таким образом вы сократите количество возможных атак, поскольку атаковать неработающую службу или демона невозможно. Каждый включенный сервис нужно рассматривать как потенциальную угрозу. Если какая-то потенциально уязвимая служба, например, FTP, нужна на некоторое время, не забудьте после использования отключить ее. Кроме того, можно настроить брандмауэр таким образом, чтобы доступ к такой службе мог осуществляться только с безопасных адресов. Для этого можно использовать списки IP-адресов или доменных имен. **Ведите разумную политику безопасности пользователей** Существуют действия, которые лучше выполнить, чтобы защитить систему при администрировании пользователей. Например, создать уникальные учетные записи для каждого пользователя и сервиса и предоставить им минимальные привилегии. Это полезно, поскольку если одна из учетных записей была скомпрометирована, это не затронет другие службы и не позволит злоумышленнику развить атаку и получить доступ к другим службам. Также необходимо отключить учетные записи тех пользователей, которые больше не должны иметь доступ к системе или те учетные записи, которые остались после удаления программного обеспечения. **Обратите внимание на установленные привилегии** Права доступа к файлам является источником риска для любой компьютерной системы. В целом, для файлов, которые будут доступны через Интернет, необходимо установить самые меньшие привилегии. **Резервное копирование** Не забудьте включить резервное копирование виртуальной машины. В случае успешной атаки злоумышленников восстановить резервную копию в безопасной среде (то есть без подключения к интернету) будет довольно легко. После же восстановления следует исключить возможность повторного взлома системы. **Используйте SFTP или SCP вместо FTP** FTP — это небезопасный протокол. С помощью этого протокола все данные отправляются в виде обычного текста, а это значит, что при прослушке соединения между сервером и локальной машиной можно увидеть и логин и пароль подключающегося пользователя. Лучше использовать безопасную альтернативу данного протокола — протокол SFTP. SFTP работает аналогично протоколу FTP, но при этом защищен протоколом SSH. А для подключения UNIX-машины к серверу Linux или FreeBSD еще лучше использовать протокол SCP. Этот протокол также использует SSH. ## Обеспечение безопасности Windows Server 2008/2012 Рассмотрим наиболее используемые способы защиты виртуальных серверов на основе Windows Server. **Уделите должное внимание настройке Firewall** Для виртуальных серверов Microsoft Windows, доступных через Интернет и не имеющих дополнительных шлюзов безопасности, брандмауэр Windows является единственным инструментом защиты подключений к серверу. Отключение неиспользуемых правил позволит сократить количество портов, прослушивающих внешний трафик, что снизит вероятность атаки на эти порты. Например, для работы стандартного веб-сервера достаточно открыть порты 80 и 443. Для открытых портов лучше ограничить источники подключений с помощью списка IP-адресов, c которых будет происходить подключение, через правила брандмауэра Windows: Ниже представлен список портов, доступ к которым лучше ограничить только кругом клиентов, внесенных в список белых IP: - 3389 — стандартный порт RDP; - 1433-1434 — стандартные порты SQL; - 53 — DNS; - 80, 443 — веб-сервер; - 990 — FTPS. **Переименуйте стандартную учетную запись администратора** Стандартная учетная запись Администратор или Administrator — лакомый кусок для злоумышленников, поскольку эта запись по умолчанию включена и имеет неограниченные права в системе. К этому аккаунту чаще всего пытаются подобрать пароль, так как это проще, чем искать имена пользователей. Рекомендуем сменить имя пользователя для стандартной учетной записи Администратор или Adminsitrator. Для этого выполните следующие шаги: 1. В оснастке "Редактор локальной политики безопасности" выберите "Локальные политики" – "Параметры безопасности" – "Учетные записи" — "Переименование учетной записи администратора". 2. Во вкладке "Параметр локальной безопасности" измените имя учетной записи администратора на никому неизвестное имя. **Создайте несколько административных аккаунтов** Если администрировать ваш сервер будут несколько человек, создайте для каждого из них отдельную учетную запись с административными правами. С помощью системных журналов это поможет выяснить кто и что делал с системой. **По возможности используйте для работы учетную запись с ограниченными правами** Для выполнения задач, для которых не нужны права администратора, лучше использовать отдельную учетную запись обычного пользователя. Если пользователь случайно или по незнанию запустит программу, содержащую троян или вирус, уровень уязвимости сервера останется на уровне полномочий этого пользователя, то есть с такой учетной записью вирус не сможет навредить системе. **Не предоставляйте общий доступ к директориям без ввода пароля. Разграничивайте права общего доступа** Не разрешайте подключение к общим папкам сервера с помощью анонимного доступа. Даже если файлы в общем доступе не имеют никакой ценности, они смогут стать лазейкой, через которую злоумышленники получат возможность дальнейшей атаки системы. Значительно проще установить ограниченные права пользователям, которым не требуется полный доступ, чем следить за тем, чтобы какой-либо аккаунт не был взломан и использован для атаки. **Включите автоотключение сессий при бездействии** Включите запрос ввода пароля пользователя при подключении к сессии после установленного времени ее бездействия. Это исключит возможность простого входа в случае, когда пользователь забыл закрыть RDP-клиент на чужом персональном компьютере. Для конфигурации этой опции вы можете воспользоваться оснасткой "Конфигурация узла сеансов удаленных рабочих столов": **Используйте Мастер настройки безопасности** Мастер настройки безопасности (SCW — Security Configuration Wizard) позволяет создавать файлы политики безопасности, которые затем можно перенести на различные серверы вашей инфраструктуры. Эти политики включают в себя правила использования сервисов, конфигурацию общих параметров системы и правил брандмауэра. **Корректно настройте групповые политики безопасности** Если вы используете групповые политики Active Directory, необходимо время от времени проводить их ревизию и повторную конфигурацию. Этот инструмент является одним из основных способов обеспечения безопасности инфраструктуры Windows. **Используйте локальные политики безопасности** Помимо использования групповых политик безопасности Active Directory следует также использовать локальные политики, так как они затрагивают не только права пользователей, выполняющих вход через доменную учетную запись, но и локальные аккаунты. **Безопасность служб удаленных рабочих столов (RDP)** Протокол RDP используется для удаленного подключения к системам Windows и на сегодняшний день считается достаточно безопасным. Тем не менее безопасность этого протокола можно повысить еще больше, при помощи следующих методов. **1. Блокировка RDP-подключений для учетных записей с пустым паролем** Для блокировки подключений к удаленным рабочим столам, пользователям, для которых не указан пароль, можно использовать оснастку "Локальная политика безопасности". В ней следует установить параметр: "Учетные записи: Разрешить использование пустых паролей только при консольном входе". **2. Смена стандартного порта Remote Desktop Protocol** Смена порта RDP, используемого по умолчанию, является хорошей защитой от исследования well-known портов. Для этого следует при помощи редактора реестра (regedit) изменить параметр HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp Port Number: Не забудьте создать разрешающее правило для этого порта в Брандмауэре Windows. После изменения порта необходимо перезагрузить сервер. Для подключения к серверу через порт, установленный вручную, в программе "Подключение к удаленному рабочему столу" после IP-адреса или доменного имени сервера следует прописать нужный порт: **Защита RDP-сессии с помощью SSL/TLS** Если вы подключаетесь к RDP, не используете VPN-подключение и вам нужен безопасный канал связи, то можно настроить SSL/TLS-туннелированные соединение. Опцию RDP через TLS можно включить через групповую политику безопасности сервера удаленных рабочих столов, где необходимо активировать опцию запроса определенного уровня безопасности для удаленных подключений. Рекомендуемое значение этой опции — SSL (TLS 1.0). ## Обеспечение безопасности в Linux Существует множество дискуссий о вопросах безопасности Linux и, конечно, огромное количество мнений относительно того, какой уровень безопасности сервера Linux является достаточным и как его обеспечить. Каждому администратору нужно решить самостоятельно, что именно необходимо сделать для защиты сервера. Рассмотрим наиболее распространенные меры безопасности, которые необходимо принять в серверной среде Linux. **Блокирование доступа с помощью брандмауэра** Самая простая мера защиты — это активация и настройка брандмауэра. В мире Linux существует большое количество брандмауэров: - UFW — достаточно простой брандмауэр, который отлично подходит для начинающих пользователей Linux; - IPTables — широко известный брандмауэр. Используется для управления входящим в состав ядра Linux брандмауэра NetFilter; - NFTables — новый брандмауэр, включенный в ядро Linux. NFTables использует более простой синтаксис, чем его предшественник IPTables, а также объединяет поддержку IPv4 и IPv6 в одном инструменте. **Безопасное удаленное подключение к системе с помощью SSH** Стандартный и достаточно безопасный способ подключения к виртуальному серверу Linux — это использование протокола SSH. Этот протокол позволяет выполнить сквозное шифрование, передать незашифрованный трафик по защищенному соединению, использовать X-forwarding (графический интерфейс пользователя по сетевому соединению) и многое другое. Этот протокол очень безопасный, так как подвергался обширным исследованиям и проверкам. Тем не менее, выбор конфигураций может как повысить, так и понизить безопасность сервиса. Связано это с выбором входа в систему: при помощи пароля или SSH-ключей. Вход с помощью пароля используется чаще всего, но он менее безопасен, так как позволяет злоумышленникам подбирать пароли до тех пор, пока не будет найдена правильная комбинация. При помощи современных инструментов его можно легко автоматизировать, а большая пропускная способность подключения к интернету позволяет сделать это в разумные сроки. Метод входа с SSH-ключами подразумевает создание надежной пары ключей для аутентификации: - Открытый ключ используется для идентификации пользователя и он может быть общедоступным. - Закрытый ключ используется для подтверждения соответствующего открытого ключа (авторизация) и должен храниться в защищенном месте. ## Пароль или SSH-ключи **Блокировка вредоносных IP-адресов с помощью fail2ban** Система fail2ban позволяет отслеживать журналы регистрации входа на сервер, что позволяет отметить адреса, с которых осуществлялось большое количество неудачных входов. Такие события позволяют предположить, что с этих адресов осуществляется попытка подобрать пароль. Обнаружив такие попытки, fail2ban создает правило брандмауэра, которое на время не разрешает подключение с этих адресов. **Внедрение IDS/IPS для обнаружения вторжений на сервер** Система обнаружения вторжений, также известная как IDS, заносит в каталог конфигурации сведения о файле в заведомо исправном состоянии. Затем она сравнивает записанные данные с целью обнаружить измененные файлы или конфигурации. Кроме того, такие системы анализируют сетевой трафик, ищут там сигнатуры атак и автоматически блокируют такие попытки. Для защиты одного хоста можно использовать систему Samhain. Эта система выпускается под open-source лицензией и использует несколько методов анализа, позволяющих полностью охватить все события, происходящие в системе: - создание при первом запуске базы данных сигнатур важных файлов и сравнение в дальнейшем этой базы с "живой" системой; - мониторинг и анализ записей в журналах; - контроль входа/выхода в систему; - мониторинг подключений к открытым сетевым портам; - контроль файлов с установленным SUID и скрытых процессов. Разумеется, мы рассмотрели только небольшое количество возможностей защиты виртуального сервера от атак и не рассматривали вопросы защиты веб-приложений и веб-серверов. Но они заслуживают отдельной статьи. https://serverspace.by/about/news/monitoring-novaya-usluga-v-serverspace-by.md Услуга отслеживает доступность серверов из крупнейших городов мира, предоставляя клиентам Serverspace.by возможность оперативно реагировать на любые сбои Представляем вам новую **услугу мониторинга**. Услуга в автоматическом режиме отслеживает доступность серверов (хостов) и доменов из Минска, Франкфурта-на-Майне, Амстердама, Москвы и Нью-Йорка, предоставляя клиентам Serverspace возможность оперативно выявлять и реагировать на любые сбои. Это поможет бизнесу сократить время простоя собственных служб и сервисов до минимума, предотвратив потерю клиентов и выручки, а начинающим проектам избежать оттока аудитории. Для запуска мониторинга необходимо указать проверяемый хост или домен, выбрать тип проверки (PING, TCP или HTTP), её частоту, определить точки проверки и назначить время ожидания отклика. Результаты мониторинга будут отображены во вкладке "История" и, при необходимости, могут отправляться в виде уведомлений на email пользователя. При этом в любой момент можно создавать, удалять, просматривать хосты и метрики, а также запускать внеочередную проверку. Сервис полностью **бесплатен в течение первых 30 дней**. https://serverspace.by/about/news/vstrechajte-obektnoe-xranilishhe-v-serverspace-by.md В Serverspace.by появилась новая услуга — объектное хранилище, позволяющая хранить в защищенном облаке данные любых типов и объемов У нас появилась новая услуга — [объектное хранилище](https://serverspace.by/services/storage.md), позволяющая хранить в защищенном облаке **данные любых типов и объемов**: от файлов систем видеонаблюдения, фотобанков и корпоративных архивов документов, до статических данных сайтов и резервных копий. Хранение и репликация данных, распределенные по аппаратным ресурсам и географическим зонам, делают объектное хранилище Serverspace самым надежным местом для размещения файлов. А неограниченные масштабируемость и емкость позволят бизнесу абсолютно любого размера оперативно развертывать публичные и приватные системы хранения данных. При этом пользователи платят только за объем данных, хранящихся в облаке, и исходящий трафик, который учитывается при скачивании файлов. Чем больше исходящий трафик, и чем больше данных хранится на сервере, тем меньше вы платите за 1 ГБ. А при пополнении баланса аккаунта от 150 руб. и больше, пользователям вернется от 10% от суммы пополнения. https://serverspace.by/about/news/startovala-partnerskaya-programma.md Мы запустили реферальную партнерскую программу! Теперь вы можете привлекать клиентов на Serverspace.by и получать за это вознаграждение Друзья, мы **запустили реферальную партнерскую программу**! Теперь вы можете привлекать клиентов в Serverspace и получать за это вознаграждение. **Как работает программа?** В разделе "Партнерам" в панели управления находится персональная реферальная ссылка. Достаточно разместить ее на своем сайте, форуме, в блоге, соцсетях или отправить лично, и если пользователь, перешедший по ссылке, зарегистрируется на нашем сервисе, его первый платеж будет увеличен на 20%, а вы начнете получать по 10% процентов от всех его платежей в течение первого года. Со второго года и далее вознаграждение составит 5% от каждого платежа. https://serverspace.by/about/blog/preimushhestva-oblakov-dlya-razrabotchikov.md Инструменты и технологии продолжают развиваться, что позволяет программистам создавать еще более современное и удобное программное обеспечение. И решать многие задачи им помогают облачные сервисы. Инструменты и технологии продолжают развиваться, что позволяет программистам создавать еще более современное и удобное программное обеспечение. Однако при этом меняются и стандарты их работы: необходимо сокращать время вывода продуктов на рынок, а также очень быстро устранять ошибки в коде. И решать эти непростые задачи им помогают облачные сервисы. Предлагаем рассмотреть преимущества облаков перед традиционными инструментами разработки более подробно. ## 1. Масштабируемость Одним из самых больших преимуществ облачных систем является возможность масштабирования. Если сравнивать с традиционным хостингом вы должны выбрать, купить, установить и настроить оборудование на котором будет работать каждый узел вашей системы — веб-серверы, серверы приложений, серверы баз данных, коммутаторы и маршрутизаторы для доступа в интернет. Для приложений высокой доступности также потребуются балансировщики нагрузки и кластеры серверов, для которых нужны дорогостоящие системы SAN (сети хранения информации). Все это требует тщательного планирования и огромных расходов, которые могут замедлить процесс разработки программных продуктов. С появлением облачных систем стало возможным быстро и легко масштабировать любую часть инфраструктуры. Для веб-серверов и серверов приложений можно увеличить мощность оборудования за счет добавления процессорных ядер или даже новых серверов. Базы данных также можно легко масштабировать за счет увеличения объема оперативной памяти или за счет добавления новых серверов. Наконец, с появлением микросервисов вы можете разработать веб-приложение, разбитое на модули. Эти модули могут находиться на разных серверах, и если нужно увеличить быстродействие какого-то модуля, достаточно увеличить мощность сервера, на котором этот модуль размещен. ## 2. Стоимость Следующим ключевым преимуществом облаков является экономия затрат, а также возможность начинать с небольшой и недорогой инфраструктуры, а затем увеличивать ее по мере роста нагрузки. Эти экономические выгоды включают в себя следующее: **Отсутствие предварительных инвестиций** Собственные центры обработки данных (ЦОД) требуют больших первоначальных инвестиций. Также потребуется потратить много времени и усилий на анализ текущих и будущих требований к оборудованию. По мере увеличения количества клиентов и загрузки серверов потребуются дополнительные изменения в инфраструктуре, для которой понадобится новое программное и аппаратное обеспечение. **Плата только за используемые ресурсы** Большинство провайдеров облачных счетов выставляют счета только за те ресурсы, которые вы используете. При необходимости можно увеличивать или уменьшать количество серверов, объема памяти, ядер процессора и других параметров, все это позволяет очень гибко управлять расходами. ## 3. Резервирование и аварийное восстановление Быстрое выделение ресурсов – это преимущество, от которого выигрывают все команды разработчиков. Программистам часто нужны различные элементы инфраструктуры – от сред разработки и тестирования до новых серверов приложений до операционных систем, с которыми можно экспериментировать. Без облачных технологий такая работа возлагается на службу технической поддержки, и может занимать несколько дней или даже недель. Используя облако, разработчики получают возможность быстро создавать новые среды, от веб-сайтов до виртуальных серверов и баз данных. Кроме того, облачные технологии предлагают практически бесконечный список услуг, который постоянно расширяется. Такой подход позволяет командам разработчиков пробовать и использовать самые передовые технологии. Кроме того, когда разработчикам больше не нужные какие-то ресурсы, они могут быстро вывести их из эксплуатации и больше не платить за них. ## 4. Различные модели облачных технологий Использование облаков нельзя сводить к традиционным методам. Эти технологии представляют своим заказчикам множество различных вариантов в соответствии с необходимыми уникальными потребностями. Две основные модели услуг в облаке – это инфраструктура как услуга (IaaS) и платформа как услуга (PaaS). Обе эти модели имеют свои достоинства, и достоинства каждой модели можно совмещать при необходимости. **IaaS** Модель IaaS означает предоставление инфраструктуры в аренду, с доступом к ней через выделенные каналы связи или через Интернет. К элементам инфраструктуры относятся виртуальные серверы и средства их сетевого взаимодействия, системы хранения данных и системы безопасности. Заказчики IaaS занимаются самостоятельным администрированием этой инфраструктуры, приобретением и установкой необходимого программного обеспечения. Операционные системы для виртуальных серверов может предоставить провайдер услуг IaaS. **PaaS** Модель PaaS дополняет модель IaaS несколькими услугами. Эти услуги включают в себя обеспечение работоспособности операционных систем, веб-серверов, серверов приложений, почтовых серверов и серверов баз данных и сред разработки. Заказчик в таком случае занимается только разработкой и развертыванием приложений. Все необходимые компоненты могут быть легко масштабированы в зависимости от потребности приложения заказчика. ## 5. Географический охват Еще одним преимуществом облачных технологий является тот факт, что облака охватывают сразу несколько регионов, стран или даже всю планету. Вместо того, чтобы полагаться на одну площадку для размещения вашего приложения или тратить ресурсы на строительство дополнительных площадок, использование облачной среды позволяет размещать ваше приложение там, где оно будет географически ближе к вашим заказчикам. Благодаря управлению трафиком и репликацией облачные приложения предоставят клиентам лучшую производительность независимо от того, где эти клиенты находятся. Сети доставки контента (CDN) также можно использовать для увеличения географического охвата, даже если приложение размещено в одном месте. CDN – это большое количество серверов, находящихся в различных городах или странах. Эти серверы отвечают на запросы пользователей веб-контента. CDN используются для быстрого доступа к веб-приложениям, аудио, видео контенту, изображениям и другим файлам. Кроме того, CDN позволяет снизить количество запросов, направленных непосредственно к веб-приложению, позволяя лучше масштабировать это приложение. ## 6. Простота развертывания Облака предлагают уникальные функции для управления развертыванием приложений. При помощи интеграции приложения в систему управления версиями, разработчики могут настраивать автоматизированные сборки приложений, которые будут включать в себя развертывание кода, баз данных, автоматическую настройку серверов и автоматическое тестирование приложений. Слоты развертывания (или промежуточные слоты) также дают возможность не выполнять развертывание в случае простаивания в производственной среде. Слот развертывания – это отдельное веб-приложение, размещенное по определенному URL-адресу. Вы можете выполнить развертывание в такой слот и протестировать приложение. Если приложение благополучно пройдет проверку, вы просто меняете рабочий и промежуточный слот, для того чтобы сделать приложение доступным для ваших клиентов. Еще одна интересная особенность заключается в том, что можно направить небольшой процент производственного трафика в промежуточный слот. Это позволит протестировать новые функции приложения, еще не доступного для клиентов, на реальных данных. ## 7. Разработка, эксплуатация и мониторинг (devops) DevOps (акроним от англ. development и operations) – это методология, направленная на активное взаимодействие разработчиков приложений и службой технической поддержки. В современном мире гибкой разработки необходимо быстро создавать приложения, развертывать их и следить чтобы у пользователей не было проблем с приложениями. Когда у пользователей возникает проблема, необходимо сначала получить уведомление о проблеме, иметь инструменты для быстрого поиска причины этой проблемы и как можно скорее опубликовать исправление, устраняющее проблему. Технологии DevOps предлагают метрики производительности приложений, журнал ошибок и мониторинг в одном инструменте. Это позволяет разработчикам иметь представление обо всех аспектах работы приложения и позволяет им выявлять проблемы, прежде чем пользователи с ними столкнуть. Например, проблемы с производительностью можно определить вплоть до каждого оператора SQL-запроса. ## Заключение Облачные технологии повзрослели за последние несколько лет, и количество их внедрений продолжают расти. Исследование компании RightScale показало, что 82% респондентов в 2018 году использовали облачные технологии, и эти цифры постоянно растут. В 2017 году таких компаний было 80%. https://serverspace.by/about/blog/pochemu-voznikayut-oshibki-ssl-soedineniya-i-kak-ix-ispravit.md Зачастую после установки SSL-сертификатов многие пользователи сталкиваются с ошибками, вроде ERR_SSL_PROTOCOL_ERROR, которые препятствуют корректной работе защищенного протокола HTTPS. Предлагаем разобраться со способами устранения подобных ошибок Зачастую после установки [SSL-сертификатов](https://serverspace.by/services/ssl/) многие пользователи сталкиваются с ошибками, которые препятствуют корректной работе защищенного протокола HTTPS. Предлагаем разобраться со способами устранения подобных ошибок. ## Что такое SSL? SSL (Secure Socket Layer) — это интернет-протокол для создания зашифрованного соединения между пользователем и сервером, который гарантирует безопасную передачу данных. Когда пользователь заходит на сайт, браузер запрашивает у сервера информацию о наличии сертификата. Если сертификат установлен, сервер отвечает положительно и отправляет копию SSL-сертификата браузеру. Затем браузер проверяет сертификат, название которого должно совпадать с именем сайта, срок действия сертификата и наличие корневого сертификата, выданного центром сертификации. ## Причины возникновения ошибок SSL-соединения Когда сертификат работает корректно, адресная строка браузера выглядит примерно так: Но при наличии ошибок она выглядит несколько иначе: Существует множество причин возникновения таких ошибок. К числу основных можно отнести: - Некорректную дату и время на устройстве (компьютер, смартфон, планшет и т.д.); - Ненадежный SSL-сертификат; - Брандмауэр или антивирус, блокирующие сайт; - Включенный экспериментальный интернет-протокол QUIC; - Отсутствие обновлений операционной системы; - Использование SSL-сертификата устаревшей версии 3.0; - Появление ошибки "Invalid CSR" при генерации сертификата из панели управления облачного провайдера. Давайте рассмотрим каждую из них подробнее. ## Проблемы с датой и временем Если на устройстве установлены некорректные дата и время, ошибка SSL-соединения неизбежна, ведь при проверке сертификата происходит проверка срока его действия. Современные браузеры умеют определять такую ошибку самостоятельно и выводят сообщение о неправильно установленной дате или времени. Для исправления этой ошибки достаточно установить на устройстве актуальное время. После этого необходимо перезагрузить страницу или браузер. ## Ненадежный SSL-сертификат Иногда при переходе на сайт, защищенный протоколом HTTPS, появляется ошибка "SSL-сертификат сайта не заслуживает доверия". Одной из причин появления такой ошибки, как и в предыдущем случае, может стать неправильное время. Однако есть и вторая причина — браузеру не удается проверить цепочку доверия сертификата, потому что не хватает корневого сертификата. Для избавления от такой ошибки необходимо скачать специальный пакет GeoTrust Primary Certification Authority, содержащий корневые сертификаты. После скачивания переходим к установке. Для этого: - Нажимаем сочетание клавиш Win+R и вводим команду certmgr.msc, жмем "Ок". В Windows откроется центр сертификатов. - Раскрываем список "Доверенные корневые центры сертификации" слева, выбираем папку "Сертификаты", кликаем по ней правой кнопкой мышки и выбираем "Все задачи — импорт". - Запустится мастер импорта сертификатов. Жмем "Далее". - Нажимаем кнопку "Обзор" и указываем загруженный ранее сертификат. Нажимаем "Далее": - В следующем диалоговом окне указываем, что сертификаты необходимо поместить в доверенные корневые центры сертификации, и нажимаем "Далее". Импорт должен успешно завершиться. После вышеперечисленных действий можно перезагрузить устройство и проверить отображение сайта в браузере. ## Брандмауэр или антивирус, блокирующие сайт Некоторые сайты блокируются брандмауэром Windows. Для проверки можно отключить брандмауэр и попробовать зайти на нужный сайт. Если SSL-сертификат начал работать корректно, значит дело в брандмауэре. В браузере Internet Explorer вы можете внести некорректно работающий сайт в список надежных и проблема исчезнет. Однако таким образом вы снизите безопасность своего устройства, так как содержимое сайта может быть небезопасным, а контроль сайта теперь отключен. Также SSL может блокировать антивирусная программа. Попробуйте отключить в антивирусе проверку протоколов SSL и HTTPS и зайти на сайт. При необходимости добавьте сайт в список исключений антивируса. ## Включенный экспериментальный протокол QUIC QUIC — это новый экспериментальный протокол, который нужен для быстрого подключения к интернету. Основная задача протокола QUIC состоит в поддержке нескольких соединений. Вы можете отключить этот протокол в конфигурации вашего браузера. Показываем как отключить QUIC на примере браузера Google Chrome: - Откройте браузер и введите команду chrome://flags/#enable-quic; - В появившемся окне будет выделен параметр: Experimental QUIC protocol (Экспериментальный протокол QUIC). Под названием этого параметра вы увидите выпадающее меню, в котором нужно выбрать опцию: Disable. - После этого просто перезапустите браузер. Этот способ работает и в Windows и в Mac OS. ## Отсутствие обновлений операционной системы Проблемы с SSL-сертификатами могут возникать и из-за того, что на вашей операционной системе давно не устанавливались обновлений. Особенно это касается устаревших версий Windows (7, Vista, XP и более ранние). Установите последние обновления и проверьте работу SSL. ## Использование SSL-сертификата версии 3.0 Некоторые сайты используют устаревший SSL-протокол версии 3.0, который не поддерживают браузеры. По крайней мере, по умолчанию. Чтобы браузер поддерживал устаревший SSL необходимо сделать следующее (на примере браузера Google Chrome): - Откройте браузер и перейдите в раздел "Настройки". - Прокрутите страницу настроек вниз и нажмите "Дополнительные". - В разделе "Система" найдите параметр "Настройки прокси-сервера" и кликните на него. - Откроется окно. Перейдите на вкладку "Дополнительно". - В этой вкладке вы увидите чекбокс "SSL 3.0". - Поставьте галочку в чекбоксе, нажмите кнопку "Ок" и перезагрузите браузер. ## Ошибки "Invalid CSR" при генерации сертификата из панели управления облачного провайдера В процессе активации сертификата можно столкнуться с ошибкой "Invalid CSR". Такая ошибка возникает по следующим причинам: - Неправильное имя FQDN (полное имя домена) в качестве Common Name (в некоторых панелях управления это поле может также называться Host Name или Domain Name). В этом поле должно быть указано полное доменное имя вида domain.com или subdomain.domain.com (для субдоменов). Имя домена указывается без https://. В качестве данного значения нельзя использовать интранет-имена (text.local). В запросе для wildcard-сертификатов доменное имя необходимо указывать как *.domain.com. - В CSR или пароле есть не латинские буквы и цифры. В CSR поддерживаются только латинские буквы и цифры – спецсимволы использовать запрещено. Это правило распространяется и на пароли для пары CSR/RSA: они не должны содержать спецсимволов. - Неверно указан код страны. Код страны должен быть двухбуквенным ISO 3166-1 кодом (к примеру, RU, US и т.д.). Он указывается в виде двух заглавных букв. - В управляющей строке не хватает символов. CSR-запрос должен начинаться с управляющей строки ——BEGIN CERTIFICATE REQUEST—— и заканчиваться управляющей строкой ——END CERTIFICATE REQUEST——. С каждой стороны этих строк должно быть по 5 дефисов. - В конце или начале строки CSR есть пробелы. Пробелы на концах строк в CSR не допускаются. - Длина ключа меньше 2048 бит. Длина ключа должна быть не менее 2048 бит. - В CRS-коде для сертификата для одного доменного имени есть SAN-имя. В CSR-коде для сертификата, предназначенного защитить одно доменное имя, не должно быть SAN (Subject Alternative Names). SAN-имена указываются для мультидоменных (UCC) сертификатов. - При перевыпуске или продлении сертификата изменилось поле Common Name. Это поле не должно меняться. https://serverspace.by/about/blog/nastrojka-vps-vds-servera-s-nulya.md В этой статье мы поэтапно расскажем о том, как создать виртуальный сервер (VPS/VDS) в панели управления Serverspace.by и о том, как подключиться к созданному серверу В этой статье мы поэтапно расскажем о том, как создать виртуальный сервер (VPS/VDS) в панели управления Serverspace.by и о том, как подключиться к созданному серверу. Компания Serverspace предоставляет услуги Облачных серверов в аренду — ознакомьтесь с нашими тарифами на VPS на [Windows](https://serverspace.by/services/vps-server/windows/) и [Linux](https://serverspace.by/services/vps-server/linux/). Итак, начнем. ## Создание виртуального сервера 1. [Авторизуйтесь](https://auth.serverspace.by/) в панели управления Serverspace.by, перейдите в раздел "Серверы" и нажмите кнопку "Создать сервер". [https://auth.serverspace.by/](https://auth.serverspace.by/) 2. Затем выберите шаблон виртуального сервера — операционную систему (ОС), которая будет установлена на сервер. Для установки доступны следующие ОС: - Windows Server 2008 R2 (RU/ENG); - Windows Server 2012 R2 (RU/ENG); - Windows Server 2016 R2 (RU/ENG); - FreeBSD 10, 11; - Debian 8.11, 9.5; - Ubuntu 16.4, 18.4; - CentOS 6.10, 7.5; - PfSense 2.4; - VyOS 11.8. Стоимость лицензии Windows Server при выборе соответствующей ОС уже включена в абонентскую плату, независимо от того, имеется у вас домен в виртуальной инфраструктуре или нет. Если же вы планируете установить на VPS/VDS другую ОС, просто создайте ее ISO-образ и отправьте его нашей техподдержке. [/services/vps-server/](https://serverspace.by/services/vps-server.md) 3. Далее необходимо выбрать технические параметры виртуального сервера. Вы можете создать собственную конфигурацию, либо выбрать готовую: Параметры готовых конфигураций: | | Стандарт | Стандарт+ | Профи | | --- | --- | --- | --- | | Количество ядер | 1 | 4 | 10 | | Оперативная память | 512 МБ | 11 ГБ | 26 ГБ | | Объем хранилища | 10 ГБ | 250 ГБ | 1000 ГБ | | Ширина интернет-канала (Мбит/сек) | 10 | 10 | 100 | При этом в дальнейшем вы сможете менять конфигурацию прямо в панели управления. После выбора ОС необходимо выбрать [центр обработки данных (ЦОД)](https://serverspace.by/infrastructure.md), в котором будет размещаться ваш виртуальный сервер. Наши ЦОД-ы расположены в [Беларуси](https://serverspace.by/infrastructure/datacenter-minsk.md) (beCloud), [России](https://serverspace.by/infrastructure/datacenter-moskva.md) (DataSpace) и в [Нидерландах](https://serverspace.by/infrastructure/datacenter-amsterdam.md) (AM2), и для каждой страны доступна своя конфигурация: | | Беларусь | Россия | Нидерланды | | --- | --- | --- | --- | | Сервер | Cisco B200-M4 (2.2 ГГц) | Cisco UCS B480-M5 (3 ГГц Skylake) | Cisco UCS B480-M5 (3 ГГцSkylake) | | Количество ядер | от 1 до 24 | от 1 до 32 | от 1 до 32 | | Оперативная память | от 512 МБ до 130 ГБ | от 512 МБ до 320 ГБ | от 512 МБ до 160 ГБ | | Объем хранилища | от 10 ГБ до 1000 ГБ | от 10 ГБ до 1000 ГБ | от 10 ГБ до 1000 ГБ | | Ширина интернет-канала (Мбит/сек) | от 10 до 1000 | от 10 до 100 | от 10 до 100 | 4. За дополнительную плату вы можете подключить автоматическое создание резервных копий (бэкапов) виртуального сервера, которые создаются раз в сутки. Для этого необходимо выбрать период хранения бэкапов — 7, 14, 21 или 28 дней. 5. Если на этапе подбора операционной системы вы выбрали ОС Windows Server и ее необходимо включить в существующий домен Microsoft Active Directory, просто поставьте галочку в чекбоксе "выполнить системную подготовку Windows". При этом время создания сервера увеличится на 15-20 минут, так как в процессе создания будет запущена специальная утилита sysprep. Если же в качестве операционной системы выбрана FreeBSD, Debian, Ubuntu или CentOS, необходимо дополнительно указать способ подключения — через пару логин/пароль или по SSH. Логин и пароль генерируются автоматически и появляются на экране после создания сервера. SSH-ключ можно сгенерировать при помощи программы [ssh-keygen](https://serverspace.by/support/help/generaciya-ssh-kluchey/) или прикрепить уже сгенерированный ключ. 6. Затем необходимо указать количество серверов и присвоить им имена. За один раз можно создать до 5 серверов. При создании сервера сетевому интерфейсу будет автоматически присвоен один бесплатный IPv4-адрес. В дальнейшем вы сможете подключить дополнительные IPv4- и IPv6-адреса за отдельную плату. ## Подключение к виртуальному серверу После создания виртуального сервера к нему можно подключиться через веб-консоль. Для подключения потребуется логин и пароль администратора, указанные во вкладке "Состояние". Кнопка перехода в веб-консоль расположена в правом верхнем углу. Если вам неудобно пользоваться веб-консолью, вы можете подключаться к серверу любым другим удобным способом. Подключение к операционным системам происходит по разным протоколам: для FreeBSD, Debian, Ubuntu и CentOS используется протокол SSH, а для подключения к [серверам Windows](https://serverspace.by/services/vps-server/windows/) — протокол RDP. https://serverspace.by/about/blog/nedostatki-samopodpisannih-ssl-sertificatov.md SSL (Secure Socket Layer) — это технология, обеспечивающая шифрование соединения между веб-сервером (сайтом) и браузером [SSL-сертификаты](https://serverspace.by/services/ssl/) — самый распространенный тип сертификатов в Интернете. Чаще всего их устанавливают на сайтах, которые собирают персональные данные пользователей (email, пароли, данные банковских карт и др.). Чтобы эти данные не перехватили, соединение защищается специальным протоколом HTTPS, шифрующим всю информацию, которой обмениваются посетитель и сайт. Для работы этого протокола как раз и нужны SSL-сертификаты, приставка SSL (Secure Socket Layer) в названии которых — это технология, обеспечивающая шифрование соединения между веб-сервером (сайтом) и браузером. Когда сайт работает по защищенному протоколу HTTPS браузер сообщает об этом пользователю в адресной строке. Например, в браузере Google Chrome отображается замок зеленого цвета и надпись Secure (безопасный): А при желании пользователь может посмотреть сведения о сертификате, кликнув на замок правой кнопкой мышки: В сертификате хранится следующая информация: - полное (уникальное) имя владельца сертификата; - открытый ключ владельца сертификата; - дата окончания сертификата; - полное (уникальное) название центра сертификации; - цифровая подпись центра сертификации. Цифровая подпись, заверенная центром сертификации, является доказательством подлинности владельца домена и обуславливает его право законно использовать секретный ключ. Сами же SSL-сертификаты делятся на несколько типов. В самых простых проверяется только домен, в самых дорогих — производится целый ряд проверок, а название организации отображается в адресной строке рядом с доменом. ## Доверенные и недоверенные сертификаты Выпуском SSL-сертификатов занимаются центры сертификации или, как их еще называют, удостоверяющие центы (Certification Authority, CA). Как правило, это авторитетные IT-организации, пользующиеся известным открытым криптографическим ключом: - Sectigo/Comodo; - GeoTrust; - RapidSSL; - Thawte и другие. Сертификаты этих организаций называют доверенными. К недоверенным же сертификатам относятся: - самоподписанные сертификаты, которые владельцы сайтов выдают и подписывают сами себе; - сертификаты, подписанные недоверенными центрами; - цифровые подписи, выданные центрами, утратившими доверие. ## Почему не стоит пользоваться самоподписанными сертификатами? Когда к сайту, защищенному самоподписанным сертификатом, подключается пользователь, он видит предупреждение о том, что сертификат не является безопасным: Большинство посетителей предпочтет не переходить на такой сайт, а его владелец может потерять значительную аудиторию. Поэтому на публичных сайтах и тем более в онлайн-магазинах ни в коем случае нельзя использовать самоподписанные SSL-сертификаты. Вторая угроза самоподписанных сертификатов — это атаки. Дело в том, что такими сертификатами любят пользоваться хакеры, совершая фишинговые атаки. При фишинге пользователей перенаправляют на сайт с похожим адресом (URL). При этом в браузере обязательно появится предупреждение про небезопасный сертификат (точно такое же, как при входе на реальный сайт с самоподписанным сертификатом). В итоге у самоподписанного сертификата можно разглядеть только одно достоинство — бесплатность. Но и этому найдется альтернатива в виде SSL-сертификатов проверенных центров сертификации, которые тоже выпускаются бесплатно. Например, сертификаты Let's Encrypt. Однако не стоит забывать и про недостатки Let's Encrypt: - **Ограниченный срок действия** Бесплатные сертификаты Let’s Encrypt рассчитаны на 90 дней. Для автоматического перевыпуска необходимо настроить планировщик, который будет запускать скрипт перевыпуска или принимать настройки центра сертификации, которые смогут вносить изменения в конфигурацию ваших серверов. - **Отсутствие технической поддержки** Вам остается самостоятельно изучать документацию по Let’s Encrypt на английском языке на официальном сайте или искать ее на других специализированных площадках. - **Нет расширенных проверок** При выпуске сертификата проверяется только домен, проверка организации не производится. - **Проблемы с поддержкой в браузерах** При использовании сертификатов Let’s Encrypt некоторые браузеры выводят сообщения о том, что они не доверяют этому сертификату (при использовании устаревших браузеров и операционных систем или по другой причине). Поэтому рекомендуем вам обратить внимание на платные сертификаты проверенных брендов. Например, облачные провайдеры VPS/VDS или IaaS часто предлагают приобрести надежные SSL-сертификаты вместе с услугой хостинга, причем стоимость такого сертификата будет намного ниже, чем при его приобретении непосредственно у центров сертификации. https://serverspace.by/about/blog/kak-proishodit-migraciya-v-oblako.md В этой статье мы рассмотрим процесс миграции в облако на примере услуги IaaS Облако — это сервис, предоставляющий доступ к определенному набору ресурсов, которые можно дистанционно задействовать под конкретные задачи. Различают следующие виды облачных услуг: IaaS (Infrastructure as a Service) — инфраструктура как услуга, PaaS (Platform as a Service) — платформа как услуга, и SaaS (Software as a Service) — программное обеспечение как услуга. Большинство крупных компаний уже пользуются ими для своих нужд, постепенно перенося бизнес-процессы в облака. Давайте рассмотрим процесс миграции в облако на примере услуги IaaS. ## Планирование миграции Первое, что необходимо сделать после принятия решения о миграции — оценить мощность и инфраструктуру, которые вам потребуются. Для этого составьте список сервисов, которые необходимо перенести, и узнайте какие вычислительные мощности понадобятся для работы каждого из них. Мы советуем оценивать мощности с небольшим запасом. Затем определите каким образом вы будете переносить данные и конвертировать виртуальные машины (если они есть) в формат гипервизора в облаке. Далее, в зависимости от средств миграции, запланируйте удобное время перемещения сервисов. Учитывайте, что проще всего переносить те сервисы, которые допускают остановку на несколько часов. Тяжелее, если на время миграции необходима полная доступность сервиса. Важен и порядок миграции. Бывает так, что один из сервисов нужен для работы другой службы. Поэтому предварительно составьте схемы зависимостей сервисов между собой. Также при переносе сервисов с железных платформ в облако часто требуется делать апгрейд операционных систем исходных серверов, и на это тоже нужно время. Учитывайте это при планировании. И не забывайте, что есть системы, которые не стоит переносить в облако: - Программы, для работы которых требуется физическое оборудование. - Ключи электронной защиты, т.к. оборудование, используемое для защиты от несанкционированного копирования, невозможно виртуализовать. Как вариант, можно просто перейти на электронный ключ. - Системы, которым требуется очень высокая производительность. - Приложения и устройства, которые грузят оперативную память, жесткий диск, процессор и видеокарту. - Программное обеспечение с лицензионными ограничениями на виртуализацию. - Некоторые продукты, в лицензионных соглашениях которых сказано, что их запрещено использовать в виртуальной среде. - Важные для организации сервисы без предварительного тестирования. - IT-системы, требующие повышенной безопасности. - Виртуализацию любой системы, содержащую конфиденциальные данные, которые могут представлять угрозу IT-безопасности. ## Виды миграции При переносе IT-инфраструктуры в облако, приложения, сервисы и данные можно переносить частично, службу за службой, или полностью. Поэтому выделяют частичную и полную миграцию. **Частичная миграция** Частичную миграцию обычно выбирают крупные компании с большим количеством сервисов и разветвленной инфраструктурой. Сначала переносятся некритичные сервисы (чаще всего это тестовые среды и виртуальные машины пользователей), а после них и все остальное. **Полная миграция** Полная миграция — это перенос всей инфраструктуры за несколько дней. Такой способ обычно выбирает малый и средний бизнес, IT-структура которого достаточно проста. ## Миграция физических серверов в виртуальные Физические серверы можно превратить в виртуальные при помощи различных специализированных инструментов: - команды dd в Linux; - программы Clonezilla, которая загружается с CD или USB; - программа disk2vhd в Windows; - программы VMware Converter Standalone или StarWind V2V Converter; - специализированных коммерческих продуктов. ## Миграция из одного гипервизора в другой Для конвертирования виртуальной машины из формата Hyper-V в формат VMware можно воспользоваться программой VMware vCenter Converter Standalone, но ее можно применять когда есть канал связи между гипервизором в облаке и конвертируемой виртуальной машиной. Если такого канала нет, можно использовать сценарий PowerShell [HypervOVAConverter](https://github.com/ihumster/HypervOVAConverter). Чтобы перенести виртуальную машину из VMware Workstation, VMware Fusion или из имеющейся виртуальной инфраструктуры на основе VMware vShere или ESXi, можно воспользоваться функцией экспорта виртуальной машины в OVF-файл. OVF (Open Virtualization Format) — это стандарт для хранения и распространения виртуальных машин. А формат OVA является TAR-архивом каталога с пакетом OVF. Требования к OVF/OVA-файлам: - Тип дисков SCSI. - Hardware-version не выше 11. Перед экспортом необходимо убедиться, что виртуальная машина не зашифрована и выключена. При миграции из Proxmox можно использовать утилиту quemu-img для получения образа диска в формате VMDK. Эта же утилита поможет при переходе с гипервизоров KVM или Xen. ## Миграция из одного облака в другое Чтобы перенести виртуальную машину из Amazon EC2, необходимо создать корзину (bucket) Amazon S3 для хранения экспортируемой виртуальной машины и предоставить разрешение VM Import/Export на доступ к корзине. Затем можно воспользоваться командой ec2-create-instance-export-task из комплекта утилит Amazon EC2 CLI. Чтобы перенести виртуальную машину из Microsoft Azure необходимо установить Azure PowerShell на саму виртуальную машину или на другую машину с операционной системой Windows. Самый простой способ выгрузки виртуальной машины из облака Microsoft Azure — использование команды Save-AzureVhd в Asure PowerShell. После сохранения VHD-файла его требуется преобразовать в формат VMDK. Для этого можно воспользоваться инструментом StarWind V2V Converter. Файлы с виртуальными машинами необходимо перенести в облако безопасным способом: с помощью VPN-канала или выделенных линий к дата-центру провайдера облачных услуг. Если провайдер находится недалеко, а необходимо достаточно быстро отправить очень много данных, можно передать провайдеру жесткие диски с образами или данными лично. Описанные способы миграции подразумевают выключение виртуальных машин и перенос образа с виртуальной машиной в облако провайдера IaaS-услуги. ## Онлайн-миграция Если работающий сервис невозможно остановить, можно воспользоваться онлайн-миграцией. Многие переносимые в облако приложения имеют собственные средства репликации. Например, отличная репликация есть у серверов баз данных. Также сравнительно просто можно перенести почтовый сервер Microsoft Exchange, но его перенос имеет свои особенности. Перенос Exchange в облако происходит следующим образом: - устанавливается новый экземпляр в облаке; - переносятся ящики; - переносятся общие папки (если они есть); - переключаются коннекторы; - удаляется старый сервер. Если общая адресная книга распространяется через общие папки, необходимо отключить распространение общих папок. В случае, когда база общих папок ассоциирована с какой-либо базой данных почтовых ящиков, необходимо перенастроить ее на другую базу общих папок. После этих действий при помощи командлета Get-PublicFolderStatistics необходимо проверить содержимое общих папок на обоих серверах: - Get-PublicFolderStatistics -Server OLD_SERVER; - Get-PublicFolderStatistics -Server NEW_SERVER; - OLD_SERVER — это сервер, который мы переносим в облако; - NEW_SERVER — это новый облачный сервер. Если на сервере OLD_SERVER содержатся реплики, их необходимо перенести специальным скриптом: C:Program FilesMicrosoftExchange ServerV14>.ScriptsMoveAllReplicas.ps1 -Server OLD_SERVER -NewServer NEW_SERVER После переноса реплик необходимо перенести с сервера OLD_SERVER базу общих папок. Серверы, у которых нет встроенных средств репликации, можно перенести целиком при помощи утилиты VMware vCenter Converter Standalone. На момент написания статьи без остановки самого сервера можно переносить следующие виртуальные и физические машины: - физический сервер Windows; - физический сервер Linux; - виртуальные машины на сервере виртуальных машин VMware Sphere/ESXi; - виртуальные машины на сервере виртуальных машин Hyper-V Server; - виртуальные машины на сервере виртуальных машин Red Hat KVM или RHEL XEN. Если ваша виртуальная инфраструктура находится под управлением VMware vSphere и провайдер облачных услуг также использует продукты VMware и поддерживает vCloud Connector, то миграцию в облако можно осуществить при помощи vCloud Connector. При этом на стороне клиента устанавливаются два компонента этого продукта: vCloud Connector Server и vCloud Connector Node. vCloud Connector Server — это сервер управления, который координирует активность vCloud Connector и контролирует узлы vCloud Connector Nodes. Как правило, требуется наличие одного vCloud Connector Server для связки нескольких облачных инфраструктур. vCloud Connector Node — это инструмент, с помощью которого выполняется обработка перенаправляемого потока данных из одного облака в другое. Кроме того, с помощью него происходит подключение к конечной инфраструктуре. Поэтому данный инструмент обязательно устанавливается и на стороне клиента и на стороне провайдера. Настройка vCloud Connector на стороне клиента требует регистрации vCloud Connector Node в облаке провайдера, поскольку без такой связки будет невозможна дальнейшая конфигурация. После регистрации необходимо перейти в панель управления облаками, в которой можно подключить зарегистрированную виртуальную инфраструктуру и выполнить миграцию. Бесплатный инструмент VMware vCloud Extender, который входит в состав vCloud Director 9.0, упрощает задачи миграции между разными облачными системами. При использовании VMware vCloud Extender на стороне клиента устанавливается три компонента: - Extender Connector appliance — соединяется с Extender Manager на стороне провайдера IaaS. - Replicator — реплицирует информацию о состоянии виртуальных машин на vCloud Director. - NSX Edge Appliance — компонент, который требуется для онлайн-миграции виртуальных машин. Предоставляет VPN-соединение между клиентом и провайдером. https://serverspace.by/about/blog/elementi-obespecheniya-bezopasnosti-v-oblakah.md К 2020 году случаи утечки информации из публичных облаков увеличатся до 80%. Поэтому компаниям необходимо задуматься над усилением безопасности уже сейчас По результатам отчета американской исследовательской компании Gartner, к 2020 году из-за неправильных конфигураций и не оптимизированных бизнес-процессов случаи утечки информации из публичных облаков увеличатся до 80%. Поэтому компаниям, пользующимся облачными услугами, необходимо задуматься над усилением безопасности уже сейчас. В этой статье мы подробно рассмотрим пять самых популярных способов защиты данных в облаке: шифрование, мониторинг инфраструктуры, ограничение доступа к данным, резервное копирование и план аварийного восстановления. Но перед этим интересная статистика: - 64% компаний считают облачные системы более безопасными, чем локальные системы; - 75% предпринимают дополнительные меры для обеспечения безопасности; - 61% шифруют свои данные; - 52% ввели политику управления доступом к информационным системам; - 48% проводят регулярные проверки информационных систем на соответствие требованиям безопасности. ## Шифрование Для обеспечения безопасности необходимо внедрять определенную политику шифрования. Но шифровать абсолютно все данные не имеет смысла — в этом случае недостатки, связанные с процессами шифрования, будут перевешивать все возможные достоинства. Поэтому нужно выяснить какие данные находятся в облаке и куда идет трафик, а затем решить, что из этого действительно требуется зашифровать. Для эффективного использования шифрования необходимо сравнить стоимость введения таких мер и возможные потери от утечки информации. Кроме того, следует проанализировать как шифрование повлияет на производительность информационных систем. Защиту данных можно производить на разных уровнях. Например, все данные, которые пользователи отправляют в облако, можно шифровать при помощи алгоритмов блочного шифрования. Следующий уровень — шифрование данных в облачной системе, у которого есть три пути: Первый из них — самостоятельно зашифровывать данные на компьютере, а затем пересылать их в облако. Так можно делать резервные копии каких-либо проектов. Параллельно стоит загружать зашифрованные файлы или криптоконтейнеры на внешний жесткий диск, поскольку существуют примеры, когда данные из ненадежного облачного хранилища безвозвратно удалялись без согласия владельца. Если файлов много, можно использовать сервисы, которые шифруют данные до отправки в облако. Некоторые из них позволяют шифровать даже заголовки файлов. Таким образом, если злоумышленники и получат доступ к облаку, им будет недоступно не только содержание файла, но и его название. Одним из таких сервисов является [Boxcryptor](https://www.boxcryptor.com/en/). Главное достоинство Boxcryptor — поддержка популярных облачных хранилищ, таких как Dropbox, Google Drive, OneDrive, Box, Amazon, iCloud Drive, Яндекс.Диск и Mail.ru. Также сервис поддерживает все популярные платформы, включая мобильные операционные системы iOS и Android. У продукта есть бесплатная версия, но она имеет некоторые ограничения. Например, можно работать только с одним облаком. Платная же версия позволяет шифровать имена файлов и работать с неограниченным количеством облачных провайдеров. ## Мониторинг инфраструктуры Злоумышленники почти всегда могут найти способ взломать систему. Поэтому для предотвращения угроз необходимо сделать так, чтобы атаки не распространялись на другие уязвимые системы. Это возможно, если блокировать несанкционированные соединения между рабочими процессами и предотвращать опасные запросы на подключение. На рынке есть множество продуктов для мониторинга инфраструктуры, которые позволяют получить полное представление о сетевой активности: видеть всех, кто подключается к сети, и устанавливать правила для пользователей (что могут делать конкретные пользователи и какие права доступа должны у них быть). Системы мониторинга также позволяют получать статистику по каждому пользователю и связанным с этим пользователем событиям и угрозам. Такие сервисы как Zscaler, позволяют отправлять журналы в SIEM-системы заказчика, чтобы получать отчеты, включающие в себя данные из различных источников. Zscaler предоставляет пользователям целую коллекцию предустановленных и настраиваемых журналов. В нее входят следующие виды отчетов: - Executive Reports (краткий отчет о безопасности для руководителей, включающий количество обнаруженных угроз или нарушений правил за определенный период времени); - Interactive Reports (интерактивная отчетность); - Scheduled Reports (регулярное распространение стандартных и настраиваемых отчетов); - Company Risk Score Report (расчет оценки рисков для компании, входящий в пакет Business и Transformation, и доступный за отдельную плату для пакета Professional); - Industry Peer Comparison (сравнительное сопоставление эффективности использования Zscaler в вашей организации и в других организаций в вашей отрасли); - System Audit Report (системный отчет о статусе туннелей GRE, файлов PAC и т.д. Если есть проблемы, в отчете будут приведены рекомендации по их устранению); - Security Policy Audit Report (отчет о проверке политики безопасности). ## Ограничение доступа к данным Многие уже привыкли к тому, что каждый пользователь заходит в информационную систему по своему логину и паролю. Обычно данные паролей хранятся в виде хэша в базе данных в закрытом виде. Во избежание похищения сессии авторизованных пользователей проверка логина и хэша пароля производится при загрузке каждой страницы системы. В случае ошибки аутентификации пользователь автоматически выйдет из системы. Но вдобавок к традиционной системе защиты при помощи логина и пароля облачные сервисы предлагают еще несколько методов защиты информации. В последнее время получила широкое распространение ролевая модель безопасности (также называемая ролевым контролем доступа). Эта модель основана на идентификации пользователей при помощи логина. Когда пользователь идентифицирован, ему автоматически назначаются роли и решения. Модель контроля доступа, базирующаяся на ролях, соответствует политикам безопасности, принятым в различных организациях. Она позволяет организовать такие особенности, как иерархия ролей и операционное разделение обязанностей. Контроль доступа, базирующийся на ролях (Role Based Access Control, RBAC), рассматривает всю информацию, как принадлежащую данной организации. В такой системе пользователи не могут передавать права на доступ к информации другим пользователям. Эта система основывается на принятии решения о доступе на основе информации о функции, которую пользователь выполняет внутри данной организации на основании своей роли. Определение членства и распределение полномочий роли в системе контроля доступа, основанной на ролях, зависит не от системного администратора, а от политик безопасности, принятой в системе. Роль можно понимать как множество действий, которые пользователь или группа пользователей может использовать. Понятие роли включает описание обязанностей, ответственности и квалификации. Функции распределяются по ролям администратором системы. Доступ к роли также определяется администратором системы. Ролевая политика позволяет распределять полномочия между ролями в соответствии с их служебными обязанностями, а роль администратора дополняется специальными полномочиями, которые позволяют администратору контролировать работу системы и управлять конфигурацией. Права простых пользователей ограничиваются минимумом, необходимым для запуска конкретных программ. Количество ролей в системе может не соответствовать количеству реальных пользователей — один пользователь, если на нем лежат различные обязанности, требующие разных полномочий, может выполнять несколько ролей, а несколько пользователей могут пользоваться одно ролью, если они выполняют одинаковую работу. Облачные системы, такие как Amazon EC2, широко применяют RBAC для точной настройки доступа конечных пользователей к ресурсам. Microsoft Azure также использует RBAC для [управления доступом](https://docs.microsoft.com/ru-ru/azure/role-based-access-control/overview) к облачным ресурсам. Поэтому в качестве примера приведем некоторые действия, которые можно выполнить при помощи RBAC: - предоставление одному пользователю разрешения на управление виртуальными машинами в подписке, а другому — на управление виртуальными сетями; - предоставление группе DBA разрешения на управление базами данных SQL в подписке; - предоставление пользователю разрешения на управление всеми ресурсами в группе ресурсов, включая виртуальные машины, веб-сайты и подсети. ## Резервное копирование данных Приложения, которые работают в облаке, защищены только в определенной степени. Периодически появляются истории, как тот или иной ненадежный облачный провайдер стер виртуальные машины или файлы в хранилище. Для полной защиты данных, которые генерируются облачными приложениями, потребуется резервное копирование в дата-центр (ЦОД) заказчика или в другое облако. В сценариях с малым масштабом пользователи могут копировать файлы, например, из Office 365 на локальный том или на внешний диск. Но это ручной процесс, который может быть ненадежным и его сложно масштабировать. Для больших файлов и более крупных приложений такие сценарии очень редки. Предприятия, использующие облако по модели IaaS, могут пользоваться интерфейсами прикладных систем (API), которые предоставляют облачные провайдеры, для разработки собственного программного обеспечения для резервного копирования, или сторонним программным обеспечением для резервного копирования на локальные серверы, в сетевое хранилище (NAS) или в свой ЦОД. Резервное копирование из облака в облако обещает дать бизнесу несколько преимуществ по сравнению с локальными резервными копиями, включая более низкие затраты на инфраструктуру, более быстрое резервное копирование и восстановление, а также большую гибкость. В рамках услуги облачного резервного копирования пользователи получают возможность резервирования важных данных (файлов, баз, конфигураций операционных систем) в облако. Для этого они устанавливают специальные агенты для резервирования данных требуемых приложений. Наличие агентов позволяет гарантировать целостность данных в резервной копии, а сама передача резервируемых данных осуществляется через интернет по VPN-каналам. ## План аварийного восстановления План аварийного восстановления (Disaster Recovery Plan) позволяет обезопасить бизнес от сбоев в работе ИТ-инфраструктуры и возможной потери данных. Традиционный план восстановления подразумевает создание резервной площадки, желательно в другом районе или даже городе. Для ее организации требуется приобрести такой же набор оборудования, что и на основной площадке, обеспечить инфраструктуру площадки и приобрести программное обеспечение для резервного копирования. При этом затраты на создание и обслуживание резервной площадки могут быть такими же, что и затраты на основную площадку. Это означает, что на обеспечение бесперебойности бизнеса может уходить до 50% всего ИТ-бюджета. В то время как услуга облачного резервного копирования предоставляет возможность быстро увеличивать или уменьшать объемы потребления и не требует первоначальных капитальных затрат. https://serverspace.by/about/blog/vmvare-ili-kvm.md Многие компании, подбирающие решения для виртуализации, останавливают свой выбор на двух популярных гипервизорах — VMware и KVM. Разбираемся, какой же из них лучше Гипервизоры (технологии виртуализации) существуют более 30 лет и за это время сумели стать одним из главных "винтиков" в составе облачной экосистемы. Многие компании, подбирающие решения для виртуализации, останавливают свой выбор на двух популярных гипервизорах — [VMware](https://serverspace.by/services/iaas.md) и KVM. Предлагаем разобраться какой же из них лучше. Но для начала немного теории. ## Что такое гипервизор? Гипервизор — это программа, отделяющая операционную систему от железа. Гипервизоры виртуализируют ресурсы сервера (процессор, память, диск, сетевые интерфейсы и др.), позволяя использовать их как свои собственные, и создают на основе одного сервера несколько отдельных виртуальных машин. Каждая созданная виртуальная машина изолируется от соседей, чтобы не влиять на работу других. Для работы гипервизора необходима поддержка виртуализации: для процессоров Intel на процессоре Intel VT, а для процессоров AMD на AMD-V. Гипервизоры делятся на два типа: первые работают непосредственно с сервером, а операционная система пользователей работает поверх гипервизора. Эти гипервизоры могут предоставлять некоторым пользователям функции управления сервером и большинство предприятий используют именно такие гипервизоры. Гипервизоры второго типа, также известные как размещенные гипервизоры (Hosted Hypervisor), работают с операционной системой, установленной на сервере. А операционные системы для новых пользователей создаются поверх гипервизора. Настольные гипервизоры, такие как Oracle VirtualBox или VMware Workstation, являются гипервизорами второго типа, а VMware и KVM – первого. VMware и KVM устанавливаются непосредственно на сервер и не требуют установки какой-либо операционной системы. ## VMware vSphere Перед покупкой VMware vSphere можно попробовать поработать в пробной версии (60 дней), после чего необходимо покупать лицензию, либо мириться с ограничениями бесплатной версии. В бесплатной версии, которая называется VMware Free vSphere Hypervisor, нет ограничений для хоста по процессорам и памяти, зато есть ряд других: - API продукта доступно только для чтения; - виртуальная машина не может иметь более 8 ядер; - ее нельзя использовать вместе с Veeam для создания резервных копий; - подключение к vCenter Server не поддерживается; - не поддерживается и высокая доступность, а также технологии VM Host Live Migration и VM Storage Live Migration. Продукт от VMware отличается от аналогов поддержкой большого количества операционных систем — Windows, Linux, Solaris, FreeBSD, Netware, MacOS и других. Установка дистрибутива VMware на сервер очень проста: достаточно загрузиться с CD, флешки или через PXE. К тому же поддерживаются сценарии, позволяющие автоматизировать процесс инсталляции программного обеспечения, настройку сети и подключения к vCenter Server. Немаловажно и наличие специального конвертера [VMware vCenter Converter](https://www.vmware.com/products/converter.html), позволяющего использовать в ESXi образы MS Virtual Server, Virtual PC, Hyper-V, а также физические серверы и образы дисковых разделов, созданных такими программами как Acronis True Image, Norton Ghost и другими. У VMware vSphere есть встроенная интеграция с Microsoft Active Directory, то есть аутентификацию пользователей в частном или гибридном облаке можно производить при помощи доменных служб Microsoft. Гибкое распределение ресурсов позволяет использовать горячее добавление CPU, ОЗУ и жесткого диска (в том числе изменять размер текущего жесткого диска без перезагрузки). VMware Fault Tolerate — технология VMware, предназначенная для защиты виртуальных машин с помощью кластеров непрерывной доступности. При отказе хоста (сервера ESXi) с основной (Primary) рабочей копией виртуальной машины, защищенная виртуальная машина мгновенно переключится на "вторичную" (Secondary) или "теневую" копию, работающую на другом сервере ESXi. Для машин, защищенных VMware Fault Tolerance, происходит постоянное (в реальном времени) копирование всего состояния памяти и процессорных инструкций с основной копии на "теневую". При сбое основного хоста ESXi, пользователи даже не заметят процесса переключения на второй узел. Именно этим Fault Tolerance отличается от High Availability. В High Availability при отказе физического сервера виртуальные машины будут перезапущены на других узлах, и пока операционные системы перезагружаются пользователи не смогут получить доступ к виртуальным серверам. Кроме VMware Foult Tolerate, лицензия VMware vCloud Suite Enterprise обеспечивает высокую доступность, отказоустойчивость и восстановление после аварий с помощью функций vSphere HA, vMotion, Storage vMotion, и vCenter Site Recovery Manager. Для уменьшения плановых остановок в обслуживании серверов или систем хранения данных (СХД), функции vMotion и Storage vMotion в онлайн-режиме переносят виртуальные машины и их диски без остановки работы приложений и пользователей. Функция vSphere Replication поддерживает разные варианты репликации vCenter Site Recovery Manager (SRM) для защиты от крупных аварий. SRM обеспечивает централизованное планирование послеаварийного восстановления, автоматические Failover и Failback с резервного сайта или из облака vCloud, а также тестирование послеаварийного восстановления без прерывания работы приложений. К особенностям этого гипервизора стоит отнести избирательность к железу — перед установкой необходимо тщательно проверить имеющееся оборудование на совместимость с нужной версией ESXi. Для этого на сайте VMware есть специальная [страница](https://www.vmware.com/resources/compatibility/search.php). Лицензирование продуктов VMware имеет свои особенности. Дополнительную путаницу добавляют периодические изменения (от версии к версии vSphere) в лицензионной политике VMware. Существует несколько пунктов, которые нужно учесть перед приобретением лицензий VMware vSpere: - лицензирование гипервизора выполняется по числу физических процессоров (CPU). Каждый CPU сервера требует отдельной лицензии vSphere (ядра не являются физическими процессорами и не учитываются в лицензировании); - доступный функционал сервера ESXi определяется установленной на нем лицензией vSphere. Подробное руководство по лицензиям есть на [сайте VMware](https://www.vmware.com/files/ru/pdf/products/vsphere/VMware-vSphere-Pricing-Whitepaper.pdf); - для каждой купленной лицензии vShpere необходимо приобретать пакет сервисной поддержки (минимум на год); - VMware не накладывает ограничения на количество памяти (RAM), установленной на сервере, и на количество запущенных виртуальных машин. Управлять множеством хостов с гипервизорами ESXi, СХД и сетевым оборудованием можно с помощью еще одного продукта VMware — Vcenter Server. Подключаемые модули клиента vSphere, предоставляемые партнерами VMware, дают IT-администраторам возможность управлять сторонними элементами в дата-центре непосредственно из этой консоли. Поэтому пользователи vCenter могут выполнять резервное копирование, защищать данные, управлять серверами, сетями и безопасностью непосредственно из интерфейса vCenter. В этой же консоли можно настроить триггеры, которые оповестят о возникших проблемах, и получить данные о работе всей инфраструктуры в виде графиков или таблиц. ## KVM KVM — простой в использовании, легкий, нетребовательный к ресурсам и довольно функциональный гипервизор. Он позволяет за минимальные сроки развернуть площадку виртуализации и организовать виртуализацию под управлением операционной системы Linux. В процессе работы KMV осуществляет доступ к ядру операционной системы через специальный модуль (KVM-Intel или KVM-AMD). Изначально KVM поддерживал только процессоры x86, но современные версии KVM поддерживают самые разные процессоры и гостевые операционные системы, в том числе Linux, BSD, Solaris, Windows и др. Кстати, все Wiki-ресурсы (MediaWiki, Wikimedia Foundation, Wikipedia, Wikivoyage, Wikidata, Wikiversity) используют именно этот гипервизор. Поскольку гостевые операционные системы взаимодействуют с гипервизором, который интегрирован в ядро Linux, у гостевых операционных систем есть возможность обращаться напрямую к оборудованию без нужды изменения гостевой операционной системы. За счет этого замедления работы гостевой операционной системы почти не происходит. KVM позволяет виртуальным машинам использовать немодифицированные образы дисков QEMU, VMware и другие образы, содержащие операционные системы. Каждая виртуальная машина имеет своё собственное виртуальное аппаратное обеспечение: сетевые карты, диск, видеокарту и другое железо. Благодаря поддержке немодифицированных образов VMware, физический сервер можно легко виртуализовать при помощи все той же утилиты VMware vServer Converter, а затем перенести полученный файл в гипервизор. Установка KVM в операционной системе Linux заключается в инсталляции пакета KVM и библиотеки виртуализации Libvirt, а также в тщательной настройке среды виртуализации. В зависимости от используемой на хосте операционной системы необходимо настроить мост или подключение к VNC-консоли, с помощью которой виртуальные машины будут взаимодействовать с хостом. Администрировать KVM сложнее, так как прозрачный доступ к файлам, процессам, консолям и сетевым интерфейсам отсутствует, это приходится настраивать самостоятельно. Перестройка параметров VM в KVM (CPU, RAM, HDD) не очень удобна и требует дополнительных действий, включающих перезагрузку ОС. Сам проект не предлагает удобных графических инструментов для управления виртуальными машинами, только утилиту Virsh, реализующую все необходимые функции. Для удобного управления виртуальными машинами можно дополнительно установить пакет Virt-Manager. У KVM нет встроенных инструментов, подобных Fault Tolerate для VMware, поэтому единственный способ создать кластер высокой доступности — использовать сетевую репликацию при помощи DRDB. Кластер DRBD поддерживает только два узла, а узлы синхронизируются без шифрования. То есть для более безопасной связи необходимо использовать VPN-соединение. Кроме того, для построения кластера высокой доступности понадобится программа Heartbeat, которая позволяет обмениваться служебными сообщениями о своем состоянии узлам в кластере, и Pacemaker — менеджер ресурсов кластера. Гипервизор KVM распространяется как продукт с открытым исходным кодом, а для корпоративных пользователей существует коммерческое решение Red Hat Virtualization (RHEL), основанное на KVM и платформе управления виртуальной инфраструктурой oVirt. Несомненным преимуществом этого гипервизора является то, что он способен работать на любом сервере. Гипервизор довольно неприхотлив к ресурсам, что позволяет с легкостью использовать его для задач тестирования. Следует учесть, что у KVM нет службы поддержки. Если что-то не получится, можно рассчитывать на форумы и помощь сообщества. Или перейти на RHEL. ## Так что же выбрать? Оба гипервизора являются зрелыми, надежными, высокопроизводительными системами виртуализации, у каждой из которых есть свои особенности, которые нужно учитывать при выборе. KVM обычно более масштабируем, чем VMware, в первую очередь потому что vSphere имеет некоторые ограничения на серверы, которыми он может управлять. Кроме того, VMware добавила большое количество сетей хранения данных (SAN) для поддержки различных поставщиков. Эта функция означает, что VMware имеет больше вариантов хранения, чем KVM, но также усложняет поддержку хранилища VMware при расширении. KVM обычно является наиболее популярным гипервизором для компаний, которые стремятся сократить стоимость внедрения и менее заинтересованы в функциях корпоративного уровня. Исследования показали, что совокупная стоимость владения KVM, как правило, на 39 процентов ниже, чем у VMware, хотя фактическая совокупная стоимость владения зависит от специфичных факторов, таких как эксплуатационные параметры и рабочая нагрузка площадки. Тесная интеграция с операционной системой на хосте является одной из наиболее распространенных причин, по которой разработчики выбирают KVM. Особенно те, кто использует Linux. Включение KVM во многие дистрибутивы Linux также делает его удобным выбором для разработчиков. Облачные провайдеры, предлагающие своим клиентам услуги по модели IaaS, обычно выбирают инфраструктуру, построенную на продуктах VMware. Решения на основе VMware Sphere содержат все важные корпоративные функции по обеспечению высокой и непрерывной доступности, обеспечивают поддержку большего числа гостевых операционных систем и имеют возможность сопряжения инфраструктуры заказчика с облачными сервисами. https://serverspace.by/about/blog/tri-devici-pod-oknom-iaas-paas-saas.md Облачные сервисы можно разделить на несколько типов, и у каждого сервиса есть свои группы заказчиков Подобно девицам из сказки, каждый облачный провайдер предлагает миру свои услуги. Царь, как известно, выбрал ту девицу, которая принесет ему богатыря, то есть именно такую услугу, которая позволит ему добиться поставленных целей и задач, как государственному лидеру. Мы же посмотрим, какой выбор есть у потребителей на рынке облачных услуг. Облачные сервисы можно разделить на несколько типов и у каждого сервиса есть свои группы заказчиков. Три основных типа облачных вычислений — IaaS, PaaS и SaaS. ## Что такое IaaS, PaaS, SaaS - IaaS (Infrastructure As a Service) — это инфраструктура как услуга. Клиент получает только IT-инфраструктуру в виде набора виртуальных серверов, на которые сам устанавливает необходимые программы, виртуальные сети и системы хранения данных. - PaaS (Platform As a Service) — платформа как услуга. Клиент получает платформу, например,баз данных, средство для развертывания приложения Docker и тому подобные сервисы. - SaaS (Software As a Service) — программное обеспечение как услуга. - Клиент получает готовую программу — почту, CRM, или ERP-систему. Что между ними общего? Эти услуги стали возможны благодаря виртуализации, повсеместному распространению высокоскоростных систем и возможностям современных браузеров. С этими технологиями необходимость иметь собственную инфраструктуру или иметь собственное программное обеспечение становится меньше. Вы можете получить все что нужно из облака, по необходимости. Что скрывается за этими буквами? ## SaaS Самый простоя способ познакомиться с этими услугами — начать с SaaS. Простым примером SaaS является электронная почта, такая как Gmail. Если ваша компания использует Gmail, то у вас нет собственного почтового сервера. Он есть у Google, а вы получаете к нему доступ через веб-приложение. Это веб-приложение может работать через веб-браузер, или через клиент, установленный в телефоне или планшете. В том случае, если у компании есть собственный домен, этот домен также можно использовать для почты, при этом все равно вам не нужен собственный почтовый сервер. Но электронная почта — это всего лишь одно приложение, которое использует ваша компания, и сегодня в Интернете есть приложения для многих бизнес-процессов. Отличным примером SaaS является Microsoft Office 365. Корпорация Microsoft предоставляет доступ к различным приложениям Microsoft Office, такими как Word, Excel или PowerPoint, размещенных прямо в облаке. Кроме офисных приложений, клиенты имеют доступ к таким широко известным сервисам, как Microsoft Exchange Service для работы с электронной почтой, SharePoint для совместной работы в проектах и многим другим. SaaS означает то, что клиентам не нужно устанавливать пакеты программ, как в случае с Microsoft Office. Соответственно, нет необходимости в обновлении и решении проблем с этими пакетами. При этом с SaaS может работать сразу несколько пользователей. Плата обычно снимается в виде абонентской платы, или же на основе объема операций. Техническая поддержка становится заботой провайдера SaaS-платформы. SaaS ориентирован на конечных пользователей, и не требует усилий для начала работы. Вы используете только почтовый клиент или браузер, а вся головная боль по размещению серверов, настройке сетевого оборудования, расчёту необходимых ресурсов остается провайдеру услуги. Еще одним достоинством SaaS становится отсутствие необходимости разовой оплаты лицензий, что для крупных компаний оборачивается весьма солидной экономией. Такая услуга, как панель управления виртуальными серверами, может предоставляться по модели SaaS. Панели управления используют провайдеры услуг хостинга виртуальных машин. В таком случае лицензию оплачивает или клиент, или провайдер облачных услуг, в таком случае стоимость лицензии включается в абонентскую плату для клиента. ### Когда используется SaaS Существует множество различных ситуаций, когда лучше использовать сервисы SaaS: - Если вы – начинающая компания, которой нужно быстро использовать сервисы электронной коммерции, и у вас нет времени на покупку и настройку собственных серверов. - Для краткосрочных проектов, требующих сотрудничества с другими компаниями. - Для приложений, которым нужен как веб, так и мобильный доступ. ## IaaS Услуга IaaS находится на другом конце облачного спектра. В этом сценарии вы хотите сохранить контроль над программной средой, но не хотите покупать и поддерживать какое-либо оборудование. Вы не хотите покупать серверы и размещать их в помещении с охраной, кондиционерами и источниками бесперебойного питания. Вместо этого вы идете к провайдеру IaaS и арендуете готовую виртуальную инфраструктуру. Вы можете установить любое программное обеспечение, какое захотите. А провайдер предоставит вам виртуальные серверы, соединит их между собой виртуальной локальной сетью, предоставит хранилище любого объема и позволит работать через Интернет, или через VPN-соединение, если вам не нужно, чтобы инфраструктура была доступна через Интернет. Ресурсы, которые не используются, могут высвобождаться в автоматическом режиме, а при дополнительной нагрузке необходимые ресурсы автоматически становятся доступны. Услугу IaaS можно использовать и для стартапов, чей бизнес только делает первые шаги, и для уже состоявшихся компаний, которые хотят оптимизировать свою инфраструктуру, адаптировать ее к быстро меняющимся условиям рынка, сохранить и упрочить конкурентное преимущество и снизить издержки. ### Когда используется IaaS Существуют определенные ситуации, когда выгодно использовать IaaS. - Если вы – стартап или небольшая компания, IaaS отличный вариант, потому что вам не нужно тратить время или деньги на создание инфраструктуры. - IaaS полезен для крупных организаций, которые хотят иметь полный контроль над своими приложениями и инфраструктурой, но стремятся приобрести только то, что необходимо. - Для быстрорастущих компаний – им не нужно покупать аппаратное обеспечение, когда потребности непрерывно изменяются - Если вы не знаете, какие требования потребует новое программное обеспечение. ## PaaS PaaS находится посередине между IaaS и SaaS. Эта услуга — не готовый продукт, как SaaS, и не пустой лист, как IaaS. PaaS предоставляет разработчикам службы и инструменты для разработки под эту конкретную платформу. Например, Microsoft Windows Azure предоставляет инструменты для разработки мобильных приложений, социальных сетей, веб-сайтов и прочих сервисов, работающих в Интернет. Вы создаете эти сервисы с помощью стандартных языков программирования, но используете API и инструменты интеграции, чтобы подключить их к среде Azure и запускать их там. При необходимости пользователи могут быстро развернуть типовую среду для разработки и тестирования своих продуктов. Также в типовой среде можно размещать резервные площадки, переносить части рабочих нагрузок из собственных дата-центров. PaaS используется программистами, которые сообща работают над различными проектами. В этом случае они получают доступ к удаленной среде разработки. Все они нуждаются в достаточном количестве системных ресурсов, а также инструментах совместной работы. PaaS без проблем позволяет распределять задачи, искать и исправлять ошибки, работать с различными версиями продуктов. Соответственно, в таких средах есть инструменты обмена сообщениями и комментирования кода. ### Когда используется PaaS Есть много ситуаций, когда использование PaaS выгодно или даже необходимо: - Если вы хотите создавать собственные приложения. - Если над одним и тем же проектом работают несколько разработчиков. - Если необходимо подключить к проекту других разработчиков. В целом, каждая модель предлагает свои специфические особенности и функциональные возможности, и необходимо понимать различия между ними. Ищете ли вы облачное программное обеспечение для вариантов хранения, удобную платформу, позволяющую создавать специализированные приложения, или хотите получить полный контроль над всей инфраструктурой без необходимости ее физического обслуживания, для вас найдется облачная служба. Независимо от выбора, миграция в облако это будущее бизнеса и технологий. https://serverspace.by/about/blog/aws-ili-serverspace.md Рассмотрим подробнее эти два вида услуг облачного веб-хостинга При размещении веб-сайта или веб-приложения можно воспользоваться или сервисом VPS или хостинг с использованием `AWS. Рассмотрим подробнее эти два вида услуг облачного веб-хостинга ## AWS ### Развертывание и настройка Вычислительное облако Amazon Elastic Compute Cloud (Amazon EC2) предоставляет клиентам вычислительные ресурсы в облаке. EC2 позволяет легко масштабировать и конфигурировать виртуальные машины под нужды потребителей. Сервис предоставляет несколько типов виртуальных машин (instance), которые можно комбинировать: - Инстансы общего назначения - Инстансы, оптимизированные для вычислительных задач - Инстансы с оптимизацией памяти - Инстансы для ускоренных вычисления (дополнительно содержащие графические ускорители) - Инстансы с оптимизацией хранилища На эти инстансы можно установить следующие операционные системы: - Amazon Linux - Window Server 2012 - CentOS 6.5 - Debian 7.4 - Свои образы (AMI) Кроме операционных систем, Amazon предоставляет сервис предоставления баз данных. То есть потребителю не нужно устанавливать на виртуальную машину помимо операционной системы еще и СУБД. Доступны следующие продукты: - MySQL community edition - Oracle Database - Microsoft SQL Server - PostgreSQL Amazon бесплатно предоставляет некоторые сервисы, с помощью которых можно попробовать облачные услуги или изучить возможности: - Виртуальные машины только на базе Amazon EC2 Linux Micro Instance. Бесплатно предоставляется 750 часов использования, которых, в течении первого года с момента регистрации учетной записи, будет достаточно для использования одного EC2 экземпляра в режиме 24/7; - 750 часов использования сервиса Elastic Load Balancer + 15 гигабайт обработанных данных; - 10 гигабайт в сервисе Amazon Elastic Block Storage (EBS). В бесплатный лимит EBS включены 1 миллион операций ввода/вывода, 1 гигабайт для хранения мгновенных снимков, 10000 get запросов и 1000 put запросов к этим мгновенным снимкам; - 5 гигабайт в системе хранения Amazon Simple Storage Service (S3). В бесплатный лимит S3 включены 20000 Get запросов и 2000 Put запросов; - 30 гигабайт входящего и исходящего трафика в равных пропорциях; - 25 часов работы с Amazon SimpleDB и 1 гигабайт для данных; - 100000 запросов при использовании сервиса Amazon Simple Queue; - 100000 запросов, 100000 HTTP уведомлений и 1000 уведомлений по электронной почте при использовании сервиса Amazon Simple Notification; - 10 метрик, 10 предупреждений и 1000000 запросов к API в сервисе Amazon Cloudwatch Установка и запуск не так прост. Например, для того, чтобы виртуальный сервер смог заработать, необходимо произвести следующие действия: 1. Создать экземпляр EC2. 2. Создать пары ключей SSL. 3. Выбрать группы безопасности, для доступа к нужному порту. 4. Запустить экземпляр EC2. 5. Открыть нужные порты. 6. Запустить виртуальную машину. 7. Установить в виртуальную машину необходимые порты. 8. Подключить хранилище Amazon ESB или S3. 9. Изменить настроек виртуальной машины так, чтобы данные хранились в EBS или S3. 10. Создать образ (image) для запущенного экземпляра (instance), сохранить его на S3 и зарегистрировать свой AMI. 11. Получить Elastic IP (фиксированный IP), изменить DNS так, чтобы использовать новый IP. У Amazon AWS нет специальных услуг по администрированию. Поэтому, если вы далеки от IT сферы и у вас под рукой нет компетентного системного администратора, то стоит использовать услугу VPS. Облако Amazon AWS размещено в географически распределенных датацентрах, географически объединенных в группы, которые называются "регионы". Внутри каждого региона находится несколько "зон доступности", внутри которых обеспечивается высокая доступность сервисов. Клиенты могут выбирать регион и зону доступности, а также настраивать репликацию из одной зоны в другую. ### Оплата Amazon производит все расчеты AWS в долларах США независимо от региона. Поэтому стоимость услуг может оказаться несопоставимо выше, чем у белорусского провайдера. Из этого следует, что если ваша организация производит расчеты в белорусских рублях, вы не сможете спрогнозировать стоимость услуг из-за колебаний курса. Использование любых сервисов Amazon AWS требует привязки банковской карты. Деньги с этой карты будут списываться после оказания оказанных услуг. Если ваша организация предпочитает оплачивать облачные услуги банковским переводом, то для работы с Amazon Web Services потребуется заключить договор с компанией, имеющей партнерские отношения с Amazon. Услуги Amazon оплачиваются в конце месяца, по итогам потраченных ресурсов. Учтите, что AWS не позволяет ограничить расходы на месяц какой-то суммой, по достижении которой работа сервисов оказалась бы заблокированной. Необходимо следить за количеством запущенных сервисов и адекватности их текущих нагрузкам. В противном случае счет в конце месяца может очень неприятно удивить. Кроме того, аналогичным образом тарифицируется полоса пропускания, то есть один-единственный пик нагрузок может также опустошить вашу карту. ## VPS ### Развертывание и настройка Провайдеры VPS позволяют создавать виртуальные серверы с заданными конфигурациями. Панель управления позволяет создавать виртуальные машины с различными диапазонами программных и аппаратных ресурсов: - Количество ядер CPU: от 1 до 24 - Количество оперативной памяти: от 512 Мб до 130 Гб - Диск SSD: от 10 Гб до 1 Тб. Операционные системы: - Microsoft Windows Server - Centos - Ubuntu - Debian VPS-сервис позволяет создать протестировать виртуальные машины без ограничений в аппаратных ресурсов в течение ограниченного времени. Для создания виртуального сервера необходимо сделать следующее: - Зарегистрироваться и войти в панель управления - Перейти на вкладку Серверы и нажать Создать сервер - Выбрать шаблон виртуального сервера - Указать параметры сервера: место, где будет размещено оборудование - панель управления хостингом - производительность оборудования (базовая или высокая) - резервное копирование (задать глубину хранения) - Выбрать конфигурацию виртуального сервера: количество ядер процессора - объем оперативной памяти - тип и объем дискового пространства - ширину канала связи После создания виртуальной машины новому серверу будет бесплатно присвоен один адрес IPv4. За дополнительную плату можно получить дополнительные адреса IPv4 или IPv6. После создания VPS пользователи могут бесплатно зарегистрировать до 100 доменов за каждую виртуальную машину, самостоятельно создавать все необходимые изменения в DNS прямо в личном кабинете. Пользователи могут в любой момент сделать снимки виртуальной машины, а при необходимости восстановить состояние из снимка. Это очень полезная функция при тестировании или создании нового сервиса. Можно "модернизировать" виртуальный сервер, добавляя в него оперативную память, увеличивая количество процессоров или емкость хранилища. Изменения в конфигурации сервера появятся после перезагрузки виртуальной машины. Датацентры VPS располагаются в Белоруссии, в России и Нидерландах. При создании виртуальной машины пользователь может указать, на какой площадке он хотел бы разместить свои серверы. ### Оплата После регистрации у пользователя появляется личный счет, который можно пополнять. В отличие от сервиса Amazon AWS, провайдер VPS в Белоруссии позволяет пополнить счет разными способами: - Оплата по счету - Оплата банковскими картами (Visa, MasterCard и Белкарт) - Через систему ЕРИП Расчёт Можно привязать банковскую карту к аккаунту в личном кабинете, чтобы не вводить при каждой оплате данные карты. В личном кабинете можно настроить автоплатеж. Тогда в указанные дни денежные средства будут автоматически списываться с указанной банковской карты. Счета можно также выставлять через личный кабинет. И тоже можно использовать возможности автоматического платежа – счета будут выставляться заранее, в указанные пользователем дни. Облачные сервисы предоставляются по предоплате. Тарифицируются каждые 10 минут работы серверов. Как только на счете заканчиваются денежные средства, услуги блокируются. ## Выводы Существенное отличие облачных инстансов Amazone EC2 от виртуальных серверов VPS –это отсутствие долговременного хранилища данных. Если при покупке VPS-сервиса пользователь, например, получает 50 Гб дискового пространства, то все что туда будет записано, сохранится и после перезагрузки серверов VPS-провайдера. Данные, размещенные в облачной машине EC2, записываются в локальном кэше (так называемом эфемерном хранилище, ephemeral storage). В случае сбоя или перезагрузки серверов Amazon или даже после ручной остановки виртуального сервера все данные локального кэша будут стерты, включая все настройки установленных пользователем программ. Поэтому настройки и данные необходимо хранить в других службах – ESB или S3. Еще один нюанс, связанный с Amazon, заключается в том, что все сервисы Amazon, кроме основных (EC2, ELB) не работают за пределами AWS. А это значит, что если вся ИТ-инфраструктура работает в облаке Amazon, будет очень сложно перевести ее куда-нибудь еще. Кроме того, есть риск увеличения тарифов, перехода инфраструктуры к другому собственнику, ликвидации провайдера или ограничения в работе для целых стран. К тому же следует учесть, что у компании Amazon нет дата-центров, расположенных в Белоруссии или в России, таким образом, в этом облаке нельзя хранить персональные данные. Чтобы хранить такие данные, необходимо использовать гибридные облака. Инфраструктуру, построенную на Amazon EC2, легче масштабировать. Это облако подходит для размещения высоконагруженных веб-приложений, имеющих большое количество пользователей по всему миру. VPS-хостинг предоставляет более широкий выбор операционных систем, более удобный, простой и понятный интерфейс. Услуги этого сервиса будут популярны для национальных проектов, для хостинга сайтов, разработки и тестирования программного обеспечения, для размещения CMS-систем. VPS предоставляет разумный баланс между ценой и возможностями для большинства владельцев интернет-сайтов и приложений. https://serverspace.by/about/blog/iaas-dlya-shkolnika.md IaaS предлагает бизнесу инструмент оптимизации и сокращения издержек. Кроме того, помогает компании развиваться ## Что такое облако? Вики говорит нам следующее: "Облака — взвешенные в атмосфере продукты конденсации водяного пара, видимые на небе с поверхности земли". Неужели в атмосфере серверы летают? На самом деле, облачная обработка данных (cloud computing) — это такая технология обработки данных, при которой программное обеспечение предоставляется пользователю как интернет-сервис, доступный из браузера. Пользователь имеет доступ к своим данным и программам, но не может управлять серверами и сетями напрямую. Облаком называют ту часть Интернета, которая как раз и скрывает некоторые технические детали. ## Где живет облако? В основе облачных вычислений лежит несколько идей. Во-первых — доступность через Интернет. Как правило, облако ведет себя, как обычный сервер. Во-вторых — это виртуализация. Благодаря виртуализации пользователи могут получить столько ресурсов, сколько им нужно, если они могут за них заплатить. Что для этого нужно, пользователи не знают. Виртуальные машины могут работать на тысячах серверах, расположенных по всему миру. В третьих: облачные вычисления — это услуга, или набор услуг, которыми пользователи пользуются, при этом не имея ни малейшего понятия, что же там внутри. Обычные пользователи не могут сломать облако, чтобы посмотреть, как оно устроено. Четвертый момент — простота и стандартность. Для работы с облачными услугами пользователям не нужно изучать новые языки программирования, синтаксис конфигурационных файлов. Все, что предлагает облако, доступно через простой веб-интерфейс. ## Зачем нужно облако? За плату пользователи получают доступ к надежнейшей инфраструктуре, с необходимой им производительностью. Облачный провайдер гарантирует, что облачные услуги будут доступны почти всегда, может быть, простой будет не больше пары минут или часа за год. Кроме того, пользователи получают практически неограниченные возможности масштабируемости. Им не нужно покупать новые серверы, устанавливать на них программы, и объединять их в сеть, а потом следить за их состоянием. Если у пользователей есть свои серверы, то есть риск, что в случае кратковременных нагрузок сервис будет недоступен в течение нескольких часов. В облаке дополнительные ресурсы предоставляются по запросу и моментально. ## Кто живет в облаке? Варианты услуг для пользователей сильно отличаются. Все, что касается облачных вычислений, обычно принято называть словом aaS. Расшифровывается просто – "as a Service", то есть "как сервис", или "в виде сервиса". Все пользователи Интернет, например, пользуются почтой через веб-браузер. Тем самым эти пользователи имеют дело с услугой SaaS (программное обеспечение как сервис. Но далеко не все пользователи могут сказать, что слышали про IaaS. Между тем, именно IaaS на сегодняшний день является самой популярной и быстро растущей услугой облачных вычислений. Чем же так популярен этот сервис? И что скрывается за термином IaaS? IaaS расшифровывается как Infrastructure as a Service, то есть инфраструктура как услуга. Основная идея этой услуги заключается в том, чтобы предоставить заказчику все необходимое для построения своей ИТ-инфраструктуры в аренду, причем все будет находиться не на территории клиента, а в дата-центре провайдера этой услуги. Клиенту не нужно покупать и устанавливать мощные серверы, сетевое оборудование и программы, а затем следить и управлять всей этой техникой. ## Зачем нужна услуга IaaS если есть своя инфраструктура? Раньше люди жили без особых удобств. Если человеку нужна была вода, он брал ведро и наливал воду из колодца. Если было холодно, то рубил дрова и топил ими печь. А потом пришло разделение труда. Человек перестал делать все сам. И сейчас есть водопровод и паровое отопление. Люди не знают как это происходит, они просто оплачивают счета. Облачный провайдер предоставляет ИТ-инфраструктуру точно также, как ЖЭК предоставляет услуги водоснабжения или отопления. А люди просто оплачивают счета. Все вопросы выбора, покупки, установки, настройки и управления берет на себя облачный провайдер. А что же будет делать клиент? За клиентом сохранятся такие функции, как: - настройка бизнес-приложений; - доработка бизнес-приложений с учетом особенностей бизнеса; - взаимодействие с провайдером Интернет и облачного провайдера; - контроль качества работы облачного провайдера. Вынести в облако можно такие компоненты, как: - операционные системы; - базы данных; - серверы; - системы хранения данных; - источники бесперебойного питания для серверов, охлаждение серверов. С точки зрения бизнеса использование услуги IaaS позволит получить следующие преимущества: - Существенная экономия средств. Использование услуги IaaS исключает затраты на приобретение, установку, настройку оборудования, поддержание ее в работоспособном состоянии. - Высокая масштабируемость. В любой момент времени клиент может попросить увеличить ресурсы – добавить в процессоры больше ядер, памяти, увеличить объем диска или полосу пропускания для доступа к Интернет. - Доступность и мобильность. Сервисы, развернутые в IaaS, доступны везде, где есть доступ к Интернет. ## А это не опасно? Использование облачных технологий хранит в себе некоторые угрозы. Например, плохо проработанный проект перехода в облако может привести к простою бизнеса. Кроме того, при возникновении проблем можно потерять данные – все или частично. Можно получить неработоспособные сервисы, и потратить намного больше денег, чем рассчитывали. Да и сам провайдер может внезапно взять и раствориться в атмосфере. Поэтому при выборе облачного провайдера необходимо тщательно проверить возможности будущего поставщика облачных услуг: - сертификация дата-центра облачного провайдера; - наличие у провайдера опыта миграции клиентов в облако; - использование специальных программ для миграции в облако; - разработка проекта облачной инфраструктуры и плана миграции. Современные компании, предоставляющие услуги IaaS, можно отнести к следующим основным профилям: **Специализированные облачные провайдеры** Это компании, чья основная деятельность связана с предоставлением облачных сервисов. Как правило, такие компнаии имеют собственного оборудование, размещенное в одном или нескольких арендованных или построенных дата-центров. **Дата-центры** С ростом рынка услуг IaaS, все больше коммерческих дата-центров начинают оказывать услуги по аренде виртуальной инфраструктуры в качестве дополнения к услугам по размещению оборудования. Дата-центры начинают оказывать услуги IaaS самостоятельно или заключают партнерские соглашения с облачными провайдерами. **Крупные системные интеграторы** Для таких системных интеграторов предоставление услуг IaaS является одним из многих видов деятельности. **Провайдеры Интернет** Хороший канал до облака – один из основных условий стабильной работы с виртуальной инфраструктурой, размещенной в облаке. Поэтому многие провайдеры Интернет, начинают предоставлять услуги IaaS. Наиболее надежные услуги IaaS – у компаний, которые специализируются на предоставлении облачных данных. При этом хорошо, если такой провайдер занимается еще и другими направлениями деятельности, такими как продажа и поставка оборудования и программного обеспечения, разработка программного обеспечения и т.д. Чтобы убедиться в надежности провайдера IaaS, необходимо проверить следующие компонеты: **Площадка** Базовым уровнем, определяющим доступность IaaS является площадка, на которой размещена платформа IaaS. Наиболее простой способ проверки площадки — это проверить, если ли у дата-цента сертификатов, подтверждённых международной организацией Uptime Institute. - Tier III Certification of Constructed Facility - Tier III Certification of Design Documents. Подтвержденные UTI сертификаты можно посмотреть на официальном сайте [Uptime Institute](https://uptimeinstitute.com/TierCertification/certMaps.php). **Оборудование** Надежность IaaS платформы во многом зависит от того, какое оборудование используется для ее построения. При проверке надежности нужно проверить следующее: Оборудование ведущих производителей (серверы CISCO UCS, DELL, Hewlett-Packard). Для систем хранения данных наиболее подходящим оборудованием для построения облачных сред являются NetApp и EMC. Модели оборудования должны быть современными. Использование провайдером старых моделей оборудования сказывается на надежности и производительности. Дублирование, резервирование и отсутствие единой точки отказа. Оборудование должно быть дублировано: - серверы должны иметь задублированные блоки питания и охлаждения; - количество серверов должно обеспечивать необходимый запас мощности на случай скачков потребления вычислительных ресурсов; - система хранения данных должна быть задублирована или иметь два независимых контроллера; - все сетевое оборудование должно дублироваться; - выход любого одно элемента оборудования из строя не должен влиять на работоспособность комплекса в целом. **Гипервизор** Наиболее надежными и распространенными среди облачных провайдеров гипервизорами являются: - VMware, - Hyper-V, - Xen, - KVM. Использование IaaS провайдером лидирующих решений по виртуализации повышает надежность и безопасность работы облака. **Служба поддержки** Служба поддержки является лицом любого облачного провайдера. Для сопровождения полноценного корпоративного IaaS она должна соответствовать следующим минимальным требованиям: - Круглосуточная доступность в режим 24 часа, 7 дней в неделю, 365 дней в году - Прием заявок по разным каналам: e-mail, по телефону, через веб-форму. - Контроль и соблюдение таких метрик, как время реакции на обращение, максимальное время решения типового запроса, максимальное время решения инцидента. - Оповещение о проведении регламентных работ, об инцидентах и их решении. **Сопутствующие услуги** Обычно вслед за использованием виртуальной инфраструктуры у клиентах возникает потребность в следующих дополнительных услугах: - аренда лицензий на программное обеспечение; - резервное копирование на удаленную площадку; - подключение VPN-каналов для связи; - защита от DDOS-атак; - резервное копирование на другую площадку; - мониторинг работоспособности приложений клиента; - аренда физического оборудования; - администрирование виртуальных серверов. IaaS предлагает бизнесу инструмент оптимизации и сокращения издержек. Кроме того, помогает компании развиваться. Ведь гораздо проще запустить новый проект, требующий больших вычислительных мощностей, в облаке, а не тратить деньги на создание собственного ЦОД и заниматься его обслуживанием. https://serverspace.by/about/blog/administrirovanie-virtualnoy-infrastrukturi.md В большинстве случаев виртуальная инфраструктура ведет себя точно также, как и физическая, но технологии виртуализации имеют свои особенности В большинстве случаев виртуальная инфраструктура ведет себя точно также, как и физическая, но технологии виртуализации имеют свои особенности, которые мы и рассмотрим в этой статье. ## Создание виртуальных серверов и установка операционных систем Шаблоны виртуальных машин позволяют создавать полностью настроенный виртуальный сервер с установленной операционной системой за несколько кликов мыши из панели управления облачного провайдера. ## Миграция физических серверов в виртуальную среду Обычно к моменту принятия решения о разворачивании виртуальной инфраструктуры организация уже имеет физическую инфраструктуру, включающую физические серверы и телекоммуникационную аппаратуру. Физические серверы можно превратить в виртуальные, при помощи различных специализированных инструментов: - команда dd в Linux - программа disk2vhd в Windows - программа VMware Converter Standalone - специализированные коммерческие продукты Есть системы, которые не стоит мигрировать в облака: - Программы, для работы которого требуется физическое оборудование. - Такое оборудование, как ключи электронной защиты, используемое для защиты от несанкционированного копирования, невозможно виртуализовать. Иногда такие проблемы можно решить путем перехода на электронный ключ. - Системы, для которых нужна высокая производительность - Приложения и устройства, которые загружают оперативную память, жесткий диск, процессор, видеокарта , не подходят для миграции - ПО с лицензионными ограничениями на виртуализацию - Некоторые лицензионные соглашения запрещают использовать продукты в виртуальной среде. - Критически важные приложения для без тестирования - Не стоит переводить жизненно важные для организации системы или приложения на виртуальную платформу без предварительного тестирования. - ИТ-системы, требующие повышенной безопасности - Виртуализация любой системы, содержащей конфиденциальные данные, может предоставлять угрозу ИТ-безопасности. ## Установка и обновление приложений При использовании арендованной виртуальной инфраструктуры (IaaS) вам не придется следить за обновлением программного обеспечения серверов, и коммуникационного оборудования. Но самим виртуальным машинам требуются регулярные обновления и операционных систем, и приложений. Обычной проблемой в крупной инфраструктуре является размножение образов. Это размножение приводит к тому, что появляется огромное количество шаблонов виртуальных машин с одной и той же операционной системой, но с различными приложениями или ролями. Управлять таким зоопарком образов и обеспечивать их обновление непросто, но такие продукты, как System Center Virtual Machine Manager позволяют сократить число образов и устанавливать приложения, роли и функции в виртуальных серверах при помощи пакетов приложений. ## Установка SSL-сертификатов Если ваша организация разрабатывает или использует веб-приложения, расположенные в виртуальной инфраструктуре, то доступ к этим приложениям необходимо защищать при помощи шифрования. Можно, конечно, использовать самоподписанные сертификаты или бесплатные сертификаты Let's Encrypt, но у них есть существенные недостатки: - Ограниченный срок действия - Бесплатные сертификаты Lets' Encrypt рассчитаны на 90 дней. Для автоматического перевыпуска необходимо настроить планировщик, который будет запускать скрипт автоматического перевыпуска или принимать настройки центра сертификации, которые смогут вносить изменения в конфигурацию ваших серверов. - Не все домены можно защищать сертификатами Let's Encrypt - Эти сертификаты - Отсутствие технической поддержки - На сайте Let's Encrypt есть только документация на английском языке. Некоторые вопросы выпуска и использования есть на тематических форумах. - Нет расширенных проверок - При выпуске сертификата проверяется только принадлежность домена клиента. Таким образом, кто угодно в интернете может создать сертификат с названием любой организации. - Проблемы с поддержкой в браузерах - При использовании сертификатов Let's Encrypt некоторые браузеры выводят сообщения о том, что браузер не доверяет этому сертификату. В основном, это происходит при использовании устаревших браузеров и операционных систем. - Самоподписанные сертификаты выводят сообщение "Сертификат безопасности не является доверенным" - Эта надпись будет отпугивать потенциальных клиентов. Такие сертификаты можно испольльзовать только при обмене данными между пользователями, которые знают о самоподписанном SSL-сертификате и подтвердили его в браузере. - Самоподписанные сертификаты не подтверждают реально компании - Они лишь обеспечивают безопасную передачу данных Доверенные сертификаты – единственное надежное решение для защиты веб-приложений. Провайдеры облачных услуг могут предложить выпуск доверенных сертификатов SSL из панели управления. ## Политики безопасности Виртуальная инфраструктура повышает степень интеграции ИТ-средств, при этом одновременно уменьшая количество физического оборудования. Но количество сетевых приложений, сервисов остается таким же и даже большим. Поэтому защищать виртуальную инфраструктуру нужно комплексно, комбинируя сетевые и локальные средства защиты. Можно использовать следующие защитные механизмы: - средства сетевой аутентификации и авторизации пользователей; - межсетевое экранирование как внутри сервера виртуализации между гостевыми машинами, так и по периметру виртуальной инфраструктуры; - системы регистрации, сбора и корреляционного анализа событий безопасности; - средства разграничения доступа и делегирование полномочий к виртуальным машинам - системы контроля целостности конфигураций распределенных компонентов виртуальной инфраструктуры; - средства антивирусной защиты; - средства управления доступом к элементам виртуальной инфраструктуры. Следует иметь ввиду, что политика безопасности, привязанная к таким физическим атрибутам, как физический сервер, IP-адрес, MAC-адрес не работает в облаке, так как провайдер облачных услуг может их изменить. Политику безопасности следует привязать к логическим атрибутам. Становятся важными идентификация, групп или роль пользователей, а также чувствительность нагрузки. Модель контроля доступа должна быть основана на пользователе. Контроль сетевого доступа (Network Access Control — NAC) определяет пользователей и к чему у пользователей есть доступ. Контроль доступа должен учитывать, что пользователи могут прийти из любого места в Интернет, в любое время, с любого устройства, а также запрашивать доступ одновременно с разных устройств. ## Антивирусная защита Технологии виртуализации порождают ряд новых рисков информационной безопасности. Типичным примером атаки на облачные среды является "антивирусный шторм", который вызывает одновременный запуск множества антивирусов. Такой шторм может привести к нарушению работоспособности виртуальной машины. Высокая доступность виртуальных машин и приложений может создать множество возможностей для злоумышленников. При этом одна незащищённая или зараженная виртуальная машина может стать источником угрозы для всей виртуальной инфраструктуры. Традиционные средства защиты, например, агентские антивирусы, не всегда применимы в условиях виртуализации. Стоит выделить три основных подхода к антивирусной защите виртуальной инфраструктуре. - Первый подход состоит в том, что виртуальная среда предоставляет специальный программный интерфейс для контроля виртуальных машин через гипервизор, а антивирус используется им, перенаправляя всю защиту на специализированную виртуальную машину. Это позволяет отказаться от использования антивирусных агентов на виртуальных машинах. - - Второй подход заключается в работе по старой схеме с использованием антивирусных агентов, которые нужно обновлять и настраивать. Но вместе с тем производители антивирусов стараются предоставить новые возможности для оптимизации исполнения агентов в виртуальной среде. - - Третий подход заключается в том, чтобы не отказываться от агентов полностью, делать их максимально легковесными и простыми для исполнения, но в то же время большую часть аналитики реализовывать на специализированной виртуальной машине. Этот более универсален, но в некоторых случаях может уступать первым и вторым подходам. ## Системный мониторинг Так как виртуальная машина работает с виртуальным аппаратным обеспечением, за которым нет необходимости следить также, как и за физическим, можно удалить все программы-агенты аппаратного обеспечения при переводе физического сервера на виртуальную платформу. Кроме того, виртуальные машины загружаются быстрее физических, и из-за этого система мониторинга может не успеть обнаружить перезагрузку виртуальной машины, если ее интервал сбора данных окажется слишком большой. Можно выделить следующие критерии работоспособности, которые будут собирать системы мониторинга: ## Мониторинг производительности Традиционные системы сбора данных о производительности часто некорректно работают на виртуальных машинах, поэтому для мониторинга необходимо использовать специализированные средства, которые могут быть как встроенными в платформу виртуализации, так и разработанными специально для мониторинга виртуальной инфраструктуры. Для оценки производительности виртуальных машин используются следующие критерии: Для виртуальных машин Windows: - доступный объем памяти, мегабайт; - среднее время на операцию записи, секунд (логический диск); - среднее время на операцию записи, секунд (диск); - среднее время на операцию чтения, секунд (логический диск); - среднее время на операцию перемещения, секунд (логический диск); - среднее время на операцию чтения, секунд (диск); - среднее время на операцию перемещения, секунд (диск); - текущая длина очереди диска (логический диск); - текущая длина очереди диска (диск); - процент времени простоя диска; - ошибка или повреждение файловой системы; - мало свободного пространства на логическом диске (в процентах); - мало свободного пространства на логическом диске (в мегабайтах); - процент времени простоя логического диска; - страниц памяти в секунду; - процент используемой пропускной способности чтения; - процент используемой общей пропускной способности; - процент используемой пропускной способности записи; - процент используемой выделенной памяти; - процент времени простоя диска; - работоспособность службы DHCP-клиента; - работоспособность службы DNS-клиента; - работоспособность службы RPC; - работоспособность службы сервера; - общий процент использования ЦП; - работоспособность службы журнала событий Windows; - работоспособность службы брандмауэра Windows; - работоспособность службы удаленного управления Windows. Для виртуальных машин Linux: - время обращения к диску (с) - время чтения с диска (с) - время записи на диск (с) - работоспособность диска; - свободное пространство на логическом диске; - свободное пространство на логическом диске (в процентах); - свободные дескрипторы на логическом диске (в процентах); - работоспособность сетевого адаптера; - общее процессорное время в процентах; - доступный для операционной системы объем памяти, мегабайт. ## Резервное копирование Виртуализация усложняет задачу резервного копирования. С одной стороны, можно продолжать выполнять резервное копирование с помощью традиционных средств путем установки на каждую виртуальную машину агента, который будет копировать файлы в нужное место. Этот метода надежен, но в условиях виртуальной среды может работать некорректно. При одновременном запуске агентов на всех виртуальных машинах возникает "шторм", в ходе которого каждая виртуальная машина стремится захватить все ресурсы сервера для выполнения задачи резервного копирования. Другой подход состоит в том, что резервное копирование может выполняться на уровне сервера виртуализации. В этом случае копирование данных из виртуальных машин может проходить гораздо быстрее. Одной из основных задач системного администратора является резервное копирование данных, находящихся на рабочих станциях и ноутбуках. Ведь в случае хищения ноутбука данные могут попасть к злоумышленникам, а пользователи редко сами принимают шифрование. Особого внимания заслуживает тема дедупликации. Как мы уже писали, новые виртуальные машины часто создаются из шаблонов, в результате чего данные на дисках виртуальных машин в значительной степени совпадают. Дедупликация позволяет находить одинаковые блоки на дисках и в резервной копии сохранять только один экземпляр. Если используется технология VDI (инфраструктура рабочих столов), все обрабатываемые данные будут находиться в виртуальных серверах или хранилищах на стороне облачного провайдера. Таким образом, резервное копирование производится в облаке и в случае кражи клиентского устройства данные не попадут в чужие руки. ## Оптимизация виртуальных жестких дисков Подобно тому, как на физических серверах необходимо производить дефрагментацию жестких дисков, в виртуальных машинах необходимо производить сжатие виртуальных дисков. Сжатие (compact) применяется к динамическим расширяемым и разностным виртуальным жестким диска. Команда Optimize-VHD уменьшает размер VHD-файла, удаляя пустое пространство, оставшееся после удаления данных с виртуального жесткого диска. Кроме того, эта команда перестраивает блоки для более эффективного использования дискового пространства, что также уменьшает размер VHD файлов. ## Перенос виртуальных серверов из других систем Что делать, если уже есть виртуальная инфраструктура в облаке, но по каким-то причинам ее нужно перенести к другому провайдеру? Здесь поможет функция экспорта виртуальных машин, . При переносе виртуальных машин из облака Amazon S3 можно воспользоваться корзиной (bucket) в панели управления Amazon S3. Если виртуальная инфраструктура была создана в облаке Microsoft Azure, придется использовать специальный командлет PowerShell Save-AzureVhd, а если в Hyper-V, то встроенной функцией экспорта оснастки "Управление Hyper-V". Также можно экспортировать виртуальный сервер в файл формата OVA/OVF(открытый стандарт для хранения и распространения виртуальных машин), а потом импортировать полученный файл с помощью панели управления нового провайдера. . ## Настройка многофакторной аутентификации Для безопасного доступа к облачной инфраструктуре одного пароля уже недостаточно. Многофакторная проверка подлинности предоставляет дополнительную проверку подлинности в дополнение к учетным данным пользователя. К возможным опциям многофакторной подлинности относятся: - мобильные приложения; - телефонные звонки; - текстовые сообщения. ## Виртуальная инфраструктура – возможности или риски? Несмотря на то, что администратору виртуальной инфраструктуры больше не нужно заботиться о физическом оборудовании, забот у него не становится меньше. Администрирование виртуальной инфраструктуры может потребовать большего внимания, чем физической, поскольку инфраструктура усложняется, добавляется множество задач. Виртуализация несет в себе как новые возможности, таки и новые риски, которые необходимо учитывать. https://serverspace.by/about/blog/cod-v-oblachnom-biznese.md Основная задача такого ЦОД заключается в обработке и хранении информации [Центры обработки данных (ЦОД)](https://serverspace.by/infrastructure.md) – это сложная система, которая состоит из целого комплекса компьютерного и телекоммуникационного оборудования, инженерных конструкций, компьютерных программ, организационных процессов и высококвалифицированного персонала. Основная задача такого ЦОД заключается в обработке и хранении информации. Сердцем ЦОД являются серверы с программным обеспечением, системами охлаждения и безопасности. Облачные ЦОД – это комплексы, которые предназначены для аренды вычислительных мощностей, которые предоставляются заказчику как Интернет-сервис. В таких комплексах заказчики могут самостоятельно настраивать систему в соответствии с необходимыми характеристиками. Основными тремя услугами, предоставляемых облачными ЦОД, являются SaaS (Software as a service — ПО как услуга), Paas (Platform as a Service — платформа как услуга) и IaaS (Infrastructure as a Service — инфраструктура как услуга). Ключевые требования к облачным ЦОД: - высокий уровень надежности; - защита данных; - высокая производительность; - необходимые ресурсы для хранения большого количества информации; - автономная работа; - возможность расширения и модернизации. ## Ключевые элементы ЦОД Структура ЦОД включает в себя ряд систем, без которых невозможна обработка и хранение данных. Эти системы включают в себя следующее: - ИТ-инфраструктура ЦОД - инженерные системы - безопасность - управление и мониторинг. Рассмотрим эти системы более внимательно. ### ИТ-инфраструктура ЦОД ИТ-инфраструктура представляет собой комплекс серверов, систем хранения и телекоммуникационного оборудования, объединенных в общую систему. ### Инженерные системы Инженерные системы ЦОД можно разделить на две группы: - Электроснабжение - Специальное оборудование должно обеспечить не только бесперебойную подачу электричества, но и в случае аварии на линиях электропередач (ЛЭП) или электростанции перейти на автономное питание. Для этого используют различные источники бесперебойного питания (ИБП) и генераторы. В современных крупных ЦОД используются динамические источники бесперебойного питания, которые сочетают в себе функции и ИБП, и генераторы. Динамические ИБП состоят из электромашины, накопителя энергии и дизельного генератора. Если электроэнергия исправно подается в ЦОД, электромашина работает в режиме электродвигателя и вращает вал гигантского маховика, запася энергию. В случае аварии на ЛЭП или электростанции этот маховик продолжает вращать вал, а электромашина переходит в режим генератора и преобразует энергию вращения в электричество. В этот же момент запускается дизельный генератор. Дизель подключен к общему валу. И теперь дизель снабжает генератор кинетической энергии. Такая схема проста, надежна и не требовательна к климатическим условиям. Динамические источники бесперебойного питания обеспечивают устранение любых проблем с качеством электропитания. - Охлаждение - Мощное оборудование во время работы выделяет огромное количество тепла. Для охлаждения этого оборудования в крупных ЦОД используются прецезионные кондиционеры на холодоносителе. В таких кондиционерах воздух охлаждается за сет циркуляции в нем холодоносителя, охлажденных в специальных холодильных машинах – чиллерах. Также широко используются межстоечные кондиционеры. Такие кондиционеры находятся в рядах стоек с серверным оборудованием. Кондиционеры забирают теплый воздух из горячих коридоров и выбрасывают его через панели в холодный коридор, откуда холодный воздух поступает к серверам через перфорированные панели. ### Безопасность Одно из важнейших составляющих ЦОД – это система безопасности. Для того, чтобы обеспечить сохранность данных и предотвратить доступ к ним злоумышленников через Интернет, облачные провайдеры используют новейшие антивирусное ПО и другие программы защиты данных Чтобы предотвратить проникновение посторонних лиц, разрабатывается и внедряется система доступа, методы противодействия взлому и физическому проникновению к оборудованию, видеонаблюдение, противопожарная система. ### Управление и мониторинг ЦОД Комплексные системы управления и мониторинга являются важнейшими составляющим ЦОД. Такие системы в автоматическом режиме контролируют работоспобность всего оборудования и параметров окружающей среды, таких как температура, влажность, напряжение и частота тока. Системы мониторинга умеют даже прогнозировать отказ оборудования и заранее предупредить персонал ЦОД. Важнейшей составляющей рабочего процесса в ЦОД является диспетчеризация. Она позволяет информировать персонал о внештатной ситуации при помощи современных технологий связи, таких как СМС сообщений или автоматического дозвона. ## Классификация ЦОД У заказчики облачных услуг всегда есть требования к предоставляемой инфраструктуре. В основном речь идет о надежности и безопасности. В 1993 году организация Uptime Institute (UTI) выработала способы оценки эффективности ЦОД. Были проанализированы факторы, которые определяют надежность и безопасность. В результате появилась стандартизованная методология, которая определяет четыре уровня стандарта Uptime Institute. - Tier 1 предполагает отсутствие резервирования систем электропитания и охлаждения машинного зала, отсутствие резервирования серверных систем. Фактически инженерная инфраструктура просто должна быть собственной и иметь подстраховку на случай перебоев с электропитанием (генератор). Уровень доступности — 99,671 %, что соответствует примерно 28,8 часам простоев ежегодно. - Tier 2 основывается на Tier 1, но предполагает резервирование всех активных систем. Это уже более надежный класс, который все же допускает около 22 часов простоев в год (99,75 %). - Tier 3 уже может считаться работающим без остановок. На этом уровне обязательно должны быть зарезервированы все инженерные системы (включая пассивные), должны обеспечиваться возможности ремонта и модернизации без остановки сервисов. Tier 3 фактически предполагает постройку второго ЦОД внутри того же здания — дублирующая СКС, подводы электричества, отдельная система охлаждения, у всего серверного оборудования независимые подключения к нескольким источникам питания. Допускается не более 1,6 часа простоев в год (99,98 %); - Tier 4 является дальнейшим развитием третьего уровня и, помимо резервирования всех систем, предполагает сохранение уровня отказоустойчивости даже при аварии. Схема позволяет гарантировать непрерывность работы при любых умышленных или случайных поломках, допуская простой продолжительностью лишь 0,8 часа ежегодно (99,99 %). ЦОД может быть сертифицирован UTI на соответствие заявленному уровню. Сертификация начинается с чертежей. Сначала владелец будущего ЦОД показывает проектные документы специалистам UTI для сертификации самого проекта, а после постройки и запуска дата-центра приезжают специалисты UTI и производят выездную проверку. Затем следует еще более сложная проверка, которая заключается в оценке реальной работоспособности всех компонентов ЦОД и ее соответствие заявленным значениям. При положительном результате новый объект получает соответствующий своему Tier сертификат и размещается в [каталоге UTI](https://uptimeinstitute.com/TierCertification/certMaps.php). Некоторые ЦОД не проходят сертификацию UTI, поскольку процесс сертификации сложен и дорогой. В таких случаях представители таких ЦОД могут сказать, что сертификата UTI нет, но организация провела собственную внутреннюю сертификацию и оценила надежность на уровне Tier 3 или Tier2+. Владельцы ЦОД разделят надежность систем, оценивая каждую на свой уровень готовности. Так, система охлаждения может формально соответствовать Tier-3, а электроснабжение – на Tier2. В таком случае для презентации указывается значение Tier-2+. Самостоятельная проверка соответствия ЦОД требует детальной информации об объекте – с чертежами коммуникаций, картами СКС и прочей информацией. Мало кто захочет делиться такой информацией с клиентом. В такой ситуации риск потери данных для заказчика облачных услуг многократно возрастает. В таком случае стоит поинтересоваться планами технического обслуживания облачного ЦОД и задать вопросы как часто происходит плановая замена оборудования и проводится работоспособность всех систем. ## Требования к облачным ЦОД Основа облачного ЦОД – это виртуализация серверов, систем хранения данных (СХД) и коммуникационных систем. ИТ-структура такого ЦОДа должна обеспечивать масштабируемость, которая позволяет обслужить любую возникшую нагрузку, которая может постоянно расти. Еще одно важное условие существования облачного ЦОД – это защита данных и приложений. Чтобы обеспечить безопасность хранимой и обрабатываемой информации, необходимо знать где находится информация, кто должен иметь к ней доступ и кто на самом деле ей пользуется, но эта информация не определятся на уровне отдельного физического устройства. В отличие от корпоративного ЦОДа, который может работать в закрытом контуре, у облачного ЦОД традиционный периметр сети уже "размывается", поскольку ЦОД должен быть доступен для клиентов из Интернет. Именно поэтому безопасность необходимо обеспечивать в любой конечной точке – и на рабочих местах в офисах, и на мобильных устройствах. Неуверенность в реальной возможности облачного провайдера обеспечить безопасность является одним из сдерживающих факторов развития облачных услуг. Следующе отличие "облачного" ЦОДа состоит в том, что управление оборудованием и все административные процедуры должны быть максимально автоматизированы. Для этого в ЦОД необходимо установить соответствующее программное обеспечение, которое и позволяет предоставить необходимые заказчику ресурсы и услуги одним нажатием мыши из панели управления. Таким образом, перед началом использования облачного ЦОД необходимо решить вопросы, связанные с обслуживанием клиентов будущего облака. Наиболее эффективно они решаются в случае создания виртуальной клиентской инфраструктуры – VDI (Virtual Desktop Infrastructure). Программное обеспечение также должно автоматически управлять такими функциями, как работа с сертификатами, сжатие трафика, мониторинг доступности приложений, балансировка нагрузки, контроль и управление безопасностью, создание VPN и многими другими. ## Как выбрать идеальный облачный ЦОД Популярность облачных услуг и услуг колокейшена (размещения собственного оборудования заказчика в коммерческом ЦОД), облачных провайдеров становится все больше и больше. Не все из них строят свои дата-центры в соответствие с отраслевыми стандартами и сложившимся мировым опытом. Поэтому будущим клиентам облачных ЦОД стоит обратить внимание на следующие моменты. - Определите требования к доступности бизнес-приложений. В зависимости от этих требований включайте в SLA (соглашение об уровне услуг) эти приложения вместе с метриками и методикой измерения доступности. - При выборе провайдера лучше выбирать ЦОД, имеющий официальный сертификат т UTI Operational Sustainability для заявленного уровня надежности. - Обязательно посетите выбранный ЦОД, чтобы самостоятельно оценить надежность и качество систем и сервисов. - Если рассматриваемый ЦОД оценен владельцем как Tier2/3+, то плюс можно не рассматривать. Надеемся, что эти рекомендации помогут сделать выбор облачного провайдера более осознанным. https://serverspace.by/about/blog/panel-upravleniya-virtualnoy-infrastrukturoy.md Панели управления облачной инфраструктурой могут быть разработаны как самим провайдером, так и представлять адаптированные решения производителей Что делать после того, как вы заключили договор на предоставление услуги IaaS? Открывать панель управления! Сегодня будем говорить об использовании панели управления виртуальной инфраструктуры. Панели управления облачной инфраструктурой могут быть разработаны как самим провайдером, так и представлять адаптированные решения производителей облачных систем, таких как VMware vCloud Director или Microsoft System Center Virtual Machine Manager. Панель управления виртуальной инфраструктурой может предоставлять большое количество функций, которые мы и опишем в этой статье. ## Управление виртуальными серверами ### Создание виртуальных серверов Виртуальный сервер – это почти такой же сервер, как и обычный, и его работа с ним начинается с установки операционной системы – Windows или UNIX. Но установка операционной системы отличается от установки обычного, "железного" сервера. Операционную систему невозможно установить с обычного CD или DVD-диска или загрузочной флешки. Операционную систему можно установить из ISO-файла, то есть специального файла, содержащего образ загрузочного диска. Создать такой файл из обычного загрузочного DVD-диска можно при помощи специальных программ- ImgBurn, ISO Master, или UltraISO. Затем этот файл загружается в хранилище, расположенное у облачного провайдера. Во время установки операционной системы на виртуальную машину можно выбрать этот файл из хранилища. Виртуальные машины создаются при помощи мастера, который предлагает последовательность шагов. Во время работы мастера заказчик задает название машины и указывает необходимые характеристики: - Операционная система - Количество виртуальных процессоров - Количество ядер в сокете - Объем оперативной памяти - Объем жесткого диска - Тип контроллера жесткого диска - Количество сетевых интерфейсов Другой способ установки операционной системы – шаблоны. Шаблон – это полностью готовая к работе операционная система, и приложения, необходимые для решения задач заказчика. Например, чтобы создать веб-сервер на виртуальной машине, необходимо установить операционную систему, затем установить необходимые службы, такие как система управления базами данных, включить поддержку таких языков программирования, как PHP или Python, затем установить службу веб-сервера и закачать содержимое веб-сайта. Шаблон уже содержит все необходимые компоненты веб-сервера, и после разворачивания виртуальной машины из шаблона заказчику остается только добавить в веб-сервер содержимое веб-сайта. Шаблоны могут быть созданы облачным провайдером или самим заказчиком. Условно шаблоны можно разделить на несколько категорий по сферам использования: - Сервера приложений - Предустановленные серверы приложений, таких как веб-серверы. - Администрирование - Шаблоны, обеспечивающие поддержку сетевого взаимодействия, управление рабочими станциями и серверами, системы мониторинга сети, серверов и приложений. - Коммуникация и управление контентом - Эти шаблоны позволяют быстро создать серверы систем управления контентом (Content Management System, CMS), систем управления отношений с клиентами (Client Relationship Management, CRM), веб-приложения для создания различных хранилищ знаний (Wiki) и репозитории. - Безопасность и сетевое взаимодействие - Предустановленные средства по защите сети (брандмауэры), антиспамовые фильтры или антивирусы. - Серверы баз данных и почтовые серверы - Эти шаблоны включают в себя бесплатные серверы баз данных и почтовые серверы, уже снабженные средствами безопасности. Эти серверы можно использовать с другими системами, расположенными в виртуальной инфраструктуре, например, с веб-приложением или антиспамовым фильтром, также созданным из шаблона. - Операционные системы - Шаблоны содержат уже настроенные виртуальные машины с установленной операционной системой Windows Server или Linux. Заказчику остается добавить информцию о лицензии (в случае систем Windows) и самому установить необходимые службы. ### Изменение конфигурации сервера Панель управления может добавить или уменьшить размер оперативной памяти и число процессов, увеличить размер дисков в зависимости от потребностей. При создании виртуальной машины заказчик может выбрать диски подходящего типа, разным соотношением скорость/стоимость. Также можно перенести данные с одного диска на другой, без перезагрузки сервера. К каждой виртуальной машине можно подключить несколько дополнительных дисков. Некоторые провайдеры разрешают создавать виртуальные машины с сохранением прежних IP-адресов. При пересоздании виртуальной машины можно изменить версию или типа операционной системы. ### Клонирование виртуальных машин В панели управления имеется возможность клонировать серверы, то есть создавать копии имеющихся виртуальных машин, без необходимости устанавливать операционную системы из шаблона или дистрибутива. При помощи клонирования можно быстро получить необходимое количество виртуальных серверов, например, для создания отказоустойчивого кластера. ### Создание снэпшотов виртуальных машин Снэпшот (snapshot) – это мгновенный снимок виртуальной машины. Такие снимки позволяют быстро вернуть компьютер в то состояние, в котором он был в момент создания снимка. Это позволяет тестировать изменения в виртуальной машине, и быстро вернуть все как было в случае, если что-то пойдет не так. Снимки могут немного замедлить работу виртуальной машины, и после того как изменение принято, и вы убедились что все идет как надо, рекомендуется эти снимки удалить. ### Резервное копирование виртуальных серверов Резервное копирование – это услуга, которая автоматически создает резервные копии виртуальных серверов. С помощью конфигуратора можно настроить расписание резервного копирования и в случае аварии в архиве будет работоспособная копия виртуальной машины. ### Удаление виртуальных машин После того как жизненный цикл проекта подошел к концу, или принято решение об удалении виртуальной машины из виртуальной инфраструктуры, ненужную виртуальную машину нужно удалить. Удаление виртуальной машины – неотменяемая и необратимая операция, восстановить удаленную машину невозможно. Если к виртуальной машине были подключены созданные ранее диски, то при удалении виртуальной машины эти диски будут отключены и сохранен. Данные на этих дисках останутся, и в дальнейшем эти диски можно будет подключить к другой виртуальной машине. ## Управление виртуальной сетью После создания виртуальных машин в панели управления можно соединить между собой при помощи внутренней сети с необходимой пропускной способностью – от 1 Гб/с до 10 Гб/с, или дать возможность принимать запросы через Интернет. Облачные технологии позволяют строить инфраструктуры любой сложности – от соединения двух серверов до многоуровневой корпоративной инфраструктуры, состоящей из частных и публичных сетей и подсетей. Например, облачная сеть можно разделить следующим образом: - Общая публичная сеть - Серверы в общей публичной сети доступны из Интернет. - Клиентская публичная сеть - Серверы в публичной сети доступны из Интернет, и им выдается блок IP-адресов. - Клиентская частная сеть - Серверы в клиентской частной сети не доступны из Интернет, они доступны только для персонала. В панели управления можно настроить различные параметры виртуального брандмауэра, который будет ограничивать запросы к вашей виртуальной инфраструктуре. Кроме того, там можно настроить VPN-каналы, в случае если используется гибридная облачная система. В панели также можно настроить DHCP-сервер для клиентской частной сети, без необходимости разворачивать собственную службу DHCP. ## Веб-консоль виртуальной машины Веб-консоль позволяет видеть экран виртуальной машины до загрузки и во время загрузки операционной системы. Это позволяет управлять сервером даже при отсутствии сетевого соединения с виртуальной машиной и восстанавливать работоспособность сервера в случае аварии. При помощи веб-консоли можно также войти в BIOS виртуальной машины и настроить там порядок загрузки операционной системы. ## Мониторинг виртуальной инфраструктуры Мониторинг виртуальной инфраструктуры позволяет собирать и хранить различные показатели по производительности виртуальных машин. Эти показатели включают в себя данные по использованию процессора, памяти, дисков, показатели задержек при операциях с дисками и прочую информацию. ## Мобильные приложения для доступа к панели управления Разработчики панелей управления часто предлагают мобильные приложения для смартфонов Android и Apple, которые позволяют системным администраторам иметь доступ к управлению виртуальным серверам из любого места, где есть Интернет. Такие приложения позволяют контролировать ресурсы сервера, включать/выключать или перезагружать виртуальные машины. ## АPI Интерфейс прикладного программирования (API) позволяет автоматизировать управление облачной инфраструктурой с имеющимися у заказчика информационными системами. ## Какой должна быть панель управления? Панель управления виртуальной инфраструктурой должна быть такой, чтобы заказчики могли самостоятельно создавать и управлять своей виртуальной инфраструктурой. Она должна обеспечивать: - Простой и удобный пользовательский интерфейс. - Автоматизацию управления при помощи API. - Интеграцию с другими облачными системами и информационными системами заказчика. https://serverspace.by/about/blog/check-list-pri-vibore-oblachnogo-provaidera.md Так как же выбрать подходящего поставщика? Ответ заключается в определении ключевых факторов, необходимых для вашего предприятия Рынок облачных провайдеров довольно большой, со множеством поставщиков, предлагающих еще большее количество услуг — от таких гигантов, как Microsoft, Amazon и Google, до более мелких компаний, предлагающих ограниченный набор услуг. Так как же выбрать подходящего поставщика? Ответ заключается в определении ключевых факторов, необходимых для вашего предприятия. Прежде, чем вы можете выбрать подходящего провайдер, вам необходимо понять ваши бизнес-потребности. Проявление ваших требований и ожиданий перед переходом к чек-листу позволит выделить из чек-листа только те критерии, которые соответствуют вашим потребностям. Когда дело дойдет до выбора облачного провайдера, требования и критерии оценки, которые будет использовать ваша компания, будут уникальными. Тем не менее, есть некоторые общие критерии, на которые следует обратить внимание при любой оценке провайдера. Эти критерии можно собрать в 8 разделов, которые помогут сравнивать поставщиков услуг и выбрать ту компанию, которая обеспечит те преимущества, которые ваша организация ожидает получить при использовании облачных услуг. - Предоставляемые функции - Стоимость услуг - Опыт работы - Сертификации и стандарты - Период для тестирования - Оборудование - Надежность - Размещение дата-центров - Панель управления и личный кабинет - Техническая поддержка - Завершение контракта ## Предоставляемые функции - IaaS (Infrastructure as a Service-Инфраструктура как Услуга) - Этот сервис предоставляет заказчику в аренду вычислительные ресурсы в виде виртуальной инфраструктуры. В нее могут входит виртуальные серверы, системы хранения данных, виртуальные коммутаторы и маршрутизаторы. - PaaS (Platform as a Service-Платформа как Услуга) - Клиент получает полноценную виртуальную платформу, включающую в себя различные инструменты и сервисы. Такую платформу клиент может настроить под себя, сделав из нее площадку для [управления бухгалтерией](https://serverspace.by/services/vps-server/1c.md) или автоматического тестирования. - SaaS (Software as a Service-Программное обеспечение как Услуга) - Эта услуга заключается в предоставлении программного продукта, работающего в Интернет, такого, как электронную почту. - CaaS (Communications as a Service-Коммуникация как Услуга) - Данный сервис включает в себя предоставление клиентам различных инструментов для коммуникации. Это может быть IP-телефония, быстрые сообщения или видеосвязь. - CaaS (Container as a Service-Контейнер как Услуга) - Этот сервис позволяет заказчикам работать с контейнерами при помощи API облачного провайдера или веб-панели. - DRaaS (Disaster Recovery as a Service-Аварийное Восстановление как Услуга) - Сервис по предоставлению катастрофоустойчивых решений в облаке провайдера. Инфраструктура провайдера является «запасной серверной», на которые постоянно реплицируются данные с основной площадки клиента. При выводе из строя основной площадки все сервисы запускаются в облаке провайдера. - BaaS (Backup as a Service-Резервное Копирование как Услуга) - Этот вид сервиса предоставляет резервное копирование данных заказчика в облако провайдера. Провайдер предоставляет место для хранения резервных копий и инструменты для резервного копирования. - BaaS (Backend as a Service-Бэкэнд как услуга) - Эта услуга заключается в предоставлении клиентам полноценной среды разработки программного обеспечения в облаке. Эта среда включает в себя готовые инфраструктурные функции и решения, которые облегчают работу по разработке программного обеспечения. - DBaaS (Data Base as a Service-База Данных как Услуга) - Этот сервис заключается в предоставлении баз данных в облаке заказчику. - MaaS (Monitoring as a Service-Мониторинг как Услуга) - Этот вид облачных услуг помогает организовать мониторинг ИТ-инфраструктуры с помощью инструментов в облаке провайдера. - DaaS (Desktop as a Service-Рабочий стол как Услуга) - Предоставление пользователям удаленных рабочих столов. ## Стоимость услуг Стоимость услуг облачного провайдер складывается из количества ресурсов, используемых заказчиком. Чем больше ресурсов потребляет виртуальный сервер, или чем больше посетителей посещают сайт, размещенный у провайдера, тем больше оплата. Чем лучше качество оборудования и дата-цента, тем выше стоимость услуг. Некоторые провайдеры снижают цены за счет того, что их виртуальные серверы слабее, чем у конкурентов, или на производительность виртуального сервера влияют другие виртуальные серверы, размещенные на том же физическом сервере. Зачастую провайдеры не говорят о том, какая технология виртуализации используется, то есть предоставляется услуга VPD или VPS. Различие между этими технологиями заключается в том, что при использовании технологии VPS другие виртуальные машины оказывают большее влияние на ваш виртуальный сервер, чем при использовании технологии VDS. ## Опыт работы компании Компания с небольшим опытом может не справиться с высокой нагрузкой, и клиенты в таком случае потеряют и время, и данные. ## Сертификация и стандарты Если деятельность вашей компании связана с процессами обработки или передачи данных платежных карт, то необходимо выбрать такого провайдера облачных услуг, инфраструктура которого соответствует требованиям стандарта PCI DSS. Компаниям, работающая с такой информацией, как паспортные данные, ФИО и телефоны клиентов, будет интересна услуга IaaS, сертифицированная для работы с персональными данными. Также желательно, чтобы облачный провайдер был сертифицирован по стандартам безопасности ISO 27001; ISO 9001. Эти сертификаты дают гарантию, что облачные провайдер обеспечивает системно обеспечивать конфиденциальность, целостность и доступность информационных ресурсов. ## Период для тестирования Если есть тестовый период, то можно проверить качество предоставляемых услуг до того, как будет произведена оплата. Если такого периода нет, то можно внести небольшую сумму за небольшой период времени для проверки качества. ## Оборудование Надежнее всего серверы известных брендов. При их сборке используются комплектующие высокой надежности, которые могут выдержать высокие нагрузки. Перед продажей такие серверы проходят тестирование и сертификацию. Также при выборе провайдера стоит обратить внимание на возможность выбора дисков для вашего виртуального сервера или виртуальной инфраструктуры. В облачных хостингах обычно используют HDD, SSD и самые быстрые на сегодняшний день диски NVMe SSD. Эти диски эффективнее работают с большим количеством одновременных запросов. Второе место по популярности занимают SSD-диски. Они походят для работы популярных CMS-систем. Скорость чтения/записи у них ниже, чем у NVM-e дисков, но гораздо выше HDD-дисков. На третьем месте находятся HDD диски. Их единственное преимущество – это большой объем дискового пространства, но скорость чтения/записи у них намного ниже, чем у SSD или диски NVMe SSD. ## Надежность Обязательными атрибутами надежности провайдера облачных услуг являются: - уровень Tier III и выше для дата-центра; - резервирование узлов инфраструктуры для отказоустойчивости в рамках пула; - высокий уровень физической безопасности дата-центров (камеры, ограничение доступа в серверные, охрана). Обязательно узнайте про наличие защиты от DDoS-атак. Такая атака позволит вашим конкурентам вывести из строя ваш сайт, сервер или виртуальную инфраструктуру. Хорошо, если провайдер предоставляет такую услугу, но если не предоставляет, то возможно использование облачных систем безопасности, которые предотвращают такие атаки. Обычно между заказчиком и провайдером облачных услуг заключается договор об уровне обслуживания — SLA (Service Level Agreement). В этом договоре описываются услуги, предоставляемых заказчику со списком параметров, а также методы измерения этих параметров. Также в этом договоре включены санкции, которые применяются при нарушении соглашения. ## Размещение дата-центра При выборе хостера облачных услуг следует учитывать аудиторию сайтов и приложений. Чем ближе серверы будут расположены к пользователям ресурса, тем быстрее будет отклик. Если хостинг располагается в другой стране, необходимо учитывать местное законодательство. Если разместить контент, не разрешенный в данной стране, легко стать жертвой судебного преследования. Например, не все страны разрешают азартные игры. В таком случае, если вы хотите разместить приложения для игры в покер, то не стоит искать облачного провайдера в такой стране. Стоит также обратить внимание на возможность посещения ЦОД. Многие провайдеры предлагают экскурсии на свои площадки, в этом случае стоит посетить эту площадку. Панель управления и личный кабинет Панель управления должна быть понятной с первого взгляда. Ее функции: - создание виртуальных серверов; - выбор шаблонов с операционными системами и предустановленными приложениями (LAMP, CMS, торговые системы и т.д.); - изменение конфигурации виртуального сервера; - размещение собственных ISO-файлов; - перезагрузка серверов; - удаленный доступ к виртуальному серверу через веб-браузер - создание SSH-ключей; - резервное копирование виртуальных серверов; - создание снимков (snapshot) виртуальных серверов; - клонирование виртуальных серверов; - управление DNS-хостингом; - подробная статистка нагрузки. Функции личного кабинет должна иметь следующие возможности: - Прием платежей – должны поддерживаться все виды оплаты услуг: банковские карты, возможность выставления счета, электронные деньги. - Изменение и восстановление пароля для доступа к личному кабинету. - Добавление и редактирование регистрационной информации - Связь с технической поддержкой через веб-форму. - Журнал операций, отражающий все действия, совершаемые из личного кабинета. - Статистика по оказанным услугам. - Создание учетных записей и назначение ролей ## Техническая поддержка Само по себе существование технической поддержки не дает гарантии быстрой помощи. Перед заключением договора на предоставление облачных услуг необходимо убедиться в том, что техническая поддержка будет доступа в режиме 24/7, то есть круглосуточная и без выходных. Второй вопрос, который необходимо выяснить – язык общения со специалистами технической поддержки. Если облачный провайдер находится в другой стране, то важно обеспечить такую коммуникацию со специалистами технической поддержки, чтобы не было языковых проблем, мешающих быстрому решению проблем. ## Завершение контракта Обязательно поинтересуйтесь что произойдет по завершению облачного договора. - Какова процедура возврата данных и приложений? В каком формате будут возвращены данные? В какой срок? - Какова процедура уничтожения виртуальных машин? Надеемся, что предоставленный чек-лист поможет вам в выборе именно того провайдера, который нужен вашему бизнесу. https://serverspace.by/about/blog/backup-i-snapshot.md В нашей статье мы разберемся, в чем между ними разница и в каких случаях их можно применять До появления виртуальных машин все администраторы делятся на тех, кто еще не делает бэкапы и тех кто уже делает бэкапы. С появлением гипервизоров появилась еще две группы – тех, кто еще не делает снэпшоты, и тех кто уже делает. В нашей статье мы разберемся, в чем между ними разница и в каких случаях их можно применять. ## Резервное копирование (backup) Резервное копирование (bakup) – это создание копии данных. Резервные копии нужны для восстановления утраченной или испорченной информации. Также резервное копирование применяется для архивирования (сохранения данных для использования их в будущем). **Копировать можно:** - отдельные файлы; - группу файлов, объединенных по какому-то признаку; - операционную систему; - диски или разделы дисков (посекторно или поблочно); - виртуальные машины ### Виды резервного копирования Существует несколько видов резервного копирования. **Полное резервное копирование** Во время полного резервного копирования сохраняются все данные. Когда старые бэкапы теряют актуальность, они удаляются целиком, чтобы освободить место. Такое резервное копирование требует много дискового пространства на носителе для резервной копии. Полное резервное копирование занимает много времени и, и поэтому проводится в нерабочее время. Такой способ позволяет сохранить важную информацию, но из-за больших сроков копирования он не очень подходит для восстановления быстро меняющихся данных. Полное резервное копирование для больших объемов рекомендуется сочетать с другими видами создания бэкапов: дифференциальным и инкрементным копированием **Дифференциальное копирование** Дифференциальное создание резервной копии – это копирование только тех файлов, которые были изменены с момента последнего полного копирования. Это позволяет уменьшить объем данных на резервном носителе и при необходимости ускорить процесс восстановления данных. Так как дифференциальное копирование обычно производится гораздо чаще, чем полное, оно очень эффективно, так как позволяет восстанавливать те данные, которые подвергались изменению совсем недавно, и отслеживать изменения файлов с момента полного копирования. **Инкрементное копирование** Этот вид копирования отличается от дифференциального тем, что при первом запуске инкрементного копирования происходит создание резервных копий только тех файлов, которые были изменены с тем пор, как в последний раз выполнялся полный или дифференциальный бэкап. Последующие процессы инкрементного копирования добавляют только те файлы, которые подверглись изменению с момента предыдущего резервирования. При этом изменившиеся или новые файлы не замещают старые, а добавляются на резервный носитель отдельно. Конечно, в этом случае процесс восстановления занимает больше времени, так как нужно последовательно восстановить всю историю изменений файлов. ### Время резервного копирования Для того чтобы правильно планировать резервное копирование, необходимо рассчитать два показателя: RPO и RTO. RPO (recovery point objective) – это максимальный период времени, за который могут быть потеряны данные в результате аварии. Например, у нас есть информационная система, и если произойдет авария, и мы готовы ее восстановить за один час. Это значит, что за этот час новые данные не будут поступать в нашу информационную систему, и RPO равняется часу. Эти данные невозможно восстановить из резервной копии, потому что они не поступали в информационную систему. Показатель RPO говорит нам, как часто делать резервные копии нашей системы. На основании RPO мы можем выбрать нужную систему резервного копирования и какие технологии применять, чтобы вписаться в этот промежуток времени. Можно ли свести его к нулю? Можно, если использовать два хранилища, которые работают зеркально. RTO (recovery time objective) — это промежуток времени, в течение которого система может оставаться недоступной в случае аварии. Например, в серверной произошла авария, и мы хотим, чтобы система была снова доступна через час. Это и есть значение RTO. Мы должны создать такой план аварийного восстановления, чтобы за этот час восстановить работоспособность информационной системы на резервном оборудовании или площадки. Мало рассчитать это время, еще необходимо убедиться в том, что и система резервного копирования, и план аварийного восстановления позволяют достигнуть этих значений. То есть необходимо произвести тестовое восстановление на копии реальных данных. ### Инструменты резервного копирования Все инструменты резервного копирования можно поделить на следующие группы: - Встроенные инструменты - Бесплатные программы - Коммерческие системы - Облачное резервное копирование Встроенные инструменты резервного копирования Современные операционные системы уже включают в себя инструменты резервного копирования. Например, для Windows, начиная с Microsoft Vista, доступна программа Windows Backup And Restore (Архивация и Восстановление). Эта программа позволяет создавать полный бэкап операционной системы с возможностью инкрементного копирования. Windows Backup And Restore позволяет создавать автоматический полный бекап на сменный носитель, оптические диски или в специальное место на удаленном сервере. Для копирования небольшого количества файлов и каталогов часто используется команда xcopy. Эту команду можно использовать с планировщиком Windows. Для UNIX-систем самой популярной программой резервного копирования файлов является утилита rsync. Оно обладает богатыми возможностями, включая инкрементное резервное копирование, обновление всего дерева каталогов и файловой системы, как локальных, так и удаленных резервных копий, сохранение прав доступа к файлам, ссылок и многое другое. Также имеет графический пользовательский интерфейс Grsync, но главное преимущество с Rsync заключается в том, что резервные копии могут быть автоматизированы с использованием сценариев и заданий cron системными администраторами прямо в командной строке. **Бесплатные и платные программы резервного копирования** Существует множество бесплатных и платных программ резервного копирования, которые можно легко найти в интернете. Большинство из них копируют файлы и каталоги, некоторые из них позволяют произвести резервное копирование виртуальных машин и осуществить посекторное копирование носителей. Главное – это перед использованием на реальных данных проверить на тестовой копии тех же самых данных. Кроме того, необходимо проверить можно или восстановить данные из архива. **Облачное резервное копирование ** Существуют решения, которые позволяют копировать в облако не только данные, но и целые виртуальные машины. Так Такие системы, как CommVault или Veeam позволяют делать резервные копии в облако для: - образов виртуальных машин, - конфигураций операционных систем, - баз данных, - файлов, размещенных на серверах и рабочих станциях. При резервном копировании в облако через сеть Интернет особенно важно учитывать значения RPO и RTO, так как каналы с Интернет обычно достаточно медленные. Если ваша виртуальная инфраструктура размещена в облаке, то облачный провайдер может предложить услугу резервного копирования. В таком случае потребителям не потребуется искать, выбирать, покупать и устанавливать программное обеспечение. Для резервного копирования достаточно в панели управлении включить услугу в разделе Backup, затем выбрать период хранения резервных копий и нажать на кнопку Изменить. ## Shapshot – снимки системы Бывают ситуации, когда требуется быстро и полностью вернуть виртуальную машину или отдельный файл в то состояние, в котором виртуальная машина или файл находился на определенный момент, например, до обновления операционной системы, установки нового программного обеспечения или внесения ошибочного изменения. Такую возможность дает технология создания снимков, или снэпшотов (snapshot). При наличии такого снимка можно быстро и полностью "откатить" компьютер или файл в то состояние, в котором он находился в момент создания снимка. Суть этой технологии состоит в следующем. В момент создания снимка файла или виртуальной машины прекращается запись на диск, создавая таким образом снимок диска, а все последующие дисковые операции производятся в отдельном файле. Затем, чтобы получить данные с диска, сначала нужно прочить содержимое снимка диска, а затем учесть все связанные с файлом или виртуальной машиной дисковые операции, записанные в отдельном файле. При записи новых или измененных данных на диск достаточно записать эти данных в отдельные файлы. Если возникнет необходимость вернуть файл или виртуальную машину в исходное состояние, достаточно удалить файлы с изменениями, и продолжить использовать диск с момента создания снимка. Если возможность отката к предыдущем состоянию уже не будет требоваться, накопленные изменения дисков нужно внести в созданный снимок диска, и продолжить использовать этот диск с новыми данными в обычном режиме. **Рассмотрим виды создания снэпшотов.** ### Файловые службы В современных версиях Windows перезапись или удаление файла можно откатить благодаря наличию теневой копии. В теневых копиях (VSS) содержатся записи об изменениях файлов. Копии делаются автоматически каждый час — по умолчанию Windows хранит 64 копии файла. Использовать копии можно без прав администратору. **Вот важные особенности теневых копий:** - Под теневое копирование выделяется 10% емкости раздела, это значение можно изменить. - Теневое копирование включается для тома целиком, и включить его для отдельного каталога нельзя. - Microsoft не рекомендует создавать снимки чаще, чем раз в час. - По умолчанию максимально хранимых снимков для диска — 64. При превышении этого значения служба VSS начинает циклическую перезапись теневых копий и удаляет самые ранние снимки. В UNIX-системах можно использовать файловую систему ZFS, которая предоставляет широкие возможности по созданию и управлению снимками файловой системы. Снимки могут быть сделаны одноразовыми или запланированными как задание cron. В любой момент вся файловая система может быть отброшена до последнего моментального снимка. Старые снимки могут быть клонированы и доступны для восстановления данных из этой версии файловой системы. ### Снэпшоты в виртуальных машинах Виртуальная машина — это файл. Такой файл содержит описание конфигурации виртуальной машины на языке, понятной гипервизору, а также содержимое виртуального жесткого диска, памяти и регистров процессора. Таким образом, с виртуальными машинами можно обходиться точно также, как и с обычными файлами — делать их копии, или создавать с них снимки. Как только создается снимок виртуальной машины, то на диск будет записана копия этого файла. Все, что в виртуальной машине будет изменяться, будет записываться в другой файл. Дальнейшая работа виртуальной машины ведет к модификации этого файла с изменений. В любой момент можно создать новый снимок виртуальной машины, тогда будет создан еще один файл, содержащий изменения. Можно также вернуться назад, на один из сделанных файлов изменений. - Снэпшоты сохраняются рядом с виртуальными дисками, на основе которых создаются снимки. - Снэпшоты быстро растут и могут превысить размер исходных виртуальных дисков, особенно быстро это проихсходит на высоконагруженных серверах и серверах баз данных. - Файлы снэпштотов всегда резервируются динамически, а это негативно отражается на общей производительности, особенно в случае высоконагруженных систем. - Несмотря на то, что теоретически можно создать цепочки из 32 снимков для одной виртуальной машины, не рекомендуется создавать более трех снэпшотов для сохранения производительности и стабильности работы виртуальной машины. - Продолжительность жизни одного снимка не должен превышать 72-х часов. В противном случае, его размер станет очень большой, а виртуальная машина будет работать очень медленно. Такие гипервизоры, как Hyper-V или Wmware vSphere содержат встроенные средства создания снэпшотов. Использование СХД для размещения виртуальных машин и их снэпшотов позволяет снизить влияние снимков на производительность виртуальных машин, благодаря особенному устройству дисковых массивов. Если вы используете виртуальные машины, размещенные в облаке провайдера, то для создания снимков необходимо в панели управления ввести имя снэпшота, и нажать на кнопку "Сделать снимок". ## Выводы Не смотря на то, что снэпшоты — это одна из разновидностей резервного копирования, снэпшоты не могут быть использованы вместо бэкапа, поскольку снэпшоты не содержат полной копии виртуального диска, а только историю изменений. Технология создания снимков была разработана в первую очередь для тестовых систем. Например, вы создаете виртуальную машину, затем изменяете ее конфигурацию или устанавливаете новое программное обеспечение, а затем быстро откатываете изменения, если что-то не работает, или удаляете снэпшот если все в порядке. При создании резервных копий необходимо обратить внимание на следующие моменты. Бэкап важных данных сделует делать в соответствии с правилом 3-2-1: 1. Создавайте три копии важных данных. 2. Две копии должны быть сохранены на различных физических носителях. 3. Одна копия должна храниться отдельно от двух других, в другом здании. Резервные копии необходимо регулярно проверять. Если этого не делать, то можно обнаружить, что в резервной копии нет необходимых данных. Так, например, компания Pixar чуть не потеряла часть важных данных, необходимых для производства мультфильма "История игрушек -2" из-за того, что бэкап, содержащийся на ленте, не был вовремя проверен. [Тут](https://habr.com/ru/company/veeam/blog/193568/) можно ознакомиться с этой историей подробнее. https://serverspace.by/about/blog/kak-formiryetsya-stoimost-vps-hostinga.md Цена хостинга VPS формируется, исходя из самых разных факторов. Большую часть стоимости хостинга составляет оплата разнообразных расходов провайдера облачных услуг [VPS-хостинг](https://serverspace.by/services/vps-server-belarus.md) (Virtual Private Server — виртуальный хостинг выделенного сервера) — это услуга, которая предоставляет пользователю изолированный виртуальный сервер, имеющий полноценный административный доступ, аналогичный доступ к выделенному серверу. Виртуальные серверы расположены на физическом сервере. Такой подход позволяет потребителям самостоятельно настраивать виртуальные серверы. В зависимости от потребностей заказчика формируется и цена VPN-хостинга. Цена хостинга VPS формируется, исходя из самых разных факторов. Большую часть стоимости хостинга составляет оплата разнообразных расходов провайдера облачных услуг. То есть заказчик, кроме оплаты самой услуги, оплачивает расходы компании. Затраты, которые тратит провайдер на дата-центры и фронт-офиса, работающего с клиентами, можно разделить следующим образом: **Зарплата сотрудников** Оплата услуг персонала дата-центров, технической поддержки и прочих работников. **Оплата датацентра** [Дата-центр (ЦОД)](https://serverspace.by/infrastructure.md) потребляет гораздо больше энергии, чем обычные офисы. Необходимо оплачивать электрическую энергию и охлаждение огромного количества физических серверов, работающих круглосуточно и с высокой нагрузкой. **Работоспособность инфраструктуры** Кроме оплаты труда сотрудников, работающих в дата-центре, необходимо ремонтировать и обслуживать серверы, системы хранения и телекоммуникационное оборудование, которое ломаются во время использования. **Лицензии на программное обеспечение** Чтобы пользователи [vps-услуг](https://serverspace.by/services/vps-server.md) работали с современным программным обеспечением, провайдеру необходимо постоянно тратить деньги на лицензионное программное обеспечение, которое включает в себя: - лицензии на программное обеспечение для инфраструктуры; - лицензии на программы, доступные клиентам (лицензии на Microsoft Server, SQL Server, и прочие продукты); - лицензии, необходимые для работы фронт-офиса. **Реклама** Естественный рост базы клиентов не позволяет быстро развивать облачные сервисы, поэтому облачный провайдер, как и любая коммерческая компания, пользуется маркетинговыми инструментами. **Сертификация ЦОД** Между обычным офисным зданием и ЦОД есть огромная разница. И для того, чтобы безопасность всего дата-центра была гарантирована, компания проводит дорогостоящую процедуру сертификации дата-центра. В 1993 году организация Uptime Institute (UTI) выработала способы оценки эффективности ЦОД. Были проанализированы факторы, которые определяют надежность и безопасность. В результате появилась стандартизованная методология, которая определяет четыре уровня стандарта Uptime Institute. Организация Uptime Institute (UTI) в 1993 году разработала критерии оценки эффективности ЦОД. В результате исследования UTI представила методы оценки, которые определяют четыре уровня стандарта Uptime Institute. Классификация Tier описывает надежность функционирования ЦОД и является необходимой для компаний, как желающих построить свой ЦОД, так и для арендующих чужие вычислительные мощности. В зависимости от критичности бизнеса компании, в зависимости от потерь, которые компания понесет в случае остановки её бизнес-процессов избирается тот или иной Tier. Классификация Tier описывает надежность ЦОД и необходима для компаний, желающих построить свой собственный ЦОД или арендующих вычислительные мощности. В зависимости от критичности бизнес-процессов, связанных с использованием ресурсов дата-центра, и в зависимости от потерь, которые провайдер будет нести в случае остановки бизнес-процессов назначается тот или иной уровень. Так, высокий уровень надежности требует больших капитальных и эксплуатационных затрат, поэтому и стоимость вычислительных мощностей также зависит от уровня надежности ЦОД. Все четыре уровня Tier были созданы на основе стандарта TIA/EIA-942. Именно в нем и указаны требования к каждому Tier. - Tier I. Базовый уровень. - ЦОД базового уровня подвержен нарушениям работы как от плановых, так и от внеплановых действий. Применение фальшпола, ИБП, ДГУ не обязательно. Если же ИБП и ДГУ используются, то выбираются более простые модели, без резерва, с множеством точек отказа. Возможны самопроизвольные отказы оборудования. Ошибки в действиях обслуживающего персонала также приведут к простою ЦОД. - В ЦОД Tier I отсутствует защита от случайных и намеренных событий, обусловленных действиями человека. Несущая способность перекрытий не менее 735кг/м² при нагрузке сверху плюс 125кг/м² нагрузки снизу. - Tier II. С резервированными компонентами - В ЦОД Tier II время простоя возможно в связи с плановыми и внеплановыми работами, а также аварийными ситуациями, но оно сокращено благодаря введению одной резервной единицы оборудования в каждой системе. Таким образом, системы кондиционирования, ИБП и ДГУ имеют одну резервную единицу. Тем не менее, профилактические работы требуют отключения ЦОД. - - Tier II требует наличия минимальных защитных мер от влияния человека. Стены и потолки снабжаются пароизоляцией, в двери устанавливается глазок с углом обзора 180°, все стены строятся на всю высоту помещения — от грязного пола до грязного потолка. Несущая способность перекрытий не менее 857кг/м² при нагрузке сверху плюс 125кг/м² нагрузки снизу. - Tier III. С возможностью параллельного проведения ремонтных работ. - Третий уровень надежности требует осуществления любой плановой деятельности без остановки ЦОД. Под плановыми работами подразумевается профилактическое и программируемое техническое обслуживание, ремонт и замена компонентов, добавление или удаление компонентов, их тестирование. Очевидно, что в этом случае необходимо иметь резервирование, позволяющее всю нагрузку пустить по другому пути во время работ на первом. - Для реализации Tier III необходима схема резервирования блоков систем кондиционирования, ИБП, ДГУ N+1, также требуется наличие двух комплектов трубопроводов для системы кондиционирования, построенной на основе чиллера. Строительные требования обязывают сохранять работоспособность ЦОД при большинстве случаев намеренных и случайных вмешательств человека. Следует предусмотреть резервные входы, дублирующие подъездные пути, контроль доступа, отсутствие окон, защиту от электромагнитного излучения, несущую способность перекрытий не менее 1225кг/м² при нагрузке сверху плюс 245кг/м² нагрузки снизу. - Tier IV. Отказоустойчивый - Отказоустойчивый ЦОД характеризуется безостановочной работой при проведении плановых мероприятий и способен выдержать один серьезный отказ без последствий для критически важной нагрузки. Необходим дублированный подвод питания, резервирования системы кондиционирования и ИБП по схеме 2(N+1). Для ДГУ необходима отдельная площадка с зоной хранения топлива. - Tier IV требует защиту от всех потенциальных проблем в связи с человеческим фактором. Регламентированы даже избыточные средства защиты от намеренных или случайных действий человека. Также учтено влияние непреодолимой силы — сейсмоявления, потопы, пожары, ураганы, штормы, терроризм. Несущая способность перекрытий не менее 857кг/м² при нагрузке сверху плюс 125кг/м² нагрузки снизу. **Услуги для потребителей** Пользователи облачных услуг могут самостоятельно выбрать количество серверов, необходимых для решения своих задач, а также выбирать компоненты для своих виртуальных серверов. Так, пользователи могут настроить следующие параметры: - Месторасположения центра обработки данных - Чем ближе виртуальные серверы будут находиться к будущим или действующим клиентам, тем быстрее будет отклик от сервера. - Резервное копирование сервера - Резервное копирование сервера позволяет автоматически копировать сам сервер в резервный ЦОД провайдера. Если произойдет поломка виртуального сервера из-за программного или аппаратного сбоя, эта опция позволит легко восстановить ваш сервер. Резервное копирование будет выполняться 1 раз в сутки. Можно настроить время хранения виртуального сервера (1, 2 3 или 4 недели) - Операционная система, установленная на виртуальном сервере - Пользователи могут выбрать сервер, с заранее установленной операционной системой. Можно выбрать следующие операционные системы: [Microsoft Windows Server](https://serverspace.by/services/vps-server/windows/). В стоимость аренды виртуальной машины будет включена стоимость лицензии Microsoft Windows Server. - [Linux](https://serverspace.by/services/vps-server/linux/) – свободной распространяемая операционная система - FreeBSD – свободно распространяемая операционная система - Панель управления веб-сервером для сервера Linux - Панель управления предоставляет набор графических инструментов для администрирования веб-сервера. Можно настраивать следующие функции: параметры веб-сервера, интеграцию с PHP, статистику потребления веб-ресурсов; - настройка почтового сервера для работы с доменом; - автоматическое резервное копирование содержимого веб-сайта; - базы данных для работы с веб-сервером Стоимость лицензии панели управления будет включена в стоимость аренды виртуальной машины. - Количество ядер процессора Указываем количество ядер CPU - Объем оперативной памяти Указываем объем необходимой оперативной памяти в Гб - Тип и объем хранилища Указываем тип дисков: SAS или SSD, и необходимый объем - Ширина канала связи Указываем необходимую нам пропускную способность доступа к Интернет - Количество выделенных адресов IPv4 или IPv6 При создании виртуального сервера один адрес IPv4 будет назначен провайдером бесплатно. Если необходимы дополнительные адреса IPv4 или IPv6, то можно задать необходимое количество за отдельную плату. - [SSL-сертификаты](https://serverspace.by/services/ssl/) Для защиты вашего веб-сервера или веб-приложения можно использовать шифрование при помощи SSL-сертификата. Для этого необходимо заказать сертификат из панели управления. Стоимость сертификата будет зависеть от его типа: для одного домена - для всех поддоменов вашего домена - для группы доменов - сертификат с зеленой строкой EV - [Хостинг DNS-имен](https://serverspace.by/services/dns-hosting.md) При аренде виртуальной машины клиент может получить до 100 доменных имен бесплатно. Все перечисленные расходы входят в тариф хостинга. Вместе с затратами при формировании стоимости VPS также учитывается и прибыль компании. И каждый провайдер оценивает свои услуги по-разному. Если хостинг действительно высочайшего качества, то и цена может быть выше, чем у конкурентов. https://serverspace.by/about/news/novaya-ploshadka-amsterdam.md Список дата-центров, в которых клиенты Serverspace.by могут разворачивать IT-инфраструктуру, пополнился новой площадкой Благодаря нашему сотрудничеству с компанией Equinix, Inc., список дата-центров, в которых клиенты Serverspace могут разворачивать IT-инфраструктуру, пополнился новой площадкой — **[дата-центром AM2, расположенном в Амстердаме](https://serverspace.by/infrastructure/datacenter-amsterdam.md)!** В портфеле Equinix, Inc., владеющей AM2, более 200 дата-центров в 24 странах. Компания занимается строительством и обслуживанием дата-центров более 20 лет и является лидером на мировом рынке colocation-центров обработки данных. Дата-центр AM2 имеет высочайший уровень безопасности, резервацию энергоснабжения N+1, резервирование на охладительных установках N+1, резервирование кондиционеров компьютерных залов N+2, а также сертифицирован по стандартам OHSAS 18001, SOC 1 TYPE 2, SOC 2 TYPE 2, ISO27001, ISO 50001 и PCI DSS. Специально для Serverspace в дата-центре построена вычислительная платформа с применением лучших решений в своем классе, работающая на оборудовании Cisco, Dell, NetApp и Juniper Networks, и гарантирующая максимальную доступность оказываемых услуг. **Используемое оборудование** 1. Блейд-серверы Cisco M5: - CPU Intel Xeon Gold 6154 (Skylake), 4*18 (72 ядра); - RAM DDR4 (2 666 МГц), 10*128 ГБ (1,3 ТБ). 2. Система хранения данных NetApp AFF, оптимизированная под использование SSD-дисков. https://serverspace.by/about/news/platezhi-dlya-uredicheskix-lic.md Добавили возможность оплачивать услуги Serverspace.by по счету для юридических лиц Республики Беларусь, Российской Федерации и Республики Казахстан Добавили возможность **оплачивать услуги **Serverspace** по счету для юридических лиц** Республики Беларусь, Российской Федерации и Республики Казахстан. Для формирования счета необходимо: 1. Перейти в раздел "Пополнить баланс" в панели управления: 2. Открыть вкладку "Для юридических лиц": 3. Заполнить реквизиты, указать сумму платежа и нажать кнопку "Получить счет": Помимо этого у юридических лиц появилась возможность сохранять реквизиты и настраивать автоматическое формирование счетов. Для этого необходимо кликнуть на электронную почту в правом верхнем углу панели, перейти в раздел "Настройки", во вкладке "Данные юрлица" заполнить реквизиты и указать периодичность отправки документов. https://serverspace.by/about/news/otkritie-serverspace-by.md Открыто официальное представительство Serverspace в Республике Беларусь. Будем рады видеть вас по адресу: г. Минск, ул. Домбровская, д. 9, БЦ «Sky Towers», офис 13.1.12.1. Друзья, мы открыли официальное представительство Serverspace в Республике Беларусь и одновременно с этим запустили: - круглосуточную техподдержку по номеру +375 (173) 88-72-49; - прием платежей в белорусских рублях (BYN); - возможность разворачивать инфраструктуру в белорусском дата-центре beCloud. Будем рады видеть вас по адресу: **г. Минск, бизнес-центр "Sky Towers", ул. Домбровская, д. 9, офис 13.1.12.1**. https://serverspace.by/about/blog/collocation-ili-virtualizaciya.md Дата-центры (ЦОД) позволяют обеспечить гарантированную доступность основных элементов инфраструктуры По мере роста [ИТ-инфраструктуры](https://serverspace.by/services/iaas.md) ресурсов компании собственной серверной уже не хватает. В таком случае компания начинает или строить собственный дата-центр, или пользоваться услугами дата-центра облачного провайдера. Размещение собственного оборудования в дата-центре облачного провайдера, который прошел сертификацию TIER3 и выше, позволяет компании повысить доступность сервисов и защищенность оборудования до максимально возможного уровня. [Дата-центры (ЦОД)](https://serverspace.by/infrastructure.md) позволяют обеспечить гарантированную доступность основных элементов инфраструктуры: **Электропитание** Дублированные источники бесперебойного электропитания (ИБП), два независимых энерго-ввода, дизельная генераторная установка или динамические источники бесперебойного питания, которые сочетают в себе функции и ИБП, и генератора. **Охлаждение** Дублированные компоненты системы охлаждения серверов, кондиционирование, чиллеры для охлаждения холодоносителей. **Телекоммуникации** Дублирование каналов передачи данных разными независимыми поставщиками. **Физическая защищенность** Система автоматического пожаротушения, контроль доступа, видеонаблюдение, охраняемый периметр. ## Colocation Colocation, в переводе с английского, означает «совместное размещение». Collocation — это услуга, оказываемая дата-центром по размещению серверного или телекоммуникационного оборудования клиента в ЦОД провайдера. Провайдер подключает оборудование клиента к своей инфраструктуре и обеспечивает защиту и обслуживание оборудования. Использовать colocation можно в случае, когда собственная инфраструктура клиента не позволяет обеспечить нужные характеристики доступности, надежности и защищенности, необходимые для того или иного проекта. Например, интернет-магазин или веб-сайт с большим количеством контента начинает пользоваться большой популярностью и посещаемость многократно возрастает. Большое количество посетителей означает большую нагрузку на веб-сервер. Если веб-сайт или интернет-магазин использует виртуальный хостинг, то мощности сервера, предоставляющего хостинг, уже не будет хватать, так как мощность сервера делится между всеми виртуальными сайтами. Организации, которая заботится о безопасности своих данных, также могут размещать свое оборудование в ЦОД, поскольку самостоятельное обеспечение защиты, надежности и отказоустойчивости может обойтись слишком дорого. Интернет-проекты, которым требуется быстрый доступ к сети Интернет, также лучше размещать в ЦОД, так как у дата-центры провайдера обычно подключаются через Услуга состоит в том, что провайдер предоставляет заказчику физическое место в своем ЦОД в специальном серверном шкафу. Шкаф имеет стандартную ширину 19 дюймов (48 см), в которую должно помещаться оборудование заказчика. Сдаваемое в аренду пространство в стройке определяется его высотой, которую измеряют в юнитах (U). Один юнит приблизительно равен 4,5 см. Сервер клиента может занимать только целое количество юнитов. В одной стойке обычно помещается 47 юнитов. Дополнительно провайдер может предоставить такие услуги, как - нужное количество адресов IPv4 / IPv6; - устройство KVM, которое позволяет удаленно подключаться к консоли сервера (экран, мышь, клавиатура, USB-порты с виртуальными накопителями для удаленной установки операционной системы); - внешние USB-диски; - дополнительные коммутаторы. Доступ к оборудованию заказчика могут иметь только специалисты со стороны заказчика, или, по особому разрешению, специалисты дата-центра провайдера. ## Виртуализация Виртуализация – это отделение ИТ-процессов от аппаратного обеспечения. Виртуализация дает следующие преимущества: - позволяет на одном физическом сервере запустить множество виртуальных серверов; - за счет этого увеличивается эффективность физических серверов (повышается процент их использования) - при использовании функции HA (high availability, высокая доступность) повышается надежность ИТ-инфраструктуры. Если физический сервер ломается, то виртуальная машина запускается на другом физическом сервере. Интерес бизнеса к виртуализации связан в значительной степени в том, что высокие аппаратные мощности серверов, в большинстве случаев, не используются полностью. По статистике, средняя нагрузка серверов составляет не более 15-20 процентов. Виртуализация позволяет бизнесу сэкономить на количестве серверов, мощности, пространстве, охлаждении и администрировании за счет меньшего количества серверов. Так, например, чтобы модернизировать виртуальный сервер, то есть добавить оперативную память, количество ядер центрального процессора или объем диска, достаточно несколько раз щелкнуть мышью или выполнить несколько команд из командной строки. Еще одним плюсом виртуализации является возможность быстрого создания необходимого количества виртуальных машин из готового шаблона. ## Объединение colocation и виртуализации. Компании могут разворачивать так называемые "частные облака". Они покупают оборудования (сервера, системы хранения, сетевое оборудование, программное обеспечение для виртуализации) и размещают его в собственном или арендованном дата-центре. При этом организации могут столкнуться со следующими проблемами: - Значительные капитальные затраты на оборудование, лицензии, технологии виртуализации. - Сложность технической поддержки - Сложность масштабирования, то есть наращивания мощности в случае необходимости. - Недостаточная гибкость во время всплесков рабочей нагрузки. - Необходимость организации дополнительной площадки для резервного копирования и аварийного восстановления. - Необходимость дублирования критичных элементов инфраструктуры. Для того, чтобы устранить перечисленные проблемы, компании могут воспользоваться услугами по аренде виртуально серверной структуры – IaaS. С точки зрения бизнеса использование решений IaaS получает получить следующие выгоды: - Мгновенная скорость реагирования на задачи бизнеса - Благодаря возможностям управления виртуальной инфраструктурой ИТ-специалисты могут быстро выделить ресурсы, необходимые для постоянно изменяющихся потребностей бизнеса, и управлять ими. IaaS позволяет быстро разворачивать новые приложение и сократить время реагирования на запросы выделения новых мощностей до нескольких минут. - Обеспечение непрерывности бизнеса - Аренда виртуальной инфраструктуры позволяет исключить остановку сервисов и выделять специальное время для обслуживания оборудования. Важнейшей недостаток развёртывания сервисов на собственной инфраструктуре – это необходимость инвестиций в непрофильное для бизнеса направление. Поддержка ИТ-инфраструктуры не связана с учетом особенностей бизнеса и поэтому легко передается специализирующимся на этом организациям без ущерба для работы компании. **Мультитенантные системы учета.** Мультитенантность — это возможность обслуживать пользователей из разных организаций в рамках одного сервиса. Основным здесь является соблюдение изолированности подписчиков этого сервиса друг от друга. Небольшие организации в самых разных отраслях, нашли способы сэкономить на лицензировании программного обеспечения и хранении данных для своих бухгалтерских систем, объединившись и используя услугу colocation. Этот совместный ЦОД управляет своими бухгалтерскими программами в безопасной многопользовательской среде на одном хост-сервере, а системы бухгалтерского учета для организации работает в отдельном виртуальном разделе на хосте провайдера облачных услуг. **Тестирование и отладка приложений** Зачастую крупные компании-разработчики не стремятся строить свои собственные ЦОД. Эти компании создают, тестируют и продают свои программные продукты при помощи виртуальных ЦОД, размещенных в облаке провайдера. **Разработка инструментов управления** Компании-разработчики различных инструментов и методологий для управления разнородными ИТ-инфраструктурами, мобильными вычислениями и высокопроизводительными вычислениями (HPC) предпочитают сначала опробовать эти технологии в виртуальной среде. После того, как они убедятся в том, что эти технологии действительно работают, разработки переносятся в свои собственные ЦОД, если они есть у компании. **Песочница для экспериментов** Компании-разработчики могут использовать песочницы, размещенные в дата-центре облачного провайдера. Такие песочницы могут состоять из хранилища данных и набора тестируемых приложений. Эти приложения проверяют на различных данных, чтобы выловить как можно больше ошибок. **Он-лайн обучение** Компании могут размещать свои системы для онлайн-обучения (LMS-системы) в облаке провайдера, чтобы не использовать серверные мощности своих серверных или собственных ЦОД. **Видео-конференции** Компания могут организовывать видеоконференции посредством серверов видео-конференций. Такие серверы используют специальное программное обеспечение и им необходима достаточно широка полоса пропускания. ЦОД облачного провайдера может разместить эти серверы в своем облаке, тогда компании могут сэкономить на дорогостоящем оборудовании и выделении полосы пропускания. **Аварийное восстановление** Предприятие может расположить свои виртуальные ЦОД по разным городам, чтобы обеспечивать круглосуточную работу своих ИТ-систем без необходимости создания своих физических ЦОД по всем местам. И чем более виртуализована ИТ-инфраструктура, тем проще ее восстанавливать после отказа — достаточно выбрать из архива необходимые виртуальные машины. **Пиковое потребление ресурсов** Иногда компании может потребоваться больше системных ресурсов, чем обычно. Во время этих всплесков потребления можно воспользоваться ресурсами облачного провайдера. Как мы видим, стратегии использования colocation и виртуализация не противоречат друг другу, а взаимно дополняют друг друга. ИТ-руководители многих компаний все активнее ищут пути сокращения расходов на ИТ и повышения ИТ-процессов. Виртуализация ресурсов и размещение оборудования у провайдера – мощные инструменты, которые при грамотном использовании позволяют достичь хороших результатов в поставленных задачах. Тем не менее, эти технологии – не чудо, и их внедрение требует комплексного анализа ИТ-инфраструктуры, изучения возможностей и оценивания эффекта от реализации. https://serverspace.by/about/blog/kak-razmestit-1c-v-oblake.md Облачные сервисы для 1С выглядят так: перенос сервера 1С из локальной сети в облако провайдера - миграция с физического сервера в облачную инфраструктуру. **[Облачные сервисы для 1С](https://serverspace.by/services/vps-server/1c.md)** выглядят так: перенос сервера 1С из локальной сети организации в облако провайдера. Пользователи продолжают использовать привычные программы, запуская тонкий или тонкий клиенты 1С или работая через веб-браузер. Для работы им не нужно находиться в локальной сети предприятия (напрямую или через VPN). Можно выделить четыре основных сценария использования облачных технологий 1С: - Облако для организации - Облако для холдинга - Облако для клиентов - Технология 1сFresh Рассмотрим подробнее эти сценарии. [/services/vps-server/1c/](https://serverspace.by/services/vps-server/1c.md) ## Облако для организации Облако для организации используются для того, чтобы сотрудники могли подключаться к информационным базам даже с тех компьютеров, где не установлен клиент 1С. Этот сценарий разворачивается, когда нужно обеспечить сотрудников, перемещающимися между отделами и офисами, актуальной информацией о своих подразделениях. Также этот сценарий используется, когда сотрудникам необходимо получать необходимые отчет в любом месте -в любой торговой точке или у поставщиков. ## Облако для холдинга Внутри холдинга, объединяющего несколько компаний, облачные технологии позволяют сократить расходы на обслуживание одинаковых программ 1С. Например, в каждой из компаний, входящих в холдинг, ведется бухгалтерский учет. Можно развернуть один сервер 1С: бухгалтерию в облаке, и использовать в режиме разделения данных. Этот режим позволяет хранить данные нескольких организациях в одной информационной базе. В этом сценарии каждая компания будет работать в своей собственной области данных, а настраивать обновлять и выполнять резервное копирование нужно для одной информационной базы. ## Облако для клиентов Использование облака для клиентов нужно в тех случаях, когда пользователи 1с не объединены в одну сеть и у них разное оборудование в разных офисах, городах и даже странах. Клиенты работают с 1с через веб-браузер, работающем как на компьютере, так и на мобильном клиенте — смартфоне или планшете. ## Технология 1сFresh (работа через Интернет в модели сервиса) При использовании модели сервиса клиенты не приобретают сами сервер 1С, операционную систему для виртуального сервера или сервер СУБД. Они платят за использование 1С через Интернет. Вся необходимая инфраструктура находится у поставщика сервиса, на его оборудовании, в виде единой системы, с которой работают все пользователи. Обновление, обслуживание и резервное копирование поставщик сервиса выполняет централизовано. ## Размещение 1С:Предприятие в виртуальной инфраструктуре Размещение платформы 1С в виртуальной инфраструктуре облачного провайдера имеет свои особенности. Следует помнить, что приложения в виртуальных машинах будут работать медленнее, чем на физических. Помимо издержек оборудования на обслуживание сервера виртуальных машин (гипервизора) есть еще один фактор замедления — это организация течения времени. Скорость течения времени в физическом сервере и в виртуальном не одинаковы и во многом зависит от конкретного производителя серверов для создания виртуальной инфраструктуры. Замедление работы виртуальной машины может достигать 15-30% от скорости работы физического сервера. Можно минимизировать задержки виртуализации, подобрав настройки, соответствующие характеру нагрузки. Для работы виртуальной инфраструктуры 1С следует использовать убедиться, что используются выделенные серверы виртуальных машин, настроенные определенным образом: - Некоторые производители гипервизоров обеспечивают повышение скорости за счет встроенных в слой виртуализации механизмов кэширования. Однако кэш может переполниться, и тогда произойдет резкое падение производительности. - Для виртуальных серверов нужно выключать механизм создания снимков системы (snapshots). - Для работы 1С:Предприятия необходимо использовать только физические диски, а не виртуальные. - Следует помнить, что передача по сети между двумя виртуальными машинами на одной физической машине медленнее протокола Shared Memory. - Функции динамического перераспределения ресурсов между несколькими виртуальными машинами вносит замедление в работу виртуальных машины. Рекомендуется выключать такие функции. Динамическое распределение ресурсов также может привести тому, что программная лицензия может выйти из строя. - В BIOS сервера виртуальных машин должны быть включены технологии виртуализации (VT-x, EPT, AMD-V и т.д.). Также необходимо настроить CPU power saving в режим OS Controlled mode. - Для повышения быстродействия следует отключить опцию NUMA Node Interleaving и включить опцию Enable NUMA. - Для гипервизорах ESXi 6.0 и старше не стоит использовать сетевые интерфейсы WMXNET3, использовать только типа E1000e. - На хостах ESXi также следует отключить дедуплекацию памяти — Transparent Page Sharing. - Следует включить схему питания максимальной производительности (High performance) - На всех виртуальных машинах следует устанавливать дополнения Vmware Tools. - Для оптимизации дисковой системы увеличить значение Disk.DiskMaxIOSize до 128ю - При использовании внешних хранилищ следует: использовать режим Independent Persistent Mode, как наиболее производительного. - При использовании iSCSI нужно настроить jumbo frames (или установить значение MTA равным 9000) на всех интерфейсах и сетевом оборудовании. - Если виртуальные машины и система хранения (СХД) использует режим MultiPathing, то можно вручную настроить на каждом хосте адреса LUN и использовать режим Fixed — это даст большую производительность, чем режим RoundRobin. ## Перенос 1С с физического сервера в облачную инфраструктуру ### Планирование переноса 1С Перед переносом системы 1С в облако следует тщательно спланировать процесс миграции. Для этого необходимо ответить на следующие вопросы: Ресурсы виртуальной машины **Оперативная память** Компаниям, где от 5 до 25 пользователей работают с базой до 4 Гб необходимо 16 Гб оперативной памяти. Пользователи крупных компаний (100-150 пользователей и базы данных от 1 Гб обычно работают в терминальном режиме. При этом на сервере может запускаться одновременной операционная система, сервер 1С:Предприятия и терминальный сервер. Такой виртуальной машине необходимо 32-64 Гб оперативной памяти. **Хранилище для виртуальной машины** Основная сложность работы с большими базами данных в 1С — это временная блокировка таблиц при обращении к ним множества пользователей. Решить эту проблему можно только с помощью планирования дисковой системы. Для этого важно учитывать показатель IOPS (Input Output Operation per Second) — число возможных операций дисковой системы за одну секунду. Во время пиковой нагрузки для базы объемом 300 Мб при одновременном доступе разного количества пользователей IOPS может достигать следующих значений: | 3 пользователя | 600 IOPS | | --- | --- | | 15 пользователей | 2000 IOPS | | 50 пользователей | 7000 IOPS | | 100 пользователей | 18000 IOPS | При обычной нагрузке нагрузка дисковой системы не превышает 20% от этих величин. Таким образом, для работы нескольких пользователей достаточно SAS-дисков, а если пользователей больше 10 – то стоит выбрать SSD-диски. При определении объема хранилища следует предусмотреть рост объема. Провайдер, конечно, может в любое время увеличить объем диска, но внезапное исчезновение свободного диска может создать и пользователям, и администраторам немало проблем. **Тип аутентификации пользователей** Аутентификация в 1С:Предприятии может осуществляться двумя способами: - Аутентификация с помощью операционной системы - Аутентификация 1С При миграции существующих информационных баз в облако следует выбрать способ аутентификации, и после переноса баз настроить их соответствующим образом. **Подключение пользователей** Пользователи могут подключаться к серверу 1С в облаке следующими способами: - непосредственно через клиент 1С:Предприятие; - через веб-браузер; - через VPN-подключение; - через RDP-подключение. В зависимости от выбранного способа подключения необходимо соответствующим образом. В случае подключения через веб-браузер в виртуальной инфраструктуре необходимо создать и настроить веб-сервер, который будет принимать запросы клиентов и в ответ предоставлять необходимую информацию. В случае VPN-подключения в облачной инфраструктуре необходимо создать и настроить VPN-сервер. В случае RDP-подключения необходимо настроить сервер терминалов, который должен иметь необходимое количество лицензий Windows Remote Desktop Services CAL. Каждому пользователю, подключающемуся с помощью терминального доступа, необходима собственная лицензия. Для разных пользователей, использующих различное оборудование и каналы связи с Интернет, можно использовать разные виды подключений, при этом все подключения позволяют работать с одной и той же информационной базой. **Время миграции ** Время миграции сервера складывается из временных затрат на следующие операции: - разворачивание инфраструктуры, необходимой для работы сервера в облаке, включая веб-сервер и/или сервер VPN; - операций выгрузки информационных баз ИС, - операции загрузки выгруженных баз по каналу Интернет; - тестирование работы 1С - подключение пользователей **Необходимое количество лицензий** Для переноса сервера 1С в облако следует проверить имеющиеся лицензии на программное обеспечение, или купить новые, в случае если создание сервера 1С только планируется. Если используется программное обеспечение Microsoft, включая Microsoft SQL Server, необходимо учесть следующие лицензии: - Microsoft Server – лицензия на сервер Microsoft Windows Server. - Microsoft Server CAL – лицензии на подключение к Microsoft Server. Каждому клиенту, подключающемуся к серверу 1С:Предприятие, размещенному на сервере с операционной системой Microsoft Server, необходима такая лицензия. При этом не имеет значение, каким образом клиент подключается к серверу Microsoft – через VPN, через RDP или при помощи 1С:Предприятия. - Microsoft SQL Server – лицензия на сервер Microsoft SQL Server. - Microsoft SQL Server CAL – лицензия на подключение к серверу Microsoft SQL Server, Каждому клиенту, подключающемуся к серверу 1C:Предприятие, необходима такая лицензия. При этом не имеет значение, каким образом клиент подключается к серверу 1C:Предприятие – через VPN, через RDP или при помощи 1С:Предприятия или через веб-браузер. - Лицензия 1С на сервер, которая устанавливается на каждый сервер 1С:Предприятие. - Клиенская лицензия 1С – необходима каждому клиенту, Каждому клиенту, подключающемуся к серверу 1C:Предприятие, необходима такая лицензия. При этом не имеет значение, каким образом клиент подключается к серверу 1C:Предприятие – через VPN, через RDP или при помощи 1С:Предприятия или через веб-браузер. ### Разворачивание сервера 1С в облаке Сервер 1С на виртуальной машине устанавливается точно также, как и на физической машине. Провайдер облачной инфраструктуры может предоставить шаблон виртуальной машины, уже содержащий и операционную систему, и сам сервер 1С:Предприятие, настроенный на работу в СУБД. ### Перенос информационных баз на новый сервер Для того, чтобы перенести информационные базы 1С, можно воспользоваться стандартными процедурами самой платформы. Вначале необходимо решить – какая система аутентификации пользователей будет работать на новом виртуальном сервере 1С. Если требуется доменная аутентификация, то следует убедиться, что у сервера 1С есть связь с контроллером домена. Если на новом сервере будет использоваться только аутентификация 1С, то необходимо перед выгрузкой информационной базы убрать флаг "Аутентификация операционной системы" и задать пароль для каждой учетной записи пользователя. После этой операции можно выполнить выгрузку информационной базы данных, предварительно убедившись, что на сервере нет открытых пользовательских сеансов. После выгрузки нужно закачать файл информационной базы данных (он имеет расширение dt) на новый сервер 1С, расположенный в облаке, запустить 1С:Предприятие и создать новую информационную базу, расположенную на сервере 1С:Предприятия. После создания сервера необходимо открыть новую информационную базу в Конфигураторе, и произвести выгрузку файла с информационной базой. ### Проверка информационных баз на новом сервере После успешной выгрузки информационных баз нужно убедиться, что информационные базы корректно открываются и в 1С:Предприятии, и в Конфигураторе. Вначале это нужно сделать на самом сервере 1С, затем – через удаленное подключение. В случае успешной проверки можно подключать пользователей. ## Преимущества использования 1с в облаке **Работа из любого места** 1С: Предприятие, размещенное в облаке, позволяет работать с 1С в любом месте, где есть Интернет. В зависимости от имеющихся каналов связи с пользователями и имеющихся у них устройств для работы с 1С, их можно подключать различными способами. **Команда разработчиков** При необходимости стандартные конфигурации 1С нужно дорабатывать. Это можно сделать или при помощи программиста 1с, работающего в организации, или воспользовавшись услугой многочисленных компаний, имеющих статус 1с-франчайзи. Но есть и более простой способ. При размещении 1С в облаке провайдер облачных услуг обычно предоставляет свою команду разработчиков, которые могут внести в конфигурацию необходимые изменения. **Размещение в дата-центре** Базы данных 1С расположены в дата-центрах провайдера облачных услуг, что гарантирует высокую скорость подключений и доступность сервиса в 99,9% в режиме 24/7. **Техническая поддержка** Техническая поддержка также работает в режиме 24/7 **Бесплатные обновления** Услуги размещения в облаке 1с сервера в рамках модели IaaS или SaaS обычно включают в себя бесплатные обновления технологических платформ 1С и стандартных конфигураций. **Резервное копирование** Облачные провайдеры предоставляют услуги по резервному копированию информационных баз по заранее согласованному графику. Компания Serverspace предоставляет услуги аренды серверов под 1С — ознакомьтесь с [нашими тарифами](https://serverspace.by/services/vps-server/1c.md). https://serverspace.by/about/blog/tehnicheskay-podderzhka-oblachnogo-provaidera.md Насколько важна роль службы технической поддержки при работе с облачной инфраструктурой? Как сотрудники выявляют сбои в работе сервиса. Роль службы технической поддержки очень важна, особенно в случае поддержки облачного провайдера. Ведь именно облачный провайдер обеспечивает выполнение важных ИТ-процессов своих заказчиков. Отсутствие своевременной техподдержки может повлечь за собой негативные последствия. Основные из них: срыв заказов, задержка оплаты по счетам, потеря важных клиентов или поставщиков, ухудшение репутации компании. Именно поэтому облачные провайдеры относятся к организации службы технической поддержки очень ответственно. В этой статье расскажем об особенностях работы этой службы. Квалифицированная служба технической поддержки должна отреагировать на обращение клиента так, чтобы не нарушить взятые на себя обязательства. Эти обязательства регулируют SLA и другие соглашения, заключаемые между клиентом и провайдером облачных услуг. Сотрудники технической поддержки должны предоставить правильное решение для устранение проблемы в отведенные SLA сроки или правильно ответить на вопросы пользователей. Поэтому сотрудники технической службы поддержки должны быть высококвалифицированными и обладать хорошим ИТ-кругозором, большим опытом работы и уметь оперативно решать поставленные задачи. Помимо этих профессиональных качеств, сотрудникам технической поддержки необходимо постоянно профессионально развиваться и обучаться. Основные обязанности специалистов службы технической поддержки: - Получение информации о сбоях в работе инфраструктуры - Оповещение клиентов в случае возможных сбоев в работе инфраструктуры - Оперативное исправление возникающих проблем на виртуальных серверах по запросу клиентов - Защита персональных данных клиента - Обеспечение оперативной обратной связи при обращении пользователей. Рассмотрим подробнее эти обязанности. ## Как сотрудники технической поддержки узнают о сбоях в инфраструктуре Для максимально эффективной работы облачные провайдеры не только ориентируются на стандарты и лучшие мировые практики, но и строят собственную ресурсно-сервисную модель. ### Ресурсно-сервисная модель и служба технической поддержки Ресурсно-сервисная модель – это взаимосвязи между различными услугами и необходимыми элементами инфраструктуры. Каждый компонент такой модели определяется своим набором характеристик и связями с другими компонентами. В состав облачных услуг IaaS или VPS входя следующие компоненты: - виртуальная инфраструктура; - интерфейс управления виртуальной инфраструктурой; - сеть; - резервное копирование виртуальных машин; - служба поддержки. Услуги IaaS или VPS зависят от работоспособности физических серверов, систем хранения, услуг Интернет-провайдеров и дата-центров, где размещается оборудование провайдера. Каждый из этих компонентов зависит от других элементов инфраструктуры. Например, доступность файлового массива NetApp зависит от доступности контроллеров и виртуальных СХД, размещенных в хранилище NetApp. Доступ в Интернет в дата-центре зависит от работоспособности маршрутизаторов BGP, которые поддерживают связь с другими автономными системами (AS). Детализировать эти зависимости можно и дальше, в зависимости от задачи, которую нужно решить в рамках ресурсно-сервисной модели. Ресурсно-сервисная модель нужна для правильной настройки мониторинга услуг, оценки влияния происшествий на другие компоненты, для правильного планирования рисков и угроз, и соблюдения выполнения SLA со стороны облачного провайдера. Если ресурсно-сервисная модель правильно организована, то провайдер облачных услуг может предсказывать появление неполадок еще до появления инцидентов, а если авария все-таки произойдет, то узнать о ней вовремя и проинформировать клиентов. ### Системы мониторинга Облачные провайдеры облачных услуг постоянно производят поиск оптимальных систем и продуктов, способных лучше отслеживать состояние важных элементов в ресурсно-сервисной модели, и обычно используется сразу несколько систем для наблюдения за разными компонентами. Система SCOM Для мониторинга продуктов на базе Microsoft можно использовать продукт System Center Operations Manager (SCOM). SCOM позволяет объединять информацию о функционировании различных ИТ-компонентов, детализировать информацию по всем событиям через одну консоль управления . В случае каких-нибудь проблем SCOM может отправить оповещения администраторов по e-mail. Администраторы могут гибко настроить логику мониторинга. Например, можно получать информацию об системных событиях в одном журнале, а о прикладных программах – в другом. Можно настроить оповещения о работоспособности различных сервисов, чтобы узнавать о проблемах заранее. Например, можно настроить мониторинг службы DHCP или DNS, и устранять проблемы до того, как о них узнают пользователи, поскольку пользователи могут какое-то время пользоваться кэшированной информацией или их IP-адреса еще будут находиться в аренде. Средства мониторинга Zabbix Эта система распространяется под лицензией GNU, и позволяет наблюдать за сетевыми сервисами, серверами и сетевым оборудованием. Она поддерживает несколько видов мониторинга: - Simple checks — может проверять доступность и реакцию стандартных сервисов, таких как SMTP или HTTP, без установки какого-либо программного обеспечения на наблюдаемом хосте. - Zabbix agent — может быть установлен на UNIX-подобных или Windows-хостах для получения данных о нагрузке процессора, использования сети, дисковом пространстве и других ресурсах. - External check — выполнение внешних программ, также поддерживается мониторинг через SNMP. - IPMI – мониторинг за состоянием серверного оборудования посредством таких протоколов, как IPMI, HP iLO, Dell iDRAC, IMB SRA, Sun SSP и т.д. В случае появления инцидента эта система мониторинга также позволяет немедленно информировать администраторов через e-mail или telegramm. ## Оповещение клиентов о сбоях При возникновении сбоя специалист следует своей инструкции. В этих инструкциях прописаны необходимые действия. Они могут быть или линейными, или ветвящимися, в зависимости от особенности проблемы. Можно выделить следующим типы инцидентов: - родительские - дочерние (подчиненные) - инфраструктурные - неинфраструктурные - типовые - нетиповые - крупные - незначительные В зависимости от типа проблемы определяется метод ее решения. В случае сложных проблем сотрудник технической поддержки может обращаться к более опытным специалистам. В случае масштабной проблемы, когда требуется высокая срочность принятия решений, ответственный за тот или иной компонент ресурсно-сервисной модели выбирает стратегию решения этой проблемы. Обычно при возникновении такой проблемы в службу поддержки поступает большое количество заявок, и эти заявки объединяются с основной (родительской) проблемой. Поэтому как только основная проблема разрешается, все связанные с этой проблемой заявки (дочерние) тоже автоматически закрываются. При возникновении инцидента важно оповестить о произошедшем клиента. Провайдеры облачных услуг стремятся к информированию своих клиентов о всех проблемах всеми возможными способами — звонками, сообщениями по e-mail или SMS. Клиенты также оповещаются об изменениях статуса их заявок. ## Help Desk и работа с запросами пользователей Запросы пользователей могут приходить по различным каналам: телефону, e-mail, через форму обратной связи. Каждому обращению, как и в случае с инцидентами, присваивается номер и создается соответствующий тикет в системе Help Desk. Цель Help Desk системы, помимо исключения потери заявок от клиентов, максимально быстро решить возникшую проблему или выполнить запрос пользователя. Это в первую очередь влияет на конечную удовлетворенность клиентов. Если заявки решаются в соответствии с ожиданиями потребителей услуг, то клиенты будут довольны и не будет искать другого провайдера. Таким образом, Help Desk система напрямую влияет на срок взаимодействия клиента с провайдером. Как показывают различные исследования, это критически важно, потому что: - 66% клиентов перестали сотрудничать с поставщиками услуг, после того как столкнулись с плохим обслуживанием. - Удержание 5% текущих клиентов может привнести в компанию дополнительно от 25 до 95% прибыли. - В зависимости от отрасли, привлечение новых клиентов может стоить в 5-10 раз дороже, чем удержание существующих клиентов. Клиентские запросы выполняются специалистами различных квалификацией, иногда привлекаются сторонние подрядчики, представители производителей и т.д. У процессов технической поддержки есть обязательные временные параметры решения, которые отражены в SLA. Все системы Help Desk можно разделить на 3 основных класса: - Решения для автоматизации процессов предоставления ИТ услуг внутри компании (ITSM-решения) - Решения для автоматизации массовой поддержки конечных пользователей (Customer Service или Customer Support решения). - Решения для автоматизации внешней поддержки (b2b поддержка) Службы технической поддержки активно используют все три этих класса. ITSM-решения можно объединить с системой мониторинга. Такая комбинация позволяет создавать сложные правила, в которых тикеты создаются автоматически, и может выполняться привязка зафиксированных событий к уже существующим. Так же можно фиксировать такие ситуации, когда, например, средство мониторинга не получает регулярных сообщений от систем, что с ними все в порядке. Как только такие сообщения не поступают, в ITSM системе создается тикет о неполадке, или находится существующий тикет, к которому по аналогичному событию создается привязка. Потребители облачных услуг могут взаимодействовать с провайдером через специализированные порталы самообслуживания. Портал позволяет формировать запросы по интересующим клиентов услугам, выяснять статус заявок, кто из специалистов занимается задачей, иметь доступ к справочным материалам, оценивать работу службы поддержки, получать доступ к панели управления облачными услугами и многое другое. А для провайдера облачных услуг портал самообслуживания позволяет снизить затраты на предоставление ИТ-услуг, освобождая специалистов от рутинных операций, уменьшать количество ошибок со стороны как потребителей облачных услуг, так и поставщиков, обеспечивая и ту, и другую сторону необходимой информацией. Кроме того, типовые запросы на обслуживание также должны иметь параметры времени решения, согласно SLA. Портал самообслуживания позволяет эффективно решить эту задачу. Несмотря на то, что служба поддержки находится на последнем месте в ресурсно-сервисной модели [IaaS](https://serverspace.by/services/iaas.md) или [VPS](https://serverspace.by/services/vps-server.md), без этой службы работа провайдера облачных услуг невозможна. В нашей статье мы рассмотрели не только принципы работы службы, но и пути повышения эффективности ее работы. https://serverspace.by/about/blog/chto-takoe-iaas.md Инфраструктура как услуга (IaaS) – это сервис. В этом сервисе различные компоненты облачной инфраструктуры, такие как серверы, сетевые хранилища, сетевые устройства и операционные системы предоставляются в аренду Чтобы перевести ИТ-бюджеты с капитальных затрат, которые включают покупку ИТ-оборудования, их размещение и обеспечение работоспособности на операционные, все больше и больше организаций стремятся перейти к использованию облачной инфраструктуры как услуги — [IaaS](https://serverspace.by/services/iaas.md). Перевод капитальных затрат в операционные позволяет финансовым директорам точнее вычислять стоимость владения ИТ-инфраструктурой. Если компания использует услуги IaaS, руководство получает однозначную связь между расширением бизнеса или его сокращением со стоимостью владения ИТ-инфраструктурой. Помимо сокращения на капитальные затраты и предсказуемости стоимости владения, перечислим другие преимущества использования услуги IaaS: - увеличение производительности и скорости реагирования на изменения потребностей бизнеса; - обеспечение непрерывности бизнеса в случае аварии; - повышение качества предоставляемых услуг; - тестирование приложений до их внедрения в производственную среду. Рассмотрим подробнее услугу IaaS. ## Как IaaS помогает бизнесу? Инфраструктура как услуга (IaaS) – это сервис. В этом сервисе различные компоненты облачной инфраструктуры, такие как серверы, сетевые хранилища, сетевые устройства и операционные системы предоставляются в аренду. Предположим, в компании нужно запустить новую бухгалтерскую или CRM-систему. Сначала необходимо понять, на каком оборудовании (серверном и сетевом) будет работать эта система. На сервер необходимо установить операционную систему и развернуть необходимое приложение. Сервер необходимо подключить к локальной сети, и, если используется удаленные подключения, к Интернет через соответствующее программное обеспечение VPN. Для обеспечения высокой надежности сервер следует разместить в серверной, имеющую все необходимую инфраструктуру – независимые энерговводы, несколько каналов Интернет, резервный дизель-генератор на случай аварии, различные системы охлаждения и системы контроля доступа. Компания может оборудовать свою серверную или арендовать место в коммерческих [дата-центрах](https://serverspace.by/infrastructure.md). Компания может выполнить всю эту работу самостоятельно, или воспользоваться услугой IaaS. В таком случае компании остается только установить операционную систему и нужное приложение на арендованном оборудовании и производить обслуживание этого приложения – делать резервные копии, раздавать права пользователям, получать отчеты о производительности и следить за попытками несанкционированного доступа. Существуют различные виды IaaS, и получение этих услуг может происходить при помощи публичных, частных облаков или их комбинации в виде "гибридного" облака. Публичное облако – облачная инфраструктура, используемая одновременно множеством компаний. Публичное облако физически находится в собственности провайдера облачной услуги, и этот провайдер обеспечивает бесперебойную эксплуатацию всей инфраструктуры. Публичное облако позволяет клиенту получить готовую ИТ-инфраструктуру без крупных первоначальных затрат. Частное облако использует только одна организация. Частное облако, как правило, находится на территории владельца облака, и сама организация обеспечивает его работоспособность. Частное облако также может предоставлять ИТ-услуги по модели IaaS подразделениям организации. И публичное, и частное облака могут использовать одно и то же программное обеспечение для своей работы. И если организации, у которого уже есть собственный дата-центр, хочет воспользоваться ресурсами публичного облака, например, в случае если в какой-то период времени мощности собственного серверного парка не хватает, а расширить парк не получается, то использование одних и тех же технологий позволит компании достаточно быстро воспользоваться серверами провайдера публичного облака. В таком случае облако становится гибридным. Например, если в компании и в провайдере для организации IaaS используется программное обеспечение VMware, то для создания гибридного облака можно воспользоваться инструментом VMware vCloud Connector. Существуют и другие сценарии организации гибридных облаков. ## Категории потребностей IaaS В понятии "облачная инфраструктура как услуга" можно выделить три основные категории потребностей заказчиков: **Хостинг отдельного приложения или группы приложений ** Наиболее часто встречающийся случай. Например, медиа-компания разворачивает небольшой сайт для работы с видеозаписями, компания-разработчик размещает веб-приложение, розничный продавец создает интернет-магазин с целью изучения спроса на свой продукт и т.д. Все перечисленные примеры – это приложения, работающие в режиме промышленной эксплуатации, но в них есть задачи разработки и тестирования. **Создание собственного виртуального дата-центра (VDC) ** VDC позволяет заменить свои собственные серверную инфраструктуру. Так в свое время поступила компания Netflix, полностью отказавшись от своих дата-центров и переехавшая на платформу AWS. **Пакетная обработка данных (batch computing)** В данном случае IaaS выступает как вариант традиционных высокопроизводительных вычислений, в том числе grid-система. Типичные задачи для такой услуги – это рендеринг изображений, транскодирование видеофайлов для различных устройств (эту услугу также активно использует Netflix), научно-технические расчеты и математическое моделирование, обработка спутниковых данных и пр. Здесь обычно требуются такие вычислительные ресурсы, как процессор, память и пропускная способность за минимально доступную цену. Так, в 1999 и 2002 г. для исследования Земли были запущены спутники Terra и Aqua. На этих спутниках установлены сенсоры MODIS, передающие на станции слежения огромные потоки данных. Станции слежения передают эти данные в облако Microsoft Windows Azure для перепроекции и изменения разрешения изображений, обработки данных и их визуализации в виде графиков, таблиц и карт. Проект Google Earth использует платформу Google Cloud, которая позволила обработать 20 Тбайт данных с сенсоров MODIS за последние 30лет, для формирования спутниковых изображений высокого изображения, покрывающего всю Землю. Как мы видим, рынок IaaS является довольно сложным и быстрорастущим. Варианты сервисов значительно различаются, поэтому выбор подходящего провайдера облачных услуг требует тщательного изучения предложений, чтобы выбрать ту услугу, которая наиболее полно подходит для удовлетворения потребностей вашей организации. https://serverspace.by/about/blog/kak-vabrat-vps-hosting.md Если вы хотите увеличить трафик веб-сайта вашего бизнеса, и виртуальный хостинг уже не справляется с поставленными задачами, то использование VPS поможет справиться с этой задачей Если вы хотите увеличить трафик веб-сайта вашего бизнеса, и виртуальный хостинг уже не справляется с поставленными задачами, то использование VPS поможет справиться с этой задачей. На что обратить внимание при выборе VPS, и какие существуют подводные камни – об этом наша статья. ## Что такое VPS? VPS –это виртуальный сервер, который находится на мощном физическом сервере. В отличие от VDS, виртуализация сервера реализована на уровне ядра операционной системы физического сервера. Наиболее часто используются платформы виртуализации OpenVZ и Virtuozzo. Эти платформы не позволяют изменять ядро самой операционной системы и саму операционную систему. Конечно, ядро и корневую операционную систему приходится изменять очень редко, и это особенность использования VPS. ## Что такое VPS-хостинг? VPS-хостинг – это услуга, которая сочетает в себе функции виртуального сервера и веб-хостинга. Для клиента это означает, что какой бы тарифный план не был выбран, клиенту предоставляется гарантируемый набор системных ресурсов (количество оперативной памяти, мощность процессора, скорость работы диска и сети). Вам не нужно делить ресурсы с другим сайтом, как это происходит на обычном виртуальном хостинге. ## Кто типичные пользователи VPS-хостинга? - Крупные интернет-магазины - Владельцы крупного корпоративного портала, который обеспечивает сотрудника удаленный доступ к почте или корпоративным веб-сервисам - Авторские блоги или контентные интернет-сайты с высокой посещаемостью от 1000 и более в день ## Как выбрать VPS? Услуги VPS сегодня оказывают почти все хостеры. Возможности и цены, предлагаемые хостерами, могут быть очень разнообразными. Эти возможности могут дополняться соответствующими облачными сервисами, услугами управления и поддержки, обеспечения безопасности, включая защиту от DDoS-атак, лицензиями на программное обеспечение. Создание VPS-сервера выполняется за минуты, а сам процесс можно автоматизировать. Если вы приняли решение использовать услугу VPS-хостинга, то при выборе провайдера этой услуги необходимо учесть ряд факторов. Перечислим основные из них. ## Модель управления Если вы пользуетесь услугой виртуального хостинга, то всеми серверами управляют администраторы хостера. В случае VPN-хостинга клиент управляет своим виртуальным сервером. Поэтому нужно, чтобы кто-то за ним присматривал, контролировал производительность и работоспособность. Если эти эти функции берет на себя провайдер VPS, то это управляемый хостинг (managed VPS), а в случае неуправляемого (unmanaged VPS) клиент сам отвечаете за свой виртуальный сервер. В случае неуправляемого VPS клиенту нужно будет самостоятельно устанавливать и конфигурировать ПО, панель управления, обеспечивать защиту сервера и его сопровождение/обслуживание. Если сервер «упал», или появились какие-то проблемы с производительностью или безопасностью, то решать их придется клиенту. Такой вариант подходит профессиональным системным администраторам. Для владельцев бизнеса подходит вариант управляемого VPS. Это платная услуга, и в этом случае за сервером будут в режиме 24×7 следить профессиональные системный администраторы провайдера услуги VPS-хостинга. ## Оплата Для выбора провайдера необходимо узнать стоимость услуги. Цена зависит от модели управления (управляемый или неуправляемый VPS) и выделяемых ресурсов. Если имеющиеся тарифные планы не подходят, всегда можно поставить свои условия и узнать цену за изменение тарифа. У некоторых провайдеров есть гарантия возврата денег (money back guarantee), если заказчику не понравится хостинг. Важно, чтобы провайдер имел возможность принимать оплату в различной форме и с помощью различных платежных систем. В противном случае можно получить неработающий сайт или приложение из-за не вовремя оплаченного счета. Обратите внимание на минимальный период оплаты. Обычно это один месяц. Некоторые провайдеры требуют оплату за 3 месяца вперед или предлагают значительные скидки за годовую оплату. Если вы выбираете провайдера и вы еще не убедились в качестве предоставляемых услуг – не стоит платить за год, соблазнившись скидкой. ## Панель управления Управлять всеми сервисами VPS можно с помощью дружественного интерфейса – панели управления: Plesk, cPanel, ISPmanager или другой веб-консоли. Иногда хостеры предлагают свои панели. C помощью панели можно настраивать и администрировать работу веб-сервера, доменов, почты, баз данных, управления пользовательским доступом и прочими важными функциями. Существуют бесплатные и платные панели управления, предоставляемы или по подписке, или требующие оплаты лицензии. Как правило, бесплатные панели уступает в функциональности и удобстве работы платному программному обеспечению. Тем не менее, среди бесплатных программ тоже существуют весьма хорошие варианты. ### Конфигурация сервера Конфигурация сервера определяет скорость работы и производительность веб-приложений. Частота процессора, количество ядер, объем оперативной памяти, объем и тип дисковой системы – все это имеет значение. Кроме того, есть смысл узнать, на каком физическом сервере будет находиться ваша VPS. Лучше, если это известный брэнд. ### Надежность Многие провайдеры VPS-хостинга гарантируют надежность 99,9%. Этот показатель может отличаться от реального, и перед выбором поставщика услуги VPS-хостинга рекомендуется поискать отзывы в Интернете. Для надежной работы сайта этот показатель не должен быть меньше 99,95%. ### Избыточность и масштабируемость Избыточность предполагает резервирование ресурсов на стороне провайдера услуги. Провайдер стремится резервировать все свои ресурсы: электропитание, доступ к Интернет и физические серверы. Масштабируемость подразумевает способность справляться с пиками нагрузки на сервер, обычно за счет резервных ресурсов. ### Полоса пропускания и трафик Большинство провайдеров VPS ограничивают полосу пропускания для виртуального сервера и взымать плату за увеличение этой полосы и дополнительный трафик. При выборе хостера VPS стоит убедиться, что вам не придется доплачивать за эти дополнительные услуги. ### Местоположение датацентра Чем ближе сервер находится к вашим клиентам, тем быстрее и с меньшими задержками ваши пользователи и клиенты получат доступ к веб-сайту или приложению. После запуска веб-сервиса можно собрать статистику и решить где лучше разместить VPS-сервер. Можно также создать копии VPS, если ваша аудитория концентрируется в разных регионах, при этом важно принимать во внимание задержки при синхронизации VPS. ### Техническая поддержка Независимо от правильно написанного кода вашего веб-приложения и мощности сервера, всегда возникают какие-то проблемы. На этот случай необходима удобная техническая поддержка. Если служба технической поддержки провайдера VPS-хостинга находится в другой стране, то важно чтобы вы нашли общий язык. ### Дополнительные IP-адреса Они могут потребоваться в нескольких ситуациях: - установка SSL-сертификата; - присваивание выделенного IP каждому сайту на вашем виртуальном сервере (иначе они автоматически получат IP-адрес сервера VPS); - разные IP для разных каналов (веб-сайта, мобильные приложения и пр.); - разные IP для разных сервисов (CMS, база данных и др.); - назначение нескольких IP одному сайту, например, имеющему домены на разных языках ### Наличие тестового периода Некоторые провайдеры предлагают тестовый период. Это очень удобная услуга. За время тестового периода можно отследить параметры предоставляемого VPS и убедиться, насколько качественны предоставляемые услуги. https://serverspace.by/about/blog/bezopasnost-v-oblake.md Поскольку все больше организаций среднего размера переносят рабочие нагрузки в облачные среды, можно задать вопрос, безопасная ли облачная среда? Облачные технологии предоставляют организациям всех размеров и типов многочисленные преимущества с точки зрения масштабируемости, потенциальной экономии ресурсов и инноваций. Поскольку все больше организаций среднего размера переносят рабочие нагрузки в облачные среды, можно задать вопрос, безопасная ли облачная среда? Реальной опасностью облачных вычислений является предполагаемая потеря контроля, включая проблемы с видимостью в среде провайдера, возможной несовместимостью инструментов безопасности и элементов управления в облаке. К проблемам безопасности облаков можно отнести: - отсутствие видимости и контроля над процессами в облаках; - теневое ИТ; - вероятность случайно публикации данных; - злоумышленная утечка данных; - искажение или потеря критичных данных; - несоответствие требованиям регуляторов; - присутствие облачных вредоносных программ; - вероятность распространения вредоносных программ на всю сеть организации. К счастью, инструменты облачно безопасности также развиваются, и появляется множество передовых методов и услуг обеспечения безопасности для облачных сервисов,которые могут использовать организации. ## Совместная ответственность В эпоху облачных вычислений все больше компаний используют совместную ответственность за безопасность данных в ИТ. Это означает, что поставщик облачных услуг отвечает за некоторые элементы безопасности, а организация — за элементы управления. Поэтому перед подписанием договора важно договориться, кто за что отвечает. Характер модели совместной ответственности будет различаться в зависимости от используемой модели, которая может быть как SaaS, PaaS или IaaS. Например, в моделях SaaS потребитель отвечает только за данные, а поставщик отвечает за операционную систему, приложение и инфраструктуру. В моделях PaaS потребитель несет ответственность за данные, то есть за данные, и, вероятно, за некоторые компоненты приложения. В отличие от этого, в модели IaaS потребитель несет ответственность за все уровни безопасности в облаке (также называемые развернутыми активами), а поставщик облачных услуг отвечает только за базовую инфраструктуру. Таким образом, ни один облачный провайдер не возьмет на себя полную ответственность за все меры и требования к кибербезопасности. Некоторые проблемы безопасности будут нести сами организации, и они будут обязаны знать, что они могут и не могут контролировать в различных облачных средах. ## Соответствие, контроль данных и ответственность Все организации, использующие облачные технологии, сталкиваются с проблемами соответствия. Это означает, услуги облачного провайдера должны соответствовать национальным и международным требованиями. Также важно знать, какие типы данных отправляются в облако, и уметь тщательно контролировать этот поток. Это может быть особенно трудным, когда пользователи могут подписаться на облачные сервисы без ведома руководства организации, и DLP-системы могут не заметить использование облачных услуг с отдельных ноутбуков или компьютеров за пределами организации. В этил случаях имеет смысл использовать услуги брокеров безопасного доступа в облако (Cloud Access Security Broker) -CASB. CASB-системы сначала контролировали доступ к услугам SaaS, таким как CRM, ERP, приложения Microsoft Office 365 и службы технической поддержки (Service desk). На сегодняшний день область их применения включает также услуги PaaS и IaaS. Системы CASB помогают организациям контролировать облачные приложения и сервисы, как официально разрешенные политиками ИБ компаний к использованию, так и не разрешенные. Такие системы обеспечивают: - **Наглядность**. CASB позволяют производить поиск и обнаружение всех используемых разрешенных и неразрешенных облачных услуг и наглядное их отображение: к каким облачным приложениям или сервисам сотрудники имеют доступ и кто ими пользуется, с каких устройств и из какого местоположения. - **Защита данных. **CASB позволяет управлять правами доступа к облакам для предотвращения доступа к неразрешенным услугами и приложениям, контролировать доступ к ресурсам с различных устройств, а также политик разграничения прав доступа к данным. - **Защита от угроз.** CASB позволяют обнаруживать и нейтрализовать вредоносные программы в облачных платформах. Согласно исследованиям Netskope и Ponemon Institute, 31% организаций испытали негативные воздействия на свои критичные данные, вызванные облачными вредоносными программами. - **Соответствие.** CASB помогает соблюдать установленные внутренние политики информационной безопасности и демонстрировать соответствие нормативных требованиям внешних регуляторов. ## Защита клиентов и конечных точек Клиенты, работающие в облаке, нуждаются в защите на том же уровне, что и клиенты внутри сети организации. Такая защита включает в себя исправления программного обеспечения, управление конфигурацией и защиту от вредоносных программ. Для масштабирования в облачных средах эти процессы должны быть автоматизированы и, в идеале, должны соответствовать процессам внутри сети организации. Например, если организация использует антивирусное программное обеспечение одного производителя внутри сети организации, то в облачной системе антивирус должен быть того же производителя или того же типа. Также важно убедиться, что программы для защиты от вредоносных программ не замедляют производительность как внутри сети предприятия, так и в облаке. ## Управление идентификацией и доступом Основная задача управления идентификацией – это контроль доступа к компьютерным ресурсам, приложениям, данным и услугам. Такую задачу решают системы IdM или IAM ((Identity and Access Management). Для идентификации пользователей облачные системы могут использовать проверку подлинности с помощью форм. Организация может самостоятельно обеспечить аутентификацию пользователей в облачном сервисе или использовать услуги провайдеров услуги управления идентификацией. Методики для этого называются по-разному, например, «идентификационная идентификация», «федерация идентификации» и включают в себя ряд протоколов (например, SAML, SAML-P, WS-Federation, OAuth). Эти методики зависят от систем, которые организация хочет использовать для аутентификации пользователей: - AML/WS-Fed обычно используются для предприятий (например, с использованием Microsoft Active Directory). - OAuth в основном используется системами, ориентированными на потребителя (например, Facebook, Google и т.д.). В идеале идентификация должна поддерживать многофакторную аутентификацию для тех продуктов, с которыми знакомы пользователи компании, и перед внедрением системы IAM/IdM необходимо убедиться, что система поддерживает все типы пользовательских устройств. ## Контроль уровня приложения Облачные приложения подвергаются множеству угроз. Cloud Security Alliance (CSA) разделяет безопасность приложений на различные области, включая защиту жизненного цикла разработки программного обеспечения в облаке; аутентификацию, авторизацию, управление идентификацией, управление авторизацией приложений, мониторинг приложений, тестирование на проникновение приложений; и управление рисками. Если организация разрабатывает облачное приложение, то важно, чтобы эти аспекты учитывались при внедрении. Внедрение должно включать ревизию кода, тестирование, а эксплуатация такого приложения должна сопровождаться регулярной проверкой учетных записей, разграничением доступа к данным, а трафик приложения должен шифроваться. ## Контроль сети Если организация использует гибридное облако, то у внутреннего ЦОДа, который взаимодействует с облачной системой мало возможностей для управления сетевой безопасностью. Можно использовать межсетевые экраны, IDS/IDP системы и прочие системы безопасности. Кроме того, если используются программно-определяемые сети, нужно убедиться в том, не происходило чрезмерное распределение прав. Для активов в публичных облаках необходимо установить безопасное выделенное соединение с использованием IPSec или отдельного канала облачного провайдера, такого как ExpressRoute, и внедрить любые средства контроля доступа к сети или IDS/IPS систему с помощью совместимых продуктов. В идеале организации могут использовать те же продукты и технологии, которые используются внутри сети организации, но для разработки и реализации мониторинга облачных услуг и управления сетевым доступом к ним могут потребоваться дополнительные ресурсы. К сожалению, существует множество сценариев, когда поставщики SaaS и другие облачные сервисы будут поддерживать небезопасные сетевые соединения. В таких сценариях обычно не используются такие технологии, как "песочницы" для обнаружения вредоносных программ и DLP-системы, обнаруживающие утечки данных при взаимодействии с облаком. В таких случаях на помощь приходят брокеры облачных услуг (cloud services broker, CSB). Такие брокеры позволяют с помощью одного интерфейса управлять инфраструктурой и сервисами, размещенными у различных провайдеров облачных услуги. Частично функции CSB совмещены с функциями CASB, но CSB больше направлены на управление внешними услугами, мониторинге, аналитике и оптимизации затрат. Обычно такие решения реализованы при помощи всего двух подходов: прокси и API. В первом случае трафика проходит через программно-аппаратный комплекс, предоставляемый брокером. Одна часть которого устанавливается на стороне заказчика, а другая – в облаке брокера. На конечные устройства также может устанавливаться дополнительное программное обеспечение. Программно-аппаратный комплекс интегрируется с системами безопасности у клиента и позволяет управлять всем потоком данных. Можно получать отчеты, настраивать политики и права доступа к облачным ресурсам, получать извещения о нарушениях политик. Во втором случае, то есть работе через API, все функции управления доступом находятся в облаке брокера. Обычно используется оба варианта, и для разных конечных устройств используются тот или иной подход или их комбинация. Чтобы получить положительный ответ на вопрос "готова ли ваша организация обеспечить безопасность в облаке", нужно: - обеспечить безопасную передачу данных; - обеспечить контроль и мониторинг активности пользователей; - совместимость с надежными продуктами для обеспечения безопасности или поставщиками управляемых услуг по обеспечению безопасности. Эти требования в равной степени применимы к организациям и малого, и среднего бизнеса, которые хотят начать облачный проект или осуществить полный переход в облако. https://serverspace.by/about/blog/chto-takoe-multioblachnost.md Организации по всему миру развиваются в соответствие с планами и проектами цифровой трансформации. Почти все из них (94%) в настоящее время используют облачные ресурсы Статистика может рассказать целую историю. Организации по всему миру развиваются в соответствие с планами и проектами цифровой трансформации. Почти все из них (94%) в настоящее время используют облачные ресурсы. Организации, тесно работающие с цифровыми технологиями, предпочитают работать в разнообразном ИТ-ландшафте. Такой ландшафт может состоять из нескольких облачных сервисов от различных провайдеров. Стратегия использования нескольких облаков получила название мультиоблачность (multi-cloud). Мультиоблачность не включает в себя гибридное облако. Отличие состоит в том, что гибридная модель предполагает расширение возможностей частного облако за счет ресурсов публичного облака. Как правило, гибридное облако нужно для обеспечения мощности в случае дополнительной нагрузки. В мультиоблачной системе разные задачи распределяются между разными провайдерами и выполняются независимо друг от друга. ## Как это работает Мультиоблачная система может сочетать и компоновать облачные сервисы от различных провайдеров. Некоторые реализации мультиоблачной системы позволяют объединять ресурсы облаков без оркестрации. Такая мультиоблачная структура строится на базе гиперскейлеров, таких как Amazon AWS, Microsoft Azure, Google Cloud Platform и прочих. Гиперскейлеры создают фабрики данных (data fabric) – распределенные сети для хранения данных. Эффективность работы такой системы зависит от правильного управления данными. Следить за работой мультиоблачной системы можно через брокер облачных сервисов (cloud services broker, CSB ) или через специальную платформу (cloud management platforms), которая связывает ресурсы независимых провайдеров в единый пул. В этом случае управлять данными можно через единую консоль. Другие реализации мультиоблачных систем требуют оркестрации. Если приложение, размещаемое в мультиоблачной среде, приспособлено для работы в облаке (cloud-native), то чтобы обеспечить работу во множестве облаков, используются технологии контейнеризации. Операционная система виртуализуется с помощью контейнера и в этот контейнер помещается необходимое приложение. Контейнер объединяет в себе все необходимые файлы приложения, конфигурационные файлы и зависимое программное обеспечение. Существует множество технологий для такого подхода, включающие Docker, rkt, PouchContainer и другие подобные инструменты. Для эффективного разворачивания приложений и применения централизованных политик управления используются платформы оркестрации контейнеров. Сегодня наибольшей известностью пользуются kubernetes и решения на его основе (например, OpenShift, Docker Swarm и Apache Mesos). Если приложение не приспособлено для работы в облаке, и требует частых изменений(например, веб-приложение, требующее обновление кода), используется автоматизация управления инфраструктурой при помощи таких фреймворков, как Ansible, SaltStack, Chef и т.д. ### Типы инструментов, применяемых для управления или оркестровки облачных сервисов | Облачная платформа управления | 41,2% | | --- | --- | | Другое (например, AWS Cloudformation и OpenStack Heat) | 29,4% | | Инструменты собственной разработки | 6,9% | | Оркестровка сети | 4,4% | | Управление конфигурациями и инфраструктурой | 10,7% | | PaaS | 1,3% | | Контейнерные решения | 6,1% | Яркий пример мультиоблачной системы – это сервис потокового вещания Netflix. Netflix работает в двух облаках — AWS и Open Connect. Сам сервис можно разделить на три части: клиент, бэкэнд и сеть доставки контента (CDN). Клиент – это пользовательский интерфейс, работающий на любом устройстве, используемого для воспроизведения. Это может быть приложение на смартфоне или планшете, или "умный" телевизор. Бэкэнд, работающий на AWS, подготавливает новое видео, обрабатывает запросы от всех приложений, веб-сайтов и других устройств, обеспечивает бизнес-логику, хранит профили пользователей, обеспечивает транскодирование из исходного файла в нужный конкретному устройству формат и предоставляет разнообразную аналитику, и даже показывает заглавные изображения индивидуально для каждого пользователя. AWS разбиты на три региона: в Северной Виргинии, в Портленде, Орегон и в Дублине, Ирландия. Преимущество работы в трёх регионах состоит в том, что один из них может упасть, а два других встанут на его место и будут обслуживать клиентов из пострадавшего региона. Ещё одно преимущество работы из трёх этих регионов состоит в том, что Netflix может покрывать весь мир. Netflix может добавлять сервера по необходимости и возвращать их, когда они не нужны. Стоимость облачных ресурсов в пересчёте на просмотр видео выходит в разы меньше, чем при использовании собственных дата-центров. У Netflix есть три различных стратегии для воспроизведения потокового видео — [хранилища S3](https://serverspace.by/services/storage.md), сторонние CDN и Open Connect. Центральное место хранения файлов – это S3. Видеофайлы копируются из центрального места хранения по сети и хранятся на серверах, распределенных по всему миру. Каждое местоположение сервера, хранящего видео, называется точкой присутствия (PoP, point of presence). Каждая PoP — это физическое местоположение с доступом в интернет. Там находятся сервера, роутеры и другое телекоммуникационное оборудование. Файлы хранятся в собственной CDN – OpenConnect. Netflix разработала собственную компьютерную систему для хранения видео. Netflix называет её устройствами Open Connect Appliances, (OCA). OCA группируются в кластеры из нескольких серверов. Каждый OCA — это быстрый сервер, оптимизированный на выдачу крупных файлов, со множеством жёстких дисков или флэш-накопителей, хранящих видео. Количество ОСА на местах зависит от надёжности, которую Netflix хочет достичь в определённом месте, объём трафика, который оно обслуживает и процент трафика, которую этот центр может отправлять в виде потока. Netflix раздаёт огромные объёмы видео с тысяч серверов, расположенных в более чем 1000 дата-центров по всему миру. ### Карта расположения серверов Netfilx В отличие от YouTube, Netflix не строила свои сети и свои дата-центры. Вместо этого интернет-провайдеры (ISP) соглашаются размещать у себя ОСА. Netflix бесплатно предлагает провайдерам встраивать свои сервера в их сеть, кроме того, она размещает ОСА близ точек обмена трафиком (internet exchange location, IXP). В случае аварий или перегрузки сетей Netflix использует CDN сервисы различных поставщиков — Akamai, Limelight и Level 3. ## Преимущества мультиоблачности Способность выигрывать в конкурентной борьбе для современной компании в значительной степени зависит от способности использовать тот или иной сервис или приложение в наиболее подходящей облачной среде. Причем использование облачной среды не зависит от того, какая преследуется цель – экономия средств или оптимизация производительности. Наиболее привлекательным преимуществом для множества компаний является возможность распределения нагрузки на провайдеров облачных услуг. При этом можно выбирать у каждого провайдера только те услуги, которые максимально соответствуют требованиям этого приложения или сервиса. Другое преимущество мультиоблачных систем – это быстрое восстановление после аварии. Например, в больших компаниях разные отделы могут использовать сервисы различных облачных провайдеров. Такая стратегия позволяет предотвратить потерю всех данных и ситуацию, когда одна авария в своем дата-центре или успешная DDoS атака на ресурсы провайдера облачных услуг парализует работу всей компании. Каждое преимущество, связанное с мультиоблачным подходом, может оказаться полезным для создания или поддержания конкурентного преимущества в современной цифровой экономике. Конечно, для реализации этих преимуществ организации требуется надежная стратегия. Перечислим некоторые рекомендации, которые дают отраслевые эксперты. ### Комплексная оценка Перед внедрением мультиоблачной системы требуется произвести планирование. Планирование должно включать в себя инвентаризацию приложений, выбор облачных провайдеров и сервисов, обучение персонала, оценка рисков, введение процедур контроля изменений. ### Отдельная структура для облачной инженерии Для эксплуатации мультиоблачной системы рекомендуется создать отдельное подразделение, которое будет заниматься задачами доработки облачной инфраструктуры и защитой процессов в облаках. ## Приоритет интеграции Если бизнес-приложения клиентов базируются на множестве облачных сервисов, необходимо обеспечить интеграцию между ними. Для этого потребуются интерфейсы программирования (API), с помощью которых системы будут взаимодействовать без прерываний и замедлений. ### Управление доступом и защита данных При использовании множества облачных сервисов, работающих в разных публичных и частных облаках, требуется обеспечить необходимый уровень безопасности. Для снижения риска при работе со многими облачными провайдерами рекомендуется использовать мультифакторную аутентификацию. Также необходимо разграничить пользовательские права. При этом придется разобраться, как реализовать единую систему аутентификации у разных провайдеров. Кроме того, необходимо разработать политики доступа к ресурсам и обеспечить контроль их соблюдения. Облачные провайдеры предлагают различные типы сервисов хранения данных, и у каждого из них могут быть свои политики доступа, которые обязательно нужно задействовать для защиты хранимых данных. Данные необходимо защитить от несанкционированного доступа при помощи шифрования. Важно также убедиться в том, что процедуры резервного копирования и восстановления, реализуемые всеми провайдерами, соответствуют требованиям вашей организации. Возможно, эти процедуры придется дополнить собственными механизмами резервирования и восстановления. ### Контроль расходов В мультиоблачной среде легко запутаться в ходе учета расходов. Поэтому необходимо тщательно контролировать затраты на управление мультиоблачными средами, включая расходы, связанные с контролем, интеграцией, а также задачами локализации и устранения проблем и дефектов. https://serverspace.by/about/blog/testovie-sredi-na-virtualnom-hostinge.md Предположим, вам необходимо организовать среду для тестирования нового приложения. Для решения этой задачи достаточно обратиться к облачному провайдеру и запросить ресурсы для организации тестовой среды. Чтобы конечный пользователь смог по достоинству оценить преимущества программного продукта, разработчики, прежде чем представить финальный релиз, проделывают немало работы. И одним из важных шагов является тестирование, благодаря чему на различных этапах разработки можно выявлять недочеты. Для этих целей многие компании используют [виртуальный хостинг](https://serverspace.by/services/vps-server.md) как наиболее удобную площадку для развертывания тестовых сред. [/services/vps-server/](https://serverspace.by/services/vps-server.md) ## Для чего нужна тестовая среда Как известно, в среде разработки создаются новые сервисы и после того, как они готовы, их переносят в продуктивную среду. Но прежде чем решение будет доступно для общего использования, его необходимо проверить на работоспособность. Для этих целей создаются тестовые среды, которые выступают своего рода полигоном, где проводятся всевозможные проверки. Важно понимать, что процесс тестирования требует системного подхода и использовать для этого лучшие практики недостаточно. Чтобы получить положительные результаты, необходимо с самого начала организовать процесс правильно. Для начала необходимо определиться с целями, областью, методологией тестирования и позаботиться о подготовке тестовой среды. Сегодня многие организации, в том числе команды разработки, уходят от традиционных подходов к организации тестовых сред. Если раньше под эти задачи разворачивали собственную инфраструктуру, которая требовала отдельной поддержки и дополнительных финансовых вливаний, теперь чаще отдается предпочтение более экономичным вариантам. Одним из них является виртуальный хостинг, представляющий собой один из удобных вариантов организации процесса тестирования, который отличается целым рядом конкурентных преимуществ. Примечательно, что тестовые среды, развернутые на базе виртуального хостинга, избавляют от простоев собственных серверов, поскольку отпадает необходимость в их использовании. Вместо этого вы получаете необходимые виртуальные ресурсы без потери качества. В последнее время большинство приложений создаются с возможностью доступа через стандартный интернет-браузер, и они также нуждаются в проверке работоспособности на уровне кода. Очень важно, чтобы приложение точно повторяло взаимодействие с пользователем. Кроме того, важно получить обратную связь относительно производительности и надежности работы сервиса. Используя для этих задач виртуальный хостинг, можно получить практически мгновенный ответ и обратную связь относительно функциональности и согласованности работы конкретного решения. ## Пример использования тестовой среды Предположим, вам необходимо организовать среду для тестирования нового приложения. Для решения этой задачи достаточно обратиться к облачному провайдеру и запросить ресурсы для организации тестовой среды. После клиенту предоставляется доступ к консоли управления, выделяются требуемые ресурсы, которые используются при развертывании тестируемого решения. А после окончания процессов проверки и выявления багов, используемые мощности могут быть возвращены и использоваться для других задач. Такой подход облегчает совместное использование ресурсов и предотвращает простои недостаточно загруженного оборудования. | Тестовая среда для нагрузочного тестирования | Тестовая среда для временного использования | | --- | --- | | Виртуальный хостинг также отлично подойдет для проведения нагрузочного тестирования веб-приложений и демонстрационных целей. Поскольку здесь отсутствует необходимость использовать инфраструктуру компании, тестирование происходит без оказания влияния на собственные мощности. За счет возможности потребления выделенных ресурсов, можно получить не приблизительные, а точные результаты. | Тестовая среда на базе виртуального хостинга отлично подойдет для временных проектов. Зачастую возникают ситуации, когда требуется развернуть веб-приложение, проверить его функциональность и в случае корректной работы, передать заказчику. В таком сценарии отсутствует необходимость в использовании виртуального хостинга на постоянной основе. После выявления и исправления багов, тестовая среда деактивируется и используется в дальнейшем по мере необходимости. | ## Заключение Тестовые среды, организованные на базе виртуального хостинга, превращают затраты в минимальные и значительно ускоряют циклы тестирования. Такую среду можно развернуть в кратчайшие сроки, подобрав под себя оптимальную конфигурацию. В результате клиент получает более эффективное и относительно недорогое решение, благодаря которому реализуются проекты по тестированию и разработке с минимальными издержками. Компания Serverspace предоставляет услуги облачных серверов в аренду — ознакомьтесь с нашими **тарифами на VPS** на [Windows](https://serverspace.by/services/vps-server/windows/) и [Linux](https://serverspace.by/services/vps-server/linux/). https://serverspace.by/about/blog/chto-takoe-virtualniy-cod.md Начнем с определения: Виртуальный дата-центр (Virtual Data Center, VDC) – это набор ресурсов в облаке провайдера Сегодня термин «виртуальный» встречается довольно часто. Виртуальная инфраструктура, виртуальная машина – о чем мы неоднократно рассказывали в статьях нашего блога. Настал черед познакомиться с понятием виртуальный ЦОД. Что это такое, какие задачи решает, какими обладает преимуществами? На эти и другие вопросы вы найдете ответы в сегодняшнем материале. ## От общего к частному Начнем с определения: Виртуальный дата-центр (Virtual Data Center, VDC) – это набор ресурсов в облаке провайдера, представленных в виде серверов, сетей и хранилищ, которые используются как основа для построения ИТ-инфраструктуры любой сложности. Виртуальный ЦОД не уступает физическому дата-центру, наоборот – превосходя его по гибкости и функциональным возможностям. Управлять ресурсами такого ЦОД довольно просто, поскольку клиент получает доступ к порталу самообслуживания, представляющий собой единую консоль централизованного управления. И для того, чтобы изменить объем используемых мощностей либо развернуть сервер – нужно потратить всего несколько минут, ведь консоль позволяет добавлять/высвобождать желаемое количество ресурсов, создавать требуемое количество виртуальных машин, определять сетевые настройки, задавать параметры резервного копирования и делать это без взаимодействия со службой технической поддержки провайдера. На практике в основе виртуального ЦОД лежит сверхнадежное «железо», без которого невозможно построить ни одну виртуализированную инфраструктуру. Использование High-End оборудования известных фирм-производителей и гипервизоров корпоративного уровня, позволяет поставщику услуг добиться высокого качества оказания сервиса. Важно понимать, что на физическом уровне каждый виртуальный ЦОД изолирован друг от друга, что обеспечивает независимость от использования ресурсов «соседями» по облаку. Представляя собой продукт, реализуемый по модели IaaS, в виртуальном ЦОД можно создавать и хранить любое количество виртуальных машин, причем затраты на используемое оборудование и его последующее содержание обходят клиента стороной. Заказчик не сталкивается и уж тем более не решает этих вопросов, поскольку модель виртуального ЦОД подразумевает легкость, простоту в работе с учетом интересов и потребностей клиента, а за остальное отвечает поставщик услуг. ## Высокие скорости и готовность к изменениям Использовать виртуальный ЦОД – это значит подстраиваться под любые требования бизнеса, которые из года в год становятся более высокими. Поскольку компании чаще делают ставки на скорость, надежность, безопасность, соответствие ожиданиям клиента является задачей номер один для провайдера услуг. За счет технологии виртуализации используемые мощности расходуются более эффективно, что позволяет оптимальным образом распределять ресурсы для решения различных задач. Основные преимущества виртуального ЦОД видятся в значительной экономии, поскольку теперь нет необходимости тратить бюджет на покупку физического оборудования и систем хранения данных. К тому же возможность гибкого масштабирования в совокупности с высокой доступностью и защищенностью данных делают услугу виртуального дата-центра особенно популярной. ## Виртуальный ЦОД как слоеный пирог Если проводить аналогию, то виртуальный дата-центр и вправду похож на многослойный пирог, состоящий из отдельных уровней виртуализации. **Уровень 1:** виртуализация сети обеспечивает связность устройств для того, чтобы виртуальные серверы могли взаимодействовать друг с другом. Благодаря этому мы получаем не просто набор из отдельных виртуальных машин, а полноценную инфраструктуру, способную обмениваться между собой данными. **Уровень 2:** виртуализация СХД позволяет использовать аппаратные компоненты для масштабирования ИТ-инфраструктуры. Объединяя несколько разрозненных дисков в единый массив, происходит равномерное потребление ресурсов, что позволяет оптимизировать доступное место на используемых накопителях. **Уровень 3**: виртуализация вычислительных ресурсов дает возможность гибко распоряжаться доступными мощностями. Например, с легкостью добавлять необходимое количество оперативной памяти для ВМ, использовать одно или несколько ядер процессора. Процесс выглядит максимально просто, ведь клиенту достаточно передвинуть ползунок, чтобы добиться желаемого уровня масштабирования. **Уровень 4:** виртуализация приложений позволяет работать с любым набором программных средств без привязки к операционной системе. На этом уровне решается проблема совместимости ПО, когда любое приложение может быть запущено без оглядки на системные требования. **Уровень 5:** виртуализация доступа решает вопрос удаленного подключения к инфраструктуре. В условиях высокой мобильности пользователей, когда привязка к рабочему месту отходит на второй план, это особенно актуально. ## Примеры, когда стоит использовать виртуальный ЦОД Виртуальный ЦОД – это универсальное решение, которое может покрыть потребности любой категории клиента. Если нет стопроцентного понимания, для каких задач подходит виртуальный ЦОД, воспользуйтесь таблицей, в которой собраны наиболее яркие примеры. | Примеры использования виртуального дата-центра (VDC) | | | --- | --- | | В качестве резервного ресурса при пиковых нагрузках | | | Для организации тестовой среды и разработки ПО | | | В случае замены оборудования, миграции как резервный ЦОД | | | Для развертывания новой ИТ-инфраструктуры | | | Для увеличения мощностей существующей ИТ-инфраструктуры | | | Создание удаленных рабочих мест для сотрудников компании | | | Для сокращения капитальных и эксплуатационных расходов | | | Для хранения данных | | | Размещение сложных информационных систем | | ## Заключение Виртуальный дата-центр – как универсальное решение, подходит для задач любого формата, но чаще используется представителями среднего и крупного бизнеса. Сегодня эта услуга позволяет реализовать крупномасштабные проекты, особенно если речь идет о развертывании новой либо наращивании уже существующей инфраструктуры. Поскольку получить желаемый результат можно за считанные минуты, современные компании стали чаще отдавать предпочтения виртуальному ЦОД, активно используя эту услугу в повседневной жизни. https://serverspace.by/about/blog/chto-takoe-virtualnaya-infrastruktura.md В век высоких технологий, когда на смену допотопным решениям приходят совершенно новые, жизнь кардинально меняется в лучшую сторону В век высоких технологий, когда на смену допотопным решениям приходят совершенно новые, жизнь кардинально меняется в лучшую сторону. И если раньше огонь добывали путем трения сухих кусков дерева друг о друга, а воду носили из колодца, с появлением современных благ цивилизации это стало пережитком прошлого. Все мы сегодня пользуемся коммунальными услугами, в наших домах проведено электричество, вода, отопление, что очень удобно, но за это приходиться платить. Аналогичное происходит и в ИТ-индустрии: в последнее время серверная инфраструктура заменяется на виртуальную, компании чаще переносят важные сервисы в облако провайдера. И это оправданно, ведь содержать собственный парк серверов довольно дорого, а вариант с арендой виртуальных мощностей является не только гибким и многофункциональным, но и экономически оправданным. ## Немного теории Чтобы лучше ориентироваться в терминологии, начнем с определения. Итак, виртуальная инфраструктура (Virtual Infrastructure) – это альтернатива привычной ИТ-инфраструктуре, в основе которой вместо необходимости использовать настоящее "железо" лежат виртуальные ресурсы. Благодаря этому можно собрать желаемую конфигурацию виртуальных машин, учитывая любые потребности бизнеса. Важное преимущество – компания больше не покупает физическое оборудование, избавляясь от чрезмерно высоких затрат. Достаточно взять в аренду необходимый пул ресурсов, которым впоследствии можно управлять: наращивать или высвобождать мощности по требованию. В привычном же формате, в основе которого лежит физическое оборудование, в случае нехватки ресурсов, требуется докупать отдельные компоненты, либо линейно увеличивать число физических серверов. Такой подход признан неэффективным с точки зрения затрат, к тому же вычислительные мощности физических серверов никогда не получится задействовать на все 100%. Средняя загрузка потребления мощностей по такой схеме обычно не превышает 10-15%. Сместить эти показатели в сторону максимальной отметки помогает виртуализация серверной инфраструктуры. ## Без виртуализации никуда На сегодняшний день активно используются различные варианты виртуализации, в том числе виртуализация представлений, приложений, сети и хранилищ. Все это позволяет имитировать работу отдельных служб и приложений, запуская их в изолированной среде без конфликтов и негативных воздействий друг на друга. К тому же появляется возможность имитировать аппаратную часть сервера и устанавливать на него любую ОС. При этом сервисы, приложения или операционные системы продолжают работать точно так же, как если бы они были установлены на физическом оборудовании. Тут сразу стоит отметить, что потребление ресурсов в таком режиме происходит максимально эффективно. По этой причине компании чаще задумываются об использовании виртуальной инфраструктуры, ведь благодаря этому можно гораздо быстрее и эффективнее выходить в продакшн, добиваясь поставленных целей в рекордно короткие сроки. ## Прозрачность и удобство для пользователя Для того, чтобы воспользоваться преимуществами виртуальной инфраструктуры, клиенту достаточно обратится к надежному поставщику услуг, а лучше сразу к нескольким. Это позволит оценить предлагаемые варианты и выбрать для себя наилучший. Помните, на этапе знакомства с провайдером, клиент всегда может воспользоваться тестовым доступом, который как правило предоставляется на две недели бесплатно. За это время можно оценить преимущества и возможности площадки провайдера. Как осуществляется управление виртуальной инфраструктурой? Важно понимать, что это один из простых и удобных вариантов работы. Клиенту предоставляется доступ к веб-консоли, которая выступает отправной точкой для работы с виртуальной инфраструктурой. Получив ссылку доступа, клиент открывает консоль, в окне которой может создавать неограниченное количество виртуальных машин, настраивать параметры сети, устанавливать необходимые ОС и приложения. А для того, чтобы в дальнейшем ускорить процесс развёртывания ВМ, можно создать шаблон из уже созданного сервера. Это позволит использовать имеющийся объект в качестве прототипа новых и экономить время на типовой настройке. Более того, наличие готового шаблона ускоряет и упрощает масштабирование инфраструктуры. Таким образом не придется делать одну и ту же работу дважды, а сэкономленное время вы всегда сможете потратить на решение более важных задач. ## Заключение На сегодняшний день виртуальная инфраструктура является основой для построения ИТ-ландшафта любой сложности: компании разного калибра, будь то небольшая организация или крупный клиент, отдают предпочтение прогнозируемым расходам и ожидаемым результатам. К тому же гибкость управления и скорость выхода на рынок являются важными приоритетами в условиях быстрорастущих требований бизнеса. Виртуализировав серверы, сеть и хранилища данных, клиент получает возможность работать с единым пулом ИТ-ресурсов, который может использоваться различными приложениями по требованию. Такой подход обеспечивает высокую гибкость и приводит к снижению капитальных и эксплуатационных расходов. https://serverspace.by/about/blog/chto-takoe-sla.md Сегодня облачные провайдеры предлагают широкий портфель решений, ориентированных на различные задачи Сегодня облачные провайдеры предлагают широкий портфель решений, ориентированных на различные задачи. Когда клиент обращается к поставщику за услугой, стороны подписывают договор и соглашение об уровне оказываемого сервиса (Service Level Agreement, SLA). Что из себя представляет этот документ и о чем обязательно должен знать клиент, расскажем в сегодняшнем материале. ## Три заветные буквы – когда и зачем Каждый раз, когда совершается покупка техники в магазине, вместе с товаром клиенту выдается гарантийный талон, который действителен на протяжении определенного времени. Этим производитель демонстрирует свою ответственность перед заказчиком. В случае если техника ломается, может быть произведена замена либо ремонт. Примерно по такой же схеме работает провайдер: предоставляя клиенту сервис, поставщик несет ответственность за качество оказываемых услуг и декларирует это в SLA. Зачастую соглашение об уровне обслуживания представляет собой отдельный документ, в котором подчёркиваются измеримые показатели и результаты, которые ожидает получить клиент и обязан предоставить подрядчик. А что говорит Wikipedia? Согласно определению, соглашение об уровне предоставления услуги (Service Level Agreement, SLA) – это термин методологии ITIL, представляющий собой формальный договор между заказчиком услуги и ее поставщиком, содержащий описание услуги, права и обязанности сторон, а также согласованный уровень качества предоставления услуги. ## Из чего состоит SLA На смотря на то, что cоглашение об уровне обслуживания придумали давно, оно стало по-настоящему популярным около десяти лет назад, когда аутсорсинг превратился в одно из ключевых направлений ИТ-индустрии. Поскольку клиенты делегировали задачи поставщику ИТ-услуг, требовался контроль над качеством обслуживания. Заказчик обращал внимание на определенные метрики и индикаторы, например, время работы отдельных сервисов, время разрешения проблем и другие моменты. Это помогало оценить: была ли услуга предоставлена в соответствии с заданным уровнем качества. Но современный SLA охватывает гораздо больше вопросов. Ниже рассмотрим основные разделы документа, которые должен обязательно учесть надежный поставщик облачных сервисов: - Определения, о которых договорились стороны, цель договора, предмет соглашения и сроки его действия. - Точное время (дни и часы в формате UTC), когда услуга будет предоставлена. - Гарантированные переменные в виде количества и размещения пользователей/ оборудования, использующих предоставляемый сервис. - Описание процедуры создания отчетов об инцидентах/ проблемах (включая условия эскалации на следующий уровень и время, необходимое для подготовки отчета). - Порядок выполнения запросов на изменения. - Спецификация целевых уровней качества сервиса, в том числе: Средняя доступность, представленная в виде среднего числа сбоев на период предоставления сервиса; - Минимальная доступность для каждого пользователя - Среднее время отклика сервиса - Максимальное время отклика для каждого пользовател - Средняя пропускная способност - Описания расчета озвученных метрик и частоты отчетов. - Описание платежей, связанных с сервисом и особенности выставления счетов (как единовременно, так и разделенные по категориям). - Ответственность заказчика и поставщика ИТ-услуг. - Политика разрешения споров, связанная с оказанием сервиса. - Процедура внесения изменений и улучшения SLA. Важно понимать, что SLA позволяет поддерживать работоспособность бизнеса, определяя цель и продолжительность сотрудничества, график оказания сервиса, условия оплаты, гарантии и размеры компенсаций. Сегодня SLA используется как основной инструмент, позволяющий урегулировать вопросы в сфере оказания ИТ-услуг. Кроме того, согласованный между клиентом и провайдером SLA способствует взаимовыгодному сотрудничеству, поскольку заказчик получает гарантированное качество обслуживания, а поставщик оказывает сервис и выполняет работу в рамках четко оговорённых обязанностей и задач. ## Как работает алгоритм поддержки SLA Поскольку поддержка ИТ-систем происходит согласно международному отраслевому стандарту ITIL по соглашению об уровне сервиса, важно иметь представление о том, как работает алгоритм поддержки SLA. Эти знания помогут в оценке ситуации, когда что-то пошло не так или если возникла необходимость обращения к провайдеру услуг. Итак, с каких шагов обычно начинается взаимодействие клиента с поставщиком услуг? - Формируется заявка В случае необходимости клиент формирует заявку, используя различные варианты (по телефону, почте, портал Servicedesk). - Классификация обращения Происходит определение типа заявки – ошибка, проблема, запрос на обслуживание и т.д. - Ответ исполнителя Поставщик реагирует на обращение согласно оговоренному времени, как правило в течение 30 минут. - Подготовка Поставщик оценивает трудоёмкость решаемой задачи и согласует с клиентом сроки выполнения. - Исполнение Запускается процесс решения обращения удаленно, либо на стороне заказчика. - Отчет по заявке По завершению выполнения работ, поставщик предоставляет клиенту детализированный отчет по заявкам за определенный период. ## Заключение Подводя итоги стоит отметить, что детально проработанное соглашение об уровне обслуживания облегчает жизнь клиенту и обеспечивает высокое качество оказания сервиса; помогает избежать недоразумений или путаницы в отношении оказываемого сервиса; позволяет и клиенту, и поставщику сосредоточится на деталях; защищает исполнителя от неоднозначных и неустановленных требований. Кроме того, оказание сервиса в соответствии с SLA гарантирует предсказуемые результаты, позволяет оперативно решать проблемы, повышая вместе с тем лояльность к бренду. https://serverspace.by/about/blog/chto-takoe-hranilishe-s3.md S3 хранилище – это сервис хранения объектов, предлагаемый поставщиками облачных услуг. Основное преимущество решения – возможность хранить файлы любого типа С увеличением объема данных растет потребность в использовании надежных хранилищ, которые обеспечивали бы гарантированную безопасность и доступность информации. Локальные диски, съемные носители, ленточные накопители не всегда удовлетворяют требованиям бизнеса. Ведь с такими скоростями и ритмом жизни нужно быть максимально гибкими и мобильными. Компании по всему миру давно практикуют облачный подход к хранению данных. Но в последнее время популярность набирает объектная модель, представленная в виде S3 хранилища. ## Просто о сложном S3 хранилище – это сервис хранения объектов, предлагаемый поставщиками облачных услуг. Основное преимущество решения – возможность хранить файлы любого типа, любого объема, с высоким уровнем надежности и доступности. Принцип работы с S3 хранилищем сводится к созданию контейнеров и добавлению туда необходимых файлов, которые представляются в виде объектов. Таким образом все, что попадает в контейнер, можно просматривать, перемещать или удалять. Сами контейнеры, в случае необходимости, тоже могут быть удалены. **Важный момент**: в object-хранилищах помимо самих объектов хранятся метаданные, определяющие свойства объекта и глобальный уникальный идентификатор в виде присвоенного адреса. Эти атрибуты хранятся в плоском адресном пространстве, позволяя избавиться от проблем, которые встречаются при работе с иерархической файловой системой на основе сложных путей к файлам. Примечательно, что один объект может содержать разнородные метаданные, которые наиболее подробным образом его характеризуют. Например, это может быть аудиофайл с заданными метаданными в виде исполнителя, названии песни,альбома и прочей информации. В дальнейшем метаданные файлов индексируются, что в значительной степени облегчает и в разы ускоряет поиск нужных объектов по заданным признакам. ## Зачем использовать объектное хранилище Теперь, когда вы знаете как устроено объектное хранилище, может возникнуть вопрос: зачем его использовать? Основная задача, которую решает объектная СХД связана с масштабированием и более рациональным хранением информации. Нетрудно заметить, что природа данных в последние годы сильно изменилась. Если раньше можно было хранить файлы на традиционных хранилищах, то теперь мы имеем дело с постоянным ростом информации и этим процессом довольно сложно управлять. С такой задачей справляется облачное хранилище, подстраиваясь под любые темпы роста. Неудивительно, что сегодня многие БД работают с объектами, поддерживая тип данных BLOB (Binary Large Object). Таким образом хранение информации в виде объектов происходит более рационально. ## Как подключиться к S3 хранилищу Стоит отметить, что объектные хранилища не предназначены для обработки данных внутри себя, поскольку здесь может быть выполнена операция размещения либо получения объектов. Важно понимать, что с такими хранилищами взаимодействуют не сами пользователи, а приложения или отдельные системы, а основой API выступает протокол HTTP. Для того, чтобы выполнить подключение к S3 хранилищу, можно воспользоваться несколькими способами. Какой из них окажется удобным, решать вам. Приведем пример наиболее часто используемых вариантов: **S3Browser** Программа S3Browser позволяет подключиться к хранилищу по протоколу S3, скачать ее можно с официального сайта компании. Процедура стандартная: необходимо задать имя аккаунту, выбрать тип подключения S3 Compatible Storage, указать адрес подключения, ID ключа доступа, значение секретного ключа и активировать в случае необходимости опцию шифрования данных при подключении. Все. После чего можно работать с хранилищем. **Swift API** Подключиться к S3 хранилищу можно с помощью Swift API через программу Cyberduck, скачав ее предварительно с официального сайта разработчика. После установки и запуска приложения, необходимо выполнить новое подключение. Для этого нужно указать, что вы подключаетесь к объектному хранилищу Swift (OpenStack Object Storage), задать название сервера, номер порта 443, ключ доступа и пароль. | Для каких задач подходит S3 хранилище | | | --- | --- | | Обеспечение работы сайтов и мобильных приложений | | | Архивация, анализ больших объемов данных | | | Хранение статического контента, мультимедийных файлов | | | Хранение пользовательских данных и бэкапов | | | Раздача статических файлов | | | Хранение данных backend-платформ | | | Электронный документооборот | | | Хранение историй транзакций и логов | | | Хранение резервных копий ИС | | | Хранение неструктурированных данных | | https://serverspace.by/about/blog/chto-takoe-virtualnaya-mashina.md С появлением виртуальных машин освободились миллионы квадратных метров пространства, а сотни тысяч устаревших серверов превратились в груду ненужного металла Закончились времена, когда компании повсеместно строили серверные комнаты с собственным оборудованием. С появлением виртуальных машин освободились миллионы квадратных метров пространства, а сотни тысяч устаревших серверов превратились в груду ненужного металла. И началась вторая жизнь без головной боли, без провальных бюджетов, без сонных ночей админов, то и дело меняющих вышедшее из строя оборудование. Нашлось удобное решение, без которого сегодня не обходится практически ни одна организация. Как вы поняли, речь сегодня пойдет о **виртуальных машинах**, их возможностях и примерах использования. ## Какие бывают виртуальные машины (VM) **Виртуальная машина** – это точная копия обычного компьютера или сервера, с любой желаемой ОС и набором установленных программ. Ее действительно нельзя потрогать, но зато вполне реально ощутить. С **ВМ** (так сокращенно называют виртуальную машину) можно работать также, как с физическим сервером или стационарным компьютером. Для этого достаточно выполнить подключение, причем для доступа к ВМ используются специальные службы, либо консоль, которую предоставляет провайдер облачных услуг. Главное, иметь выход в сеть и учетную запись с соответствующими полномочиями. С другой стороны, **виртуальная машина** – это программа, которая эмулирует реально существующий компьютер или сервер, и запускается в отдельном окне. Она состоит из виртуального жесткого диска, процессора, памяти, сетевой и видеокарты, контроллеров устройств и прочих элементов. Прелесть виртуализированного подхода заключается в возможности контролировать ресурсы машины самостоятельно: вы можете увеличивать или уменьшать используемые ресурсы по требованию, причем делать это за считаные секунды. В случае с физическим сервером, если например, требуется нарастить RAM, вам придется покупать дополнительную линейку памяти, тратить на это время и деньги. Как и любая другая программа, виртуальная машина состоит из набора файлов, которые хранятся на дисках физического сервера, внутри файловой системы гипервизора. На сегодняшний день существует несколько вариантов гипервизоров, представленных различными игроками рынка (VMware, Microsoft, Citrix и пр.). Поэтому у каждого продукта набор и формат файлов отличаются друг от друга. Например, виртуальная машина может быть представлена в виде файла с расширением .vmdk или .vhdx. и хранить в себе ОС, драйвера, связанные данные. ## Отличие ВМ от физического сервера Если проиллюстрировать разницу между обычным сервером и виртуальной машиной, она будет выглядеть так, как показано на картинке. В первом случае, когда мы говорим о физическом сервере, ОС инсталлируется на железо, используя предустановленные физические компоненты, во втором случае на сервере установлен **гипервизор** – специальная технология, которая создает соответствующую среду для развертывания в ней виртуальных машин. Обратите внимание, что на одном таком сервере может быть развернуто множество виртуальных машин, изолированных и независимых друг от друга. Каждая такая ВМ потребляет столько виртуальных ресурсов (RAM, CPU, процессор), сколько было задано при ее создании или последующей конфигурации. ## Как тип гипервизора влияет на работу ВМ Как упоминалось выше, для развертывания виртуальной машины нужна соответствующая среда, которая обеспечивается гипервизором. Примечательно, что гипервизор может быть установлен как поверх ОС, так и поверх "чистого железа". В первом случае гипервизор устанавливается поверх железа и относится к типу bare-metal. Такие гипервизоры используются гораздо чаще, поскольку прямой доступ к базовому оборудованию обеспечивает наилучшую производительность и позволяет разместить наибольшее количество виртуальных машин на физическом уровне. Гипервизор второго типа устанавливается поверх существующей ОС хоста, где и запускаются гостевые виртуальные машины, а также собственные приложения. Поскольку такой гипервизор не может напрямую обращаться к оборудованию, здесь в качестве посредника выступает хост-ОС. Но это может увеличить ресурсные издержки и отразиться на производительности ВМ. Однако для клиента виртуальные машины, созданные и управляемые обоими типами гипервизоров, практически идентичны. ## Примеры использования виртуальных машин По статистике, виртуальные машины часто используются для тестирования. Допустим разработчику нужно узнать корректно и безопасно ли работает приложение в другой ОС, например, в разных версиях Windows. Покупать или арендовать для этого несколько физических серверов, устанавливать разные ОС, чтобы выполнить проверку – не самый лучший способ. Гораздо проще создать несколько виртуальных машин и выполнить аналогичные действия за гораздо меньшее время. Еще один частый пример с использованием ВМ – тестирование и анализ вредоносных программ. Делать аналогичную проверку на рабочем компьютере крайне небезопасно, а в изолированной среде, которая гарантирует виртуальная машина, вполне возможно. Рассмотренные примеры использования ВМ – это лишь частные случаи, поскольку сценариев, в которых они могут быть задействованы – великое множество. Важно понимать, что виртуальная машина может выполнять совершенно разные функции, от самых простых до самых сложных. Сегодня компании чаще разворачивают виртуальные машины в облаке провайдера, виртуализируя как часть ИТ-инфраструктуры, так и целиком. ## Основные преимущества Виртуальные машины, заменяя физические серверы, давно перешли в разряд наиболее часто используемых решений. Этому есть подтверждение, которые мы собрали в виде наглядного списка: - **Быстрый запуск** — Одно из преимуществ виртуальных машин заключается в высокой скорости развертывания. В отличие от привычного оборудования, которое еще нужно купить и доставить до места назначения, ВМ позволяет отойти от этих проблем и больше сконцентрироваться на решении конкретной задачи. - **Гибкость переноса данных** — Если вам нужно перенести данные или приложения, лучший способ сделать это – воспользоваться виртуальной машиной. Достаточно мигрировать ВМ с одной локации на другую и вместе с ней перенесется все содержимое. - **Установка различных ОС** — На виртуальную машину можно устанавливать практически любые ОС, что особенно актуально для разработчиков ПО. - **Мобильность рабочих нагрузок** — Поскольку вычислительные ресурсы ВМ не зависят от базового оборудования, это позволяет перемещать виртуальные машины между физическими системами. Единственным требованием к миграции являются совместимый гипервизор и достаточное количество вычислительных ресурсов на конечном сервере. - **Легкость дублирования** — Поскольку содержимое виртуальной машины инкапсулируется в файл на диске, его можно с легкостью дублировать. Это позволяет в короткие сроки развернуть нужное количество ВМ с идентичными характеристиками. ## Заключение В этой статье мы познакомились с понятием виртуальной машины, которая является важным элементом любой виртуальной инфраструктуры. В зависимости от потребностей, ВМ может выполнять различные задачи, беря на себя нагрузку любого формата. Представляя собой замену физическому серверу, ВМ все чаще находит применение в повседневной жизни. https://serverspace.by/about/blog/chto-takoe-oblachniy-server.md Облачный сервер позволяет использовать виртуальную машину (ВМ), причем установленную не локально, а в облаке провайдера. В статье ["Что такое виртуальная машина"](https://serverspace.by/about/blog/chto-takoe-virtualnaya-mashina.md) мы рассказывали о ВМ и принципах ее работы. Эти знания помогут двигаться дальше, ведь сегодня речь пойдет о довольно востребованном решении, в основе которого лежит облачный подход и возможность получения вычислительных ресурсов. Поговорим об услуге **"**Облачный сервер**"**, которая позволяет использовать виртуальную машину, причем установленную не локально на своем компьютере или оборудовании в собственной серверной, а в облаке провайдера. Если вы осознаете, что содержать физический сервер – накладное мероприятие, причем об этом говорят цифры в виде затрат на обслуживание, операционных расходов и зарплаты администратору, пришло время найти альтернативу. Облачный сервер станет отличным вариантом, который поможет не только сохранить бюджет, но и обеспечить высокую стабильность и безопасность. ## Что такое облачный сервер? Это услуга предоставления виртуализированного серверного оборудования провайдера, где клиент получает в распоряжение вычислительные мощности и меняет их в зависимости от потребностей. Поставщик может предложить готовое решение со всеми необходимыми настройками и установленными приложениями либо предоставить возможность развернуть ВМ в облаке с чистого листа. Вместо того, чтобы покупать оборудование и заботиться о его работоспособности, эти задачи перекладываются на плечи облачному поставщику. Обычно провайдер имеет огромный опыт в построении ИТ-инфраструктуры, используют высококачественное, брендовое оборудование. Довериться такому поставщику гораздо надежнее, чем работать с собственным штатом специалистов. ## Разновидности услуги облачного сервера На современном рынке облачные серверы чаще классифицируются по гипервизору и формату услуг. Это как в комплектации автомобиля – можно выбрать что-то подешевле, попроще или наоборот подороже, все зависит от конечной цели и степени сложности решаемых задач. Таким образом клиент всегда сможет подобрать для себя оптимальный вариант. ## Классификация по гипервизору Поскольку поставщики облачных услуг могут использовать различные типы гипервизоров, это во многом определяет функциональность, которая будет доступна для заказчика. **-Крупные провайдеры отдают предпочтение виртуализации на уровне оборудования (гипервизор VMware, Citrix), в результате чего конечный пользователь получает больше возможностей, в том числе может устанавливать ОС.** **-Игроки менее крупного калибра используют виртуализацию на уровне ОС (OpenVZ), лишая клиентов гибкости в работе. В таком сценарии заказчик сможет работать лишь с собственным окружением без возможности установить/переустановить ОС.** ## Классификация по формату услуг **VPS/VDS** – виртуальный выделенный (частный) сервер позволяет развернуть машину с нуля за считанные минуты и задать необходимую конфигурацию. С другой стороны можно воспользоваться готовым решением провайдера, развернув VPS/VDS согласно установленным тарифам. **IaaS **(Infrastructure as a Service) – инфраструктура как сервис позволяет развернуть парк серверов для решения задач различной сложности. Клиенту предоставляется доступ к виртуальному окружению через панель управления/ портал самообслуживания. В этой модели пользователь может создавать новые ВМ, устанавливать ОС и приложения, делать копии существующих машин, выполнять необходимые настройки, в том числе сетевые и вносить необходимые конфигурационные изменения. **SaaS** (Software as a Service) – программное обеспечение как услуга в отношении облачного сервера дает возможность работать с виртуальной машиной, на которой предустановлено требуемое ПО. **PaaS **(Platform as a Service) – платформа как сервис позволяет развернуть инфраструктуру, а также ПО промежуточного слоя с ориентиром на разработку программного обеспечения. Преимущества для клиента ## Преимущества для клиентов Выбор в пользу облачного сервера зависит от потребностей организации и конкретных требований к приложениям и рабочей нагрузке. Ниже рассмотрим основные преимущества облачного сервера: **-Простота установки** Развертывание сервера происходит за несколько минут. При этом клиенту не нужно решать задачи, связанные с покупкой, установкой, обслуживанием оборудования. Эта ответственность возлагается на поставщика облачных услуг. **-Экономия бюджета** Используя облачный сервер, клиенты получают пространство в облаке провайдера, что значительно дешевле, чем покупать физические серверы. Оплата производится за реальное потребление по модели pay-as-you-go. **-Мгновенное масштабирование** Заказчик может изменять конфигурацию облачного сервера в любую сторону: увеличивать или уменьшать используемые ресурсы по мере необходимости. **-Мобильность** Клиент может работать из любой точки мира без привязки к конкретной локации. **Примеры использования:** - Разработка и тестирование ПО - Хостинг веб-сайтов - Использование предустановленного ПО (например 1С) - Удаленный доступ - Создание рабочих мест пользователей - Организация персонального хранилища данных - Терминальный доступ - Организация видеонаблюдения Если вы не до конца уверены, подходит ли для ваших задач облачный сервер, вот вам готовый чек-лист. Однако, следует понимать, что это далеко не исчерпывающий список: Подводя итоги, стоит отметить, что облачный сервер – это удобный инструмент с помощью которого можно воссоздать любую физическую инфраструктуру. Сегодня бизнес переносит в облако даже сверх критичные сервисы, полагаясь на стабильность и безопасность используемого решения. И если вы до сих пор сомневаетесь, подходит ли вам эта услуга, воспользуйтесь тестовым доступом, чтобы оценить преимущества современного подхода к решению задач. https://serverspace.by/about/blog/hosting-dlya-saita.md Говорят, что в мире нет ничего идеального. С этим сложно согласиться, ведь в вопросе выбора решения для web-хостинга, можно точно найти наилучший вариант. Говорят, что в мире нет ничего идеального. С этим сложно согласиться, ведь в вопросе выбора решения для web-хостинга, можно точно найти наилучший вариант. Только нужно во всем хорошо разобраться. Для начала следует сравнить доступные варианты хостинга, которые сегодня предлагают игроки рынка. ## Разновидности веб-хостинга Как говорил известный предприниматель Людовик Метцель, "Реклама – двигатель торговли". Эта фраза особенно актуальна в наше время. Ведь если не прорекламируешь себя – о тебе не узнают. Поэтому любая компания, которая сегодня выходит на рынок, обязательно создает веб-сайт, делая заявление на всё интернет-пространство о своем появлении. По этой простой причине ежедневно создаются сотни тысяч сайтов разной тематики, направленности и степени сложности. Но работа над брендом и позиционирование себя – это лишь одна сторона медали, сайт должен корректно работать, адекватно реагировать на запросы пользователей, быть доступным, выдерживая любые нагрузки. Чтобы страничку о компании увидели пользователи нашей многомиллионной планеты, необходимо воспользоваться услугой хостинга. Вопрос – какой именно? Ответ во многом зависит от решения поставленной задачи. Чтобы было понятнее, рассмотрим наиболее популярные виды сервиса: | | Виртуальный (shared –хостинг) | VPS-хостинг | Colocation- хостинг | Выделенный хостинг | | --- | --- | --- | --- | --- | | Для каких задач подходит | Сайт-визитка, landing page, небольшой стартап-проект, персональная страница, блог | Средний по объему сайт | Крупный интернет-портал, сайт, предоставляющий критически важные услуги | Масштабный интернет-проект, запуск приложений | | За что платит клиент | Ограниченное количество места на жестких дисках удаленного сервера | Виртуальный сервер | Место | Физический сервер | | Что получает заказчик | Все сайты получают равноправный доступ к аппаратному обеспечению | Контроль над программным обеспечением | Полный контроль, доступ к оборудованию и ПО | Контроль над ПО без прямого доступа к оборудованию | | Особенности | Низкая стоимость (3-14$ в месяц), универсальная панель управления | Стоимость в пределах 10-150$/ мес, на каждой ВМ своя ОС, гарантированное использование ресурсов, возможность выполнять установку и настройку ПО | Личное оборудование клиента, размещенное на стороне провайдера, выделенный доступ в интернет | Поставщик услуг следит только за состоянием внутренней составляющей сервера | | Минусы | Возможна низкая скорость загрузки страниц, наличие "соседей" | Требуется практический опыт администрирования | Относительно высокая стоимость | Требуется опыт работы, высокая стоимость (100-700$/мес) | Как видите, клиенту есть из чего выбирать. По статистике виртуальный и VPS-хостинг пользуются наибольшей популярностью среди физических лиц, клиентов малого и среднего бизнеса. Предпочтение в сторону выделенного хостинга и Colocation-хостинга делают крупные компании с довольно сложными проектами. ## Виртуальный или VPS-хостинг Что делать, если вы небольшая по меркам рынка компания и сомневаетесь, какой вид хостинга лучше подойдет для реализации проекта: виртуальный или VPS. Выделенный хостинг и Colocation тут сразу отпадают. Предлагаем капнуть глубже, но для начала немного аналогии: Виртуальный хостинг – это как коммунальная квартира. Вам вроде бы никто не мешает, но эффект присутствия соседа есть всегда. И если в семье случилось пополнение, а квадратных метров уже не хватает, вы вряд ли сможете увеличить используемое пространство – слишком много желающих, кто хочет сделать аналогичное. Единственно верное в этом случае решение – переехать в собственную квартиру. VPS-хостинг – это и есть та квартира. Она явно побольше и здесь не приходится делить места общего пользования с другими людьми. Эффект присутствия соседа хоть и есть, но вовсе не тот, который наблюдается в коммунальной квартире. У каждого жителя в доме своя территория, огражденная от посторонних глаз. Из приведенных выше сравнений, становится понятно, что виртуальный хостинг довольно сомнительное решение с кучей ограничений. Хостинг VPS — наоборот, представляет собой более гибкий вид сервиса с возможностью обеспечения более высокого уровня безопасности и контроля. Решение отлично подходит для онлайн-проектов с высоким уровнем посещаемости, интернет-магазинов и других веб-сайтов, которым недостаточно параметров виртуального хостинга. Если все еще сомневаетесь в выборе, таблица ниже поможет принять правильное решение. ## Сравнение виртуального и VPS-хостинга | Виртуальный хостинг | VPS-хостинг | | --- | --- | | Ограничения по возможным вариантам настройки и управления | Клиент получает в распоряжение выделенный сервер, где может устанавливать необходимое ПО и делать настройку | | Нельзя изменять объем используемых ресурсов и устанавливать дополнительное программное обеспечение | Гарантированные ресурсы,более высокий уровень защиты (от DDoS, резервное копирование данных) | | Можно менять исключительно содержимое сайта | Можно развернуть любое количество сайтов, баз данных | | Подходит для небольших, очень простых задач, для проектов с низким уровнем безопасности | Подходит для простых и более сложных задач, помогает сократить расходы, повысить эффективность работы | | Несколько сайтов использует один IP | Уникальный IP-адрес с возможностью получения дополнительного | ## Заключение В этой статье мы рассмотрели наиболее популярные виды веб-хостинга, сделав акцент на особенности и характеристики каждого решения. Подводя итоги, можно отметить, что виртуальный хостинг отлично подойдет для низкобюджетных проектов, хостинг VPS справится с более сложными задачами, когда как выделенный и Colocation-хостинг подойдут для крупномасштабных проектов. https://serverspace.by/about/blog/chto-takoe-vps-vds.md егодня поговорим об услуге VPS/VDS, споры о которой не утихают по сей день. Одни считают, что VPS ничем не отличается от VDS В поисках поставщика облачных сервисов мы часто сталкиваемся с аббревиатурами. Одни для нас понятны, другие не очень, третьи вызывают сомнения, а порой настоящую путаницу. IaaS, SaaS, PaaS, VPS/VDS – далеко не полный перечень сокращений, который может поставить в тупик неопытного пользователя. Поэтому прежде, чем выбрать сервис, в нем нужно разобраться. Сегодня поговорим об услуге VPS/VDS, споры о которой не утихают по сей день. Одни считают, что VPS ничем не отличается от VDS и являются синонимичными названиями, другие утверждают, что это две разные, но похожие услуги, третьи ссылаются лишь на разницу в типе виртуализации. А как же обстоит дело на самом деле? Давайте разбираться. ## VPS/VDS – есть ли разница для клиента По мере того как компании больше и больше выносят бизнес в онлайн, чаще возникает необходимость в удешевлении способов организации ИТ-инфраструктуры. Самый простой вариант – начать использовать виртуальные серверы, которые пришли на смену физическому оборудованию. Здесь то и поможет услуга VPS/VDS, которая чаще закрывает более простые проекты и в большинстве своем подходит для небольших компаний. Сразу стоит отметить, что разницу между VPS и VDS для клиента неощутима, поскольку она как невидимая нить: вроде бы есть, но ее значимость настолько мала, что можно пройти и не заметить. Да и принцип разделять термины появился лишь в Рунете, на Западе такой практики нет. Различия скорее окажутся заметными для провайдера с позиции реализации решения и используемых технологий виртуализации. Клиент же больше заметит игру слов, для этого достаточно взглянуть на термины: **VPS (Virtual Private Server)** – виртуальный частный сервер **VDS (Virtual Dedicated Server)** – виртуальный выделенный сервер Как ни крути, смысл остается одним: и VPS, и VDS – это виртуальный сервер, запущенный на базе физического. И как бы его не называли – частным или выделенным, значимость и конечная ценность от этого не меняется: ресурсы сервера находятся в распоряжении пользователя. Это говорит о том, что клиент вправе самостоятельно решать, какую ОС выбрать и какой объем ресурсов задать той или иной машине. Для развертывания виртуального сервера, провайдер чаще предлагает два варианта: возможность определить конфигурацию самостоятельно, либо использовать готовые решения. И в первом, и во втором случае на создание виртуального сервера уходит несколько минут. ## Особенности и преимущества VPS/VDS С тех пор, как виртуализация ворвалась в жизнь многих компаний, клиенты стали постепенно уходить от on-premise модели в сторону виртуальных серверов. Это логично, ведь виртуальный сервер работает по принципу физического, только с гораздо большими возможностями и позволяет экономить бюджет. Рассмотрим преимущества подробнее: ### Преимущество 1. Гибкость масштабирования В отличие от физического сервера, ресурсы которого конечны, виртуальный сервер позволяет наращивать или высвобождать любое их количество. Вся прелесть сводится к тому, что VPS/VDS сервер может быть доведен до желаемой конфигурации. Здесь работает принцип – бери столько, сколько нужно. Такие возможности открывают перед клиентом широкие горизонты, снимая ограничения, накладываемые при использовании железа в собственной серверной. ### Преимущество 2. Полный контроль и доступ на правах администратора Если проводить аналогию с виртуальным хостингом, VPS/VDS в сравнении с первым, дает возможность подключаться к серверу на правах администратора. Это говорит о том, что клиент получает гибкость в виде самостоятельного управления и выполнения задач, будь то смена ОС, установка требуемых приложений, их последующая настройка, доступ по SSH и других операций. ### Преимущество 3. Персональный IP-адрес VPS/VDS – это прежде всего независимость от «соседей», когда виртуальные серверы работают в полной изоляции без перетягивания ресурсов друг у друга. Немаловажно, что каждому такому серверу выдается уникальный IP-адрес. И если клиент захочет разместить на сервере сайт, он будет привязан к уникальному идентификатору. Это позволит исключить ситуацию, свойственную обычному виртуальному хостингу, когда несколько сайтов используют один и тот же IP-адрес. ### Преимущество 4. Высокий уровень безопасности Важный момент, на который стоит обратить внимание – гарантированная безопасность. Виртуальный сервер отличается от остальных видов хостинга надежностью и защищенностью. Серверы VPS/VDS, размещенные на физическом оборудовании провайдера, изолированы друг от друга, что исключает доступ третьих лиц с соседствующих виртуальных серверов. ### Преимущество 5. Отсутствие ограничений Виртуальный сервер в силу возможности использовать ресурсы по требованию, позволяет разместить на нем любое количество веб-сайтов, баз данных, почтовых ящиков. Все, что от вас потребуется – определиться с параметрами дисковой подсистемы, процессора и памяти. ## Примеры, когда стоит использовать VPS/VDS Если вы не до конца уверены, подходит ли для ваших задач виртуальный сервер, вот вам готовый чек-лист. Пройдите по списку до конца, и узнайте, стоит ли вам использовать VPS/VDS. | Примеры, когда стоит использовать VPS/VDS | | | --- | --- | | Онлайн-проекты с высоким уровнем посещаемости | | | Интернет-магазины, которым недостаточно параметров виртуального хостинга | | | Необходимость размещения большого количества баз данных, веб-сайтов | | | Необходимость выделения гарантированного количества ресурсов | | | Тестирование ПО и демонстрация возможностей разрабатываемых решений | | | Почтовый сервер и поддержка коллективной деятельности | | ## Подведем итоги Беря во внимание особенности VPS/VDS, клиент получает широкие возможности для решения различных задач. Сокращение операционных расходов, быстрый вывод в продакшн, отсутствие необходимости покупки и обслуживания собственного оборудования позволят сконцентрироваться на развитии собственного бизнеса. И не забывайте провести тест-драйв. Прежде чем заплатить за услугу, вы всегда можете попробовать сервис, оставив заявку на бесплатный тестовый доступ. Пользуйтесь, оценивайте и принимайте только правильные решения!