Linux

  • Варіант 1: CentOS Linux 7

  • Варіант 2: Ubuntu Server LTS 18.04

  • Варіант 3: Ubuntu Server LTS 20.04

  • Варіант 4: Ubuntu Server LTS 22.04

Перш ніж почати

1. Підготовка

1.1. Оновлення системи

CentOS

  $ sudo yum update -y

Ubuntu

  $ sudo apt update
  $ sudo apt upgrade -y  

Перезавантаження системи

  $ sudo reboot

1.2 Вимкнення SELinux (тільки для CentOS)

  $ sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
  $ sudo reboot

Щоб переконатися, що SELinux вимкнено, ви можете ввести:

  $ sudo sestatus
SELinux status:                 disabled

Примітка: на робочих серверах, зазвичай після інсталяції та верифікації, вам потрібно повторно ввімкнути SELinux і налаштувати його відповідно.

1.3 Конфігурація Firewall (опціонально)

Для доступу до сервера з мережі, порти 80 і 443 і порт 22 (порт за замовчуванням для підключення через ssh) повинні бути відкриті:

CentOS:

$ sudo firewall-cmd --zone=public --permanent --add-port=22/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=80/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=443/tcp
$ sudo firewall-cmd --reload

Ubuntu:

$ sudo ufw allow 22
$ sudo ufw allow 80
$ sudo ufw allow 443
$ sudo ufw enable

2. Встановлення передумов (Prerequisites)

2.1. Встановлення додаткових пакетів

Centos 7 :

$ sudo yum install epel-release wget git libgdiplus libicu jq gssntlmssp -y

Ubuntu 18.04:

$ sudo apt install  git libgdiplus libicu60 jq gss-ntlmssp-dev -y

Ubuntu 20.04:

sudo apt install libgdiplus libicu66 jq gss-ntlmssp-dev -y

Ubuntu 22.04:

sudo apt install libgdiplus libicu70 jq gss-ntlmssp-dev -y

3. Встановлення HES серверу

3.1. Download HES server

$ cd ~
$ curl -O https://update.hideez.com/hes/linux_x64_latest.tar.gz

3.2. Розпакування файлів і переміщення в директорію /opt

$ tar -xvf linux_x64_latest.tar.gz
$ sudo mv HES /opt/

3.3.Конфігурація HES

Перейдіть до директорії /opt/HES/ і запустіть програму HES.Wizard

$ cd /opt/HES/
$ sudo ./HES.Wizard

Далі дотримуйтесь порад із та налаштуйте сервер.

3.4. Daemonizing of the HES

Ми вже підготували файл конфігурації для запуску та керування сервером HES у директорії /opt/HES/Deploy. Потрібно скопіювати файл HES.service в директорію /lib/systemd/system/:

$ sudo cp /opt/HES/Deploy/HES.service /lib/systemd/system/HES.service

Увімкнення автозапуску:

$ sudo systemctl enable HES.service
$ sudo systemctl restart HES.service

Ви можете переконатися, що сервер HES працює за допомогою команди:

$ sudo systemctl status HES

Результат команди має бути приблизно таким:

● HES.service - Hideez Enterprise Server
   Loaded: loaded (/lib/systemd/system/HES.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2022-05-24 11:00:26 UTC; 1min 16s ago
 Main PID: 3451 (HES.Web)
    Tasks: 20 (limit: 2314)
   CGroup: /system.slice/HES.service
           └─3451 /opt/HES/HES.Web

4. Налаштування Reverse Proxy Server

Щоб отримати доступ до свого сервера з локальної мережі, а також з Інтернету, вам потрібно налаштувати зворотний проксі. Для цього ми будемо використовувати сервер Nginx.

4.1. Встановлення Nginx

CentOS 7:

$ sudo yum install nginx -y
$ sudo systemctl enable nginx

Ubuntu:

$ sudo apt install nginx -y

4.2. Створення Self-Signed SSL Certificate для Nginx

Примітка 1:

У виробничому середовищі вам слід подбати про отримання сертифіката в Центрі Сертифікації. Для Самопідписаного сертифіката браузер сповістить вас про проблеми з безпекою сайту.

Примітка 2:

Під час генерації сертифіката дайте відповідь на кілька простих запитань, з яких важливе значення буде Common Name (CN) - тут буде назва вашого сайту, у нашому прикладі це hideez.example.com.

 $ sudo mkdir /etc/nginx/certs
 $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/certs/hes.key -out /etc/nginx/certs/hes.crt
Country Name (2 letter code) [AU]:.
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:.
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:hideez.example.com
Email Address []:.

4.3. Оновлення конфігурації Nginx

Ми підготували кілька конфігурацій Nginx для різних версій Linux і розмістили їх у каталозі /opt/HES/Deploy. Ви можете просто скопіювати відповідний файл або переглянути та відредагувати його відповідно до своїх потреб.

CentOS 7:

$ sudo cp /opt/HES/Deploy/CentOS7/nginx.conf /etc/nginx/nginx.conf

Ubuntu 18:

$ sudo cp /opt/HES/Deploy/Ubuntu18/nginx.conf /etc/nginx/nginx.conf
  • видалити nginx як сайт за замовчуванням:

sudo rm  /etc/nginx/sites-enabled/default

Ubuntu 20:

$ sudo cp /opt/HES/Deploy/Ubuntu20/nginx.conf /etc/nginx/nginx.conf
  • видалити nginx як сайт за замовчуванням:

sudo rm  /etc/nginx/sites-enabled/default

Ubuntu 22:

sudo cp /opt/HES/Deploy/Ubuntu22/nginx.conf /etc/nginx/nginx.conf
  • видалити nginx як сайт за замовчуванням:

sudo rm  /etc/nginx/sites-enabled/default

Після копіювання файлу рекомендується перевірити налаштування nginx:

$ sudo nginx -t

Результат має бути приблизно таким:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

В іншому випадку слід уважно переглянути налаштування та виправити помилки.

4.4. Перезавантаження nginx

$ sudo systemctl restart nginx

4.5. Перевірте, чи встановлено та запущено службу nginx

$ sudo systemctl status nginx

Результат має буде приблизно таким:

* nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-01-25 08:22:56 UTC; 8min ago
  Process: 1702 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 1700 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 1699 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 1704 (nginx)
   CGroup: /system.slice/nginx.service
           +-1704 nginx: master process /usr/sbin/nginx
           +-1705 nginx: worker process

Тут ви можете знайти посібник з оновлення для Linux.

Облікові дані для доступ до нового сервера за замовчуванням: login - admin@server password - admin