Iptalbes练习题(三)
场景需求:
(1)员工在公司内部(192.168.124.0/24 ,192.168.122.0/24 )能访问服务器上任何服务
(2)当员工出差,通过VPN连接到公司
(3)公司门户网站允许公网访问
解:
(2)外网======》VPN服务器======》公司的服务
常见允许访问外网的服务:
网站www: http 80/tcp
https 443/tcp
邮件mail: smtp 25/tcp
smtps 465/tcp
pop3 110/tcp
pop3s 995/tcp
imap 143/tcp
一些常见不允许外网访问的服务:
文件服务器: NFS 123/UDP
SAMBA 137,138,139/tcp,445/tcp
FTP 20/tcp,21/tcp
远程管理: SSH 22/tcp
数据库: MYSQL 3306/tcp
ORACLE 1521/tcp
配置规则基本思路:
ACCEPT规则:1)允许本地访问。2)允许已监听状态数据包通过。3)允许规则中允许的数据包通过。(千万别忘记22端口)
DENY规则:拒绝未被允许的数据包。
iptables规则保存成配置文件
开始。。。。。。。。。
满足条件1:
[root@test1 ~]# iptables -I INPUT -i lo -j ACCEPT
[root@test1 ~]# iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@test1 ~]# iptables -A INPUT -s 192.168.124.0/ -j ACCEPT
[root@test1 ~]# iptables -A INPUT -s 192.168.122.0/ -j ACCEPT
[root@test1 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 192.168.124.0/ 0.0.0.0/
ACCEPT all -- 192.168.122.0/ 0.0.0.0/ Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
满足条件2,3:
[root@test1 ~]# iptables -A INPUT -p tcp --dport -j ACCEPT
[root@test1 ~]# iptables -A INPUT -p tcp --dport -j ACCEPT(VPN常用端口)
[root@test1 ~]# iptables -I INPUT -p icmp -j ACCEPT
[root@test1 ~]# iptables -A INPUT -j REJECT
[root@test1 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 192.168.124.0/ 0.0.0.0/
ACCEPT all -- 192.168.122.0/ 0.0.0.0/
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-port-unreachable Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
保存到配置文件,设置开机自启动后,自动加载:
[root@test1 ~]# /etc/init.d/iptables save
iptables:将防火墙规则保存到 /etc/sysconfig/iptables: [确定]
[root@test1 ~]# cat /etc/sysconfig/ip
ip6tables ip6tables.old iptables-config iptables.save
ip6tables-config iptables iptables.old
[root@test1 ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Sun Mar ::
*filter
:INPUT ACCEPT [:]
:FORWARD ACCEPT [:]
:OUTPUT ACCEPT [:]
-A INPUT -p icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.124.0/ -j ACCEPT
-A INPUT -s 192.168.122.0/ -j ACCEPT
-A INPUT -p tcp -m tcp --dport -j ACCEPT
-A INPUT -p tcp -m tcp --dport -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on Sun Mar ::
或者将文件保存未shell文件,将shell文件写到rc.local文件中:例如
sh /root/shell/myiptables.sh
写到rc.local中。。。
Iptalbes练习题(三)的更多相关文章
- PHP练习题三
1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21. echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’)); 2.不使用第三个变量交换两个 ...
- Linux基础练习题(三)
1.显示当前系统上root.fedora或user1用户的默认shell: [root@www ~]# egrep "^(root|fedora|user1)" /etc/pass ...
- Python3.7 练习题(三) 将指定目录下的图片进行批量尺寸大小处理
# 将指定目录下的图片进行批量尺寸大小处理 #修改图片尺寸 导入Image os 快捷键 alt+enter import os from PIL import Image def process_i ...
- python六十四课——高阶函数练习题(三)
案例五:求两个列表元素的和,返回新列表lt1 = [1,2,3,4]lt2 = [5,6]效果:[6,8,10,12] lt1=[1,2,3,4] lt2=[5,6] print(list(map(l ...
- Iptalbes练习题(二)
接着上节,上节课,基本功能设置后,现在我们telnet本机一下,发现问题: [root@test1 ~]# telnet Trying 127.0.0.1... telnet: connect to ...
- Iptalbes练习题(一)
实验环境: KVM 虚拟机 centos6.7 test1:192.168.124.87 test2:192.168.124.94 场景一: 要求:1.对所有地址开放本机的tcp(80.22.10- ...
- 廖雪峰python3练习题三
条件判断 题目: 答案: #!/usr/bin/env python3 #-*- coding:utf-8 -*- heigth = 1.75 weigth = 80.5 bim = weigth / ...
- 第三十五章 Linux常规练习题(二)参考答案
一.练习题一 1.删除用户基本组shanghai03.发现无法正常删除,怎样才能将其删除掉,不能删除用户. groupdel shanghai03 移除其所属组的用户 2.打开多个xshell窗口连接 ...
- 第三十四章 Linux常规练习题(一)参考答案
一.练习题一 1.超级用户(管理员用户)提示符是___#_,普通用户提示符是___$_. 2.linux关机重启的命令有哪些 ? 关机命令 重启命令 shutdown -h now shutdown ...
随机推荐
- Laravel之目录结构
一.根目录 新安装的 Laravel 应用包含许多文件夹:• app 目录包含了应用的核心代码:• bootstrap 目录包含了少许文件用于框架的启动和自动载入配置,还有一个cache 文件夹用于包 ...
- MySQL自增长主键探究
MySQL自己主动增长使用的keyword是 AUTO_INCREMENT; 由于属于 DDL.所以不区分大写和小写. 使用的列,必须被定义为 key, 比方主键,唯一键等. 本文中使用的数据库是 M ...
- 实现Tab功能
网上实现Tab功能的方法有很多,这里我使用Fragment的方法,我觉着比较简单易懂 MainActivity private android.app.FragmentManager fragment ...
- LeetCode :: Sum Root to Leaf Numbers [tree、dfs]
Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number ...
- angularjs中的时间格式化过滤
本地化日期格式化: ({{ today | date:'medium' }})Nov 19, 2015 3:57:48 PM ({{ today | date:'short' }})11/19/15 ...
- sparkstreaming+socket workCount 小案例
Consumer代码 import org.apache.spark.SparkConf import org.apache.spark.streaming.StreamingContext impo ...
- AjaxPro.2.dll AjaxPro.AjaxMethod 前后台交互
我们需要下载 AjaxPro.2.zip.然后把下载到的 AjaxPro.2.dll 的文件引入到项目. 1.接着,在 Web.config 的 <system.web> 标签下写入以下内 ...
- PHP运行环境之IIS FastCGI 进程意外退出解决办法
本机做了系统,结果之前装好的APACHE环境什么的都没了,不想费事了,这次直接使用WIN8自带的IIS功能了,安装完毕后提示FastCGI 进程意外退出解决办法,这是由于某些加载库加载失败的原因,这里 ...
- Linux下文件的堵塞与非堵塞对部分系统调用的影响
1.基本概念 所谓的堵塞,即内核在对文件操作I/O系统调用时.假设条件不满足(可能须要产生I/O),则内核会将该进程挂起.非堵塞则是发现条件不满足就会马上返回. 此外须要注意的是非堵塞并非轮询.不然就 ...
- IEnumerable, IEnumerator接口
IEnumerable接口 // Exposes the enumerator, which supports a simple iteration over a non-generic collec ...