OpenState安装及 Port Knocking 实验
OpenState安装及 Port Knocking 实验
目录
- OpenState安装
- Port Knocking 实验
OpenState安装及 Port Knocking 实验
OpenState安装
1.系统要求:
- 系统ubuntu 16.04
- mininet:2.3.0d
2.下载安装文件:
在浏览器中输入即可下载
http://openstate-sdn.org/install.sh
修改下权限,chmod 777 install.sh,将42行及80行的:sudo chown -R mininet:mininet 中的 mininet:mininet 修改为对应的用户。例:笔者用户名为sdn,即更改为sudo chown -R sdn:sdn
3.安装
在install.sh文件目录下执行以下命令,一键安装:
$ sudo ./install.sh
最终输出以下,即安装完成:
echo "All set! To start using OpenState please refer to
http://openstate-sdn.org for some example applications."

Port Knocking 实验
1.通过键入以下命令在Mininet中启动portknock控制器应用程序:
$ ryu-manager ryu/ryu/app/openstate/portknock.py
端口敲击程序由以下端口序列组成,实际打开最后一个端口22的位置,我们必须首先“敲”前面的4个端口。
PORT_LIST = [10, 11, 12, 13, 22]
2.启动Mininet,使用2个主机的单个拓扑:
$ sudo mn --topo single,2 --mac --switch user --controller remote -x
要实际敲打UDP端口,我们将在h1和h2上使用netcat,nc命令介绍。 在h2的终端上运行以下命令(用于监听h2 的22端口):
h2# nc -lu 22
3.在h1的终端上键入以下命令:
echo "hello" | socat - udp4-datagram:10.0.0.2:22
正如你可以从H2看到的,没有收到数据包。
4.在h1向h2发送udp报文
echo "hello" | socat - udp4-datagram:10.0.0.2:10
echo "hello" | socat - udp4-datagram:10.0.0.2:11
echo "hello" | socat - udp4-datagram:10.0.0.2:12
echo "hello" | socat - udp4-datagram:10.0.0.2:13
echo "hello" | socat - udp4-datagram:10.0.0.2:22
可以看到h2上收到了hello的报文,但是当每次输入稍微慢的时候则会导致即使输入了正确的端口序列,也不能够访问22端口。

使用已经存在的py文件作为拓扑 如果没有controller参数的话,默认mininet自带的控制器
sudo mn --custom ~/mininet/custom/topo-2sw-2host.py. --topo mytopo --mac--switch ovsk --controller remote,ip=127.0.0.1,port=6633
本文转载自:考拉小无
OpenState安装及 Port Knocking 实验的更多相关文章
- [原创]安全系列之端口敲门服务(Port Knocking for Ubuntu 14.04 Server)
Port Knocking for Ubuntu 14.04 Server OS:ubuntu 14.04 server 原理简单分析: 端口敲门服务,即:knockd服务.该服务通过动态的添加ipt ...
- [转]Caffe在Linux下的安装,编译,实验
Caffe在Linux下的安装,编译,实验 原文地址:http://www.cnblogs.com/evansyang/p/6150118.html 第一部分:Caffe 简介 caffe是有伯克利 ...
- win10下caffe安装与mnist测试实验注意点
caffe安装 安装内容:win10教育版+anaconda2+python(无gpu版本) 安装教程:主要依照三年一梦教程:https://www.cnblogs.com/king-lps/p/65 ...
- centos 6.10源码安装mysql5.5.62实验
查看系统版本 [root@ABC ~]# cat /etc/redhat-release CentOS release 6.10 (Final) 下载mysql5.5.62源码包,解压后安装 tar ...
- MySQL的安装——源码方式(实验环境下测试用,真实环境请忽略此文)
#虚拟机是最初的的系统,我们在虚拟机里安装scp [root@serv01 ~]# yum install /usr/bin/scp -y #安装过程略 #我们拷贝MySQL的源码包到目标机的/roo ...
- 在VirtualBox 虚拟机中安装CentOS7 64位实验基础系统
1.将CentOS-7-x86_64-Minimal ISO加载入虚拟机,选择安装CentOS 7 2.启动欢迎画面,保持默认,选择 继续 3.安装参数设置 3-1.设置时区以便同步时间,将时区更改为 ...
- 安装VC++6.0实验环境
安装VC++6.0步骤:(1)下载一个压缩包进行解压(2)点击打开解压后的文件(3)找到文件里的程序进行安装(4)等待安装完成该程序后可以试着运行一下此程序,在此我们需要了解编写程序的步骤和注意事项. ...
- Kafka 安装配置 及 简单实验记录
1. 下载二进制文件并解压,并修改 broker.id 的值 wget http://apache.fayea.com/kafka/0.10.0.0/kafka_2.10-0.10.0.0.tgz - ...
- 解决:jenkins jnlp安装 provided port 40127 is not reachable
解决方法: 开放linux 防火墙40127端口允许下载jnlp centos7 解决如下: [root@hostuser chrome]# firewall-cmd --zone=public -- ...
随机推荐
- Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list-2.xml
解决方法来源:http://www.cnblogs.com/kaka-bing/archive/2012/10/31/2747490.html 问题描述: 使用Android SDK Manager检 ...
- 第18章 SysTick—系统定时器
第18章 SysTick—系统定时器 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/ ...
- 经常使用命令 echo、@、call、pause、rem
经常使用命令 echo.@.call.pause.rem(小技巧:用::取代rem)是批处理文件最经常使用的几个命令,我们就从他们開始学起. 首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标 ...
- 02-Maven安装配置
1.Maven下载 2.Maven依赖 3.安装Maven 4.Maven目录
- 避免代码merge后无法构建发布(GItlabCI + Jenkins)
1.准备工作 目标: 开发人员提交代码后触发GitlabCI ,如果有merge请求则触发Jenkins对源分支在开发环境构建测试. 2.GItlab配置 开启仅允许pipeline成功后才能merg ...
- Microsoft Tech Summit 2017
Microsoft Tech Summit 2017 时间:2017.10.31-2017.11.3 地点:北京国际饭店会议中心
- 2017-2018-2 20155315《网络对抗技术》Exp9 :Web安全基础
实验目的 理解常用网络攻击技术的基本原理. 教程1 教程2 教程3 实验内容 SQL注入攻击 XSS攻击 CSRF攻击 Webgoat前期准备 从GitHub上下载jar包 拷贝到本地,并使用命令ja ...
- 20155325 Exp4 恶意代码分析
系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件,综述一下分析结果.目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓 ...
- 20155336 虎光元《网络攻防》Exp2后门原理与实践
20155336 虎光元<网络攻防>Exp2后门原理与实践 一.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主机操作Shel ...
- POJ1080
一道字符串DP,然而不需要状压之类的玄学操作 题目大意:给你两个串,由'A','C','G','T'组成,现在你可以在这两个串中的某些位置插入'-',最终要使得它们的长度相等 给出两个字符匹配时的匹配 ...