Working With OpenSSH Server Configuration Files
To configure specific OpenSSH settings, edit the global configuration files in the
/etc/ssh directory. Examples of files in this directory might include
the following:
-
moduliContains key-exchange information that's used to set up a secure connection.
-
ssh_configContains default client configuration settings that can be overridden by the settings in a user’s
$HOME/.ssh/configfile. -
ssh_host_ed25519_keyContains the ed25519 private key for SSH2. Generated by default in Oracle Linux 10.
-
ssh_host_ed25519_key.pubContains the ed25519 public key for SSH2. Generated by default in Oracle Linux 10.
-
ssh_host_rsa_keyContains the RSA private key for SSH2.
-
ssh_host_rsa_key.pubContains the RSA public key for SSH2.
-
sshd_configContains configuration settings for the
sshdservice.Note:
For Oracle Linux 8 or later, files saved in the
/etc/ssh/sshd_config.ddirectory override any settings defined in the/etc/ssh/sshd_configconfiguration file.
You can configure other files in the /etc/ssh directory. For details, see the sshd(8) manual page.
For more information, see the ssh_config(5), sshd(8), and
sshd_config(5) manual pages.
Restricting Access to SSH Connections
The Secure Shell (SSH) provides protected, encrypted communications with other systems.
Because SSH is an entry point into the system, disable SSH if it isn't required. Optionally,
you can edit the /etc/ssh/sshd_config file to restrict its use.
Important:
After applying changes to the configuration file, you must restart the
sshd service for the changes to take effect.
Restrict Root Access
Set PermitRootLogin to no to prohibit root
from logging in with SSH. Then, elevate a user's privileges after logging in.
PermitRootLogin noRestrict Specific Users
You can restrict remote access to certain users and groups by specifying the
AllowUsers, AllowGroups, DenyUsers, and
DenyGroups settings, for example:
DenyUsers carol dan
AllowUsers alice bobFor more information about configuring users and groups, you can visit one of the following links:
Set a Timeout Period
The ClientAliveInterval and ClientAliveCountMax settings
cause the SSH client to time out automatically after a period of inactivity, for example:
# Disconnect client after 300 seconds of inactivity
ClientAliveCountMax 0
ClientAliveInterval 300Disable Password Authentication
The PasswordAuthentication and PubkeyAuthentication
settings define the method of authentication the SSH client implements for users: either with
a password or with an SSH public key. If you have configured key based authentication, which
is more secure, you can disable PasswordAuthentication by setting it to
no. To check the current PasswordAuthentication setting
on a server, run the following command:
sudo grep -R PasswordAuthentication /etc/sshFor more information, see the sshd_config(5) manual page.