Book Image

Ubuntu Server Essentials

By : Abdelmonam Kouka
Book Image

Ubuntu Server Essentials

By: Abdelmonam Kouka

Overview of this book

Ubuntu is a Debian-based Linux operating system built on top of the Debian architecture. It is used to make operating systems for multiple platforms, including phones, desktops, TVs and mobiles. It has made some serious progress in the realms of efficiency and user friendliness. With evolving technology trends, demands on software have changed, with more and more skilled users. Over the past few years, services such as Facebook, Twitter, and push notifications on smartphones mean that users are used to being up to date with everything that happens all the time. With SignalR, the applications stay connected and will generate notifications when something happens either from the system or by other users. This provides new opportunities for the system administrators, to enter this new and exciting world of real-time application development. This is a concise and a cost-friendly guide, packed with up-to-date essentials on Ubuntu Server fundamentals. It will guide you through deploying and configuring Ubuntu servers in your office environments. You’ll start by installing Ubuntu Server, then move to the most useful aspect —the command-line interface inside it. You’ll extend your knowledge by learning how to administrate and configure Ubuntu Server. You will also see how to deploy services on Ubuntu Server and find out how to secure it. You’ll get to grips with the virtualization and cloud computing facilities provided by Ubuntu, and finally, you’ll gain some very useful tips.
Table of Contents (13 chapters)

Advanced security configuration

In this section, we will discover some advanced security settings that are needed for most Ubuntu servers that are in a production environment, especially when they contain critical services. This advanced configuration is important because it will directly touch the behavior of services besides Ubuntu Server itself.

SSH security enhancement

By definition, SSH is a secure communication protocol, but there are some additional enhancements that we can apply to take this security a step ahead.

Let's start with the default Ubuntu SSH configuration. The /etc/ssh/sshd_config file, which is very secure as it allows authentication keys to be used, uses privilege separation and allows only SSH protocol 2. The only questionable setting is PermitRootLogin yes, which defines the option that allows root users to log in via SSH. In our case (Ubuntu Server with the default installation), this setting is useless since the root account is disabled, but in case you would like...