Linux服务器之IPTABLES开启80端口
来源:互联网 发布:淘宝内容营销评价 编辑:程序博客网 时间:2024/06/05 16:25
在服务器部署不同的程序时,总会遇到各种各样的问题,其中本文介绍的iptables开放80端口也是在服务器部署常见的问题之一。常见情况有以下两种:
情况一:在linux服务器部署好web运行环境和程序时,却发现访问被拒绝,http请求无响应。
情况二:在做本地服务器的环境,发现网站localhost能正常访问,用ip访问就访问不了,常使用CentOS的朋友,可能会遇到这样的问题。开启了防火墙导致80端口无法访问。
情况一:面对第一种情况,可以通过下面步骤完成iptables 开启80端口:
确认是否linux的iptables限制了访问
输入命令service iptables status,查看防火墙工作状态。如果是开启的,输入service iptables stop关闭防火墙,此时在电脑中上访问程序url。如果能打开网站,则说明问题就是iptables限制引起的。通常web的url是默认端口(即80端口),而iptables没有放行80端口。所
以需要允许此端口通过防火墙,当然也可以是其它端口,根据需要来配置。
解决方法:
方法一、关闭iptables(不推荐);
方法二、修改iptables配置文件,添加访问规则:
(1)、打开文件:vi /etc/sysconfig/iptables
(2)、添加规则(放行80端口):-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
(3)、保存退出:按esc,:wq!
(4)、重启防火墙,使规则生效:service iptables restart
此时就可以访问网站了,当然你可以输入命令service iptables status看到此时多了条规则:
ACCEPT tcp — 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80
情况二:CentOS的是Linux的家族的一个分支。
原因:CentOS的防火墙在虚拟机的CENTOS装好APACHE不能用。
解决方法:
/ sbin / iptables -I INPUT -p tcp -dport 80 -j ACCEPT
/ sbin / iptables -I INPUT -p tcp -dport 22 -j ACCEPT
然后保存:
/etc/rc.d/init.d/iptables save
centos 5.3,5.4以上的版本需要用
iptables保存
来实现保存到配置文件。
这样重启计算机后,CentOS防火墙默认已经开放了80和22端口。
这里应该也可以不重启计算机:
/etc/init.d/iptables重启
CentOS的防火墙的关闭,关闭其服务即可:
查看CentOS防火墙信息:/etc/init.d/iptables状态
关闭CentOS防火墙服务:/etc/init.d/iptables停止
永久关闭不知道怎么个永久法?
chkconfig -level 35 iptables关闭
上面的内容是针对老版本的centos,下面的内容是基于新版本
iptables -P INPUT DROP
这样就拒绝所有访问CentOS 5.3本系统数据,除了链RH-Firewall-1-INPUT的规则外。
用命令配置了iptables一定还要服务iptables保存才能保存到配置文件。
cat / etc / sysconfig / iptables可以查看防火墙iptables配置文件内容
#生成的iptables-save v1.3.5在Sat Apr 14 07:51:07 2001
* filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1513:149055]
:RH-Firewall- 1-INPUT – [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp -m icmp -icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p esp -j ACCEPT
-A RH-Firewall-1-INPUT -p ah -j ACCEPT
-A RH-Firewall-1-INPUT -d 224.0.0.251 -p udp -m udp -dport 5353 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp -dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp -dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state -state相关,ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state -state NEW -mcp-port 22 -j ACCEPT
-A RH -Firewall-1-INPUT -j REJECT -reject-with icmp-host-prohibited
COMMIT
#完成于Sat Apr 14 07:51:07 2001
补充:
CentOS防火墙配置80端口
看了好几个页面内容都有错,下面是正确方法:
#/ sbin / iptables -I INPUT -p tcp -dport 80 -j ACCEPT
#/ sbin / iptables -I INPUT -p tcp -dport 22 -j ACCEPT
然后保存:
#/ etc / rc.d / init.d / iptables保存
再查看是否已经有了:
[root @ vcentos〜]#/etc/init.d/iptables status
表:filter
chain INPUT(policy ACCEPT)
num target prot opt source destination
1 ACCEPT udp – 0.0.0.0/0 0.0.0.0 / 0 udp dpt:80
2 ACCEPT tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
3 RH-Firewall-1-INPUT all – 0.0.0.0/0 0.0.0.0/0
Chain FORWARD(policy ACCEPT)
num target prot opt source destination
1 RH-Firewall-1-INPUT all – 0.0.0.0/0 0.0.0.0/0
*设置iptables为自动启动
chkconfig -level 2345 iptables on
可能因为大家使用的版本不一,所有使用方法也略有不同。
如果需要远程管理的MySQL,则使用以下指令临时打开,用完后关闭
*打开指令
iptables -A INPUT -p tcp -s xxx.xxx.xxx.xxx -dport 3306 -j ACCEPT
*关闭指令
iptables -D INPUT -p tcp -s xxx.xxx.xxx.xxx -dport 3306 -j ACCEPT
文章转载https://www.trustauth.cn/wiki/22549.html
- Linux服务器之IPTABLES开启80端口
- Linux iptables开启80端口
- iptables 开启80端口
- iptables 开启80端口
- iptables 开启80端口
- iptables 开启80端口
- linux下如何修改iptables开启80端口
- linux开启端口命令 iptables 打开 查看
- linux开启端口命令 iptables 打开 查看
- centos iptables开启端口
- iptables 开启指定端口
- 配置防火墙,开启80端口、3306端口 & iptables 使用详解
- 关闭或开启Linux上的iptables防火墙,SSH端口
- RHEL iptables防火墙开启端口
- linux如何开启80端口
- [Linux]CentOS开启80端口
- linux防火墙开启80端口
- centos linux防火墙添加80端口iptables
- Docker-2.为什么要用Docker
- 3.1-3 为什么“算法A的运行时间至少是O(n^2)”这一表述是无意义的
- 用java语言写一个栈
- C++数据结构:二叉树(二)——二叉树的遍历
- Akka-使用Akka编写RPC通信
- Linux服务器之IPTABLES开启80端口
- 升级到Android Studio 3.0遇到的几个错误
- Java学习第一天
- ST17H26之读ID卡注意事项
- 图像特征提取三大法宝:HOG特征,LBP特征,Haar特征
- 设计模式--装饰者模式
- 使用VS Code做前端
- Java内存模型二
- HBase基础操作过程记录