一、补充iptables

1.1. 脚本

点击查看代码_1
#添加为自启服务
vi /etc/systemd/system/iptables_xxx.service
[Unit]
Description=boot start service
After=default.target

[Service]
Type=oneshot
ExecStart=/usr/local/sbin/iptables_xxx

[Install]
WantedBy=default.target
-----------------------------------------------
systemctl daemon-reload
systemctl enable iptables_xxx
-----------------------------------------------

vi /usr/local/sbin/iptables_example
#!/bin/bash
#开放范围内22端口登录
/sbin/iptables -A INPUT -m iprange --src-range 192.168.28.90-192.168.28.98 -p tcp --dport 22 -j ACCEPT

#开放本地访问与保持连接
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#允许某范围内的ip访问80、8180
/sbin/iptables -A INPUT -m iprange --src-range 192.168.28.90-192.168.28.98 -p tcp -m multiport --dport 80,8180 -j ACCEPT

#允许某网段访问80、8180
#/sbin/iptables -A INPUT -s 192.168.1.0/24 -p tcp -m multiport --dport 80,8180 -j ACCEPT

#开放8080、5180、514
/sbin/iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 5180 -j ACCEPT
/sbin/iptables -A INPUT -p udp --dport 514 -j ACCEPT

#开放ping
/sbin/iptables -A INPUT -p icmp -j ACCEPT

#xxxx集群间开放所有访问
/sbin/iptables -A INPUT -m iprange --src-range 172.31.208.xx-172.31.208.xx -p all -j ACCEPT

#默认拒绝所有
/sbin/iptables -A INPUT -j DROP
-----------------------------------------------
chmod u+x /usr/local/sbin/iptables_example
systemctl start iptables_example.service
iptables -nvL
点击查看代码_2
#!/bin/sh

# Remove any existing rules
# 清除规则
/sbin/iptables -F
# 清除用户自定义规则
/sbin/iptables -X
# 清除链的计数器
/sbin/iptables -Z

# setting default firewall policy
# 设置INPUT,OUTPUT,FORWARD链的默认规则
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT INPUT

# setting for loopback interface
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT

# setting for icmp
/sbin/iptables -A INPUT -p icmp -j ACCEPT

/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# global rules
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 12.114.114.114/32 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 23005 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 124.23.62.96/32 -m comment --comment "办公室固定ip" -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.2.0/24 -m comment --comment "IDC机房内网网段" -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 10.0.0.0/24 -m comment --comment "其他机房的内网网段" -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 203.82.23.0/24 -m comment --comment "其他IDC机房的外网网段" -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT

/usr/sbin/service iptables save

1.2. SNAT & DNAT

SNAT(路由后POSTROUTING 内网访问外网)

防火墙基础知识之SNAT详解

image
image

DANT(路由前PREROUTING 外网访问内网)

image

模拟iptables的DNAT_USCWIFI的博客-CSDN博客

# 内网 POSTROUTING SNAT 外网
iptables -t nat -A  POSTROUTING -o eth1 -s 192.168.1.0/24 -j SNAT --to-source 218.29.30.31
iptables -t nat -A  POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE

# 外网 PREDOUTING DNAT 内网
iptables -t nat -A PREROUTING -i eth1 -d 218.29.30.31 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.6:80

# 解决Windows访问Samba服务拒绝的方法
iptables -t filter -I INPUT 7 -p udp -m multiport --dports 139,445 -j ACCEPT
iptables -t filter -I INPUT 7 -p tcp -m multiport --dports 139,445 -m state --state NEW -j ACCEPT
# 临时: 
echo "1" >/proc/sys/net/ipv4/ip_forward
# 永久:
vim sysctl.conf # net.ipv4_forward = 1
sysctl -p

# ifconfig eth0:1 192.168.66.131 netmask 255.255.255.0 up
[xy@VM-0-4-centos ~]$ route -n # 查看路由信息
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.252.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0

# 使用route添加路由,设定的路由必须与系统网络接口或IP可以直接互通,才能添加成功;
route add -net 192.168.66.0 netmask 255.255.255.0 dev eth0
route add -net 192.168.66.0 netmask 255.255.255.0 gw 192.168.66.254

