inux下最直接限制ip访问的方式有两种:

1.使用hosts.allow和hosts.deny来设置ip白名单和黑名单,/etc/目录下.

优先级为先检查hosts.deny,再检查hosts.allow,
后者设定可越过前者限制,
例如:
1.限制所有的ssh,
除非从216.64.87.0 - 127上来。
hosts.deny:
in.sshd:ALL
hosts.allow:
in.sshd:216.64.87.0/255.255.255.128 2.封掉216.64.87.0 - 127的telnet
hosts.deny
in.sshd:216.64.87.0/255.255.255.128 3.限制所有人的TCP连接,除非从216.64.87.0 - 127访问
hosts.deny
ALL:ALL
hosts.allow
ALL:216.64.87.0/255.255.255.128 4.限制216.64.87.0 - 127对所有服务的访问
hosts.deny
ALL:216.64.87.0/255.255.255.128 其中冒号前面是TCP daemon的服务进程名称,通常系统
进程在/etc/inetd.conf中指定,比如in.ftpd,in.telnetd,in.sshd 其中IP地址范围的写法有若干中,主要的三种是:
1.网络地址--子网掩码方式:
216.64.87.0/255.255.255.0
2.网络地址方式(我自己这样叫,呵呵)
216.64.(即以216.64打头的IP地址)
3.缩略子网掩码方式,既数一数二进制子网掩码前面有多少个“1”比如:
216.64.87.0/255.255.255.0 -- 216.64.87.0/24 设置好后,要重新启动
# /etc/rc.d/init.d/xinetd restart
# /etc/rc.d/init.d/network restart

2.使用iptables命令

单个IP的命令是
iptables -I INPUT -s 81.241.219.171 -j DROP 封IP段的命令是
iptables -I INPUT -s 97.47.225.0/16 -j DROP
iptables -I INPUT -s 97.47.225.0/16 -j DROP
iptables -I INPUT -s 97.47.225.0/16 -j DROP 封整个段的命令是
iptables -I INPUT -s 97.47.225.0/8 -j DROP 封几个段的命令是
iptables -I INPUT -s 97.47.225.0/24 -j DROP
iptables -I INPUT -s 97.47.225.0/24 -j DROP 服务器启动自运行
有三个方法:
1、把它加到/etc/rc.local中
2、vi /etc/sysconfig/iptables可以把你当前的iptables规则放到/etc/sysconfig/iptables中,系统启动iptables时自动执行。
3、service iptables save 也可以把你当前的iptables规则放/etc/sysconfig/iptables中,系统启动iptables时自动执行。
后两种更好些,一般iptables服务会在network服务之前启来,更安全 解封:
iptables -L INPUT
iptables -L --line-numbers 然后iptables -D INPUT 序号 iptables 限制ip访问
通过iptables限制9889端口的访问(只允许192.168.1.100、192.168.1.101、192.168.1.102),其他ip都禁止访问
iptables -I INPUT -p tcp --dport 9889 -j DROP
iptables -I INPUT -s 192.168.1.100 -p tcp --dport 9889 -j ACCEPT
iptables -I INPUT -s 192.168.1.101 -p tcp --dport 9889 -j ACCEPT
iptables -I INPUT -s 192.168.1.102 -p tcp --dport 9889 -j ACCEPT
  1. 优先级为先检查hosts.deny,再检查hosts.allow,
  2. 后者设定可越过前者限制,
  3. 例如:
  4. 1.限制所有的ssh,
  5. 除非从216.64.87.0 - 127上来。
  6. hosts.deny:
  7. in.sshd:ALL
  8. hosts.allow:
  9. in.sshd:216.64.87.0/255.255.255.128
  10. 2.封掉216.64.87.0 - 127的telnet
  11. hosts.deny
  12. in.sshd:216.64.87.0/255.255.255.128
  13. 3.限制所有人的TCP连接,除非从216.64.87.0 - 127访问
  14. hosts.deny
  15. ALL:ALL
  16. hosts.allow
  17. ALL:216.64.87.0/255.255.255.128
  18. 4.限制216.64.87.0 - 127对所有服务的访问
  19. hosts.deny
  20. ALL:216.64.87.0/255.255.255.128
  21. 其中冒号前面是TCP daemon的服务进程名称,通常系统
  22. 进程在/etc/inetd.conf中指定,比如in.ftpd,in.telnetd,in.sshd
  23. 其中IP地址范围的写法有若干中,主要的三种是:
  24. 1.网络地址--子网掩码方式:
  25. 216.64.87.0/255.255.255.0
  26. 2.网络地址方式(我自己这样叫,呵呵)
  27. 216.64.(即以216.64打头的IP地址)
  28. 3.缩略子网掩码方式,既数一数二进制子网掩码前面有多少个“1”比如:
  29. 216.64.87.0/255.255.255.0 -- 216.64.87.0/24
  30. 设置好后,要重新启动
  31. # /etc/rc.d/init.d/xinetd restart
  32. # /etc/rc.d/init.d/network restart

最新文章

  1. Ext.grid.Panel表格分页存储过程
  2. 0. CMMI快乐之旅——内容简介及目录
  3. HTML <!DOCTYPE> 标签 布局引用的几种方法 行级元素与块级元素
  4. Delphi 7 里没有加载的控件
  5. Hex-Rays decompiler type definitions and convenience macros
  6. UVa 1636 (概率) Headshot
  7. 实现JavaScript的组成----BOM和DOM
  8. 【python】由一个小例子看出python的灵活性,IF ELSE一例
  9. 福建省队集训被虐记——DAY2
  10. PHP的面向对象 — 封装、继承、多态
  11. Docker常见仓库MySQL
  12. Android开发指南--0 总览
  13. SSRS2008中控件ID冲突问题
  14. SOFA 源码分析 — 自定义线程池原理
  15. 论AOP面向切面编程思想
  16. JIRA API 对接
  17. Linux - 系统信息相关命令
  18. js引用值传递改变问题(使用深拷贝)
  19. Linux vi/vim命令高效助记图
  20. mysql多列索引和最左前缀

热门文章

  1. apache camel 条件路由
  2. Spark(十)Spark之数据倾斜调优
  3. Linux mint 17.3系统安装及常用开发办公软件部署
  4. 使用setsid替代nohup
  5. Codeforces Round #441 (Div. 2, by Moscow Team Olympiad) F. High Cry(思维 统计)
  6. redis 主要数据类型及使用
  7. 同步VDP时间
  8. github下载项目
  9. 【BZOJ 2721】 2721: [Violet 5]樱花 (筛)
  10. Mistakes(Updating)