How to Provision and Administer a Linux Server
Here in this article we will try to explore on the generic steps that are required to be carried out by a Linux System Administrator in setting up a Linux Server.
Linux as we know today is one of the most popular operating system. Its the core OS on top of which different types of Servers are built or setup. These servers can be of different types as mentioned below.
Types of Servers
Frontend Servers
Web Servers and Load Balancers are type of Frontend Servers which help in serving the Website Content to the end servers. There are different implementation of Web Servers like Apache HTTP Server, Nginx Server which can be setup on a Linux System.
Backend Servers
These are the kind of servers which provide data persistence feature like the Database Servers. There are different implementation of Databases available for us to use like PostgreSQL, Oracle and Mongo DB all of which can be setup on a Linux System.
Middleware Servers
There are the kind of servers which provide the runtime environment for hosting the Business logic of the Applications. There are different types of Server in this category like Websphere Application Server and Tomcat which can be setup on a Linux System.
Let’s get into the details what it takes to provision a generic Linux Server and Administer it.
Procedure
Step1: Install the Server
In any Server Setup, this is going to be the very first step in which we need to first install the server using any of the installation method provided by the Vendor. Let’s say if you want to setup a Frontend server like an Apache HTTP server, you need to first identify what type installation method you want to follow to setup this server. If you want to carry out an RPM based installation approach, you need to identify the RPM package or a group of related packages that are required to setup the Apache HTTP server.
Step2: Configure the Server
This is a very important step to make sure our server is configured as per our requirement. Here we are going to update a set of configuration files related to the server to ensure that the server behaves as per our requirement. We use the popular tool called “vi” or “vim” to create or update the configuration files related to the Server setup.
Step3: Start the Server
Once the necessary configuration are completed, we need to start our server. We can follow the Installation Documenation related to server on the different approach that can be followed to Start the server.
Step4: Secure the Server
Once the Server is started, its ready for the End Users or other Server Components to use. But before a server is exposed to end user or other components we need to ensure that we have secured our server. This is the most important step that as System Administrator we need to take a note of. There are different tools that are available which we can use to ensure that our server is secure as listed below.
- SSH utilities like ssh, sftp, scp for remote access and file management using a secured and ecnrypted communcation channel
- Use of firewalls (eg. iptables and firewalld for securing services) to make sure only required ports and services are allowed access to the Server
- Use of SELinux to ensure the only the required resources are cosumed by the Services in the Server
And the Most important thing is to ensure that our server is patched regularly so that it is free from any CVE vulnerability.
Step5: Monitor the Server
Now that we have our server ready and catering to the End Users or other Server Components. The next important thing that we need to make sure that we gather the details of the our Server Failure and Server Behaviour. Thats called logging and monitoring metrics gathering. We need to make sure that appropriate services or tools are installed and configured for logging and monitoring metrics gathering. Here are some of the generic tools that we can use in the Linux System for this task.
- Enable rsyslog for logging and watching out the logs for any unusual behaviour or activity
- Check system resource using sar (sysstat package) which helps in gathering the CPU, Memory, Disk and Network Usage statistics
- Use of Cockpit Administation console for Managing and Monitoring the Server
- Filesystem intrusion detection to ensure that their no tampering of filesystem taken place
Hope you enjoyed reading this article. Thank you..
Leave a Reply
You must be logged in to post a comment.