>  기사  >  운영 및 유지보수  >  Linux 서버 강화: 명령줄 도구를 사용하여 보안 향상

Linux 서버 강화: 명령줄 도구를 사용하여 보안 향상

PHPz
PHPz원래의
2023-09-09 09:30:111350검색

Linux 서버 강화: 명령줄 도구를 사용하여 보안 향상

Linux 서버 강화: 명령줄 도구를 사용하여 보안 강화

개요:
오늘날의 네트워크 환경에서는 서버 보안이 매우 중요합니다. 악의적인 공격과 무단 액세스로부터 서버를 보호하려면 명령줄 도구를 사용하여 Linux 서버를 강화하는 것이 필수 단계입니다. 이 문서에서는 서버 보안을 향상시키는 데 도움이 되는 몇 가지 일반적으로 사용되는 명령줄 도구와 사용 방법 및 샘플 코드를 소개합니다.

SSH 암호화 전송:
SSH(Secure Shell)는 원격 로그인 및 명령 실행에 사용되는 암호화된 네트워크 프로토콜입니다. SSH를 사용하면 악의적인 사용자가 전송 중인 데이터를 가로채거나 도청하는 것을 방지할 수 있습니다. 다음은 SSH를 사용하여 키 쌍을 생성하고 사용하는 샘플 코드입니다.

  1. SSH 키 쌍 생성:

    ssh-keygen -t rsa -b 4096
  2. 공개 키를 원격 서버에 복사:

    ssh-copy-id 用户名@IP地址
  3. 비밀번호 로그인 비활성화(선택 사항):

    sudo vi /etc/ssh/sshd_config

#PasswordAuthentication yes 줄을 찾아 PasswordAuthentication no로 변경한 다음 저장하고 종료하세요. #PasswordAuthentication yes这一行,将其改为PasswordAuthentication no,然后保存并退出。

  1. 重新启动SSH服务:

    sudo systemctl restart sshd

防火墙设置:
防火墙是一种网络安全设备,用于监控和控制网络上的数据流。使用防火墙可以限制服务器上的入站和出站流量,提供对恶意攻击的保护。以下是使用iptables

  1. SSH 서비스 다시 시작:

    sudo apt-get install iptables

  2. 방화벽 설정:

    방화벽은 네트워크의 데이터 흐름을 모니터링하고 제어하는 ​​데 사용되는 네트워크 보안 장치입니다. 방화벽을 사용하여 서버의 인바운드 및 아웃바운드 트래픽을 제한하여 악의적인 공격으로부터 보호합니다. 다음은 iptables 명령을 사용하여 방화벽 규칙을 설정하는 샘플 코드입니다.

iptables 설치:

sudo touch /etc/iptables.rules
sudo vi /etc/iptables.rules
  1. 새 방화벽 규칙 파일 만들기:

    *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

다음 규칙을 추가합니다. 파일에:

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
  1. 방화벽 규칙을 로드하고 시작을 설정합니다.

    #!/bin/sh
    /sbin/iptables-restore < /etc/iptables.rules

파일에 다음을 추가합니다.

sudo reboot

  1. 서버를 다시 시작하여 새 방화벽 규칙을 적용합니다.

    sudo tail -f /var/log/syslog

  2. 로그 및 모니터링:

    로그 로깅 및 모니터링은 서버 보안의 중요한 구성 요소입니다. 서버 로그를 정기적으로 검토하면 비정상적인 활동을 발견하고 조치를 취할 수 있습니다. 다음은 일반적인 로깅 및 모니터링 도구를 사용하는 샘플 코드입니다.

  3. 시스템 로그 보기:

    sudo tail -f /var/log/auth.log
  4. 승인된 사용자 로그 보기:

    sudo apt-get install nethogs
    sudo nethogs

네트워크 연결 모니터링:

sudo apt-get install htop
sudo htop

🎜🎜시스템 리소스 사용량 모니터링 상황: 🎜 rrreee🎜🎜🎜 요약: 🎜 위의 명령줄 도구와 샘플 코드를 사용하면 Linux 서버의 보안을 강화할 수 있습니다. SSH 키 쌍 생성 및 비밀번호 로그인 비활성화부터 방화벽 규칙 설정 및 서버 로그 모니터링에 이르기까지 이러한 단계는 악의적인 공격 및 무단 액세스로부터 서버를 보호하는 데 도움이 될 수 있습니다. 서버를 운영 및 유지관리할 때에는 정기적으로 서버 로그를 검토하고 시스템 리소스 사용량을 모니터링하여 서버의 보안과 안정성을 확보하시기 바랍니다. 🎜

위 내용은 Linux 서버 강화: 명령줄 도구를 사용하여 보안 향상의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.