码迷,mamicode.com
首页 > 系统相关 > 详细

2018-1-25 Linux学习笔记[重要]

时间:2018-01-25 18:17:38      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:filter   lte   笔记   实验   ash   input   80端口   icmp   drop   

10.15 iptables filter表案例

iptables filter表小案例
实现放行21,80端口和对源IP属于133.168.133.0的IP段请求放行22端口:
vi /usr/local/sbin/iptables.sh //加入如下内容
#! /bin/bash
ipt="/usr/sbin/iptables"
$ipt -F #清空之前的规则(filter表)
$ipt -P INPUT DROP
$ipt -P OUTPUT ACCEPT
$ipt -P FORDARD ACCEPT
$ipt -A INPUT -m stat --state RELATED,ESTABLISHED -j ACCEPT #放行状态为RELATED,ESTABLISHED的请求
$ipt -A INPUT -s 192.168.133.0/24 -p tcp --dport 22 -j ACCEPT
$ipt -A INPUT -p tcp --dport 80 -j ACCEPT
$ipt -A INPUT -p tcp --dport 21 -j ACCEPT


备注:
上述脚本第7行要加RELATED的原因是客户端和服务端建立了连接后,还有一些额外连接需要建立,这时状态就变成了
RELATED,为了能通信不受到影响,所以此处需加上RELATED.


icmp示例:
实现本机能ping通其他机器,但其他机器不能ping通本机:
iptables -I INPUT -p icmp --icmp -type 8 -j DROP

10.16/10.17/10.18 iptables nat表应用

实验背景:
A机器两块网卡ens33(192.168.133.130),ens37(192.168.100.1),ens33可以上外网,ens37仅仅是内部网络,B机器只有
ens37(192.168.100.100),和A机器ens37可以通信互连.

* 需求1: 让B机器可以连接外网
(1)A机器上打开路由转发(1表示打开路由转发,默认为0,关闭状态)
echo "1" > /proc/sys/net/ipv4/ip_forward
(2)A机器上执行
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
(3)B机器上设置网关为192.168.100.1

* 需求2: C机器只能和A通信,让C机器可以直接连通B机器的22端口
(1)A机器上打开路由转发(1表示打开路由转发,默认为0,关闭状态)
echo "1" > /proc/sys/net/ipv4/ip_forward
(2)A机器上执行
iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130
(3)B机器上设置网关为192.168.100.1


备注:

  1. 用ifconfig临时给网卡分配IP地址(重启后失效,若想永久生效则需更改配置文件)
    语法: ifconfig 网卡名 IP地址/24, 例如:
    ifconfig ens37 192.168.1.100/24
  2. 设置网关
    语法: route add default gw IP地址,例如:
    route add default gw 192.168.100.1

2018-1-25 Linux学习笔记[重要]

标签:filter   lte   笔记   实验   ash   input   80端口   icmp   drop   

原文地址:http://blog.51cto.com/13517946/2065112

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!