Pewnego razu chciałem zainstalować na jednym serwerze VPS panel sterowania do hostowania stron www oraz oprogramowanie seedbox. Jako panel sterowania używam Virtualmin, a do seedboxa postanowiłem użyć Swizzin. Niestety nigdzie nie udało mi się znaleźć poradnika jak to zrobić.
Dodatkowym problemem jest fakt, że Virtualmin używa serwera Apache2, a Swizzin działa na Nginx. Można jednak zainstalować Virtualmin z serwerem Nginx.
https://www.virtualmin.com/documentation/web/ngin
Po kilku dniach walki udało mi się zainstalować na jednym serwerze Virtualmin i Swizzin, czym chciałem się podzielić. A więc do dzieła.
Najpierw należy zainstalować Viertualmin z serwerem Nginx
/usr/bin/wget https://software.virtualmin.com/gpl/scripts/install.sh
/usr/bin/sudo /bin/sh install.sh --bundle LEMP
Następnie należy zainstalować Swizzin:
bash <(curl -sL git.io/swizzin) && . ~/.bashrc
Później instalujemy lets encrypt dla domeny, jeżeli chcemy mieć dostęp przez https
box install letsencrypt
Oraz swizzin panel
box install panel
Pozostało jeszcze skonfigurować serwer nginx:
nano /etc/nginx/sites-enabled/default
I wklejamy tam (my.domain.com zastępujemy swoją domeną):
server {
server_name my.domain.com;
listen x.x.x.x;
client_max_body_size 40M;
server_tokens off;
root /srv/;
include /etc/nginx/apps/*;
location ~ /\.ht {
deny all;
}
location /.well-known {
alias /srv/.well-known;
allow all;
default_type "text/plain";
autoindex on;
}
# SSL configuration
server {
server_name my.domain.com;
listen x.x.x.x:xssl;
ssl_certificate /etc/nginx/ssl/my.domain.com/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/my.domain.com/key.pem;
include snippets/ssl-params.conf;
client_max_body_size 40M;
server_tokens off;
root /srv/;
include /etc/nginx/apps/*;
location ~ /\.ht {
deny all;
}
}
W ten sposób otrzymamy VPS z panelem Virtualmin oraz seedboxem Swizzin.