# Niflheim VPN консольный клиент

> CLI-утилита Niflheim для управления VPN-сервером из терминала - создание пользователей, генерация конфигураций WireGuard и IKEv2, мониторинг туннелей

Source: https://opennix.org/docs/niflheim/console-client/


Для удобства управления была разработана консольная утилита для работы с Niflheim VPN.

### Управление пользователями

#### 1. Список пользователей 
   
Для получения списка существующих пользователей требуется ввести команду: 

```shell
niflheim-cli users -l
```
Возвращает список существующих пользователей

#### 2. Добавление нового пользователя

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

```shell
niflheim-cli users -a user-name
```

Выполнение этой команды вы можете увидеть на следующем примере: 

```shell
niflheim-cli users -a newuser
Adding new user - newuser to niflheim vpn in progress. Please wait
deployment in progress.....: 632B [01:22, 7.61B/s] 
User newuser has been added to niflheim vpn
```

После завершения работы команды создадутся конфигурационные файлы, список которых вы можете увидеть ниже. 

```shell
find . -name "*newuser*"
./wireguard/apple/macos/newuser.mobileconfig
./wireguard/apple/ios/newuser.mobileconfig
./wireguard/newuser.conf
./wireguard/.pki/public/newuser
./wireguard/.pki/preshared/newuser
./wireguard/.pki/private/newuser
./wireguard/newuser.png
./ipsec/apple/newuser.mobileconfig
./ipsec/manual/newuser.secrets
./ipsec/manual/newuser.conf
./ipsec/manual/newuser.p12
./ipsec/.pki/reqs/newuser.req
./ipsec/.pki/public/newuser.pub
./ipsec/.pki/certs/newuser_crt_generated
./ipsec/.pki/certs/newuser.crt
./ipsec/.pki/private/newuser_ca.p12
./ipsec/.pki/private/newuser.p12
./ipsec/.pki/private/newuser.key

```

### 3. Удаление пользователя

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

```shell
niflheim-cli users -d user-name
```
Команда удалит пользователя, а также все конфигурационные файлы, которые имеют отношение к этому пользователю. 

## Обновление конфигурации VPN сервера

Конфигурация сервера генерируется при первом старте сервера. Файл конфигурации находится по следующему пути: 

`/opt/niflheim/config.cfg`

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

```shell
 niflheim-cli  server -u
```

