# Конфигурация сервера

## Я не могу войти

Для установки зависимостей мы используем Composer. Поскольку в настоящее время мы не можем запустить его под версией hestia-php. Мы устанавливаем его через /usr/bin/php. Убедитесь, что proc_open разрешен в основной версии php. В будущем мы рассмотрим методы, позволяющие установку через composer через hestia-php.

## Где я могу найти более подробную информацию о файлах конфигурации?

Хорошей отправной точкой для любого программного обеспечения является проверка официальной документации:

- Для Nginx: [NGINX Docs](https://nginx.org/en/docs/)
- Для Apache2: [Apache Docs](http://httpd.apache.org/docs/2.4/)
- Для PHP-FPM: [PHP Docs](https://www.php.net/manual/en/install.fpm.configuration.php)

## Могу ли я использовать HestiaCP за Cloudflare CDN?

По умолчанию [Cloudflare Proxy](https://developers.cloudflare.com/fundamentals/get-started/reference/network-ports/) поддерживает только ограниченное количество портов. Это означает, что Cloudflare не будет перенаправлять порт 8083, который является портом по умолчанию для Hestia. Чтобы изменить порт Hestia на тот, который будет перенаправлять Cloudflare, выполните следующую команду:

```bash
v-change-sys-port 2083
```

Вы также можете отключить функцию прокси-сервера Cloudflare.

## Как удалить неиспользуемые порты Ethernet из RRD?

```bash
nano /usr/local/hestia/conf/hestia.conf
```

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

```bash
RRD_IFACE_EXCLUDE='lo'
```

Добавьте сетевые порты в виде списка, разделенного запятыми

```bash
rm /usr/local/hestia/web/rrd/net/*
systemctl restart hestia
```

## Что означает политика «Принудительное владение поддоменом»?

В Hestia <=1.3.5 и Vesta пользователи могли создавать поддомены из доменов, которыми владели другие пользователи. Например, пользователь Боб может создать `bob.alice.com`, даже если `alice.com` принадлежит Алисе. Это может вызвать проблемы безопасности, поэтому мы решили добавить политику для управления этим поведением. По умолчанию политика включена.

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

```bash
# для включения
v-add-web-domain-allow-users user domain.tld
# для отключения
v-delete-web-domain-allow-users user domain.tld
```

## Могу ли я ограничить доступ к учетной записи `admin`?

В Hestia 1.3 мы сделали возможным предоставление другому пользователю прав администратора. В 1.4 мы предоставили системным администраторам возможность ограничить доступ к основной учетной записи **Системного администратора** для повышения безопасности.

## Мой IP-адрес сервера изменился, что мне нужно сделать?

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

```bash
v-update-sys-ip
```

## Невозможно привязать адрес

В редких случаях сетевая служба может работать медленнее, чем Apache2 и/или Nginx. В этом случае Nginx или Apache2 откажутся успешно запуститься. Вы можете убедиться в этом, посмотрев на статус службы:

```bash
systemctl status nginx

# Вывод
nginx: [emerg] bind to x.x.x.x:80 failed (99: cannot assign asked address)
```

Или, в случае Apache2:

```bash
systemctl status httpd

# Вывод
(99)Cannot assign asked address: AH00072: make_sock: couldn't bind to address x.x.x.x:8443
```

Следующая команда должна разрешить службам назначать несуществующие IP-адреса:

```bash
sysctl -w net.ipv4.ip_nonlocal_bind=1
```

## Я не могу отслеживать процессы с помощью Zabbix

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

Чтобы решить проблему, если вы используете мониторинг через Zabbix, отредактируйте `/etc/fstab` и измените его следующим образом, затем перезагрузите сервер или перемонтируйте `/proc`:

```bash
proc /proc proc defaults,hidepid=2,gid=zabbix 0 0
```

## Ошибка: 24: Слишком много открытых файлов

Если вы видите ошибку, похожую на эту:

```bash
2022/02/21 15:04:38 [emerg] 51772#51772: open() "/var/log/apache2/domains/domain.tld.error.log" failed (24: Too many open files)
```

Это означает, что слишком много открытых файлов с Nginx. Чтобы решить эту проблему, отредактируйте конфигурацию демона Nginx, затем перезагрузите демоны, выполнив `systemctl daemon-reload`:

```bash
# /etc/systemd/system/nginx.service.d/override.conf
[Service]
LimitNOFILE=65536
```

Добавьте это в файл конфигурации Nginx (должен быть меньше или равен `LimitNOFILE`)

```bash
# /etc/nginx/nginx.conf
worker_rlimit_nofile 16384
```

Перезапустите Nginx с помощью `systemctl restart nginx` и проверьте новые ограничения, выполнив:

```bash
cat /proc/ < nginx-pid > /limits.
```