Maison  >  Article  >  Opération et maintenance  >  Améliorez la sécurité du serveur Linux à l'aide d'outils de ligne de commande

Améliorez la sécurité du serveur Linux à l'aide d'outils de ligne de commande

WBOY
WBOYoriginal
2023-09-08 16:54:25698parcourir

Améliorez la sécurité du serveur Linux à laide doutils de ligne de commande

Utilisez des outils de ligne de commande pour améliorer la sécurité des serveurs Linux

Résumé : Avec le développement d'Internet, les problèmes de sécurité des serveurs Linux ont reçu de plus en plus d'attention. Cet article présentera certains outils de ligne de commande couramment utilisés pour aider les administrateurs à améliorer la sécurité des serveurs Linux. Dans le même temps, nous fournirons également des exemples de code pour chaque outil afin que les lecteurs puissent mieux les comprendre et les appliquer dans des situations réelles.

Introduction :
Avec la popularité d'Internet et le développement de la technologie, les serveurs Linux sont devenus le système de choix pour de nombreuses entreprises et particuliers. Cependant, dans le même temps, les problèmes de sécurité des serveurs sont devenus de plus en plus importants. Les attaques de piratage, les exploits de vulnérabilité et les fuites de données constituent tous des menaces importantes pour les serveurs. Afin de protéger les serveurs et les données, les administrateurs doivent prendre certaines mesures pour améliorer la sécurité des serveurs Linux.

1. Définir correctement une politique de mot de passe
Une politique de mot de passe sécurisée est cruciale pour la sécurité du serveur. Nous pouvons utiliser des outils de ligne de commande pour définir des politiques de mot de passe, notamment la longueur du mot de passe, les exigences de complexité et les dates d'expiration.

1.1 Définir la longueur du mot de passe :
À l'aide de l'outil de ligne de commande passwd, nous pouvons modifier le champ PASS_MIN_LEN dans le /etc/login.defs fichier pour définir la longueur minimale du mot de passe. Voici un exemple de script : passwd,我们可以修改/etc/login.defs文件中的PASS_MIN_LEN字段来设置密码最小长度。下面是一个示例脚本:

#!/bin/bash
sed -i 's/^PASS_MIN_LEN.*$/PASS_MIN_LEN 8/' /etc/login.defs

1.2 设置密码复杂度:
使用命令行工具pam_pwquality,我们可以修改/etc/security/pwquality.conf文件中的参数来设置密码的复杂度要求。以下是一个示例脚本:

#!/bin/bash
sed -i 's/^minlen.*$/minlen=8/' /etc/security/pwquality.conf
sed -i 's/^dcredit.*$/dcredit=-1/' /etc/security/pwquality.conf
sed -i 's/^ucredit.*$/ucredit=-1/' /etc/security/pwquality.conf
sed -i 's/^ocredit.*$/ocredit=-1/' /etc/security/pwquality.conf
sed -i 's/^lcredit.*$/lcredit=-1/' /etc/security/pwquality.conf

1.3 设置密码有效期限:
使用命令行工具chage,我们可以查看和修改用户的密码有效期。下面是一个示例脚本:

#!/bin/bash
# 查看用户的密码有效期
chage -l username
# 修改用户的密码有效期为30天
chage -M 30 username

二、限制用户远程登录
为了降低服务器被入侵的风险,我们可以限制用户的远程登录权限。具体而言,我们可以使用命令行工具sshd来配置/etc/ssh/sshd_config文件,限制用户的SSH登录。

2.1 禁止root远程登录:
通过修改/etc/ssh/sshd_config文件,将PermitRootLogin字段的值改为no。以下是一个示例脚本:

#!/bin/bash
sed -i 's/^PermitRootLogin.*$/PermitRootLogin no/' /etc/ssh/sshd_config

2.2 限制SSH登录的IP范围:
通过修改/etc/ssh/sshd_config文件,使用AllowUsers字段限制允许SSH登录的IP范围。以下是一个示例脚本:

#!/bin/bash
echo "AllowUsers 192.168.1.0/24" >> /etc/ssh/sshd_config

三、使用防火墙保护服务器
防火墙是保护服务器安全的重要组成部分,我们可以使用命令行工具iptables来配置防火墙规则。

3.1 关闭不必要的端口:
使用iptables命令来关闭服务器上不必要的端口,为服务器提供更好的保护。以下是一个示例脚本:

#!/bin/bash
# 关闭80端口
iptables -A INPUT -p tcp --dport 80 -j DROP

3.2 设置ALLOW/DENY规则:
使用iptables

#!/bin/bash
# 允许192.168.1.100访问80端口
iptables -A INPUT -s 192.168.1.100 -p tcp --dport 80 -j ACCEPT
# 拒绝192.168.1.200访问22端口
iptables -A INPUT -s 192.168.1.200 -p tcp --dport 22 -j DROP

1.2 Définir la complexité du mot de passe :

À l'aide de l'outil de ligne de commande pam_pwquality, nous pouvons modifier les paramètres du fichier /etc/security/pwquality.conf pour définir les exigences en matière de complexité des mots de passe. Voici un exemple de script :
rrreee

1.3 Définir la période de validité du mot de passe :

À l'aide de l'outil de ligne de commande chage, nous pouvons afficher et modifier la période de validité du mot de passe de l'utilisateur. Voici un exemple de script :
rrreee

2. Restreindre la connexion à distance des utilisateurs 🎜 Afin de réduire le risque d'intrusion du serveur, nous pouvons restreindre les autorisations de connexion à distance des utilisateurs. Plus précisément, nous pouvons utiliser l'outil de ligne de commande sshd pour configurer le fichier /etc/ssh/sshd_config afin de restreindre la connexion SSH des utilisateurs. 🎜🎜2.1 Désactiver la connexion à distance root : 🎜En modifiant le fichier /etc/ssh/sshd_config, changez la valeur du champ PermitRootLogin en no . Voici un exemple de script : 🎜rrreee🎜2.2 Limiter la plage IP pour la connexion SSH : 🎜En modifiant le fichier /etc/ssh/sshd_config, utilisez le champ Autoriser les utilisateurs pour limiter la plage IP autorisée des connexions SSH. Voici un exemple de script : 🎜rrreee🎜 3. Utilisez un pare-feu pour protéger le serveur 🎜 Le pare-feu est un élément important de la protection de la sécurité du serveur. Nous pouvons utiliser l'outil de ligne de commande iptables pour configurer les règles de pare-feu. 🎜🎜3.1 Fermez les ports inutiles : 🎜Utilisez la commande iptables pour fermer les ports inutiles sur le serveur afin d'offrir une meilleure protection au serveur. Voici un exemple de script : 🎜rrreee🎜3.2 Définir les règles ALLOW/DENY : 🎜Utilisez la commande iptables pour définir les règles ALLOW/DENY afin d'autoriser ou de refuser l'accès à des adresses IP ou à des plages d'adresses IP spécifiques. Voici un exemple de script : 🎜rrreee🎜Conclusion : 🎜Cet article présente plusieurs outils de ligne de commande couramment utilisés pour aider les administrateurs à améliorer la sécurité des serveurs Linux. En définissant des politiques de mot de passe, en empêchant les utilisateurs de se connecter à distance et en utilisant des pare-feu, nous pouvons protéger efficacement les serveurs contre les risques d'attaques et de fuites de données. J'espère que les lecteurs pourront maîtriser ces outils et les appliquer dans la pratique pour améliorer la sécurité des serveurs. 🎜🎜Références : 🎜Aucune🎜

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