Linux对外提供服务 网络连接 端口操作 1.开启服务监听端口 2.设置防火墙,放行访问端口的包 iptables&netfilter 四表五链和通堵策略

应用举例:
	Linux上安装Tomcat后,客户端要能够访问服务器上的Tomcat
操作:
	1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机)
	2.端口操作 1.开启服务监听端口 2.设置防火墙,放行访问该端口的数据包
关键iptables和netfilter:
	iptables中的四表五链和堵通策略

CentOS6.7端口操作最佳实践:
	查看iptables命令的帮助:
		iptables --help 不详细
		man iptables 一般详细 手册页
		info iptables 最详细

	1.查看当前包过滤规则
		示例:# service iptables status
	2.根据需求添加或删除相应的规则。配置文件或者指令
		示例:# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
	3.iptables指令修改规则,立即生效,但不会持久化,所以根据需要手动进行持久化操作
		示例:# service iptables save
	4.直接修改/etc/sysconfig/iptables文件,规则不会立即生效,通过重启iptables,使其生效。
		示例:# service iptables restart

1.网络操作:
	1.1 使用ifconfig查看虚拟机网络地址
		示例:# ifconfig
[[email protected] ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:71:C4:BB
          inet addr:192.168.211.130  Bcast:192.168.211.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe71:c4bb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:420 errors:0 dropped:0 overruns:0 frame:0
          TX packets:229 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:35784 (34.9 KiB)  TX bytes:28445 (27.7 KiB)
          Interrupt:19 Base address:0x2000 

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 b)  TX bytes:480 (480.0 b)

	1.2 在本地ping虚拟机网络地址,必须保证ping通
		示例:ping 192.168.211.130

本机与虚拟机
	网络不通:
C:\Users\jie>ping 192.168.211.130
正在 Ping 192.168.211.130 具有 32 字节的数据:
来自 192.168.211.1 的回复: 无法访问目标主机。

	网络联通:
C:\Users\jie>ping 192.168.211.130
正在 Ping 192.168.211.130 具有 32 字节的数据:
来自 192.168.211.130 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.211.130 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.211.130 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.211.130 的回复: 字节=32 时间<1ms TTL=64

192.168.211.130 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

2.端口操作:
	2.1.启动服务,监听某个端口
		查看某个端口是否已经被监听:(即相应的服务已经启动)
			示例:# netstat -ntlp
	2.2设置防火墙,放行访问这个端口的包

