Maison  >  Article  >  Opération et maintenance  >  Un voyage en ligne de commande pour améliorer la sécurité du serveur Linux

Un voyage en ligne de commande pour améliorer la sécurité du serveur Linux

王林
王林original
2023-09-08 17:55:411079parcourir

Un voyage en ligne de commande pour améliorer la sécurité du serveur Linux

Parcours en ligne de commande pour améliorer la sécurité du serveur Linux

Dans l'environnement réseau actuel, protéger la sécurité du serveur est crucial. Le système d'exploitation Linux fournit de nombreux outils et commandes puissants qui peuvent nous aider à améliorer la sécurité du serveur. Cet article vous emmènera dans un voyage passionnant en ligne de commande et apprendra comment utiliser ces commandes pour renforcer votre serveur Linux.

  1. Mettre à jour le système et les logiciels

Tout d'abord, assurez-vous que votre système Linux et les logiciels installés sont tous à jour. La mise à jour des systèmes et des logiciels peut aider à corriger les vulnérabilités de sécurité connues et à offrir une meilleure sécurité. Mettez à jour le système et les logiciels à l'aide de la commande suivante :

sudo apt update
sudo apt upgrade
  1. Renforcer l'accès SSH

SSH est un outil courant pour la gestion à distance des serveurs Linux, mais c'est aussi l'un des principaux points d'entrée pour les attaquants. Pour renforcer l'accès SSH, vous pouvez prendre les mesures suivantes :

2.1. Désactivez la connexion au compte root

Le compte root est le compte le plus privilégié, et les attaquants tentent généralement de deviner son mot de passe pour mener des attaques. La désactivation de la connexion au compte root peut réduire la surface d'attaque. Dans le fichier /etc/ssh/sshd_config, recherchez le paramètre PermitRootLogin et définissez-le sur no : /etc/ssh/sshd_config文件中,找到PermitRootLogin参数,并将其设置为no

PermitRootLogin no

保存并退出文件,然后重新启动SSH服务:

sudo service ssh restart

2.2. 使用SSH密钥登录

使用SSH密钥进行身份验证可以更加安全,因为它比密码更难以被破解。生成SSH密钥对的方法如下:

ssh-keygen -t rsa -b 4096

按照提示生成密钥对。然后将公钥添加到服务器上的~/.ssh/authorized_keys文件中。将私钥保存在本地,并确保权限设置为600或更高。

接下来,您可以修改/etc/ssh/sshd_config文件来强制使用SSH密钥进行登录:

PasswordAuthentication no

保存并退出文件,然后重新启动SSH服务。

  1. 防火墙设置

防火墙是保护服务器的重要工具。使用iptables命令可以配置防火墙规则。以下是一些常用的命令示例:

3.1. 屏蔽指定IP地址

如果您希望屏蔽特定的IP地址,可以使用以下命令:

iptables -A INPUT -s 192.168.1.100 -j DROP

3.2. 允许特定端口访问

如果只允许特定的端口访问服务器,可以使用以下命令:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

以上命令将允许SSH和HTTP的访问。确保您根据实际需求修改端口号。

3.3. 阻止所有非指定端口访问

如果您只允许特定的端口访问服务器,可以使用以下命令:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP

以上命令将允许SSH的访问,并且阻止所有其他端口的访问。

  1. 定时备份

定时备份服务器的数据和配置文件是一项重要的安全措施。您可以使用crontab命令来设置定时备份任务。以下是一个例子:

打开终端并输入:

crontab -e

在打开的文件中添加以下行来设置每天定时备份:

0 2 * * * rsync -avz /var/www /path/to/backup

以上命令将在每天凌晨2点备份/var/www目录到指定的路径。

  1. 安全加固其他服务

除了SSH外,您还需确保其他服务的安全性。例如,您可以使用以下命令来加固Apache Web服务器:

5.1. 禁用目录浏览

