Linux运维学习笔记 4.2

添加静态路由

静态路由示意图.png

上图有四个设备,我想实现1号机IP地址10.0.0.11能够连接2号机的IP172.16.1.12,连接3号机的172.16.1.13

再连接3号机的IP172.16.2.13和4号机IP172.16.2.14

第一步,因为1号机的IP地址10.0.0.1和2号机的172.16.1.12不在同一个网段,所以需要添加一个静态路由使两者连接

route add -net 172.16.1.0/24 gw 10.0.0.12   

                (目的网段)        (入口)

第二步,这样1号机能连三号机的IP172.16.1.13,去的路有了,还需要将三号机的回应包返回来,此时3号机无法连1号机,所以在3号机添加

route add -net 10.0.0.0/24 gw 172.16.1.12

第三步,让1号机能够通过2号机连接172.16.2.0的网段

route add -net 172.16.2.0/24 gw 10.0.0.12

第四步,2号机虽然能连3号机,但是当1号机给3号机IP172.16.2.13发数据时,数据在经过2号机的时候会被丢弃,所以在给2号机

添加静态路由的时候,还需要更改2号机的转发参数(临时操作)

route add -net 172.16.2.0/24 gw 172.16.1.13

sysctl net.ipv4.ip_forward=1 (临时)

永久更改转发参数

echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf

sysctl -p   从配置文件“/etc/sysctl.conf”加载内核参数设置

第五步,经过以上操作,1号机可以给3号机发数据并且会返回数据包,同样再给4号机发数据的时候,

会在3号机被丢弃,所以更改3号机的转发参数

sysctl net.ipv4.ip_forward=1 (临时)

第六步,最后,让数据包在4号机可以返回给1号机

route add -net 10.0.0.0/24 gw 172.16.2.13

永久添加静态路由

第一步,cd到 /etc/sysconfig/network-scripts 目录下

第二步,route -n查看新增加的路由的网络接口(eth0)

第三步,将ip route显示的新路由的记录写到该目录下新建的route-eth0文件中(与新路由的网络接口一致)

ip route|tail -2 > route-eth0

systemctl restart network (重启网络服务)

iptable 软件防火墙 用来管理 Linux 防火墙的命令程序

iptable (通过调用Linux内核的netfilter模块起到防火墙的作用)

iptable:四表五链

四表:

filter表:过滤数据包  (防火墙相关)

nat表:实现nat上网 (内网上外网,将私网IP转换成公网IP)

mangle表:修改数据包

raw表:追踪数据包

五链:

Linux的链结构.png
PREROUTING   在对数据包做路由选择之前,将应用此链中的规则;
         
INPUT        当收到访问防火墙本机地址的数据包时,将应用此链中的规则;

FORWARD      当收到需要通过防火中转发给其他地址的数据包时,将应用此链中的规则;

OUTPUT       当防火墙本机向外发送数据包时,将应用此链中的规则;

POSTROUTING  在对数据包做路由选择之后,将应用此链中的规则;

命令:

iptables -L 查看所有链的iptable规则

iptables -P INPUT DROP 修改INPUT链的默认规则为白名单模式 (拒绝所有人)

        -I 插入新规则 

        -A 追加新规则

        -D 删除规则

        -j 动作

        -F 清楚添加的所有的规则

场景:允许所有人可以访问80端口,只允许10.0.0.1可以访问22端口

黑名单模式(默认)

iptables -I INPUT --source 10.0.0.1 --protocol tcp --dport 22 -j ACCEPT

iptanles -A INPUT --protocol tcp --dport 22 -j DROP

白名单模式(拒绝所有人)

iptables -A INPUT --protocol tcp --dport 80 -j ACCEPT

iptables -I INPUT --source 10.0.0.1 --protocol tcp --dport 22 -j ACCEPT

iptables -P INPUT DROP

        --source 指定源地址
        
        --destination 指定目标地址

        --protocol 指定访问协议

        --dport 指定端口

禁止本机向目标地址发送数据

iptables -A OUTPUT --protocol icmp  --destination 172.16.1.12 -j DROP
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容