NixOS must implement DOD-approved encryption to protect the confidentiality of remote access sessions.
Severity | Group ID | Group Title | Version | Rule ID | Date | STIG Version |
|---|---|---|---|---|---|---|
| high | V-268089 | SRG-OS-000033-GPOS-00014 | ANIX-00-000150 | SV-268089r1130978_rule | 2025-08-19 | 1 |
Description
Without confidentiality protection mechanisms, unauthorized individuals may gain access to sensitive information via a remote access session.
Remote access is access to DOD nonpublic information systems by an authorized user (or an information system) communicating through an external, nonorganization-controlled network. Remote access methods include, for example, dial-up, broadband, and wireless.
Encryption provides a means to secure the remote connection to prevent unauthorized access to the data traversing the remote access connection (e.g., RDP), thereby providing a degree of confidentiality. The encryption strength of a mechanism is selected based on the security categorization of the information.
Satisfies: SRG-OS-000033-GPOS-00014, SRG-OS-000250-GPOS-00093, SRG-OS-000394-GPOS-00174
ℹ️ Check
Verify NixOS is configured to only use ciphers employing FIPS 140-3 approved algorithms with the following command:
$ grep Ciphers /etc/ssh/sshd_config
Ciphers aes256-ctr,aes192-ctr,aes128-ctr
If the cipher entries in the "sshd_config" file have any ciphers other than "aes256-ctr,aes192-ctr,aes128-ctr", the order differs from the example above, or they are missing or commented out, this is a finding.
✔️ Fix
Configure NixOS to use only ciphers employing FIPS 140-3 approved algorithms.
To configure OpenSSH, add the following Nix code to the NixOS Configuration, usually located in /etc/nixos/configuration.nix or /etc/nixos/flake.nix:
services.openssh.setting.Ciphers = [
"aes256-ctr"
"aes192-ctr"
"aes128-ctr"
];
Rebuild and switch to the new NixOS configuration:
$ sudo nixos-rebuild switch