Have you finished preparing your server? Great! This article lists the required dependencies that need to be installed.
sudo apt update
sudo apt install aria2
aria2c https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
sudo apt update
sudo apt install cmake build-essential gdb bison autoconf automake \
libpng-dev libjpeg-dev libgif-dev libfreetype6-dev \
liblua5.2-dev libluabind-dev libcpptest-dev \
libogg-dev libvorbis-dev libopenal-dev \
libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev \
libmysqlclient-dev libxml2-dev libcurl4-openssl-dev libssl-dev \
libsquish-dev liblzma-dev libgsf-1-dev \
p7zip-full screen nano \
libmsquic \
-y
sudo apt update
sudo apt install aria2
aria2c https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
sudo apt update
sudo apt install cmake build-essential gdb bison autoconf automake \
libpng-dev libjpeg-dev libgif-dev libfreetype6-dev \
liblua5.2-dev libluabind-dev libcpptest-dev \
libogg-dev libvorbis-dev libopenal-dev \
libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev \
libmysqlclient-dev libxml2-dev libcurl4-openssl-dev libssl-dev \
libsquish-dev liblzma-dev libgsf-1-dev \
p7zip-full screen nano \
libmsquic \
-y
Your selected Lua library version must match whichever version libluabind-dev depends on. Check which version is required by attempting to install it.
user@core:~# sudo apt install libluabind-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libboost-dev libboost1.71-dev liblua5.2-0 liblua5.2-dev libluabind0.9.1d1 libncurses-dev libreadline-dev
Development libraries and debugging tools are included in the server dependencies for developer convenience in case of release problems.
For the servers that will have FES services running, if you want to offer QUIC support, you will need to follow the LEMP installation steps for only Nginx and Let's Encrypt to get the SSL certificate bot up and running. The steps for MariaDB and PHP can be skipped for these hosts.
Give the nevrax
user (shard service user) full read-only access to the certificates. Logged in as your maintenance user (any sudo'er), install bindfs, and edit /etc/fstab.
sudo apt install bindfs
sudo nano /etc/fstab
Map /home/nevrax/letsencrypt
to /etc/letsencrypt
as read-only in /etc/fstab
.
bindfs#/etc/letsencrypt /home/nevrax/letsencrypt fuse force-user=nevrax,force-group=nevrax,create-for-user=root,create-for-group=root,chgrp-ignore,chown-ignore,ro,x-systemd.requires=/,nofail 0 0
Adjust x-systemd.requires
to whichever mount point houses /home
.
From the nevrax
user in the home directory make the mount directory.
mkdir letsencrypt
Then from the maintenance user (any sudo'er), just sudo reboot now
to reboot and verify that the folder gets mounted automatically.
The FES will automatically use certificates from the /home/nevrax/letsencrypt/live directory for QUIC connections if they are found and the server configuration values are not set.