> 시스템 튜토리얼 > 리눅스 > 위협 및 공격에 대한 Linux 서버를 강화합니다

위협 및 공격에 대한 Linux 서버를 강화합니다

尊渡假赌尊渡假赌尊渡假赌
풀어 주다: 2025-03-05 09:23:13
원래의
788명이 탐색했습니다.

Hardening Linux Servers Against Threats and Attacks

강화 된 Linux 서버 보안 : 모범 사례 가이드 Linux 서버는 신뢰성과 보안으로 잘 알려져 있으며 엔터프라이즈 및 개인 배포에서 널리 사용됩니다. 그러나 어떤 시스템도 공격에 완전히 면역이되지 않습니다. 사이버 위협이 계속 발전함에 따라 서버 관리자는 시스템을 취약성과 공격으로부터 보호하기 위해 사전 조치를 취해야합니다. 이 안내서는 다양한 강화 기술과 모범 사례를 탐구하여 모든 종류의 위협으로부터 보호하는 강력한 Linux 환경을 조성합니다.

위협 환경 이해 특정 조치를 탐구하기 전에 다음을 포함하여 Linux 서버가 직면 할 수있는 위협 유형을 이해해야합니다.

무차별 인력 공격 :

가능한 모든 암호 조합을 체계적으로 시도하여 무단 액세스 권한을 얻습니다.

Rootkit 및 Malware : 맬웨어는 서버 리소스에 액세스 할 수있는 권한없이 얻을 수 있습니다. 서비스 DOS (Denforcement of Service) 공격 : 서버 리소스를 과부하 시키므로 서비스를 사용할 수 없습니다.

제로 데이 취약점 :

시스템에서 알려지지 않았거나 배치되지 않은 취약점을 악용합니다.

    이러한 잠재적 위협을 이해하는 것은 효과적인 보안 전략을 구축하는 첫 번째 단계입니다.
  • 사용자 및 액세스 컨트롤 서버 보안의 가장 중요한 측면 중 하나는 사용자 액세스를 효과적으로 관리하는 것입니다. 서버에 액세스 할 수있는 사람과 서버에 액세스 할 수있는 방법을 제한하는 것이 중요하며 위험을 줄일 수 있습니다.
  • 사용자 관리 및 권한 분리
  • 직접 루트 권한 사용을 피하십시오. root 사용자를 직접 사용하면 서버가 공격에 더 취약 해집니다. 대신, 관리 작업을 수행하기 위해 Sudo 권한이있는 새 사용자를 만듭니다.
  • 최소 권한의 원칙 구현 :
  • 특정 작업을 완료하는 데 필요한 필요한 권한 만 할당하여 사용자가 필요없는 민감한 영역에 액세스하지 못하게합니다. 정기적으로 사용자 계정을 확인하십시오.
  • 잠재적 인 공격자 입력 지점을 피하기 위해 구식 또는 비활성 계정을 삭제하십시오.
  • SSH 보강
ssh에 대한 루트 로그인 비활성화 : 파일을 수정하고 를 설정하여 루트 로그인을 금지합니다.

키 기반 인증 활성화 :

공공-민간 키 쌍을 설정하여 비밀번호 기반 SSH 인증을 피하십시오. 이로 인해 무차별 공격의 위험이 줄어 듭니다.

IP로 SSH 액세스를 제한하십시오 : 방화벽 규칙을 구성하거나 TCP 래퍼를 사용하여 특정 IP 주소에 대한 SSH 액세스를 제한합니다.

다중 인증 (MFA)

    SSH 용 MFA 설정 :
  • Google Authenticator 또는 Duo Security와 같은 도구를 사용하여 MFA를 사용하여 추가 보안 계층을 인증 프로세스에 추가하십시오. 구성 : 휴대 전화에 MFA 응용 프로그램을 설치 한 다음 서버에서 구성한 다음 파일을 설정하여 SSH 용 MFA를 시행합니다.
  • 안전 시스템 구성 시스템 업데이트 및 패치 관리 /etc/pam.d/sshd 자동 업데이트 활성화 :
  • 패키지 관리자를 구성하여 보안 패치를 자동으로 설치하십시오. 이것은 Debian System 또는 Centos/Rhel을 기반으로
