Skip to content

Instantly share code, notes, and snippets.

@sensoria-pro
Created February 25, 2024 17:19
Show Gist options
  • Select an option

  • Save sensoria-pro/3c6a67f2690d34acdf18712cc4040672 to your computer and use it in GitHub Desktop.

Select an option

Save sensoria-pro/3c6a67f2690d34acdf18712cc4040672 to your computer and use it in GitHub Desktop.

Revisions

  1. sensoria-pro created this gist Feb 25, 2024.
    114 changes: 114 additions & 0 deletions SSH daemon configuration
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,114 @@
    # This is the sshd server system-wide configuration file. See
    # sshd_config(5) for more information.

    # This sshd was compiled with PATH=/usr/local/bin:/usr/bin:/bin:/usr/games

    # The strategy used for options in the default sshd_config shipped with
    # OpenSSH is to specify options with their default value where
    # possible, but leave them commented. Uncommented options override the
    # default value.

    Include /etc/ssh/sshd_config.d/*.conf

    Port 22
    #AddressFamily any
    #ListenAddress 0.0.0.0
    #ListenAddress ::

    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_ecdsa_key
    HostKey /etc/ssh/ssh_host_ed25519_key

    # Ciphers and keying
    #RekeyLimit default none

    # Logging
    SyslogFacility AUTH
    LogLevel INFO

    # Authentication:

    LoginGraceTime 2m
    PermitRootLogin no
    StrictModes yes
    #MaxAuthTries 6
    #MaxSessions 10

    PubkeyAuthentication yes

    # Expect .ssh/authorized_keys2 to be disregarded by default in future.
    AuthorizedKeysFile .ssh/authorized_keys

    #AuthorizedPrincipalsFile none

    #AuthorizedKeysCommand none
    #AuthorizedKeysCommandUser nobody

    # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
    HostbasedAuthentication no
    # Change to yes if you don't trust ~/.ssh/known_hosts for
    # HostbasedAuthentication
    #IgnoreUserKnownHosts no
    # Don't read the user's ~/.rhosts and ~/.shosts files
    IgnoreRhosts yes

    # To disable tunneled clear text passwords, change to no here!
    PasswordAuthentication no
    PermitEmptyPasswords no

    # Change to yes to enable challenge-response passwords (beware issues with
    # some PAM modules and threads)

    ChallengeResponseAuthentication no

    # Set this to 'yes' to enable PAM authentication, account processing,
    # and session processing. If this is enabled, PAM authentication will
    # be allowed through the KbdInteractiveAuthentication and
    # PasswordAuthentication. Depending on your PAM configuration,
    # PAM authentication via KbdInteractiveAuthentication may bypass
    # the setting of "PermitRootLogin prohibit-password".
    # If you just want the PAM account and session checks to run without
    # PAM authentication, then enable this but set PasswordAuthentication
    # and KbdInteractiveAuthentication to 'no'.
    UsePAM yes

    AllowAgentForwarding no
    #AllowTcpForwarding yes
    #GatewayPorts no
    X11Forwarding no
    X11DisplayOffset 10
    #X11UseLocalhost yes
    #PermitTTY yes
    PrintMotd no
    PrintLastLog yes
    TCPKeepAlive yes
    #PermitUserEnvironment no
    #Compression delayed
    ClientAliveInterval 3600
    ClientAliveCountMax 3
    UseDNS no
    #PidFile /run/sshd.pid
    MaxStartups 10:30:100
    #PermitTunnel no
    #ChrootDirectory none
    #VersionAddendum none

    # no default banner path
    #Banner none

    # Allow client to pass locale environment variables
    AcceptEnv LANG LC_*

    # override default of no subsystems
    Subsystem sftp internal-sftp

    # Example of overriding settings on a per-user basis
    #Match User anoncvs
    # X11Forwarding no
    # AllowTcpForwarding no
    # PermitTTY no
    # ForceCommand cvs server

    # Specifies whether to remove an existing Unix-domain socket file for
    # local or remote port forwarding before creating a new one.
    StreamLocalBindUnlink no