Установка nginx astra linux

Установка nginx astra linux

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

Подготовка сервера

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

Настраиваем сеть. В Astra Linux это делается также как и в Ubuntu:

# vi /etc/network/interfaces

auto eth0
iface lo inet eth0

dns-nameservers 192.168.0.1 192.168.0.2

* В данном примере мы настроили сетевой интерфейс eth0 (задали IP-адрес 192.168.0.15 маску 255.255.255.0 и шлюз по умолчанию 192.168.0.1)

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

# service networking restart

В Astra Linux по умолчанию не настроены репозитории для установки пакетов, поэтому необходимо это сделать:

# vi /etc/apt/sources.list

deb ftp://ftp.astra-linux.com/astra/current/orel/repository orel main contrib non-free

* Эта строчка подключает официальный репозиторий Astra Linux.

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

# apt-get update && apt-get upgrade && apt-get dist-upgrade

Установим sshd для возможности удаленного управления нашим сервером:

# apt-get install openssh-server

Для синхронизации времени установим пакет ntpdate, синхронизируем время и настроим автоматическое задание:

# apt-get install ntpdate
# ntpdate ru.pool.ntp.org
# mkdir -p /var/cron/tabs && echo ‘0 0 * * * /usr/sbin/ntpdate ru.pool.ntp.org’ >> /var/cron/tabs/crontab && crontab /var/cron/tabs/crontab && crontab -l

Установка и настройка Nginx, PHP, MySQL

Устанавливаем пакет mysql-server:

# apt-get install mysql-server

* Во время установки будет предложено ввести новый пароль для mysql-записи root

# service mysql start

В официальных репозиториях Astra Linux нет Nginx, поэтому подключим официальный от nginx inc.:

# vi /etc/apt/sources.list

deb http://nginx.org/packages/debian/ wheezy nginx

* wheezy соответствует 7-й версии Debian. У вас может быть другая версия. Будьте внимательны.

Для успешного получения списка пакетов от нового репозитория, добавляем в систему PGP-ключ:

# wget http://nginx.org/keys/nginx_signing.key
# apt-key add nginx_signing.key

Теперь можем обновлять список пакетов и устанавливать веб-сервер nginx:

# apt-get update
# apt-get install nginx

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

Устанавливаем php и php-интерпретатор:

# apt-get install php5 php5-fpm

В Astra Linux по умолчанию nginx работает от учетной записи nginx, а php-fpm — от www-data. В результате этого при попытке использовать веб-сервер с php-скриптами мы получим ошибку. Для решения этой проблемы необходимо поменять пользователя, от которого будет работать либо nginx, либо php-fpm. В данном примере, nginx:

# vi /etc/nginx/nginx.conf

* самая первая строчка — меняем nginx на www-data.

Настраиваем виртуальный домен для нового сайта:

# vi /etc/nginx/conf.d/site.local.conf

set $root_path /var/www/site.local;

gzip_proxied expired no-cache no-store private auth;

gzip_types application/x-javascript text/plain application/xml text/css;

fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;

fastcgi_param DOCUMENT_ROOT $root_path;

expires modified +1w;

* site.local необходимо заменить на домен вашего веб-приложения или сайта.
** /var/www/site.local — директория, в которую мы поместим файлы сайта.
*** allow 192.168.0.0/16 — подсеть, для которой мы разрешаем доступ к сайту. Если ограничивать не требуется, удалите строчку и следующую за ней deny all.
**** Остальные параметры я рекомендую изучить самостоятельно.

Создаем директорию для сайта, которую мы указали в конфигурационном файле:

Создаем в нем файл index.php с функцией phpinfo:

Перезапускаем наши демоны:

# service php5-fpm restart && service nginx restart

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

Также в данных таблицах вы должны увидеть «MySQL Suppert — Enabled». Это говорит о том, что сервер готов к работе с базой MySQL.

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

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