와 같은 도구를 사용하여 수행 할 수 있습니다.

취약점을 정기적으로 점검하십시오. Lynis 또는 OpenVas와 같은 취약성 스캐너를 사용하여 현재 구성의 약점을 식별하십시오.

커널 보안 설정

sysctl 경화 :

sysctl을 사용하여 보안을 향상시키기 위해 커널 매개 변수를 수정하십시오. 예를 들면 :
    IP 전달 비활성화 :
  • ICMP 방지 (PING) 요청 : unattended-upgrades 보안 모듈 사용 : yum-cron> Linux는 민감한 영역에 대한 고급 액세스 제어를 제공하는 Grsecurity (Harden 커널) 또는 Selinux와 같은 추가 모듈을 지원합니다.

  • 네트워크 구성
  • 사용하지 않은 포트 및 서비스 비활성화 :
모든 불필요한 포트를 닫고 원치 않는 서비스를 실행하는 서버를 비활성화하십시오. 열린 포트를 점검하려면 또는

를 사용하십시오. 방화벽 구성 : 엄격한 인바운드 및 아웃 바운드 트래픽 규칙을 정의하기 위해 iptables 또는 Firewalld를 설정합니다. 기본적으로 기본 서비스 만 허용되며 다른 모든 서비스가 차단됩니다.

    고급 인증 및 인증 메커니즘
  • 역할 기반 액세스 제어 (RBAC)
      rbac 사용 : rbac를 사용하면 특정 권한으로 역할을 정의하고 이러한 역할에 사용자를 할당하여 과도한 권한을 최소화 할 수 있습니다.
    • Sudo 및 사용자 그룹을 사용하여 RBAC를 구현하십시오. Sudo 명령을 사용하여 어떤 사용자가 어떤 명령을 실행할 수 있는지 제어하십시오. 또한 유사한 역할을 가진 사용자는 권한을 중심으로 관리하기 위해 그룹화됩니다. net.ipv4.ip_forward = 0
    • Selinux 및 AppArmor를 사용하는
    • net.ipv4.icmp_echo_ignore_all = 1 selinux :
    • 보안 정책을 구현하여 애플리케이션이 시스템과 상호 작용하는 방식을 제한합니다. 승인되지 않은 액세스 또는 프로그램을 필요한 기능으로 제한하도록 Selinux 정책을 구성하십시오.
    Apparmor :
  • Selinux와 유사하게 AppArmor는 응용 프로그램을 지정된 리소스 세트로 제한하여 정의 된 정책 이외의 자원에 액세스하려는 시도를 방지합니다.
  • 응용 프로그램 및 데이터베이스 보안 웹 응용 프로그램을 보호
    apache/nginx :
  • 민감한 디렉토리에 대한 제한 권한을 설정하고 기본적으로 HTTPS를 활성화합니다. 취약성을 방지하기 위해 서버 소프트웨어를 정기적으로 업데이트하십시오. WAF (Web Application Firewall) : Modsecurity와 같은 WAF를 사용하여 HTTP 요청을 필터링하고 모니터링하여 웹 애플리케이션에 보안 계층을 추가하십시오.
  • 데이터베이스 강화
  • 데이터베이스 액세스 제한 :
  • 데이터베이스에 액세스 할 수있는 IP 주소를 신뢰할 수있는 호스트로 제한하십시오. 인터넷에서 데이터베이스에 액세스 할 수있는 경우 특히 중요합니다.
민감한 데이터 암호화 :

