Linux
Deploy anynode on Linux. This guide aids decision-making, offering platform-specific steps.
Let's learn all necessary procedures, configurations, and best practices for a successful deployment of anynode on your Linux/Debian environment. anynode was developed with a focus on interoperability. Along with being supported on the Windows operating system, anynode is also supported on Linux as another primary runtime environment.
The choice between Debian and Windows for installing anynode depends on various factors, including specific requirements, preferences, and user experiences. Here are some general advantages of installing anynode under Debian compared to Windows:
-
Stability and Reliability: Debian is known for its stability and reliability. It is a Linux distribution often used in server environments. If stability and longevity are crucial for your application, Debian might be the preferred choice.
-
Cost: Debian is open-source software and freely available. In contrast, using Windows typically involves licensing costs, which can be a significant factor for many organizations.
-
Security: Debian has a reputation for security and a robust security model. Debian's package management system also facilitates easier updating and patching of software components.
-
Flexibility and Customizability: Linux, including Debian, offers high flexibility and customizability. You have more control over the system and can easily tailor it to your specific requirements.
-
Command Line Management: Debian allows powerful management through the command line. For advanced users and administrators, this can be more efficient and precise compared to the graphical user interface of Windows.
-
Prepared Shell Script: To provide for an easy installation process we have prepared a shell-script which does all the necessary work: Detect distribution & CPU architecture, configure repository configuration for Debian based distributions, install prerequisites, install anynode. We provide all necessary commands on our TE-SYSTEMS repository server.
-
Resource Consumption: Linux distributions tend to consume fewer system resources than Windows, which can be crucial when considering resource constraints.
It's important to note that the choice between Debian and Windows strongly depends on specific requirements and preferences. Some users prefer the user-friendliness of Windows, while others favor the control and flexibility offered by Linux. It is advisable to consider the specific requirements and use case to select the most suitable platform for your installation. Microsoft Teams SBA is specifically designed for Windows environments and is not available for other operating systems such as Linux or MacOS.
Use of Antivirus Software and Firewalls
We recommend that companies with an information security policy requiring antivirus programs on all servers review the following recommendations.
-
Ideally, the operation of anynode should not be hindered by antivirus software. We suggest scheduling scans during periods of low call volume.
-
Modern antivirus software provides real-time scanning, which actively prevents the downloading of viruses onto your computer by continuously checking all files. However, this real-time scanning may increase CPU usage and slow down your computer due to its processing demands.
-
By implementing exceptions to the scan, you can expedite the process, thereby minimizing the overall performance impact on the system: Exclude the working directory /var/opt/tesystems/ from live scanning, particularly if the scanner immediately checks new or modified files. This directory contains configuration files, call history, event logs, and potentially voice recordings.
-
The program directory /opt/tesystems/ houses anynode's executable files. Regularly scanning these files, including during startup, is recommended and poses no concerns.
External Firewalls
Any interference by external firewalls in SIP traffic, such as SIP-ALG, must be disabled. The ports you need to open in an external firewall for anynode depend on its specific configuration and the requirements of the services it provides.
TE-SYSTEMS Community Access
Please ensure that access to the TE-SYSTEMS Community is possible on port 443 using the TCP protocol. This address is used by anynode to reach the license server necessary for setting up licenses. Continuous access is essential, particularly for subscription licenses.
TE-SYSTEMS will be integrating additional features into future anynode versions to facilitate administrators in keeping anynode and its settings up to date.
anynode Installation
TE-SYSTEMS provides its own repository server as a deployment tool. From this repository server, you can install anynode very easily on Debian, Ubuntu, Raspbian. Additionally, our server also hosts the Red Hat Enterprise Linux version of anynode. Please check the repository start page for a complete list of currently supported platforms.
For the installation, let us assume that you have already installed a version of Linux that TE-SYSTEMS has tested with anynode on a physical or virtual system. You can set up the installation either on the local system console, or via the network using SSH. The installation of anynode on Red Hat Enterprise Linux is performed using the following steps. Utilize the commands provided for Red Hat Enterprise Linux available on our TE-SYSTEMS repository server. Access them by navigating to RHEL 8 register.
Further details on minimum hardware specifications can be found in our anynode Performance TechNote.
Use the following links to check all available anynode versions and components for Linux/Debian:
Index of /debian/pool/main/a/
https://linux.te-systems.de/debian/pool/main/a/
anynode (kernel)
https://linux.te-systems.de/debian/pool/main/a/anynode/
anynode monitor
https://linux.te-systems.de/debian/pool/main/a/anynodemon/
anynode frontend
https://linux.te-systems.de/debian/pool/main/a/anynodefe/
anynode administration
https://linux.te-systems.de/debian/pool/main/a/anynodead/
The Linux repository server will automatically install the latest available version of anynode.
In this example, the installation is demonstrated on a system with an already installed copy of Debian 12 performed through the network.
Launch the terminal/shell program in your Linux environment. Login with your username and password.
Note that all other steps need root privileges. The root account, or root user, has the highest privilege over the system.
If your user is a registered user in the SUDO group, you can simply activate a root console by sudo -s
. Alternatively,
you can use su
, in which case you need to enter the root user's password. In our example, we use su
.
When su
is used without arguments, it switches to the superuser (root) by default, and you will be prompted
to enter the password for the superuser.
From the TE-SYSTEMS repository server, perform the relevant commands using copy and paste
Navigate to Debian / Ubuntu / Raspbian and copy the Download install shell
script onto the Linux computer. Your command utilizes only wget
along with the URL to download the script,
without the inclusion of the dollar sign:
Execute the script.
Now, we look at the configuration of our network interfaces. Using ip
addr
, we can see the available
interfaces and how they're configured. Since anynode is a network demarcation point within your VoIP infrastructure, there
are likely at least two network interfaces: an internal and an external. In this example, we want the internal interfaces
to access the web interface for configuration purposes - in our example, here the interface named eth0
.
The installation command provided on the TE-SYSTEM repository server intends to execute a Bash script named anynode_debian_install.bash
on a Debian system, passing the network interface name, in this case, eth0
as an argument. If your network interface
is indeed eth0, you can execute the command as follows:
This assumes that the script anynode_debian_install.bash
is in the current directory. The source command
is used to execute the script in the current shell context, and eth0
is passed as an argument to the script.
This process may take up to a few minutes. During the script all anynode components and the associated packages are downloaded
and installed.
The installation consists of four packages, which install various anynode services
-
anynode (anynode – The Software SBC)
-
anynodead (anynode administration)
-
anynodefe (anynode frontend)
-
anynodemon (anynode monitor)
anynode is installed in two different directories:
For non-variable data (anynode/anynodead/anynodefe/anynodemon):
For variable data (for instance configuration data, IPC data, trace data...): (anynode/anynodead/anynodefe/anynodemon)
After completing the installation, shell script will display the IP address of the anynode frontend.
Connect via a browser with the anynode configuration and make your initial setup.
If you wish to switch from accessing via HTTPS to unencrypted access, please clear the cookies for the TCP connection. In this case, the browser passes the cookie from the TLS connection, and you won't be able to access the anynode frontend over TCP.
Upon the initial launch of anynode in the browser after deployment, you will encounter a message with the HTTPS crossed out. This happens because the common self-signed certificate in anynode does not match the hostname you are visiting. Despite the crossed-out HTTPS, the connection remains secure. This persistent message is due to the browser not trusting the self-signed certificate from anynode. Ignore these messages initially and proceed to set up the password for accessing the anynode frontend. We will address this issue shortly. Depending on your browser, click on the
button.In the advanced view, click on Continue to your IP.
Refer to our First Steps video for the subsequent steps of the initial password setup. You can replace the certificate of the pre-configured HTTPS connector with your own certificate or request a certificate through the ACME functionality in anynode from a certificate issuance provider such as Let's Encrypt or ZeroSSL. For further steps, refer to our guide on Let's Encrypt & Co. with ACME and anynode – The Software SBC.
Congratulations, you have successfully installed anynode on Debian and are now enjoying all the benefits of this freely available operating system.
Further useful commands
To conclude, we would like to provide you with some additional useful commands for administering anynode:
If you wish to stop and restart the anynode frontend:
You can check the operational status using the following command:
This can be done for all four services:
-
anynode (anynode – The Software SBC)
-
anynodead (anynode administration)
-
anynodefe (anynode frontend)
-
anynodemon (anynode monitor)
anynode Deinstallation
The uninstallation process relies on the standard package management of Debian. For more information, refer to the Debian Manual.
To remove individual packages from the anynode installation, use the command apt remove followed by the corresponding package name. For example, to remove the anynode monitor:
This must be done for all four packages:
-
anynode (anynode – The Software SBC)
-
anynodead (anynode administration)
-
anynodefe (anynode frontend)
-
anynodemon (anynode monitor)
Afterwards, you can execute:
This command deletes additional packages that were installed as dependencies but are no longer needed.
For a complete uninstallation, including all configuration data, user management, call history, etc., use the command:
This must be done for all four packages:
-
anynode (anynode – The Software SBC)
-
anynodead (anynode administration)
-
anynodefe (anynode frontend)
-
anynodemon (anynode monitor)