HF PanelDocsv1.0.0

Install

Install HF Panel with one command, answer its questions, and follow what it does step by step until the summary.

Install HF Panel with one command. Check the System requirements and add your DNS records first.

Before you begin

Important:

  • Use a freshly installed server running a supported system. Do not install on a server that already hosts websites, email or another control panel.
  • Your licence is tied to the server's public IPv4 address. Install on the server whose IP you licensed, or start a free trial at the licence question.
  • You need root access.
  • Open ports 22, 80, 443, 8443 and 2087 (and the mail, FTP and DNS ports you need) in your provider's cloud firewall, if it has one. See Ports.

Have ready:

  • your licence key, or an email address for the trial
  • your domain, for example yourdomain.com
  • an email address for SSL notices, alerts and the "server is ready" email
  • your company name, used in email footers and sender names

Run the installer

Log in to the server over SSH as root (or run sudo -i), then run:

bash
cd /home && curl -o latest -L https://get.hostfog.io/latest && bash latest

To answer every question in advance, for example in an automated install, see Customise the installation.

What happens during the installation

1. Download and checks

The latest script checks that it runs as root, on a supported system, with no other control panel installed. It installs curl, unzip and openssl if they are missing, then downloads HF Panel into /home/hostfog-install.

The download is checked before anything runs: its checksum must match, and the checksum file must be signed with the HF Panel release key. If either check fails, nothing is installed.

Note: if HF Panel is already installed on the server, the script updates it instead. See Updating.

2. Licence key

At Licence key, type your key (HFL-XXXXX-XXXXX-XXXXX-XXXXX). The installer checks it with the licence server and shows its status.

To try HF Panel first, type T. The installer asks for a Trial email, starts a 14-day trial for this server and shows the trial key, which is emailed to you as well. See Licensing.

The licence server's answer also says which plan the licence has: the features it includes and its account limit. The installer reads them now, before it changes anything, because they decide what gets installed (see What gets installed depends on your plan).

3. Questions

Question What to enter
Domain your domain, for example yourdomain.com. The Control Panel becomes panel.yourdomain.com and every other address is a name under the same domain
Email the administrator's email address, for SSL notices, alerts and the "server is ready" email
Company your company name. Press Enter to keep the suggestion (your domain's first part with a capital, for example Yourdomain)

4. Pre-install summary

Before it changes anything, the installer shows:

  • the system, CPU, memory, free disk and the server's IP address
  • the Server Admin address, the company name and the licence status
  • Your plan: the plan's name, the features it includes and the account limit, for example Pro Web — Server Admin, Control Panel, Email, DNS · up to 50 accounts
  • the DNS records your domain needs, each marked points here or add it, plus the glue records and the reverse DNS (PTR) to set at your server provider

Add any records that are missing, then press Enter to start, or Ctrl+C to cancel without changing anything.

5. Installation

The installer runs about 23 steps, each shown on one line with a progress bar and a tick when done. Steps your plan or your options leave out are not run and not counted:

Step What it does
Packages updates the system and installs the server software
HostFog files the panel's program files, users and folders
PHP PHP for websites, with the common extensions
wp-cli, Node.js tools for WordPress and for customers' Node.js apps (Node.js only when your plan includes Apps)
Web servers Nginx in front, Apache behind it so .htaccess files work
Panel certificate a Let's Encrypt certificate for every server name that already points here (a temporary one until then)
Panel on port 8443 the panel's web server setup
HF Files the File Manager app
Service names webmail., the mail names and ftp.
Separate panels Server Admin, Control Panel and the names your plan includes: Reseller Panel, HF Files, HF Studio and the API (not with --no-portals)
MariaDB, MongoDB databases the database servers for customers (PostgreSQL and MongoDB only when your plan includes HF Studio)
Email Postfix, Dovecot, DKIM and spam filtering (when your plan includes Email; not with --no-mail)
DNS server BIND, authoritative only (when your plan includes DNS; not with --no-dns)
FTP, SFTP FTP with TLS, and SFTP kept to each account's home
Firewall, fail2ban opens the needed ports and blocks repeated failed logins
Scheduled jobs statistics every 5 minutes, the nightly jobs, log rotation
Disk quotas only with --quotas
Production settings automatic restarts, security updates, swap on small servers, mail app auto-setup
Panel database creates the panel's database
Websites writes the web server settings of every website

It usually takes 10–15 minutes, depending on the server and its network.

Note: everything the commands print goes to /var/log/hostfog-install.log. If a step fails, the installer marks it stopped and shows the last lines of that log. Fix the problem and run the same command again. See Troubleshoot the installation.

6. Your admin login

Under CREATE YOUR ADMIN LOGIN, enter the first administrator's Admin username (3–32 characters, starting with a letter), Admin email and password (twice).

7. Summary

The installer finishes with:

  • SIGN IN: the addresses of Server Admin, Control Panel and, when your plan includes them, Reseller Panel, HF Files, HF Studio, the API, webmail, the mail server and the mail app names
  • Admin mailbox: the address admin@yourdomain.com and its password
  • Email sent: where the "server is ready" email went, with your addresses and DNS records
  • TO DO: anything still to do, such as DNS records that are missing

Important: the mailbox passwords are shown only once. They are also kept in /root/hostfog-mailboxes.txt, which only root can read. Keep that file safe.

To read the admin mailbox, sign in to HF Mail at https://webmail.yourdomain.com with the full address admin@yourdomain.com and that password, or click Webmail next to it under Server Admin › Email › Server mailboxes, where you can also make a new password.

What gets installed depends on your plan

HF Panel is sold as plans. Each licence includes a set of features, and the installer sets up only the server software those features need. A licence made before plans existed includes everything.

Not in your plan What the installer leaves out
Email Postfix, Dovecot, DKIM, spam filtering and webmail, as with --no-mail
DNS the DNS server (BIND), as with --no-dns
Reseller Panel the reseller.yourdomain.com address
HF Files the files.yourdomain.com address
HF Studio the db.yourdomain.com address, PostgreSQL and MongoDB databases
API the api.yourdomain.com address
Apps Node.js, Ruby, Perl modules, PEAR and Composer for customers' apps
HF Tunnel, Docker nothing at install time: both are set up from Server Admin when first used, and only when your plan includes them

Everything else (websites, SSL, MySQL databases, FTP and SFTP, the File Manager inside the Control Panel, security, local backups) is always installed. The other features, such as Billing or White label, are parts of the panel and need no extra software.

Options can only take more away: --no-mail leaves email out even when your plan includes it.

Note: when your plan changes later, the server follows by itself once a day, or straight away with hf-panel licence sync. What your plan gained is set up; what it lost is switched off. Your data is never deleted. See Server commands.

When it finishes

Sign in to Server Admin at:

text
https://server.yourdomain.com:8443

with the admin login you just made. The panels open with the port :8443 only; the same names without the port go to your website. Then follow After installation.

With --no-portals, there is one panel for everyone at https://panel.yourdomain.com:8443, with HF Files at /files/, HF Studio at /studio/ and the API at /api/v1 on the same address.