4 минуты чтения

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

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Nginx является частью стека LEMP, набора программного обеспечения с открытым исходным кодом, используемого для разработки веб-приложений и веб-сайтов. LEMP является популярной альтернативой традиционному стеку LAMP. Единственная разница между ними состоит в том, что первый использует Nginx, а второй использует Apache в качестве своего веб-сервера.

Мы уже рассказывали как установить Nginx на Windows. В этом руководстве вы узнаете, как установить Nginx на Linux.

Установка Nginx

Рассмотрим установку Nginx для разных дистрибутивов Linux.

Установка Nginx на CentOS 8

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

Вы можете проверить пакет Nginx, прежде чем добавить его в свою систему. Запросите просмотр метаданных RPM, включенных в каждый пакет RPM:

Затем установите Nginx на CentOS 8 с помощью команды:

Установка Nginx на CentOS 7

Пакеты Nginx доступны в репозиториях EPEL. Если у вас не установлено хранилище EPEL, наберите:

Затем установите Nginx при помощи команды:

Если вы устанавливаете пакет из EPEL в первый раз, то yum может предложить вам импортировать ключ GPEL EPEL :

Тут вам нужно нажать y и затем Enter.

Установка Nginx на Ubuntu и Debian

Пакеты Nginx доступны в репозиториях Ubuntu и Debian по умолчанию.

Поэтому для установки сначала обновим список пакетов:

А затем установим сам Nginx:

Запуск nginx

Запуск nginx осуществляется следующей командой:

Чтобы включать службу при загрузке системы, используйте:

Если вы проверите статус сервиса, то в выводе должно быть указано, что Nginx активен — active (running) :

Остановить можно Nginx с помощью команды:

Перезагрузить файлы конфигурации, не останавливая службу:

Настройка firewall

Nginx включает в себя служебные файлы firewalld, которые указывают, что служба использует порты 80 (HTTP) и 443 (HTTPS) для веб-трафика. Поэтому вам необходимо открыть и включить эти порты, чтобы разрешить постоянный доступ.

Настройка firewall в CentOS

Откройте порт HTTP и HTTPS с помощью команд:

Настройка firewall в Ubuntu и Debian

Если вы используете UFW (Uncomplicated Firewall) для управления брандмауэром, вам необходимо открыть порты, включив профиль Nginx Full , который включает правила для обоих портов:

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

Проверка доступа

Используйте netstat, чтобы вывести список всех открытых портов и убедиться, что вы успешно открыли 80 и 443:

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

Затем откройте веб-браузер и вставьте IP-адрес (или имя домена) в строку URL. Откроется страница приветствия Nginx, подтверждающая, что вы успешно установили и настроили сервер.

Настройка Nginx

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

  • Каталог конфигурации Nginx: /etc/nginx
  • Корневой каталог Nginx: /usr/share/nginx/html
  • Основной файл конфигурации: /etc/nginx/nginx.conf
  • Файлы логов Nginx (access.log и error.log): /var/log/nginx/

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

  • /home/user_name/site_name
  • /var/www/site_name
  • /var/www/html/site_name
  • /opt/site_name

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Источник

Установка nginx astra linux

Скачиваем дистрибутив КриптоПро CSP с сайта.

Распаковываем и устанавливаем КриптоПро CSP КС2 с дополнительными компонентами lsb-cprocsp-devel cprocsp-stunnel:
tar -xvf ./linux-amd64_deb.tgz && cd ./linux-amd64_deb/
sudo ./install.sh kc2 lsb-cprocsp-devel cprocsp-stunnel

Добавляем криптопровайдеры КриптоПро HSM в конфигурацию КриптоПро CSP:
sudo -s
cd /opt/cprocsp/sbin/amd64/
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro HSM CSP’ -add string ‘Image Path’ /opt/cprocsp/lib/amd64/libcspr.so
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro HSM CSP’ -add string ‘Function Table Name’ CPSRV_GetFunctionTable
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro HSM CSP’ -add long Type 75
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro HSM CSP’ -add string Channel .clientk2