4.1. RAID

  • RAID0-Striping
    1. 组成:多块硬盘(至少2块)通过硬件或软件串联一起,组成大的卷组,提升了硬盘数据的吞吐量,但不具备数据备份和错误修复能力;
    2. 特点:读写性能提升;无冗余(容错)能力;空间利用率:ns(s–> 一块盘利用率);至少2块;
  • RAID1-Mirror
    1. 数据写到多块硬盘设备上,当某一块硬盘发生故障后,一般会立即以热交换方式来恢复数据的正常使用,但硬盘的使用率却下降了,只有33%左右;
    2. 性能提升:写下降,读提升;冗余能力:有;空间利用率:1/2;至少2块;
  • RAID5
    1. 将硬盘设备的数据奇偶校验信息保存到除自身外每一块硬盘设备上,当硬盘出现问题,通过奇偶校验信息来尝试重建损坏的数据;
    2. 性能提升:读写提升;冗余能力:有;空间利用率:(n-1)s/n;至少3块;

1.3. LVM

  • 物理卷(PV)真正的物理硬盘或者分区;
  • 卷组(VG)将多个物理卷合起来组成卷组,组成同一个卷组的物理卷可以是同一个硬盘的不同分区,也可以是不同硬盘的不同分区,抽象为一个逻辑硬盘;
  • 逻辑卷(LV)卷组是一个逻辑硬盘,硬盘分区后才可以使用,类似的,从卷组出来的分区为逻辑卷;

image
LVM 管理减少swap分区空间增加到根分区_ann67741255的博客-CSDN博客

  • 案例介绍:

    • 如何创建使用逻辑卷
    # PV - VG - LV
    [root@xy ~]# pvcreate /dev/sd{c,d}
      Physical volume "/dev/sdc" successfully created  
      Physical volume "/dev/sdd" successfully created
    [root@xy ~]# vgcreate storage /dev/sd{c,d}          # 添加到storage卷组中 
      Volume group "storage" successfully created
    [root@xy ~]# lvcreate -l 37 -n vo storage          # 从卷组里边 创建逻辑卷 lvcreate
    [root@xy ~]# mkfs.ext4 /dev/storage/vo
    [root@xy ~]# mkdir /LVM 
    [root@xy ~]# mount /dev/storage/vo /LVM/
    [root@xy ~]# vim /etc/fstab  
      /dev/storage/vo              /LVM         ext4          defaults   0 0
    
    • 如何对逻辑卷扩容
    [root@xy ~]# df -Th
    [root@xy ~]# fdisk t 8e
    [root@xy ~]# mkfs.ext4 /dev/sdb1  # 不用分区也可以
    [root@xy ~]# pvcreate /dev/sdb1
    [root@xy ~]# vgextend VolGroup /dev/sdb1
    [root@xy ~]# lvextend -L +20G /dev/volGroup/VolGroup-lv_root
    [root@xy ~]# resize2fs /dev/volGroup/VolGroup-lv_root 32GB
    
    [root@xy ~]# umount /home   # 25G
    [root@xy ~]# e2fsck -f /dev/volGroup/VolGroup-lv_home
    [root@xy ~]# resize2fs -p /dev/volGroup/VolGroup-lv_home 10G   # xfs格式用xfs_growfs
    [root@xy ~]# mount /home
    [root@xy ~]# lvreduce -L -15G /dev/volGroup/VolGroup-lv_home   # 减少15G
    [root@xy ~]# lvextend -L +15G 或 lvextend -l +100%FREE /dev/volGroup/VolGroup-lv_root
    [root@xy ~]# resize2fs -p /dev/volGroup/VolGroup-lv_root
    [root@xy ~]# fuser -m -v /home
    [root@xy ~]# kill -9 PID    # 建议保留Free PE/SIZE 一点空间,不要全用上;
    

1.4. 参考

posted on 2023-04-12 00:27  anyu967  阅读(21)  评论(0)    收藏  举报