Настройка OpenVPN в Ubuntu

На сервере Openvpn

На сервере CA

В каталоге EasyRSA Создать файл «vars»

Создать корневой сертификат и сертификат для OpenVPN:
(Для второго понадобится passphrase от первого)

dh.pem сертификат нужно создать, даже если он не будет использоваться:

На сервере OpenVPN

Скопировать файлы сертификатов в каталог Openvpn:

Создать /etc/openvpn/server.conf:

Настраиваем IP форвардинг и iptables:

Проверка:

Создание клиентов на сервере Openvpn

На сервере CA
Создать ключ клиента и скопировать его на сервер OpenVPN (команда ниже):

На сервере OpenVPN:

Создать шаблон конфига ~/client-configs/base.conf:

Скопировать ключи клиента и ca:

Создать скрипт создания конфига ~/client-configs/make_config.sh:
(добавление tls закоментировано)

Сделать файл исполняемым, созданный client.ovpn использовать на клиенте:

systemd script для запуска\остановки службы

Создаём исполняемый файл, например в /etc/init.d/testscript

Для запуска (execstart): /etc/init.d/testscript start

Для остановки (execstop): /etc/init.d/testscript stop

Создание хэша пароля sha512

С помощью python или python3:

С помощью openssl:

Автоматизация обновления времени с помощью ntpdate

Созать файл и сделать исполняемым /etc/init.d/timeupdate:

chmod +x /etc/init.d/timeupdate

Создать ежедневное задание крон в 0 часов:
sudo crontab -e

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

Внешний Proxy сервер Squid в Ubuntu

/etc/squid/squid.conf

Если нужен доступ по паролю, с разрешённых хостов закоментить «http_access allow allowed_hosts» и раскоментить «http_access allow allowed_hosts allowed_users»
Если нужен доступ по паролю с любых хостов, убрать «allowed_hosts» из этой строки

Создать файл паролей (при добавлении следующего пользователя без «-c»):
sudo htdigest -c /etc/squid/passwd_digest ‘Сообщение при подключении’ username
Список разрешённых хостов в файле /etc/squid/allowed_hosts

В сетевых правилах открыть tcp 4080

Если ip клиента меняется, но есть доменное имя, можно его обновлять на сервере:

Создать скрипт /etc/init.d/getallowedip.sh и сделать его исполняемым:

sudo chmod +x /etc/init.d/getallowedip.sh

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

sudo crontab -e

Virtualbox 6.1 в Ubuntu 22.04

Добавить репозиторий и ключ:

Установка:

Установка из git репозитория

Установка сборочного окружения:

Git clone:

Команды сборки и т.д:

Добавить старый .deb репозиторий

Создать файл /etc/apt/sources.list.d/bionic.list с кодом:

Добавить файл ключа:

Архиватор tar

Заархивировать в архив:

Распаковать архив:

Просмотреть архив:

Рубрика: Linux | Метки:

Ошибка добавления Centos9 в домен FreeIpa

На 22.02.2024 Такой проблемы нет в Ubuntu, Fedora 39, Alt Linux, Rosa и Astra.
Одна из причин — недостаточные права пользователя добавляющего в домен:
Нужно либо их добавить, либо использовать admin. Должно быть исправлено патчем.
https://pagure.io/freeipa/issue/9496

Вторая причина — старая версия freeipa сервера, а именно используемая в нём политика шифрования. Нужно либо обновлять сервер, либо в клиенте включить поддержку старого шифрования: