苹果还是安卓?2025年惊人结果揭晓

在Linux系统中,指定IP访问是提升服务器安全性的重要手段,可防止未授权访问、抵御网络攻击,并精确控制服务访问权限,以下是三种主流实现方法,根据实际需求选择:


使用iptables防火墙(推荐)

原理:通过内核级防火墙规则过滤流量,支持端口级控制。
适用场景:全局网络访问控制(如SSH、Web服务)。
操作步骤

  1. 允许特定IP访问SSH(22端口)

    sudo iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 22 -j DROP  # 禁止其他IP访问
  2. 允许IP段访问Web服务(80端口)

    sudo iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j ACCEPT
  3. 保存规则(避免重启失效)

    sudo iptables-save > /etc/iptables/rules.v4  # Debian/Ubuntu
    sudo service iptables save                  # CentOS/RHEL

验证命令sudo iptables -L -n -v
注意:错误配置可能导致无法远程连接,建议先在本地测试。


通过TCP Wrappers(hosts.allow/hosts.deny)

原理:基于服务的轻量级访问控制,依赖libwrap库(如sshd, vsftpd)。
适用场景:支持TCP Wrappers的服务。
操作步骤

  1. 编辑配置文件

    sudo nano /etc/hosts.deny

    添加:

    ALL: ALL  # 默认拒绝所有访问
  2. 添加允许的IP

    sudo nano /etc/hosts.allow

    按需添加规则:

    sshd: 192.168.1.100      # 允许单个IP访问SSH
    vsftpd: 192.168.1.0/24   # 允许IP段访问FTP

生效方式:规则实时生效,无需重启服务。
验证:尝试从非授权IP访问服务(如ssh user@服务器IP)。


服务自身配置(以Nginx/SSH为例)

Nginx指定IP访问

sudo nano /etc/nginx/sites-available/default

server段添加:

location / {
    allow 192.168.1.100;
    allow 10.0.0.0/8;
    deny all;  # 拒绝其他IP
}

重启服务:sudo systemctl restart nginx

SSH服务指定IP

sudo nano /etc/ssh/sshd_config

添加:

AllowUsers *@192.168.1.100   # 仅允许该IP登录AllowGroups admin@192.168.1.0/24

重启服务:sudo systemctl restart sshd


注意事项

  1. 优先级问题
    • iptables规则自上而下匹配,首条匹配规则生效。
    • TCP Wrappers中hosts.allow优先级高于hosts.deny
  2. 备份配置
    修改前备份文件(如cp /etc/iptables/rules.v4 ~/backup/)。
  3. 多级防护
    重要服务建议组合使用iptables+服务配置(如Nginx+iptables)。
  4. IPv6支持
    iptables需用ip6tables,TCP Wrappers支持IPv6地址格式(如[2001:db8::1])。

常见问题解决

  • 误封自己IP:通过本地控制台删除规则或使用IP白名单工具临时解锁。
  • 服务不生效
    • 检查服务是否支持TCP Wrappers:ldd /usr/sbin/sshd | grep libwrap
    • 确认iptables未禁用(systemctl status iptables)。
  • 规则冲突:使用iptables -L --line-numbers查看规则顺序,必要时调整。

引用说明参考Linux官方文档(iptables、TCP Wrappers)及Nginx/OpenSSH配置手册,确保方法可靠性,实际部署请结合系统版本测试(如CentOS 7+或Ubuntu 20.04+)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8902.html

(0)
酷番叔酷番叔
上一篇 2025年7月27日 17:30
下一篇 2025年7月27日 17:53

相关推荐

  • Linux系统中,如何查看网络端口占用情况及对应的占用进程?

    在Linux系统中,查看网络端口占用情况是系统管理和故障排查中的核心技能,无论是服务启动失败、端口冲突还是安全审计,都需要准确掌握端口的使用状态,本文将详细介绍Linux中查看网络端口占用的三大主流命令——netstat、ss和lsof,通过具体示例和对比分析,帮助用户在不同场景下高效完成端口查询任务,使用ne……

    2025年8月22日
    14800
  • Linux如何退回主系统?

    Linux作为广泛使用的操作系统,常与虚拟机、双系统、远程连接等场景结合使用,用户在不同环境下可能需要“退回主系统”——即从当前Linux环境返回到默认的物理机操作系统、桌面环境或本地终端,本文将分场景详细说明具体操作方法,涵盖虚拟机、双系统、SSH连接及本地终端切换等常见场景,帮助用户高效、安全地完成系统切换……

    2025年9月9日
    15500
  • Linux系统如何新建用户组?详细操作步骤和命令是怎样的?

    在Linux系统中,用户组是管理用户权限和资源分配的重要机制,通过将用户划分到不同的组,可以简化对文件、目录等资源的访问控制权限设置,新建用户组是系统管理中的基础操作,本文将详细介绍在Linux系统中新建用户组的方法及相关注意事项,新建用户组主要使用groupadd命令,其基本语法为groupadd [选项……

    2025年9月27日
    12100
  • 如何\n让\n网站\n流量\n暴涨?

    方法1:使用 tr 命令(简单替换)tr(translate)是专用于字符替换的工具,适合基础场景:# 处理文件内容tr ' ' '\n' < input.txt > output.txt输出结果:applebananacherry特点:单行命令即可完成,适合快速处理……

    2025年6月15日
    18200
  • 香橙派写入 Linux 镜像详细指南

    香橙派(Orange Pi)是一款高性价比的单板计算机,广泛用于开发、教育和物联网项目,为它写入 Linux 系统镜像是入门的第一步,本指南将提供零基础也能操作的详细步骤,涵盖 Windows、macOS 和 Linux 系统,确保安全可靠,准备工作硬件清单:香橙派主板(如 Orange Pi 5、Zero 等……

    2025年6月14日
    18600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信