La sécurité est un sujet d'intérêt permanent pour les administrateurs système. Et la sécurisation de nouveaux systèmes représente toujours un défi car il n'y a pas vraiment de normes établies pour le faire. Je tire la liste des mesures et contrôles de sécurité de cet article à partir de diverses sources, y compris l'expérience personnelle, les DISA STIG et les recommandations d'autres administrateurs système et responsables de la sécurité. Bien que ces mesures de sécurité soient bonnes, elles ne sont qu'un premier pas vers une meilleure sécurité du système. Ces huit commandes système ne sont pas classées par ordre d'importance particulier.
Clés SSH
Configurez l'authentification sans mot de passe à l'aide de paires de clés SSH. Consultez l'article de Susan Lauber pour obtenir des instructions :SSH sans mot de passe utilisant des paires de clés publiques-privées. Les mots de passe ne sont pas une bonne mesure de sécurité, peu importe leur longueur ou leur complexité. À l'aide de paires de clés SSH et d'un seul jump box, vous pouvez établir un haut niveau d'accès sécurisé à vos systèmes.
Authentification SSH
Une fois que vous avez configuré les paires de clés SSH pour l'authentification, vous devez configurer SSHD
pour les accepter pour la connexion à distance. Le /etc/ssh/sshd_config
le fichier est l'emplacement central pour sécuriser SSHD
sur vos systèmes. Les options notables à vérifier et à modifier sont :
Paramètre d'origine | Remplacer par |
---|---|
#PermitRootLogin oui | Numéro de connexion racine autorisée |
#PubkeyAuthentication oui | PubkeyAuthentication oui |
#PermitEmptyPasswords non | PermitEmptyPasswords non |
Authentification par mot de passe oui | PasswordAuthentication non |
Vous devez redémarrer SSHD
après avoir apporté des modifications au fichier de configuration afin que vos modifications prennent effet.
Mots de passe NULL
Vérifiez que tous les comptes utilisent un mot de passe pour l'authentification. N'autorisez aucun compte à avoir un mot de passe nul ou vide. La configuration de paires de clés est une bonne défense contre les mots de passe nuls. Supprimez toutes les instances de l'option "nullok" dans /etc/pam.d/system-auth
et /etc/pam.d/password-auth
pour empêcher les connexions avec des mots de passe vides.
Supprimer les services non sécurisés
Pour mieux sécuriser vos systèmes, supprimez tous les services non sécurisés (ceux qui envoient des mots de passe en clair sur le réseau ou ceux qui autorisent les connexions anonymes (non authentifiées)). Supprimez les packages suivants :
- ypserv
- rsh-server
- vsftpd*
- serveur telnet
- serveur TFTP
Les transferts de fichiers et la connectivité interactive entre les systèmes doivent être effectués à l'aide de SSH
. Il n'y a pas besoin de rsh-server
, vsftpd
, et telnet-server
. Vous devez remplacer LDAP ou Active Directory par ypserv
(NIS/NIS+). Comme pour tftp-server
, si vous devez l'utiliser, dédiez-lui un système ou une machine virtuelle et installez-le dans un chroot
prison pour une meilleure sécurité.
*Tant que vsftpd
chiffre les communications, cette fonction est mieux gérée par SSH/SFTP/SCP
.
Désactiver l'authentification basée sur l'hôte
Supprimez toutes les instances d'authentification basée sur l'hôte sous la forme de .shosts
et shosts.equiv
des dossiers. L'authentification basée sur l'hôte est insuffisante pour empêcher l'accès non autorisé à un système, car elle ne nécessite pas d'identification et d'authentification interactives d'une demande de connexion, ou pour l'utilisation de l'authentification multifacteur.
Version SNMP et nom de communauté
Utilisez SNMP version 3.x pour l'authentification des utilisateurs et le cryptage des messages. Changez la chaîne de communauté par défaut de public
ou private
à une autre valeur de chaîne.
Transfert X11
Assurez-vous que si vous utilisez le protocole X sur votre réseau, il est sécurisé par SSL. Modifiez le /etc/ssh/sshd_config
et définissez le paramètre X11Forwarding comme suit :
X11Forwarding yes
Si le paramètre existe mais est commenté avec un #
en tête , puis supprimez le #
et redémarrez SSHD.
Sécuriser GNOME
Si vous utilisez GNOME sur vos systèmes de serveur, sécurisez-le avec les paramètres suivants dans /etc/gdm/custom.conf
dossier. Ajoutez ou modifiez la ligne pour AutomaticLoginEnable
paramètre dans le [daemon]
section du custom.conf
file à false, comme indiqué ci-dessous.
[daemon]
AutomaticLoginEnable=false
Et ajoutez ou modifiez la ligne pour le TimedLoginEnable
paramètre dans le [daemon]
section du /etc/gdm/custom.conf
file à false, comme indiqué ci-dessous.
[daemon]
TimedLoginEnable=false
Certains conseillers en sécurité avertissent à nouveau en utilisant des interfaces utilisateur graphiques (GUI) sur les systèmes de serveur en raison de logiciels malveillants qui les ciblent.
[ Améliorez encore la sécurité de votre système avec un logiciel antimalware :3 solutions antimalware pour les systèmes Linux ]
Récapitulez
Bien que sa sécurité de type Unix soit très bonne, Linux n'est pas sûr à 100 % après une installation. Et la sécurité à 100 % n'existe pas, mais vous pouvez définir certains contrôles et effectuer certaines tâches de base pour mieux sécuriser un système. Je suis en train de vous apporter d'autres articles comme celui-ci qui sont axés sur la sécurité du système.
[ Vous voulez en savoir plus sur la sécurité ? Consultez la liste de vérification de la sécurité informatique et de la conformité. ]