데이터베이스 레벨 암호화를 사용하고 풀 디스크 암호화를 사용하여 휴식시 데이터를 보호하십시오. SQL 주입 보호 : 모든 입력을 확인하고 전처리 명세서를 사용하여 SQL 주입 공격을 방지합니다.

  • 감사, 모니터링 및 로깅 syslog 및 journald 를 사용하여 로깅을 설정하십시오
  • 로그 구성 :
  • 중요한 서비스 및 응용 프로그램에 대한 로깅 활성화. Syslog 또는 Journald를 사용하여 로그를 중앙 집중화하고 모니터링하십시오. 로그 회전 : 디스크 공간이 떨어지지 않도록 Logrotate를 관리 및 보관 로그로 구성하십시오.
  • 실시간 모니터링 도구 사용

실패 2BAN : 로그를 모니터링하고 지정된 로그인 시도 후에 로그를 금지시켜 무차별 적 공격을 방지하는 데 도움이됩니다. 침입 탐지 도구 :

Tripwire 및 OSSEC와 같은 도구는 파일의 무단 변경 또는 비정상적인 활동을 감지 할 수 있습니다.

감사에 감사를 사용하십시오

감사 규칙 설정 :
    auditd 구성에 민감한 파일 및 디렉토리에 대한 액세스를 모니터링하십시오. 감사 규칙은 로그인 시도, 파일 수정 및 기타 중요한 이벤트를 추적 할 수 있습니다.
  • 정기 검토 : 정기 검토를 예약하여 로그를 확인하고 의심스러운 패턴이나 이상을 분석하십시오.
  • 데이터 보호 및 암호화 휴식시 데이터를 암호화하고 Transit의 데이터
  • luks를 사용한 디스크 암호화 :
민감한 데이터의 경우 전체 디스크 암호화에 luks를 사용하는 것을 고려하십시오. 저장 장치가 제거되거나 도난당한 경우 데이터에 대한 액세스를 방지합니다.

tls transit에서의 데이터 : 전송 중에 데이터를 암호화하도록 모든 웹 서버의 HTTPS를 시행합니다. 또한 모든 데이터베이스 연결에 TLS를 사용하여 전송중인 데이터를 보호하십시오. 파일 무결성 모니터링

    무결성 검사를 위해 보좌관 사용 :
  • 고급 침입 탐지 환경 (AIDE)은 파일 수정, 삭제 또는 추가를 감지하는 도구입니다. 무단 변경 사항이 감지되면 매일 스캔하고 경고를 보내도록 보좌관을 구성하십시오.
  • 즉각적인 응답 및 백업 전략
  • 계획 사고 응답
  • 사고 대응 계획 개발 : 보안 사고를 감지, 포함 및 복원하기위한 개요 개요. 역할, 책임 및 커뮤니케이션 계약을 포함하여. SIEM (Security Information and Event Management) :
  • 실시간 이벤트 협회를위한 SIEM 도구 구현을 고려하여 빠른 탐지 및 응답에 도움이됩니다.
  • 자동화 된 백업 및 복구
백업 주파수 :

RSYNC 및 CRON과 같은 도구를 사용하여 일반 자동 백업을 구성합니다. 오프 사이트 또는 클라우드 스토리지를 포함한 여러 위치에 백업을 저장하십시오. 테스트 복구 프로세스 :

위반 또는 데이터 손실시 데이터를 복원 할 수 있도록 백업 복구 프로세스를 정기적으로 테스트하십시오.
  • 결론 Linux 서버 보호하려면 사용자 관리, 시스템 구성, 응용 프로그램 경화 및 신뢰할 수있는 사고 응답 정책을 포함한 다층 접근 방식이 필요합니다. 이 안내서에서 논의 된 관행을 구현하면 오늘날의 복잡한 위협 환경을 처리 할 수있는 강력한 Linux 서버가 있습니다. 보안을 유지하는 것은 경계, 정기적 인 업데이트 및 사전 모니터링이 필요한 지속적인 프로세스입니다.

위 내용은 위협 및 공격에 대한 Linux 서버를 강화합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