Security

Module 9: Security

Lesson 1: Basic Security Measures

1.1 Updating Software Regularly

1.1.1 Importance of Software Updates

Regularly updating software is a fundamental security measure. Updates often include patches for vulnerabilities, ensuring the system is protected against potential exploits.

Updating Packages on Debian/Ubuntu:

sudo apt update

sudo apt upgrade

Updating Packages on Red Hat/CentOS: 

sudo yum update

1.1.2 Kernel Updates

Updating the Kernel:

sudo apt update && sudo apt dist-upgrade


Lesson 2: Configuring SSH for Security

2.1 SSH Configuration

Secure Shell (SSH) is a critical service for remote access. Properly configuring SSH enhances system security.

Changing SSH Port:

Modify the Port directive in the SSH configuration file (/etc/ssh/sshd_config).

Disabling Root Login:

Set PermitRootLogin no in the SSH configuration file.

Using SSH Keys:

Enable key-based authentication and disable password authentication.


Lesson 3: User Authentication

3.1 Understanding and Configuring PAM

3.1.1 What is PAM?

Pluggable Authentication Modules (PAM) provide a flexible framework for user authentication.

Configuring PAM:

Modify PAM configuration files located in /etc/pam.d/.

Example PAM Configuration for SSH:

auth required pam_unix.so

account required pam_unix.so


In Module 9, we emphasized fundamental security measures in Linux system administration. Regular software updates, including the kernel, play a crucial role in maintaining a secure system by patching vulnerabilities. Configuring SSH for security involves changing default settings, such as the port and root login permissions, and implementing key-based authentication. Finally, we explored Pluggable Authentication Modules (PAM) and its role in user authentication, including basic configuration examples for SSH. By incorporating these security practices into our Linux systems, we enhance their resilience against potential threats and contribute to a more robust and secure computing environment.