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
本文转载自:考拉小无