首先先说一下iptables是什么东西,可以简单把它理解成一个软件防火墙,一个访问控制列表,规定好哪个端口可以进来东西,哪个端口可以送出东西。

那如果不配置iptables或者iptables配置出错会出现什么呢?

其实在软件开发阶段貌似不会遇到什么问题,如果你是在单机上做开发的话,因为在单机开发网络应用的时候都会用127.0.0.1或者localhost,这俩环回地址是不会被真正送出的,只是本地测试用的。就像去ping 127.0.0.1或者localhost时只要tcp/ip协议没有问题又可以连通,和插没插网线,连没连无线,ip设置有没有问题,都是没有关系的。

然后在多台电脑上做测试的时候问题就暴露出来了,ip最起码也是192.168这类的内部地址吧,这个时候当送出请求或者监听请求时就会去检查iptables,如果有问题的话就不会被接收或者送出了。

好了,以上都是科普,下面开始为自己写备忘了。

配置文件 /etc/sysconfig/iptables

注意到有这样一句:

-A INPUT -m state --state NEW -m tcp -p tcp --dport  -j ACCEPT

这句配置的作用就是开放22号端口,包括接收和送出,然后就可以用ssh或者windows下的putty连接这台主机了

如果你需要其他配置,比如要在80端口起一个http服务器,就把上面这行复制一行,再把22改成80。

-A INPUT -m state --state NEW -m tcp -p tcp --dport  -j ACCEPT

如果我们需要开启某一范围内的,可以用 起始端口:结束端口 来修改端口区域就可以了,比如我将8000-10000端口用来常测试一些服务,就可以这样写

-A INPUT -m state --state NEW -m tcp -p tcp --dport : -j ACCEPT

这种标识范围的方式和python中的分片是很相似的,只不过这里两端都是闭区间,既包括8000也包括10000,同样如果想要2000以上的可以使用"2000:"标识,标识10000以下的端口号可以用":10000"标识

保存文件,然后 运行

service iptables restart

重启iptables服务,就可以了

以上最简单的设置方式到此结束,一不小心一科普就写了好多字额。

高大上的直接使用命令行设置的方式等自己熟练了,并且觉得有必要写下来的时候再继续写。

最新文章

  1. 配置Maven环境并创建简单的web项目步骤
  2. string类实现(C++)
  3. (转)C++中的static关键字的总结
  4. Cwinux源码解析(一)
  5. [转][ASP.NET MVC 小牛之路]12 - Section、Partial View 和 Child Action
  6. MySQL修改root密码的各种方法整理
  7. 重写NSLog,Debug模式下打印日志和当前行数
  8. C语言每日一题之No.4
  9. Android应用截图和SurfaceView截图问题总结
  10. 人体时钟hone hone clock
  11. socket编程实现HTTP请求
  12. 使用Spring框架的12个开源项目
  13. Prefix.pch的作用和用法
  14. 转:你真的懂得JS吗?
  15. javascript实现的可改变滚动方向的无缝滚动
  16. css垂直居中方法总结
  17. 机器学习之SVD分解
  18. postgresql安装与启动(mac os)
  19. ORM的多表查询详述
  20. Web API 入门 一

热门文章

  1. 一把剪刀看懂git reset 和它的三个参数
  2. 在Python中使用help帮助
  3. NOIP2013 表达式求值
  4. 设置通过Maven创建的工程的JDK的版本,更改conf/settings.xml
  5. pip 常用命令
  6. 设置mysql允许外部连接访问
  7. 【laravel】laravel class 里面定义以head开头的方法会报错
  8. leetcode-7-hashTable
  9. machine_desc
  10. eclipse使用技巧的网站收集——转载(二)