编写systemd文件

$ sudo vi /etc/systemd/system/iptables-import.service

# /etc/systemd/system/iptables-import.service
[Unit]
Description=Iptables rules import
After=docker.service [Service]
Type=simple
ExecStart=/home/<用户名>/iptables_import.sh
RemainAfterExit=true
Restart=on-failure
RestartSec=10 [Install]
WantedBy=multi-user.target

编写导入iptables规则脚本,后续添加的规则需要在开机后自动导入的可在脚本后面继续追加

$ sudo vi /home/<用户名>/iptables_import.sh

#!/bin/bash

sudo iptables -I DOCKER -i ens33 -p tcp --dport 3000 -j DROP
sudo iptables -I DOCKER -i ens33 -s 172.16.210.241 -p tcp --dport 3000 -j ACCEPT
sudo iptables -I DOCKER -i ens33 -p tcp --dport 9000 -j DROP
sudo iptables -I DOCKER -i ens33 -s 172.16.210.241 -p tcp --dport 9000 -j ACCEPT
sudo iptables -I DOCKER -i ens33 -p tcp --dport 80 -j DROP
sudo iptables -I DOCKER -i ens33 -s 172.16.210.241 -p tcp --dport 80 -j ACCEPT
sudo iptables -I DOCKER -i ens33 -p tcp --dport 3306 -j DROP
sudo iptables -I DOCKER -i ens33 -s 172.16.210.241 -p tcp --dport 3306 -j ACCEPT
sudo iptables -I DOCKER -i ens33 -p tcp --dport 6379 -j DROP
sudo iptables -I DOCKER -i ens33 -s 172.16.210.241 -p tcp --dport 6379 -j ACCEPT

添加执行权限

$ sudo chmod +x /home/<用户名>/iptables_import.sh

运行服务

sudo systemctl daemon-reload
sudo systemctl start iptables-import.service
sudo systemctl enable iptables-import.service

重启测试

sudo reboot

使用systemd将iptables规则在docker启动后自动导入的更多相关文章

  1. web容器启动后自动执行程序的几种方式比较

    1.       背景 1.1.       背景介绍 在web项目中我们有时会遇到这种需求,在web项目启动后需要开启线程去完成一些重要的工作,例如:往数据库中初始化一些数据,开启线程,初始化消息队 ...

  2. [Elixir002]节点启动后自动连接其它节点

    问题: 如何指定一个节点在启动后自动连接到别的节点上? 这个我们要使用到sys.config,这是erlang的配置文件,这个文件一般都是$ROOT/releases/Vsn下 1. 首先我们要先启动 ...

  3. springboot启动后自动退出

    有时新建的springboot启动后自动退出运行,如图所示: 此种情况大都数是因为pom文件加入了tomcat的依赖,与springboot内嵌的tomcat冲突导致,所以只需将pom文件中的tomc ...

  4. linux启动后自动登录并运行自定义图形界面程序

    在<Ubuntu CTRL+ALT+F1~F6 进入命令模式后不支持中文显示的解决办法>一文中提到linux启动在以后运行一个独占显示器的图形程序的两种办法. 1.不启动xserver,使 ...

  5. SpringBoot启动后自动打开浏览器访问项目

    之前我们用SSM或者SSH进行JAVA WEB开发的时候,IDEA 需要配置Tomcat然后把项目放到tomcat运行,tomcat启动的时候会自动打开浏览器去访问项目,但是SpringBoot是内嵌 ...

  6. Springboot项目启动后自动创建多表关联的数据库与表的方案

    文/朱季谦 在一些项目开发当中,存在这样一种需求,即开发完成的项目,在第一次部署启动时,需能自行构建系统需要的数据库及其对应的数据库表. 若要解决这类需求,其实现在已有不少开源框架都能实现自动生成数据 ...

  7. win7 重装 docker 启动后无法启动错误解决

    描述 win7 重新安装Docker 后启动  Docker Quickstart Terminal 出现如下错误 Starting "default"... (default) ...

  8. docker启动后忘记挂载nvidia-docker-volume的解决方法

    进入 docker 目录 删除 volumes 下的所有文件 重新启动docker 运行nvidia-docker run XXX 来生成volume 修改所有 docker目录下containers ...

  9. jenkins自动打包生成docker镜像后自动发布并nginx代理访问

    之前曾写过docker及jenkins基础使用  https://www.cnblogs.com/xiaochangwei/category/816943.html 现在搭建环境的功能为: 1.jen ...

随机推荐

  1. python2和python3并存下的pip使用

    py -2 -m pip install  *.whl py -3 -m pip intall *.wl

  2. EFCore_环境搭建与简单使用_01

    开发环境搭建 经典步骤:建实体类.建DbContext.生成数据库 本次使用codefirst模式,走下流程,(你也可以先建好数据库,用命令行的形式,直接生成DbContext,而且生成的DbCont ...

  3. Unity——射线系统

    Unity射线系统 Demo展示 UI+Physical射线测试: FPS自定义射线测试: UGUI射线工具 实现功能,鼠标点击UI,返回鼠标点击的UI对象: 需要使用到鼠标点击事件-PointerE ...

  4. hdu 2586 How far away? (LCA模板)

    题意: N个点,形成一棵树,边有长度. M个询问,每个询问(a,b),询问a和b的距离 思路: 模板题,看代码.DFS预处理算出每个结点离根结点的距离. 注意: qhead[maxn],而不是qhea ...

  5. 开发笔记-----Ajax 基础使用

    一.GET 方式的用法: 1 <!--html --> 2 <div class="layui-form"> 3 <div class="l ...

  6. 重新整理 .net core 实践篇——— filter[四十四]

    前言 简单介绍一下filter 正文 filter 的种类,微软文档中写道: 每种筛选器类型都在筛选器管道中的不同阶段执行: 授权筛选器最先运行,用于确定是否已针对请求为用户授权. 如果请求未获授权, ...

  7. virtualbox + vagrant 安装centos7 以及 vagrant up下载太慢的解决方案

    下载安装 virtualbox下载 vagrant下载 下载启动镜像vagrant up有下载过慢的问题,可以到网页vagrant镜像仓库,找到自己需要的镜像,选择virtualbox版本下载 下载好 ...

  8. 【JAVA】编程(2)---时间管理

    作业要求: 定义一个名为 MyTime 的类,其中私有属性包括天数,时,分,秒:定义一个可以初始化时,分,秒的构造方法,并对初始化数值加以限定,以防出现bug:定义一个方法,可以把第几天,时,分,秒打 ...

  9. 在同级路径下,SpringBoot两种类型的配置文件(.properties/.yml)同时存在时,配置优先级如何处理?

    两类配置文件如果同时存在,若 key 相同则 properties 优先级高,若key不同则合并加载:

  10. ELK 7.4.2 单机安装配置

    Java环境准备 JDK下载 https://www.oracle.com/technetwork/java/javase/overview/index.html [root@manager ~]# ...