Ceci est une ancienne révision du document !
Table des matières
Secure Shell Daemon (sshd)
Présentation
sshd est un daemon qui permet d'accéder à une machine distante en mode terminal et de transférer des fichiers.
Installation
root@mazarini:~# apt-get install openssh-server
Configuration /etc/ssh/sshd_config
Configuration initiale
# Package generated configuration file # See the sshd_config(5) manpage for details # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: #ListenAddress 0.0.0.0 Protocol 2 # HostKeys for protocol version 2 HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_ecdsa_key HostKey /etc/ssh/ssh_host_ed25519_key #Privilege Separation is turned on for security UsePrivilegeSeparation yes # Lifetime and size of ephemeral version 1 server key KeyRegenerationInterval 3600 ServerKeyBits 1024 # Logging SyslogFacility AUTH LogLevel INFO # Authentication: LoginGraceTime 120 PermitRootLogin without-password StrictModes yes RSAAuthentication yes PubkeyAuthentication yes #AuthorizedKeysFile %h/.ssh/authorized_keys # Don't read the user's ~/.rhosts and ~/.shosts files IgnoreRhosts yes # For this to work you will also need host keys in /etc/ssh_known_hosts RhostsRSAAuthentication no # similar for protocol version 2 HostbasedAuthentication no # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication #IgnoreUserKnownHosts yes # To enable empty passwords, change to yes (NOT RECOMMENDED) PermitEmptyPasswords no # Change to yes to enable challenge-response passwords (beware issues with # some PAM modules and threads) ChallengeResponseAuthentication no # Change to no to disable tunnelled clear text passwords #PasswordAuthentication yes # Kerberos options #KerberosAuthentication no #KerberosGetAFSToken no #KerberosOrLocalPasswd yes #KerberosTicketCleanup yes # GSSAPI options #GSSAPIAuthentication no #GSSAPICleanupCredentials yes X11Forwarding yes X11DisplayOffset 10 PrintMotd no PrintLastLog yes TCPKeepAlive yes #UseLogin no #MaxStartups 10:30:60 #Banner /etc/issue.net # Allow client to pass locale environment variables AcceptEnv LANG LC_* Subsystem sftp /usr/lib/openssh/sftp-server # Set this to 'yes' to enable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication and # PasswordAuthentication. Depending on your PAM configuration, # PAM authentication via ChallengeResponseAuthentication may bypass # the setting of "PermitRootLogin without-password". # If you just want the PAM account and session checks to run without # PAM authentication, then enable this but set PasswordAuthentication # and ChallengeResponseAuthentication to 'no'. UsePAM yes
Choix du port
Habituellement ssh utilise le port 22. Pour des raisons de sécurité, certains préconisent de changer de port pour compliquer la tâche des pirates. A mon avis, ce n'est pas nécessaire. Un simple outil de scan permet de retrouver le port sur lequel écoute le daemon sshd.
Un pirate débutant se heurtera de toutes façons à une machine à jour et paramétrée correctement. Un pirate confirmé… et bien je croise les doigts, mais ce n'est pas le changement de port qui le gênera.
Eventuellement, en cas de découverte d'une faille, le changement de port peut permettre de gagner du temps avant la mise à jour du système.
J'ai choisi de garder le port 22.
Commandes
Gestion du daemon
root@mazarini:~# /etc/init.d/ssh stop root@mazarini:~# /etc/init.d/ssh start root@mazarini:~# /etc/init.d/ssh restart