/etc/apache2/apache2.conf文件中找到以下行,并确保其前面没有注释符号(#):

Options -Indexes

5.2. 隐藏服务器版本信息

在同一个文件中,找到以下行并将其设置为Off

ServerTokens Prod

Enregistrez et quittez le fichier, Redémarrez ensuite le service SSH :

rrreee

2.2. Connectez-vous à l'aide d'une clé SSH

L'utilisation d'une clé SSH pour l'authentification peut être plus sécurisée car elle est plus difficile à déchiffrer qu'un mot de passe. La méthode pour générer une paire de clés SSH est la suivante :

rrreee

Suivez les invites pour générer une paire de clés. Ajoutez ensuite la clé publique au fichier ~/.ssh/authorized_keys sur le serveur. Enregistrez la clé privée localement et assurez-vous que les autorisations sont définies sur 600 ou plus.

Ensuite, vous pouvez modifier le fichier /etc/ssh/sshd_config pour forcer l'utilisation des clés SSH pour la connexion : 🎜rrreee🎜Enregistrez et quittez le fichier, puis redémarrez le service SSH. 🎜
    🎜Paramètres du pare-feu🎜🎜🎜Le pare-feu est un outil important pour protéger votre serveur. Les règles de pare-feu peuvent être configurées à l'aide de la commande iptables. Voici quelques exemples de commandes couramment utilisées : 🎜🎜3.1. Bloquer l'adresse IP spécifiée 🎜🎜 Si vous souhaitez bloquer une adresse IP spécifique, vous pouvez utiliser la commande suivante : 🎜rrreee 🎜Autoriser l'accès à un port spécifique 🎜🎜 Si vous le souhaitez uniquement. autoriser l'accès à un port spécifique du serveur, vous pouvez utiliser la commande suivante : 🎜rrreee🎜La commande ci-dessus autorisera l'accès SSH et HTTP. Assurez-vous de modifier le numéro de port en fonction de vos besoins réels. 🎜🎜3.3. Bloquer tous les accès aux ports non spécifiés🎜🎜Si vous autorisez uniquement des ports spécifiques à accéder au serveur, vous pouvez utiliser la commande suivante : 🎜rrreee🎜La commande ci-dessus autorisera l'accès SSH et bloquera l'accès à tous les autres ports. 🎜
      🎜Sauvegarde régulière🎜🎜🎜La sauvegarde régulière des données du serveur et des fichiers de configuration est une mesure de sécurité importante. Vous pouvez utiliser la commande crontab pour configurer des tâches de sauvegarde planifiées. Voici un exemple : 🎜🎜Ouvrez le terminal et saisissez : 🎜rrreee🎜Ajoutez la ligne suivante dans le fichier ouvert pour configurer une sauvegarde planifiée quotidienne : 🎜rrreee🎜La commande ci-dessus sauvegardera le répertoire /var/www dans le chemin spécifié à 2 heures du matin tous les jours. 🎜
        🎜Renforcement de la sécurité des autres services🎜🎜🎜En plus de SSH, vous devez également assurer la sécurité des autres services. Par exemple, vous pouvez utiliser la commande suivante pour renforcer le serveur Web Apache : 🎜🎜5.1 Désactiver la navigation dans les répertoires 🎜🎜 Recherchez la ligne suivante dans le fichier /etc/apache2/apache2.conf et assurez-vous que il n'y a aucun commentaire avant Symbole (#) : 🎜rrreee🎜5.2. Masquer les informations sur la version du serveur 🎜🎜Dans le même fichier, recherchez la ligne suivante et réglez-la sur Off : 🎜rrreee🎜Enregistrez et quittez. le fichier et redémarrez le service Apache. 🎜🎜Ce ne sont là que quelques façons d'améliorer la sécurité du serveur. En utilisant ces commandes et mesures, vous pouvez améliorer la sécurité de votre serveur Linux et réduire le risque d'attaques. N'oubliez pas que la sécurité de votre serveur est une tâche continue qui nécessite des examens réguliers fréquents et des mesures mises à jour. 🎜🎜Les exemples de ligne de commande fournis dans cet article ne sont que des connaissances de base. Si vous souhaitez renforcer davantage la sécurité de votre serveur, il est recommandé d'en apprendre davantage sur les technologies associées et les mesures de sécurité plus avancées. 🎜🎜 Souhaitons que votre serveur Linux soit en sécurité et sans souci ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn