Durcissement des serveurs Linux : utiliser des outils de ligne de commande pour améliorer la sécurité
Présentation :
Dans l'environnement réseau actuel, la sécurité des serveurs est cruciale. Pour protéger votre serveur contre les attaques malveillantes et les accès non autorisés, renforcer votre serveur Linux à l'aide d'outils de ligne de commande est une étape nécessaire. Cet article présentera certains outils de ligne de commande couramment utilisés, ainsi que leurs méthodes d'utilisation et des exemples de codes pour vous aider à améliorer la sécurité de votre serveur.
Transmission cryptée SSH :
SSH (Secure Shell) est un protocole réseau crypté utilisé pour la connexion à distance et l'exécution de commandes. En utilisant SSH, il est possible d'empêcher les utilisateurs malveillants d'intercepter et d'écouter les données en transit. Voici un exemple de code pour générer et utiliser une paire de clés en utilisant SSH :
Générez une paire de clés SSH :
ssh-keygen -t rsa -b 4096
Copiez la clé publique sur le serveur distant :
ssh-copy-id 用户名@IP地址
Désactivez la connexion par mot de passe (facultatif) :
sudo vi /etc/ssh/sshd_config
Trouvez la ligne #PasswordAuthentication yes
, remplacez-la par PasswordAuthentication no
, puis enregistrez et quittez. #PasswordAuthentication yes
这一行,将其改为PasswordAuthentication no
,然后保存并退出。
重新启动SSH服务:
sudo systemctl restart sshd
防火墙设置:
防火墙是一种网络安全设备,用于监控和控制网络上的数据流。使用防火墙可以限制服务器上的入站和出站流量,提供对恶意攻击的保护。以下是使用iptables
sudo apt-get install iptables
Un pare-feu est un dispositif de sécurité réseau utilisé pour surveiller et contrôler le flux de données sur un réseau. Utilisez un pare-feu pour limiter le trafic entrant et sortant sur votre serveur, offrant ainsi une protection contre les attaques malveillantes. Voici un exemple de code pour configurer des règles de pare-feu à l'aide de la commande iptables
:
Installez iptables :
sudo touch /etc/iptables.rules sudo vi /etc/iptables.rules
Créez un nouveau fichier de règles de pare-feu :
*filter # 默认策略 :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] # 允许本地回环接口的访问 -A INPUT -i lo -j ACCEPT # 允许已经建立的、相关的连接进入 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 允许SSH连接 -A INPUT -p tcp --dport 22 -j ACCEPT # 允许其他必要的端口 # -A INPUT -p tcp --dport 80 -j ACCEPT # -A INPUT -p tcp --dport 443 -j ACCEPT # 允许ICMP (Ping)请求 -A INPUT -p icmp --icmp-type echo-request -j ACCEPT # 允许限制的IP地址范围 -A INPUT -s 允许连接的IP地址/子网掩码 -j ACCEPT # 允许某个IP地址范围的访问 # -A INPUT -s 允许连接的IP地址/子网掩码 -j ACCEPT # 拒绝所有其他入站流量 -A INPUT -j DROP COMMIT
Ajoutez les règles suivantes dans le fichier :
sudo iptables-restore < /etc/iptables.rules sudo touch /etc/network/if-pre-up.d/iptables sudo chmod +x /etc/network/if-pre-up.d/iptables sudo vi /etc/network/if-pre-up.d/iptables
Chargez les règles du pare-feu et configurez le démarrage :
#!/bin/sh /sbin/iptables-restore < /etc/iptables.rules
Ajoutez ce qui suit au fichier :
sudo reboot
sudo tail -f /var/log/syslog
La journalisation et la surveillance des journaux sont des éléments importants de la sécurité du serveur. En examinant régulièrement les journaux du serveur, des activités inhabituelles peuvent être découvertes et prises en compte. Voici un exemple de code utilisant des outils de journalisation et de surveillance courants :
Afficher les journaux système :
sudo tail -f /var/log/auth.log
Afficher les journaux des utilisateurs autorisés :
sudo apt-get install nethogs sudo nethogs
Surveiller les connexions réseau :
sudo apt-get install htop sudo htop
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!