./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 HSM CSP’ -add string ‘Image Path’ /opt/cprocsp/lib/amd64/libcspr.so
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 HSM CSP’ -add string ‘Function Table Name’ CPSRV_GetFunctionTable
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 HSM CSP’ -add long Type 80
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 HSM CSP’ -add string Channel .clientk2

./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Strong HSM CSP’ -add string ‘Image Path’ /opt/cprocsp/lib/amd64/libcspr.so
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Strong HSM CSP’ -add string ‘Function Table Name’ CPSRV_GetFunctionTable
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Strong HSM CSP’ -add long Type 81
./cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Strong HSM CSP’ -add string Channel .clientk2

Перезапускаем службу cprocsp:
# service cprocsp restart

Экспортируем в файл корневой сертификат КриптоПро HSM из ключевого контейнера ключа доступа:

# /opt/cprocsp/bin/amd64/csptest -keys -cont cont_name -saveext /root/hsmroot.p7b

Имя ключевого контейнера можно вывести командой:
# /opt/cprocsp/bin/amd64/csptest -keys -enum -verifyc

Устанавливаем корневой сертификат КриптоПро HSM:
# /opt/cprocsp/bin/amd64/certmgr -inst -store root -file /root/hsmroot.p7b

Устанавливаем сертификат ключа доступа с привязкой к ключевому контейнеру:
# /opt/cprocsp/bin/amd64/csptest -absorb -certs -autoprov

Экспортируем сертификат ключа доступа в файл:
# /opt/cprocsp/bin/amd64/certmgr -export -dest /root/user.cer

Создаем файл /etc/opt/cprocsp/stunnel/stunnel.conf со следующим содержимым:
# mkdir /etc/opt/cprocsp/stunnel/ && touch /etc/opt/cprocsp/stunnel/stunnel.conf
# nano /etc/opt/cprocsp/stunnel/stunnel.conf

pid = /var/opt/cprocsp/tmp/stunnel-k2.pid
output = /var/log/stunnel-k2.log
socket = r:TCP_NODELAY=1
socket = r:SO_KEEPALIVE=1
TIMEOUTidle = 2147483
debug = 0
for_hsm = yes

[clientk2]
client = yes
connect = 192.168.0.1:1501
accept = /var/opt/cprocsp/tmp/.clientk2
cert = /root/user.cer
pincode =12345678

В данном случае IP-адрес КриптоПро HSM 192.168.0.1, пин-код ключевого контейнера 12345678.

Запускаем процесс stunnel_fork:
# /opt/cprocsp/sbin/amd64/stunnel_fork

Проверяем доступность криптопровайдеров КриптоПро HSM:
/opt/cprocsp/bin/amd64/csptest -enum -provider «Crypto-Pro HSM CSP» -provtype 75 -info
/opt/cprocsp/bin/amd64/csptest -enum -provider «Crypto-Pro GOST R 34.10-2012 HSM CSP» -provtype 80 -info
/opt/cprocsp/bin/amd64/csptest -enum -provider «Crypto-Pro GOST R 34.10-2012 Strong HSM CSP» -provtype 81 -info

Настраиваем автозапуск stunnel_fork как службы в Astra Linux 1.6

Создаем файл /etc/systemd/system/stunnel.service
# nano /etc/systemd/system/stunnel.service

Со следующим содержанием:
[Unit]
Description=stunnel_fork
After=network.target

[Service]
Type=forking
ExecStart=/opt/cprocsp/sbin/amd64/stunnel_fork
ExecReload=/bin/kill -HUP -$MAINPID
KillMode=process
Restart=always

# systemctl enable stunnel
# systemctl start stunnel

Для сборки Nginx на Astra Smolensk 1.6 SE необходимо установить пакеты build-essential и patch.

Скачиваем актуальный devel DVD — https://download.astralinux.ru/astra/stable/smolensk/devel/1.6/
Монтируем:
sudo apt-cdrom add
sudo apt update
sudo apt-get install build-essential patch

