Q. We have decided to move to Linux and brought a dedicated Dell server preinstalled with Red Hat Linux for hosting our small business website. Can you tell me what software required to run on a Linux dedicated server for hosting purpose?
A. Linux offers rich set of open source software for dedicated server hosting. Following is a typical list of software you need on a dedicated hosting server:
Apache Web Server
The Apache (HTTP) web server is very popular in terms of functionality and performance. The majority of all web servers using Apache are Linux web servers. Apache supports a variety of features. These can range from server-side programming language support to authentication schemes. Some common language interfaces support
- Perl – mod perl
- Python – mod python
- PHP and many others.
Database: MySQL Database Server
MySQL is a relational database management system (RDBMS) which has more than 11 million installations. The program runs as a server providing multi-user access to a number of databases. MySQL is essential to develop web applications. Usually, new user choose MySQL because it is easy to learn.
PostgreSQL is an object-relational database management system ORDBMS). It is released under a BSD-style license and is thus free software. PostgreSQL is used for advanced usage. It is more popular among the tech savvy and geek developers.
PHP, Perl, Python, the programming languages
All of the above languages are installed and used to develop web applications.
Firewall: Netfilter ( Iptables )
Netfilter is a framework that provides a set of hooks within the Linux kernel for intercepting and manipulating network packets. It is act as the firewall under Linux to protect server from various attacks. The best-known component on top of Netfilter is the firewall which filters packets, but the hooks are also used by other components which perform network address translation, stateful tracking and packet enqueueing to user space.
Security-Enhanced Linux (SELinux) is a Linux feature that provides a variety of security policies, including U.S. Department of Defense style mandatory access controls, through the use of Linux Security Modules (LSM) in the Linux kernel.
Mail Server: Postfix
Postfix is used as SMTP (mail transfer agent) server. Postfix is a free and open source mail transfer agent (MTA), a computer program for the routing and delivery of email. It is intended as a fast, easy-to-administer, and secure alternative to the widely-used Sendmail MTA.
IMAP and POP software: Dovecot
Dovecot is an open source IMAP and POP3 server for Linux/UNIX-like systems, written primarily with security in mind. Dovecot can work with standard mbox, Maildir, and its own experimental native high-performance dbox formats. It is fully compatible with UW IMAP and Courier IMAP servers’ implementation of them, as well as mail clients accessing the mailboxes directly.
Dovecot also includes a Mail delivery agent (called Local delivery agent in Dovecot’s documentation), with optional Sieve filtering support.
FTP Server: VSFTPD
vsftpd, which stands for “Very Secure FTP Daemon”, is an FTP server for UNIX-like systems, including Linux.
Secure Shell: OpenSSH
OpenSSH (OpenBSD Secure Shell) is a set of computer programs providing encrypted communication sessions over a computer network using the ssh protocol. Use ssh to securly login to server to transfer files.
There are various software and utilities built into Linux itself to make a backup. You must backup your dedicated server every day or as per requirements. For tape backup use tar command. For incremental backup use rsnapshot. For MySQL backup write a shell script.
A note about server management
If you do not know how to manage a dedicated server, get help of 3rd party or use commercial web hosting automation program (control panel) software such as plesk or cPanel.
|Category||List of Unix and Linux commands|
|Firewall||CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04|
|Network Utilities||dig • host • ip • nmap|
|OpenVPN||CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04|
|Package Manager||apk • apt|
|Processes Management||bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time|
|Searching||grep • whereis • which|
|User Information||groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w|
|WireGuard VPN||CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04|