Hello. My name is Corey Thompson. And these lessons you will learn about some of the parameters inside the open SSH configuration file and how to modify the default listening port on an open SSH server and enable remote root access over SSH. You will also learn how to configure SSH banner, implement a custom message of the day and manage SSH users in groups. In this lesson, I will discuss some of the parameters inside of the open SSH configuration file. Our open SSH server configuration file is named sshd_config and is in the /etc/ssh directory. This is the typical location for most unique systems. The sshd_config file is an essential component for the secure shell protocol. It resides on the server and contains various directives that define how SSH connections should be established and managed. The sshd_config file is a configuration file used by the SSH server to control its behavior. During this lesson, we'll dive into the critical fields presented within this file and understand their significance. Let's get started. We're going to begin by opening our open SSH configuration file, which is in the /ETSI/ssh directory. You can use your text editor of choice to view this file. The first key field I want to highlight is port. The Port Directive specifies the port number on which the SSH server listens for incoming connections. By default, SSH uses Port 22, but it's often recommended to change this to enhance security and avoid common scanning attacks. The next field is the permit route log in field. This directive determines whether the route user is allowed to log in directly via SSH. While it may be convenient, it poses a significant security risk. It's generally recommended to set this to know and use a regular user account to log in. Then you can switch to a route using sudo. The next field of interest is the Max sessions field located lower. The MaX Sessions director says the maximum number of continuous SSH sessions allowed per user. Limiting the number of sessions can help control resource usage and prevent abuse. The next field is the public key authentication field. This field determines whether public key authentication is permitted. This method uses cryptographic keys to authenticate users and is generally more secure than passwords. The next field is password authentication. Here's the password authentication field, which controls whether password based authentication is allowed. It's advisable to set this to know, rely on key based authentication, which is more secure and resistant to brute force attacks. The next directory, as we're talking about, is X11 forwarding. Here's the X11 forwarding directive which enables or disables X11 forwarding, which is allowing graphical applications to be run remotely and displayed on the client system. Again, this is a more of a convenient option that poses a security risk. So it's often recommended to disable it if it's not needed. Next option we talk about is the TCP keepalive. Here's the TCP Keepalive directive which determines where the SSH server should send TCP Keepalive messages to the client. It helps maintain idle connections. It can be useful in preventing session drops due to inactivity. The next type of field that we're going to talk about is match blocks. You highlight a portion as an example of a mesh block mesh blocks allow you to apply specific configurations based on conditions such as a user login, in a specific group, an address or other criteria. This powerful feature helps administrators apply different settings to different users or host. The next director that we're going to talk about is a subsystem. The subsystem field in the sshd_config file is a crucial configuration directive for enabling the SSH file transfer protocol or SFTP when properly set allows users to securely transfer files between the client and the server using SFTP protocol. The syntax of these subsystem directive is pretty straightforward. Simply taking the form of subsystem SFTP path /2/sftp- server where the SFPT specifies the name of the subsystem and the path /2/SFTP-server represents the location of the SFTP server binary on the system. By defining this directive and specifying the correct path to the SFPT server binary, administrators can ensure that their open SSH server is equipped to handle SFTP requests seamlessly. This ensures a secure and efficient file transfer mechanism providing users with a reliable means to manage their files remotely. A couple of additional directives I want to talk about are not in the configuration file by default. The first one is the allow users and allow groups. When these directives are set, they allow administrators to specify which users or groups are allowed to log in the SHH. By explicitly defining access, you can limit potential security vulnerabilities. The next directives I want to talk about go along with our allow users in a lot of groups, but they are also not in our configuration file by default. To deny users and deny groups specify a list of user names or groups that are explicitly denied access via SSH. In conclusion. The sshd_config file is a crucial element in configuring and securing SSH server connections. Understanding the significance of its key fields allow administrators to tailor SSH access and security to meet their specific needs. Stay tuned for the next lesson where I will show you how to modify the server to listen on a nonstandard port and permit root access over SSH. Thanks for watching.