Installation
- First you must download the release from the client panel.
- Use root to install the package.
- No other software packages are required
System Requirements
- Linux OS 64 bit
- Kernel 5.4+ ( dates 24 November 2019 )
- Ubuntu 22.04+, Debian 12+, CentOS 9+, RHEL 9.0+, Fedora 38+ or openSUSE Leap 15.4+
- Systemd 221+ ( dates Jun 19, 2015 )
- CPU cores: 4
- RAM: 4GB
- Disk space: 80GB*
Download the package
wget https://www.fluxark.com/YOUR_LINK_FROM_WEBPANEL
After downloading you can mark the package as executable
chmod +x flux-1.0.0-all.run
Install file arguments
./flux-1.0.0-all.run ACTION [LICENSE_KEY] [ARGS]
ACTIONS
- install Install Flux
- upgrade Upgrades to the current version
- check Check for missing files, permissions etc.
ARGS: values are the defaults
- port 10000 Use port 10000 for the web panel
- iface 127.0.0.1 Use this interface for the web panel
- account Email REQUIRED while installing
- debug 1|0 Enable debugging
- username Create local SSH user
Install example command
Here we need the 3 basic arguments:
- install LICENSE_KEY - the license key from the client panel
- account email@example.com - this email will be used for the web panel admin account
- username badmin - creates an SSH user
badminthat will be available in the web panel and it's used to SSH into the server. The password is prompted at the end of the installation.
./flux-1.0.0-all.run install Q2gpgZPcFdnGyQl7d:dx9BZyskx0Ry5a account admin@mydomain.com username badmin
After the installation there will be 3 secrects printed on your screen - namely the secret key, SSH user password and the password of the web panel account
Installing a reverse proxy
Here we recommend Nginx as a reverse HTTPS proxy
FluxArk listens on localhost port 10000. You can change this in the /etc/flux.conf file and restarting the application afterwards with systemcts restart flux
If you need an SSL certificate, you can use certbot:
sudo certbot certonly -d fluxark.example.com
Or you can rely on the generated self-signed certificate.
Example Nginx configuration:
You can find the Nginx configuration file here:
/etc/nginx/sites-enabled/default
Replace fluxark.example.com with your domain or plain IP address
upstream backend {
server 127.0.0.1:10000;
keepalive 32;
}
server {
server_name fluxark.example.com;
location ~ (terminal/client(-watch-log)?|socket) {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
client_max_body_size 50M;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
client_body_timeout 60s;
send_timeout 300s;
lingering_timeout 5s;
proxy_connect_timeout 90s;
proxy_send_timeout 300s;
proxy_read_timeout 90s;
proxy_http_version 1.1;
proxy_pass http://backend;
}
# Used only when Nginx is used as a local reverse proxy
location /static/ {
root /usr/local/flux/data/;
}
location / {
client_max_body_size 100M;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
if ($request_method !~ ^(GET|POST|DELETE)$ ) {
return 405;
}
proxy_pass http://backend;
}
listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate /usr/local/flux/etc/cert.pem;
ssl_certificate_key /usr/local/flux/etc/key.pem;
}
# OPTIONAL redirect HTTP requests to HTTPS
server {
server_name fluxark.example.com *.fluxark.example.com;
# update to your own public domain
if ($host = fluxark.example.com) {
return 301 https://$host$request_uri;
}
listen [::]:80;
listen 80;
return 404;
}
After editing the configuration file, you must restart nginx
systemctl restart nginx
Caveats
You can omit the local SSH user creation during the installation ( username argument ), but:
NOTE After installation all of the local ssh users on the machine will be unavaliable, so in order to access the server again, you must create a new local admin user from the web panel:
After the installation you must store somewhere safe the SECRET KEY and the passwords of the web panel and SSH accounts made.
-
Go to Users -> Create -> And check the
Server administrating accountcheckbox! After setting it up you will be able to connect to the server again via the new account. -
emailis a required field and used as the first account - At the end of the installation an account password will be displayed, so don't forget to save it somewhere
- It's a good practice to have a remote mounted directory for the /home/ dir, as there will be stored the SSH session recordings for every user
- * The base installation is <1GB and the 80GB space is left for the SSH session recordings and CRON/API output/logs