Software installation using Oracle VM VirtualBox
ย
We recommend the installation and use of the Docker program, but this type can be used for small projects.ย ย
Preparing Ubuntu on a virtual machine for a Link server
If you already have a server based on Ubuntu, skip this section and go to Installing Link under Linux: Ubuntu. If no, follow the steps:
Download the Oracle VM VirtualBox.
Open the downloaded file to begin installation.
Click Next through all steps.
ย Select the way for installation and click Next.ย
Select appropriate options and click Next.
Confirm installation by clicking Yesย and then Install.
Wait until the process completes and click Finish.
Download the latest LTS version of Ubuntu Server ISO and configure the virtual machine.
Openย the Oracle VM VirtualBoxย and click New.
Enter a name for the virtual machine. F. e.: LinkSelfhost.
Select the ISO image downloaded in step 8 โ Ubuntu server installer.
Ensure the type is set to Linux and version to Ubuntu (64-bit).
๐ Choose one of the two available installation options:
Automatic installation (Unattended Install) โ available in VirtualBox 7.x only.
Leave the checkbox Skip Unattended Installation empty;
Open the Unattended Install tab and enter:
Username = linkuser, Password = qwerty11!@, Hostname = MyOwnLink, Domain = myguest.virtualbox.org
;Click Finish to create the virtual machine.
Advantages of automatic installation:
Faster deployment;
Lets you predefine user login and password.
Limitations of automatic installation:
Requires manual configuration of static IP in
netplan
;OpenSSH Server must be installed manually.
ย
or Manual installation (Recommended) โ available in VirtualBox 6.x and 7.x.
Check the checkbox Skip Unattended Installation;
Start the VM and complete the Ubuntu setup manually;
Use the following credentials during the Ubuntu installation wizard;
Enable Install OpenSSH Server, then finish the installation and reboot.
Configure virtual machine resources and finalize setup:
Automatic installation (Unattended Install):
Base memory and processors will be set automatically according to default VirtualBox settings or previous values.
Manual installation (Recommended):
Set the base memory (e.g. 8192 MB) and number of processors (e.g. 2);
Create a virtual hard disk with these parameters:
Type = VDI
,Size = at least 20 GB
(e.g. 100 GB),Allocation = Dynamically allocated
;
Click Finish to create the machine.
ย
Configure network settings:
Automatic installation (Unattended Install):
By default, VirtualBox assigns NAT. Adjustments may be needed after setup.
Manual installation (Recommended):
Open Settings โ Network:
Go to Adapter 1 tab and set Attached to:
Bridged Adapter
;
Select your active network interface (e.g. Ethernet, Wi-Fi);
Click OK.
Step 15 is essential for Link to connect to the network. Select the correct adapter and interface to ensure stable access.
ย
Start the machine:
Automatic installation (Unattended Install):
Click Start to launch the virtual machine. Ubuntu will be installed automatically using the provided credentials.
Manual installation (Recommended):
Click Start to launch the machine. Follow the Ubuntu Server installation wizard manually.
ย
ย
Configuration of the OS to install the Link serverย
Select a language and click Enter.
Press Continue without updating option.
Choose installation type: Ubuntu Server.
Press Continue and then Done to configure the disk.
Configure network settings by choosing one of the following options depending on your setup:
Use DHCP โ default option:
Youโll need to configure a static IP later using netplan
Leave the detected interface (e.g.,
enp0s3
) with the default DHCP settings;Press Done to continue.
ย
Set a static IP address โ recommended:
If you know the required IP address, subnet mask, gateway, and DNS โ itโs better to configure them now. This way, you wonโt need to manually edit the netplan
file after installation.
Select your network interface (e.g.,
enp0s3
) and press Enter;Select Edit IPv4;
Change the IPv4 Method to Manual;
Fill in the required fields with values that match your network setup. Example:
192.168.0.139
, subnet/24
, gateway192.168.0.1
, DNS8.8.8.8
;
Ubuntu uses CIDR format for subnets (e.g. /24
), which differs from the usual Windows format like 255.255.255.0
Press Save and ensure the interface type shows static, then press Done.
Skip the Ubuntu Pro offer by selecting Skip for now and pressing Continue.
Fill in the required fields with the data and click Done when it is ready, for example:ย
your name: linkuser
your serverโs name: linkuser
pick a username: linkuser
choose a password: qwerty11!@
confirm your password: qwerty11!@
Press the space bar to select Install OpenSSH server and press Done โ this step is required to install Link later.
Scroll through the snaps list and press Done.
Wait for the system to update. This may take up to 30โ60 minutes.
Press Reboot Now.
After reboot, log in with the credentials you created in step 7.
To run a command as administrator (user โrootโ), use the command: sudo su. Enter password qwerty11!@. The dollar icon should change to a hash.
Enter the ifconfig command to find out the IP address (in the future you can use as static it or register another one).
You can perform the following steps in the SSH and telnet client PuTTY. After downloading and installing, run the program.
Enter the address you found and press Open.
Press Accept.
If you selected Automatic installation (Unattended Install), the OpenSSH server may not be installed automatically.
To connect via PuTTY, install OpenSSH manually and verify that the SSH service is running:
sudo apt install openssh-server
sudo systemctl status ssh
โ If the output shows active (running), the SSH service is working and ready for remote connections:
Return to Oracle VM VirtualBox and enter your login and password to log in:ย
โข login: linkuser
โข password: qwerty11!@
To run a command as administrator (user โrootโ), use the command: sudo su. Enter password qwerty11!@. The dollar icon should change to a hash.
If you selected Automatic installation (Unattended Install) and/or used the DHCP option earlier, complete the following steps to configure a static IP address manually.
If you used Manual install (Recommended) and already set a static IP, proceed to the next section: Installing Link under Linux using Docker.
Go to the root folder:
cd ../../
Go to the netplan section and open the document to edit the network settings:
Ubuntu 22.04.2 and older (Unattended install):
cd etc/netplan
ls
vi 00-installer-config.yaml
Newer Ubuntu versions (Manual install):
cd etc/netplan
ls
vi 50-cloud-init.yaml
The legacy 00-installer-config.yaml
format is no longer supported.
Use the Netplan static configuration example instead.
You can also find more netplan
examples in the official repository:
netplan/examples at main ยท canonical/netplan
Replace the contents of the file with the following configuration:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.10.10.2/24
nameservers:
search: [mydomain, otherdomain]
addresses: [10.10.10.1, 1.1.1.1]
routes:
- to: default
via: 10.10.10.1
The network is configured for DHCP. You need to set up a static IP address.
Press I to switch to edit mode and adjust the settings as shown in the example:
Ubuntu 22.04.2 and older (Unattended install):
addresses: [192.168.0.139/24] โ where 192.168.0.139 is your local IP address, /24 is your subnet mask (255.255.255.0), if you have another subnet mask, check the correct number
gateway4: 192.168.1.1
nameservers: addresses: [192.168.1.1,8.8.8.8]
ย ย ย ย ย ย ย ย ย ย ย search: []
Newer Ubuntu versions (Manual install):
addresses: [192.168.0.139/24] โ where 192.168.0.139 is your local IP address, /24 is your subnet mask (255.255.255.0), if you have another subnet mask, check the correct number
gateway4: 192.168.0.1
nameservers: addresses: [192.168.0.1 ,8.8.8.8]
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย search: []routes: via: 192.168.0.1 (where 192.168.0.1 your gateway)
ย
Press Esc and then Shift Z twice.
Accept the network settings. Check if the internet connection is working.
sudo netplan apply
ping 8.8.8.8
Ctrl z
As result, configuration of the OS to install the Link server is done. Move to the next section to finish Link installation.ย ย
ย
Installing Link under Linux using Docker
Install Docker for your distro. The example below uses the installation for Ubuntu.
# Remove old versions sudo apt-get remove docker docker-engine docker.io containerd runc # Configure the repo ## Update apt index and install dependencies sudo apt-get update sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg \ lsb-release ## Add Docker GPG key curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ## Add repo echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # Install Docker sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
Install docker-compose for your distro.
# Download docker-compose sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # Grant execute permission for the file sudo chmod +x /usr/local/bin/docker-compose # Add symlink sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
Clone the necessary project from our GitHub with the help of command.
git clone https://github.com/basip/link.git
Create the necessary volumes in advance, with help of the command:ย ย ย
docker volume create name
Name changes depending on the volume name to be created. The list of required volumes (with external: true values) you can find at the end of the docker-compose.yml file.
ย
So, according to the example, the following commands must be done:
docker volume create app-data docker volume create app-storage docker volume create system-logs docker volume create app-ssl-certs docker volume create brocker-data
If you are installing a version with a web proxy:
Copy the env.example file and name this copy as .env.
In the .env fileย you must enter the following data:
your Link server address, e.g. link.bas-ip.com for HTTPS_DOMAIN field;
production for HTTPS_MODE field;ย ย
These parameters are required for correct encryption certificates to work.
Go to the folder of the version you want to install. For example, for the version with SIP, the command is:ย
cd link/with-sip
If you install version without SIP, the command is:ย
cd link/without-sip
Prepare environment file. Before running the project, copy the default environment file:
cp .env.example .env
Run the project:
docker-compose up -d
You can improve the productivity of extensive projects by doing the following Docker configuration:ย
Change the userland-proxy attribute to false in the docker configuration /etc/docker/daemon.json file. If there is no such file, then create it with the content
{"userland-proxy": false}ย
This completes the installation of the Link server. You have access to the web interface. You can learn more about it in the First authorization and the server initial setup section.