>  기사  >  운영 및 유지보수  >  Linux 서버 보안: 웹 인터페이스 보호 전략 최적화를 위한 전략.

Linux 서버 보안: 웹 인터페이스 보호 전략 최적화를 위한 전략.

WBOY
WBOY원래의
2023-09-08 10:13:571016검색

Linux 서버 보안: 웹 인터페이스 보호 전략 최적화를 위한 전략.

Linux 서버 보안: 웹 인터페이스 보호 전략 최적화 전략

인터넷의 급속한 발전으로 점점 더 많은 기업이 온라인으로 전환하고 있으며 웹 인터페이스의 보안도 서버 운영 및 유지 관리에 없어서는 안될 부분이 되었습니다. . 중요한 점이 무시되었습니다. Linux 서버에서는 웹 인터페이스를 보호하고 서버 보안을 보장하기 위해 일련의 전략을 채택할 수 있습니다. 이 기사에서는 웹 인터페이스 보호 전략의 최적화 조치에 대해 논의하고 해당 코드 예제를 제공합니다.

  1. 방화벽 설정

방화벽 구성은 웹 인터페이스의 보안을 보호하기 위한 첫 번째 방어선입니다. iptables 또는 Firewalld와 같은 도구를 사용하여 방화벽 규칙을 설정하고 웹 인터페이스에 대한 액세스를 제한할 수 있습니다. 다음은 기본 방화벽 설정의 예입니다.

# 清空现有规则
iptables -F

# 默认策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# 允许本地回环接口
iptables -A INPUT -i lo -j ACCEPT

# 允许已建立的和相关的连接
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

# 开放22端口(SSH)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# 开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

# 开放443端口(HTTPS)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# 其他的一些规则...

# 允许ping请求
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

# 不明来源的数据包丢弃
iptables -A INPUT -m state --state INVALID -j DROP

# 加上这条规则,可以防止Ping攻击
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 4 -j ACCEPT

# 其他的一些规则...

# 最后添加一条默认DROP规则
iptables -A INPUT -j DROP

위 예에서는 먼저 기존 규칙을 지운 다음 기본 정책을 DROP으로 설정하여 명시적으로 허용되지 않은 모든 연결을 거부합니다. 다음으로 로컬 루프백 인터페이스와 설정 및 연관된 연결을 허용합니다. 그런 다음 SSH(포트 22), HTTP(포트 80) 및 HTTPS(포트 443)를 엽니다.

필요한 경우 특정 IP 주소에 대한 접근을 제한하는 등 실제 상황에 따라 다른 규칙을 추가할 수 있습니다.

  1. HTTPS 암호화 전송

웹 인터페이스에서 데이터 전송의 보안을 보장하려면 HTTPS를 사용하여 전송된 데이터를 암호화해야 합니다. Apache 기반 웹 서버의 경우 mod_ssl 모듈을 사용하여 HTTPS를 구성할 수 있습니다. 다음은 간단한 예입니다.

# 安装mod_ssl
sudo yum install mod_ssl

# 设置SSL证书
sudo mkdir /etc/httpd/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/server.key -out /etc/httpd/ssl/server.crt

# 编辑Apache配置文件
sudo vi /etc/httpd/conf/httpd.conf

# 在适当的位置添加以下内容
<VirtualHost *:443>
    ServerName example.com
    DocumentRoot /var/www/html
    
    SSLEngine on
    SSLCertificateFile /etc/httpd/ssl/server.crt
    SSLCertificateKeyFile /etc/httpd/ssl/server.key
</VirtualHost>

# 重启Apache
sudo systemctl restart httpd

위의 예에서는 먼저 mod_ssl 모듈을 설치한 다음 자체 서명된 SSL 인증서를 생성하고 인증서 경로를 Apache 구성 파일에 구성했습니다.

  1. 액세스 제어 정책

방화벽 및 HTTPS 암호화 외에도 액세스 제어 정책을 통해 웹 인터페이스를 보호할 수도 있습니다. IP 주소를 기반으로 하는 액세스 제어 목록(ACL)을 사용하여 웹 인터페이스에 대한 액세스를 제한할 수 있습니다. 다음은 ACL의 예입니다.

# 编辑Apache配置文件
sudo vi /etc/httpd/conf/httpd.conf

# 在适当的位置添加以下内容
<Location />
    Order deny,allow
    Deny from all
    Allow from 192.168.1.0/24
    Allow from 10.0.0.0/8
</Location>

# 重启Apache
sudo systemctl restart httpd

위 예에서는 Order, Deny 및 Allow 지침을 사용하여 웹 인터페이스에 대한 액세스를 제한했습니다. 두 네트워크 세그먼트 192.168.1.0/24 및 10.0.0.0/8의 요청만 허용됩니다.

위는 웹 인터페이스 보호 전략을 최적화하기 위한 몇 가지 전략과 코드 예제입니다. 물론, 웹 인터페이스의 보안을 향상시키기 위해 Linux 서버에 적용할 수 있는 다른 보안 조치와 기술도 많이 있습니다. 서버의 안전한 운영을 보장하기 위해서는 실제 상황과 요구 사항에 따라 해당 전략을 선택하고 구성해야 합니다.

참조:

  • Linux 방화벽 설정: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/security_guide/sec-configuring_packet_filtering
  • Apache HTTPS 구성: https://httpd . apache.org/docs/2.4/ssl/ssl_howto.html
  • Apache 액세스 제어 목록(ACL): https://httpd.apache.org/docs/2.4/mod/mod_access_compat.html

위 내용은 Linux 서버 보안: 웹 인터페이스 보호 전략 최적화를 위한 전략.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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