Инсталиране на VPN сървър с Docker под Proxmox

Инсталиране на VPN сървър с Docker под Proxmox

В днешно време сигурността в интернет не е лукс, а необходимост. 🛡️ Все повече хора търсят решения за защита на връзката си чрез VPN (Virtual Private Network). А какво по-добро от това да си създадете собствен VPN сървър?

В тази статия ще ви покажем как лесно да инсталирате VPN сървър в Docker контейнер на Proxmox. Ще го направим стъпка по стъпка, с примери и обяснения, подходящи дори за напълно начинаещи. 👨‍💻


🧠 Какво е VPN и защо ви е нужен?

VPN е услуга, която криптира интернет връзката ви. Това прави данните ви невидими за хакери, интернет доставчици и дори правителствени агенции. 🤫

Собственият VPN сървър ви осигурява:

  • 🔐 Пълна сигурност и контрол
  • 🌍 Достъп до домашната ви мрежа отвсякъде
  • 📶 Без ограничения от доставчици
  • 💰 Без месечни такси към трети страни

А с помощта на Docker и Proxmox, всичко това може да бъде постигнато само за няколко минути.


🏗️ Какво ще използваме?

Нека първо изброим нужните компоненти:

КомпонентОписание
Proxmox VEХипервайзор платформа за сървъри
DockerКонтейнерна платформа за приложения
VPN сървърЩе използваме OpenVPN или WireGuard
Debian/Ubuntu LXCКонтейнер в Proxmox, който ще използваме като Docker хост

⚙️ Стъпка 1: Създаване на LXC контейнер за Docker в Proxmox

  1. Влезте в уеб интерфейса на Proxmox.
  2. Натиснете Create CT (създай контейнер).
  3. Въведете име, ID и изберете шаблон, например Debian 12.
  4. Задайте:
    • CPU: минимум 1 core
    • RAM: 512–1024 MB
    • Storage: 10-20 GB
  5. Под “Network” включете NAT или bridge, в зависимост от нуждите ви.
  6. Завършете създаването и стартирайте контейнера.

🔧 Важно: Ако използвате unprivileged LXC, трябва да разрешите допълнителни права за Docker.


🐳 Стъпка 2: Инсталиране на Docker в LXC контейнера

Влезте в контейнера чрез pct enter <ID> или SSH:

apt update && apt upgrade -y
apt install -y curl gnupg2 ca-certificates lsb-release

След това:

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

Проверете дали Docker работи:

docker version

✅ Ако всичко е наред, сте готови да продължите.


🌉 Стъпка 3: Избор на VPN сървър – OpenVPN или WireGuard?

🟦 OpenVPN (стабилен и добре поддържан)

OpenVPN е класика. Работи навсякъде и е тестван във времето.

🟩 WireGuard (по-нов, по-бърз и по-лек)

WireGuard е съвременен, по-лек и лесен за настройка. Препоръчваме го за повечето потребители.

Ние ще използваме WireGuard, защото е бърз, модерен и поддържан от ядрото на Linux.


🧪 Стъпка 4: Инсталиране на WireGuard с Docker

Във вече инсталирания Docker контейнер:

docker volume create wireguard_config

След това стартирайте WireGuard със следната команда:

docker run -d \
  --name=wireguard \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  -e PUID=1000 \
  -e PGID=1000 \
  -e SERVERURL=your.domain.com \
  -e SERVERPORT=51820 \
  -e PEERS=client1 \
  -e PEERDNS=1.1.1.1 \
  -e INTERNAL_SUBNET=10.13.13.0 \
  -v wireguard_config:/config \
  -v /lib/modules:/lib/modules \
  -p 51820:51820/udp \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --restart unless-stopped \
  lscr.io/linuxserver/wireguard:latest

🔑 Обяснение:

  • SERVERURL: вашият публичен IP или домейн
  • PEERS: имената на клиентите (може да са няколко, разделени със запетая)
  • INTERNAL_SUBNET: вътрешна мрежа на VPN

🔍 Стъпка 5: Проверка на работещия сървър

След няколко секунди можете да проверите дали всичко е успешно:

docker logs -f wireguard

В логовете ще видите генерирани .conf файлове за всеки потребител.

Извлечете ги:

docker exec -it wireguard cat /config/peer_client1/peer_client1.conf

💡 Съвет: можете да добавите QR код за сканиране от телефон с:

docker exec -it wireguard qr

📲 Стъпка 6: Свързване от телефон или компютър

  1. Инсталирайте WireGuard приложението (Android, iOS, Windows, Linux).
  2. Импортирайте конфигурационния файл или сканирайте QR кода.
  3. Натиснете "Connect" и сте в играта! 🎉

🔒 Съвети за сигурност

  • Използвайте силна парола за Proxmox и SSH.
  • Ограничете портовете в рутера си (отворете само 51820/UDP).
  • Създайте отделна потребителска група за Docker.
  • Включете двуфакторна автентикация (2FA) за достъп до Proxmox.

🧹 Поддръжка и обновления

Проверявайте контейнера поне веднъж месечно:

docker pull lscr.io/linuxserver/wireguard:latest
docker stop wireguard
docker rm wireguard
# стартирайте го отново със същата команда

💡 Конфигурацията ви ще остане в wireguard_config.


🧩 Допълнителни възможности

След като имате VPN, можете да:

  • Достъпвате Proxmox и други услуги отдалечено
  • Направите хостинг на личен облак (Nextcloud)
  • Свържете отдалечени офиси/домове
  • Използвате публичен Wi-Fi без притеснения

💬 Заключение

Създаването на VPN сървър с Docker в Proxmox не е сложно. Нужно е малко време и внимание, но резултатът е професионално, сигурно и удобно решение. 🚀

Вие контролирате достъпа, защитата и конфиденциалността си — без да разчитате на чужди доставчици.


📌 Често задавани въпроси (FAQ)

❓ Трябва ли да имам домейн?
Не, но е препоръчително. Можете да използвате и динамичен DNS.

❓ Може ли да използвам OpenVPN вместо WireGuard?
Да. Има готови Docker образи като kylemanna/openvpn.

❓ Ще работи ли през мобилен интернет?
Да, и това е една от най-добрите му употреби.

❓ Какво да направя ако IP адресът ми се сменя?
Използвайте No-IP или DuckDNS с вашето устройство и настройте SERVERURL.


🔗 Полезни връзки


🤝 Споделете статията!

Ако тази статия ви беше полезна, споделете я с приятели, колеги или в социалните мрежи. 📣
Може да помогне и на други да поемат контрола над своята дигитална сигурност.

🔒 Вашата сигурност започва от вас самите!

Федя Серафиев

Федя Серафиев

Федя Серафиев e собственик на уебсайта urocibg.eu. Той намира удовлетворение в това да помага на хората да решават и най-сложните технически проблеми. Сегашната му цел е да пише лесни за следване статии, така че подобни проблеми изобщо да не възникват.

Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу: