Главные настройки (kor-elf-shield.toml)
По умолчанию главные настройки находятся тут:
/etc/kor-elf-shield/kor-elf-shield.toml
Но программу можно запустить и через флаг --config и указать свой путь. Например:
kor-elf-shield --config=/my/path/configs/kor-elf-shield.toml start
Это надо внести изменения в /etc/systemd/system/kor-elf-shield.service
[Unit]
Description=kor-elf-shield
After=network.target
[Service]
-ExecStart=/usr/sbin/kor-elf-shield start
-ExecStop=/usr/sbin/kor-elf-shield stop
+ExecStart=/usr/sbin/kor-elf-shield --config=/my/path/configs/kor-elf-shield.toml start
+ExecStop=/usr/sbin/kor-elf-shield --config=/my/path/configs/kor-elf-shield.toml stop
[Install]
WantedBy=sysinit.target
И отредактировать /etc/kor-elf-shield.logrotate
/var/log/kor-elf-shield.log {
rotate 3
weekly
compress
maxsize 100M
missingok
notifempty
postrotate
- /usr/sbin/kor-elf-shield reopen_logger
+ /usr/sbin/kor-elf-shield --config=/my/path/configs/kor-elf-shield.toml reopen_logger
endscript
}
Копия полноценого файл настроек (kor-elf-shield.toml) находится тут.
В этом файле есть несколько разделов:
Базовые настройки
Эти настройки должны находиться вначале файла до разделов: "Log", "Настройки, специфичные для ОС", "Пути к другим настройкам".
| Параметр | testing |
| Значение | true или false |
| По умолчанию | true |
| Описание | Включает тестовый режим. Если тестовый режим включён, то через минут, которые указаны в параметре "testing_interval", выключится программа с очисткой правил с nftables. true - включает false - выключает |
| Примеры |
|
| *** | |
|---|---|
| Параметр | testing_interval |
| Значение | от 1 по 30000 |
| По умолчанию | 5 |
| Описание | Указываем в минутах, через сколько выключится программа запущенная в тестовом режиме. |
| Примеры |
|
| *** | |
| Параметр | language |
| Значение | ru, kk, en |
| По умолчанию | ru |
| Описание | Указываем язык. Не влияет на логи. Логи пишутся на английском языке. На данный момент поддерживаются языки: ru - русский kk - казахский en - английский |
| Примеры |
|
| *** | |
| Параметр | fallback_language |
| Значение | ru, kk, en |
| По умолчанию | ru |
| Описание | Второй язык, если вдруг у текущего языка не будет перевода. Доступные все значения, которые есть у параметра language. Но мы рекомендуем указать "ru" или "en". |
| Примеры |
|
| *** | |
| Параметр | pid_file |
| Значение | Указываем путь к файлу |
| По умолчанию | /var/run/kor-elf-shield/kor-elf-shield.pid |
| Описание | Путь, по которому будет создан pid-файл. Путь должен быть абсолютный. Относительный путь вызовет ошибку! Обязательно в конце должно быть указано .pid. |
| Примеры |
|
| *** | |
| Параметр | socket_file |
| Значение | Указываем путь к файлу |
| По умолчанию | /var/run/kor-elf-shield/kor-elf-shield.sock |
| Описание | Путь, по которому будет создан файл сокета. Путь должен быть абсолютный. Относительный путь вызовет ошибку! Обязательно в конце должно быть указано .sock. |
| Примеры |
|
Log
Указывать параметры для этого раздела нужно вначале указать [log], а после уже указывать остальные параметры этого раздела. Пример:
[log]
enabled = true
level = "info"
| Параметр | enabled |
| Значение | true или false |
| По умолчанию | true |
| Описание | Включает логи. true - включает false - выключает |
| Примеры |
|
| *** | |
|---|---|
| Параметр | level |
| Значение | debug, info, warn, error, fatal |
| По умолчанию | info |
| Описание | Уровень ведения логов: debug - Логи для отладки и рекомендуется не выберать в production. info - Подробное ведение логово. Записывает информацию о запуске, остановке и т.д. warn - Предупреждения о потенциально проблемных ситуациях, которые не мешают работе приложения, но требуют внимания. error - Ошибки, которые возникли во время работы, но не привели к остановке программы. fatal - Критичные ошибки, после которых программа завершит работу. |
| Примеры |
|
| *** | |
| Параметр | development |
| Значение | true или false |
| По умолчанию | false |
| Описание | Нужен для отладки в тестовых окружениях. В production всегда должен быть выключен. true - включает false - выключает |
| Примеры |
|
| *** | |
| Параметр | encoding |
| Значение | json или text |
| По умолчанию | json |
| Описание | В каком формате следует записывать данные в лог: json - В формате json. text - В формате обычного текста. Каждый параметр в журнале будет разделён пробелом. (не рекомендуется) |
| Примеры |
|
| *** | |
| Параметр | paths |
| Значение | Указываем пути к логу |
| По умолчанию | ["/var/log/kor-elf-shield.log"] |
| Описание | Список мест для основных логов. Можно указать несколько путей. Путь должен быть абсолютный. Относительный путь вызовет ошибку! Обязательно в конце должно быть указано .log. Исключение "stdout" и "stderr" - это вывод данных в консоль. Если меняем стандартное значение, то рекомедуется посмотреть и от редактировать файл /etc/logrotate.d/kor-elf-shield на новые пути. |
| Примеры |
|
| *** | |
| Параметр | log_error_paths |
| Значение | Указываем пути к логу |
| По умолчанию | ["stderr"] |
| Описание | Список мест для ошибок логгирования. Например логгер не смог записать какие-то данные. Можно указать несколько путей. Путь должен быть абсолютный. Относительный путь вызовет ошибку! Обязательно в конце должно быть указано .log. Исключение "stdout" и "stderr" - это вывод данных в консоль. Если меняем стандартное значение, то рекомедуется посмотреть и от редактировать файл /etc/logrotate.d/kor-elf-shield на новые пути. |
| Примеры |
|
Настройки, специфичные для ОС
Указывать параметры для этого раздела нужно вначале указать [binaryLocations], а после уже указывать остальные параметры этого раздела. Пример:
[binaryLocations]
nftables = "/usr/sbin/nft"
| Параметр | nftables |
| Значение | Указываем путь к nftables |
| По умолчанию | /usr/sbin/nft |
| Описание | Укажите путь к nftables. Возможно в вашей ОС путь может быть другим. |
| Примеры |
|
Пути к другим настройкам
Указывать параметры для этого раздела нужно вначале указать [otherSettingsPath], а после уже указывать остальные параметры этого раздела. Пример:
[otherSettingsPath]
firewall = "/etc/kor-elf-shield/firewall.toml"
| Параметр | firewall |
| Значение | Указываем путь к настройкам для firewall |
| По умолчанию | /etc/kor-elf-shield/firewall.toml |
| Описание | Укажите путь к настройкам firewall. В этих настройках мы указываем, какие порты открыть или закрыть. Какие IP адреса заблокировать или наоборот, что бы никогда не блокировались. Путь должен быть абсолютный. Относительный путь вызовет ошибку! Обязательно в конце должно быть указано .toml. Про настройки firewall, можно ознакомиться тут. |
| Примеры |
|