Скачиваем Nginx и накладываем патч:
wget https://nginx.org/download/nginx-1.18.0.tar.gz
tar -xvf ./nginx-1.18.0.tar.gz
cp ./ng-nginx.1.18.0.patch ./nginx-1.18.0 && cd ./nginx-1.18.0/
patch -p1

Получаем дополнительные исходные тексты:
wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
tar -xvf ./pcre-8.44.tar.gz
wget https://zlib.net/zlib-1.2.11.tar.gz
tar -xvf ./zlib-1.2.11.tar.gz
wget https://www.openssl.org/source/openssl-1.1.1h.tar.gz
tar -xvf ./openssl-1.1.1h.tar.gz

Собираем (предварительно проверив пути):
./configure \
—user=nginx \
—group=nginx \
—with-cc-opt=’-fstack-protector -fstack-protector-strong —param=ssp-buffer-size=4 -Wformat -Werror=format-security -Werror=implicit-function-declaration -Winit-self -Wp,-D_FORTIFY_SOURCE=2 -fPIC’ \
—with-ld-opt=’-Wl,-z,relro -Wl,-z,now -Wl,—as-needed -pie -L/opt/cprocsp/lib/amd64 -lrdrsup -lssp -lcapi10 -lcapi20′ \
—prefix=/opt/nginx \
—conf-path=/etc/nginx/nginx.conf \
—error-log-path=/var/log/nginx/error.log \
—http-log-path=/var/log/nginx/access.log \
—lock-path=/var/run/lock/nginx.lock \
—pid-path=/var/run/nginx.pid \
—with-pcre=./pcre-8.44/ \
—with-pcre-jit \
—with-zlib=./zlib-1.2.11/ \
—with-http_ssl_module \
—with-http_sspi_module \
—with-http_stub_status_module \
—with-openssl=./openssl-1.1.1h/ \
—with-openssl-opt=’no-gost no-comp no-dtls no-deprecated no-dynamic-engine no-engine no-hw-padlock no-nextprotoneg no-psk no-tests no-ts no-ui-console no-ocsp’ \
—with-stream \
—with-stream_ssl_module \
—with-stream_sspi_module \
—with-http_v2_module

Для rhel based дистрибутивов добавляются опции:
—with-pcre-opt=-fPIC —with-zlib-opt=-fPIC

Копируем базовый конфиг в директорию с кодом:
sudo cp ./nginx.conf.sample ./nginx-1.18.0/conf/nginx.conf
make
sudo make install

Создаем системного пользователя:
sudo adduser —system —no-create-home —group nginx
sudo chown -R nginx:nginx /var/log/nginx/

Переносим init скрипт:
sudo cp ./nginx.init /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
sudo systemctl daemon-reload

Создаем запрос на сертификат для Nginx:
sudo -u nginx /opt/cprocsp/bin/amd64/cryptcp -creatrqst -provname «Crypto-Pro GOST R 34.10-2012 HSM CSP» -provtype 80 -rdn ‘CN=Astra, C=RU ,S=77 Москва, L=г. Москва’ -certusage 1.3.6.1.5.5.7.3.1 -cont nginx1 -ex /tmp/request.req

Выпускаем на УЦ сертификат по запросу и устанавливаем в контейнре:
sudo -u nginx /opt/cprocsp/bin/amd64/certmgr -install -store uMy -cont ‘\\.\HSMDB\nginx1’ -provname «Crypto-Pro GOST R 34.10-2012 HSM CSP» -file /tmp/user.crt

Дополнительная информация и пример конфигурационного файла по ссылке.

Доступность сервиса проверяем с помощью:

csptest
/opt/cprocsp/bin/amd64/csptest -tlsc -server host_name -v

браузера с поддержкой ГОСТ TLS (на Linux — Chromium GOST)

Открыть страницу в браузере, посмотреть сертификат, убедиться что алгоритм ГОСТ.

Источник

Читайте также:  Intel parallel studio xe 2015 windows
Оцените статью