查看某个端口是否已经被监听:(即相应的服务已经启动)
[[email protected] ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      1588/rpcbind
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1835/sshd
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      1684/cupsd
tcp        0      0 127.0.0.1:6010              0.0.0.0:*                   LISTEN      2797/sshd
tcp        0      0 0.0.0.0:53754               0.0.0.0:*                   LISTEN      1645/rpc.statd
tcp        0      0 :::43942                    :::*                        LISTEN      1645/rpc.statd
tcp        0      0 :::3306                     :::*                        LISTEN      1976/mysqld
tcp        0      0 :::111                      :::*                        LISTEN      1588/rpcbind
tcp        0      0 :::22                       :::*                        LISTEN      1835/sshd
tcp        0      0 ::1:631                     :::*                        LISTEN      1684/cupsd
tcp        0      0 ::1:6010                    :::*                        LISTEN      2797/sshd 	

CentOS6.7中设置防火墙,放行访问端口的数据包:
	查看防火墙的包过滤规则:(正在生效)
		示例:# service iptables status
	查看包过滤规则文件:(不一定正在生效)
		示例:# cat /etc/sysconfig/iptables
	查看链中的规则:(正在生效)
		示例:# iptables -L

	注意:
		修改包过滤规则,必须重启iptables服务,使新的规则生效。
		链中规则有顺序,请把规则放首位。

	参数解释:
		通堵策略: ACCEPT接收 DROP丢弃 REJECT拒绝
		-I 插入规则
		-D 删除规则

		方式1:修改/etc/sysconfig/iptables文件
			步骤:
				1.为/etc/sysconfig/iptables文件添加一条规则
					示例:-A INPUT -p tcp -m state --state NEW -m tcp --dport 端口号 -j ACCEPT
					注意:规则有顺序,所以把规则添加到上面,而不是下面。

				2.重启iptables服务,新加规则才会生效
					示例:service iptables restart
		方式2:
			步骤:
				1.使用iptables动态添加规则
					添加接收访问某端口的包的规则
					示例:# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
					添加丢弃访问某端口的包的规则
					示例:# iptables -I INPUT -p tcp --dport=3306 -j DROP
					注意:立即生效,只对本次有效,规则不会添加到iptables文件,服务重启后失效

				2.将本次的规则保存到iptables文件中
					示例:# service iptables save		

		最佳实践:
			查看iptables命令的帮助:
				iptables --help 不详细
				man iptables 一般详细 手册页
				info iptables 最详细

			1.查看当前包过滤规则
				示例:# service iptables status
			2.根据需求添加或删除相应的规则。配置文件或者指令
				示例:# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
			3.iptables指令修改,立即生效,可能需要进行持久化操作
				示例:# service iptables save
			4.直接修改/etc/sysconfig/iptables文件,规则不会立即生效,通过重启iptables,使其生效。
				示例:# service iptables restart

关键iptables:
	iptables中的四表五链和堵通策略

直接修改/etc/sysconfig/iptables文件,添加开放端口的规则:
[[email protected] ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Mon May 27 22:42:05 2019
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [4:560]
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT
# Completed on Mon May 27 22:42:05 2019

重启iptables服务,让规则生效:
[[email protected] ~]# service iptables restart
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]

查看链中的规则:(链中规则有顺序,请把规则放首位)
[[email protected] ~]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

查看链中的规则:
[[email protected] ~]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:mysql
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

查看/etc/sysconfig/iptables文件:
[[email protected] ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Mon May 27 22:42:05 2019
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [4:560]
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

iptables命令动态添加规则:
	示例:# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

[[email protected] ~]# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
[[email protected] ~]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
2    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
3    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
6    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination 

将当前生效的规则保存到iptables文件:
[[email protected] ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

[[email protected] ~]# iptables -I INPUT -p tcp --dport=3306 -j DROP
[[email protected] ~]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
4    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
5    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
6    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
7    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

[[email protected] ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]
[[email protected] ~]# service iptables restart
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]
[[email protected] ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Tue May 28 18:23:29 2019
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [32:4416]
-A INPUT -p tcp -m tcp --dport 3306 -j DROP
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Tue May 28 18:23:29 2019

原文地址:https://www.cnblogs.com/mozq/p/10935830.html

时间: 2024-10-20 02:40:48

Linux对外提供服务 网络连接 端口操作 1.开启服务监听端口 2.设置防火墙,放行访问端口的包 iptables&netfilter 四表五链和通堵策略的相关文章

C# 网络连接中异常断线的处理:ReceiveTimeout, SendTimeout 及 KeepAliveValues(设置心跳)

C# 网络连接中异常断线的处理:ReceiveTimeout, SendTimeout 及 KeepAliveValues(设置心跳) 在使用 TcpClient 网络连接中常常会发生客户端连接异常断开, 服务端需要设置检测手段进行这种异常的处理: 1.对于短连接, 通过对 Socket 属性ReceiveTimeout 和 SendTimeout 设置适当的值, 当在进行读/写时超时, 则会产生 SocketException 异常, 通过检查这个异常并进行处理. 如下服务端连接处理代码示例:

linux防火墙放行了端口,但是仍然访问不到

我们的防火墙默认规则如下: 如果防火墙放行了端口,但是仍然访问不到的话,可能是因为添加规则的时候,用的是iptables -A 选项,这样,增加的规则会排列在 第6条 规则后面,虽然service iptables status显示放行了端口,但是实际上,由于第六条规则的原因,新增加的这条并没有起作用. 改为使用iptables -I 插入规则即可,将规则添加的 第6条 之前,就可以生效了.

Win10如何设置防火墙开放特定端口 windows10防火墙设置对特定端口开放的方法

Win10防火墙虽然能够很好地保护我们的系统,但同时也会因限制了某些端口,而给我们的操作带了一些不便.对于既想使用某些端口,又不愿关闭防火墙的用户而言,在Win10系统中设置防火墙开放特定端口就非常必要了.下面,小编就向大家分享具体方法. 操作步骤: 1.WIN+X调出系统配置菜单,选择控制面板: 2.选择windows 防火墙: 3.点击左侧的“高级设置”选项: 4.设置入站规则(入站规则:别人电脑访问自己电脑:出站规则:自己电脑访问别人电脑),点击“新建规则”,点选“端口”,单击 “下一步”

linux下数据库实例监听开机自启动设置

linux下数据库实例监听开机自启动设置 2016/5/16 zhanky 脚本介绍 在开始之前,我们先介绍一下几个会用到的脚本. oratab oratab文件是在创建数据库实例时建立的,在安装时使用root用户执行root.sh脚本后得到.(如果忘记也可以直接手动创建.) 在$ORACLE_HOME/bin目录下的$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut需要调用/etc/oratab文件,如果不存在,dbstart和dbshut将失败,

linux系统下网络连接不上的问题

centOS 6.5 问题:系统在虚拟机中安装完成之后,发现使用XShell无法连接 解决: 首先检查系统网络设置,修改系统网络配置文件:/etc下的网络配置文件为静态IP 发现依然连接不上,ifconfig显示没有网卡 后来检查发现是因为电脑有线和无线都连接上去了,而虚拟机设置的是自动桥接,推测可能是因为虚拟机不知道要桥接到哪块网卡 断开一个连接,重新设置静态IP,和windows主机在一个网段内,重启网络服务 XShell连接成功! Ubuntu 12.04 ubuntu有时也会出现网络连接

Linux网络相关、防火墙firewalld、netfilter 及iptable的五表五链、语法

一. Linux网络相关1?ifconfig 查看网卡的ip地址,(yum install net-tools)也可以用ip add-a 断网的情况下都可以查看2?ifdown /ifup 断开/连接 网卡.更改配置的时候,用来重启指定的网卡.如果是远程的机器不可以单独用,可以把它们连起来用:ifdown eth0 && ifup eth03?想多增加一个ip地址,增加虚拟网卡:进入网卡目录cd /etc/sysconfig/network-scripts/拷贝网卡: cp ifcfg-e

网络相关firewalld和netfilter netfilter5表5链 介绍iptables语法

10.11 Linux网络相关如果使用终端连接服务器,不要直接执行关闭网卡,这样终端就无法连接服务器,可以使用关闭和启动一起执行设定虚拟网卡ens33:0vi编辑,DNS与网关都可以不要,因为原网卡已经有了运行命令ifdown ens33 && ifup ens33 多出了ens33:0虚拟网卡查看网卡是否连接更改主机名 hostnamectl set-hostname aminglinuxvi/etc/hosts文件也可一行里一个IP多个域名如果多行多个ip都有相同一个域名,以最后一个为

linux 开启oracle监听

secureCRT连接到数据库所在的linux机器,切换到oracle用户模式下 [[email protected] ~]# su - oracle 步骤阅读 2 然后用sqlplus登录到数据库,关闭数据库 [[email protected] bin]$ sqlplus /nolog  //登录sqlplus SQL> connect /as sysdba  //连接oracle SQL> startup //起动数据库 SQL> exit  //退出sqlplus ,起动监听 步

SVN开启端口监听,并设置开机启动

svnserve -d -r /home/svn/repo --listen-port=3690,svn仓库地址,及监听端口 vi svn_startup.sh,位置在/root下面编辑一个启动脚本,内容如下: #!/bin/bash /usr/bin/svnserve -d -r /home/svn/repo --listen-port=3690 然后设置chmod 777 /root/svn_startup.sh 然后在设置该脚本为开机启动 vi /etc/rc.d/rc.local,将上述