Панель управления Proxmox VE дефолтно слушает на порту 8006. При желании закрыть этот порт или обращаться по стандартному https на порт 443 можно воспользоваться обратным прокси на Nginx. В официальной документации есть статья про это, однако конфиг в ней немного устарел.
Обновляемся и устанавливаем nginx:
apt-get update
apt-get install nginx
Редактируем дефолтный конфиг:
nano /etc/nginx/sites-available/default
server {
listen 80 default_server;
server_name _;
return 301 https://1.2.3.4; ## IP Proxmox
}
server {
listen 443 ssl;
server_name _;
ssl_certificate /etc/pve/local/pve-ssl.pem;
ssl_certificate_key /etc/pve/local/pve-ssl.key;
proxy_redirect off;
location / {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass https://localhost:8006;
proxy_buffering off;
client_max_body_size 0;
}
}
Тестируем и перезапускаем Nginx:
nginx -t
service nginx reload
Проверяем — Proxmox теперь доступен по https://ip. Если всё ОК — можно закрывать доступ к порту 8006 через внешний интерфейс (в примере — eth0):
iptables -A INPUT -i eth0 -p tcp --dport 8006 -j DROP
iptables-save
Для безопасности можно также настроить ограничение доступа на уровне Nginx.
Установленный reverse proxy можно использовать также для маршрутизации соединений с виртуальными машинами.