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
badmin
that 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 account
checkbox! After setting it up you will be able to connect to the server again via the new account. -
email
is 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