Install YunoHost

Select the hardware on which you want install YunoHost :

Pre-requisites

  • A x86-compatible hardware dedicated to YunoHost: laptop, nettop, netbook, desktop with 512MB RAM and 16GB capacity (at least)
  • A USB stick with at least 1GB capacity OR a standard blank CD
  • A reasonable ISP, preferably with a good and unlimited upstream bandwidth
  • An ethernet cable (RJ-45) to connect your server to your router.
  • A computer to read this guide, flash the image and access your server.

Download the YunoHost image

If your host OS is 32 bits, be sure to download the 32-bit image.

USB drive Flash the YunoHost image

Now that you downloaded the image of YunoHost, you should flash it on a USB stick or a CD/DVD.

Download Etcher for your operating system and install it.

Plug your USB stick, select your image and click "Flask"

Etcher

Boot the machine on your USB stick

  • Plug the ethernet cable (one side on your main router, the other on your server).
  • Boot up your server with the USB stick or a CD-ROM inserted, and select it as bootable device by pressing one of the following keys (hardware specific): <ESC>, <F9>, <F10>, <F11>, <F12> or <DEL>.
    • N.B. : if the server was previously installed with a recent version of Windows (8+), you first need to tell Windows, to "actually reboot". This can be done somewhere in "Advanced startup options".

Launch the graphical install

N.B. : The installation will totally erase the data on the server's hard drive!

You should see a screen like this:

Preview of the ISO menu
  1. Select Graphical install
  2. Select your language, your location and your keyboard layout
  3. The installer will then download and install all required packages.

Proceed with the initial configuration

If you are in the process of restoring a server using a YunoHost backup, you should skip this step and instead restore the backup instead of the postinstall step.

In an internet browser, type https://yunohost.local.

If this doesn't work, you can look for the the local IP address of your server. The address typically looks like 192.168.x.y, and you should therefore type https://192.168.x.y in your browser's address bar.

During the first visit, you will very likely encounter a security warning related to the certificate used by the server. For now, your server uses a self-signed certificate. You will later be able to add a certificate automatically recognized by web browsers as described in the certificate documentation. For now, you should add a security exception to accept the current certificate. (Though PLEASE, don't take the habit to blindly accepting this kind of security alerts !)

You should then land on this page :

Initial configuration page

Preview of the Web initial configuration page
Main domain

This will be the domain used by your server's users to access the authentication portal. You can later add other domains, and change which one is the main domain if needed.

  • If you're new to self-hosting and do not already have a domain name, we recommend using a .nohost.me / .noho.st / .ynh.fr (e.g. homersimpson.nohost.me). Provided that it's not already taken, the domain will be configured automatically and you won't need any further configuration step. Please note that the downside is that you won't have full-control over the DNS configuration.

  • If you already own a domain name, you probably want to use it here. You will later need to configure DNS records as explained here.

Yes, you have to configure a domain name. If you don't have any domain name and don't want a .nohost.me / .noho.st / .ynh.fr either, you can set up a dummy domain such as yolo.test and tweak your /etc/hosts file such that this dummy domain points to the appropriate IP, as explained here).

Administration password

This password will be used to access to your server's administration interface. You will also use it to connect via SSH or SFTP. In general terms, this is your system's key, choose it carefully!

Create a first user

Once the postinstall is done, you should be able to actually log in the web admin interface using the administration password.

So far, your server now has an admin user - but admin is not a "regular" user and can't be used to log on the user portal.

Let's therefore add a first "regular" user.

The first user you create is a bit special : it will receive emails sent to root@yourdomain.tld and admin@yourdomain.tld. These emails may be used to send technical informations or alerts.

Go in Users > Add

TODO: add a screenshot

Run the initial diagnosis

The diagnosis system is meant to provide an easy way to validate that all critical aspects of your server are properly configured - and guide you in how to fix issues. The diagnosis will run twice a day and send an alert if issues are detected.

N.B. : don't run away ! The first time you run the diagnosis, it is quite expected to see a bunch of yellow/red alerts because you typically need to configure DNS records (if not using a .nohost.me/noho.st/ynh.fr domain), add a swapfile if not enough ram and/or port forwarding.

If an alert is not relevant (for example because you don't intend on using a specific feature), it is perfectly fine to flag the issue as 'ignored' by going in the webadmin > Diagnosis, and clicking the ignore button for this specifc issue.

To run a diagnosis, go on Web Admin in the Diagnosis section. You should get a screen like this :

Preview of the diagnostic panel

Get a Let's Encrypt certificate

Once you configured DNS records and port forwarding (if needed), you should be able to install a a Let's Encrypt certificate. This will get rid of the spooky security warning from earlier for new visitors.

For more detailled instructions, or to lean more about SSL/TLS certificates, see the corresponding page here.

Preview of the diagnostic panel

Congratz!

You now have a pretty well configured server. If you're new to YunoHost, we recommend to have a look at the guided tour. You should also be able to install your favourite applications. Don't forget to plan backups !

Found errors? Think you can improve this documentation? Simply click the Edit link at the top of the page, and then the icon on Github to suggest changes.