zeroshell 用户基本手册
2012-01-01 23:02:44| 分类:网众相关 | 标签:|字号大中小订阅
1. zeroshell简介??
zeroshell其实就是一款路由软件,运行在linux服务器下,其功能十分强大。
2. zero如何安装到硬盘?
1.准备工作
你可以到zeroshell官网下载ZeroShell-1.0.beta13-CompactFlash-IDE-USB-SATA-1GB.img.g
z文件,最好顺便顺便ZeroShell-1.0.beta13.iso把也下载下来刻成光盘用linux操作镜像安装
包。。。好!!万事俱备,只欠东风,激动人心的时刻到来了,把zeroshell拷到优盘里,准
备一个硬盘....
2. 如何安装
将zeroshell ISO刻录成光盘并开机从光盘启动,等到完全启动后,你可以看到选项操作,
我们按S键进入linux终端操作界面,你可能需要输入一下密码
|
zeroshell 用户基本手册 |
用以下命令查看磁盘信息
shell > fdisk -l
|
zeroshell 用户基本手册 |
我们的优盘的磁区为dev/sda1,硬盘的磁区/dev/hdd,接着输入以下命令挂载优盘
#建立挂载目录
shell > mkdir /mnt/usb_disk
#挂载优盘
shell > mount /dev/sda1 /mnt/usb_disk
# 切换至优盘目录
shell > cd /mnt/usb_disk
# 将镜像安装到硬盘,注意是制定硬盘的装置,而非分割区
shell > gunzip –c ZeroShell-1.0.beta11-CompactFlash-IDE-USB-SATA-1GB.img.gz > /
dev/hdd
#重新启动,设置从硬盘启动,OK...
shell > reboot
2. zeroshell初始化配置..
1. 给网卡设置IP
一般的路由设置都会有两块网卡配置,在这里我们把第一块网卡ETH00设置成为外网的IP,
ETH01设置成为内网的IP地址,在zeroshell服务端,我们可以看到选项配置,我们按I键
进入IP配置界面,我们先修改一下ETH00网卡的配置,按m进入配置,因为zeroshell初始会
给ETH00一个默认IP为192.168.0.75,我们将其配置为我们的外网IP。好!!现在我们来配
置内网ETH01的IP,按a键进入添加--ETH01--回车一下--输入IP--再回车--输入子网掩
码,呵呵!! 服务端我们暂时先配到这里..激动人心的时刻还在后面哦。。
2. 打开GUI界面
我们需要一台机器连接到内网的网卡,我们将本机的IP设置和内网的IP为同一网段,我在这
里把内网ETH01的IP为172.16.0.1,那我们只需配置一个172.16.0.XX的IP即可,我们在浏览输
入https://172.16.0.1/就可以进入我们zeroshell的登录界面。注意,这里是https而不是htt
p 哦。。登录初始用户名是admin,密码是zeroshell。
|
zeroshell 用户基本手册 |
3. 配置上网
在zeroshell GUI界面点击System--setup--network--GATEWAY添加一个默认网关,
|
zeroshell 用户基本手册 |
然后我们再点击 NETWORK--router(路由--NAT选项,将ETH00和ETH01点击放到NAT下,点击sava保存
|
zeroshell 用户基本手册 |
在这个时候只要你的外网是通着,并且你的本机的IP配置正确的情况下,我相信你现在已经可以上网......
4. 保存配置
点击 System--setup--Profiles,选中要保存配置到的地方
|
zeroshell 用户基本手册 |
3. 设置DHCP
点击NETWORK--DHCP进入这个界面
|
zeroshell 用户基本手册 |
点击new选中内网的网卡,再设置自动获得IP的网段,Range1,再点击保存。。
4. Qos设定
1. Qos功能的启用..
选择NETWORK--Qos-- Interface Manager进入网络界定界面,将管控流量的界面选择钩
按下「Activate last Changes」存储设定
|
zeroshell 用户基本手册 |
|
|
按下Globel Bandwidth选择网路界面的最大值,和最小值
|
zeroshell 用户基本手册 |
2. 设定Qos的类别
点击Class Manager
|
zeroshell 用户基本手册 |
点击new,添加新增类别的名称
|
zeroshell 用户基本手册 |
画面中输入包含Description描述信息,Priority封包优先权,Maximum最大使用流量
Guaranteed最小流量
3. 设置Qos类别与规则对应
点击Classifier,选择添加add,添加限制规则,会进入下面的界面
|
zeroshell 用户基本手册 |
Apply to:Routed and Bridged Packets 这个设定,是用来判断zeroshell是扮演的事router路由器还是
bridge
Input: 控制从下载的流量
output:控制上传的流量
sourceIp:源Ip
Destination IP :目标IP
Fragments:网络分段
Packet Length :控制上传和下载包的大小
Protocol Matching:协议规则,包括TCP,UDP。。
Connection State :链接状态
New:新建的规则
ESTABLISHED:已定制好的规则
IPTABLES Parameters:IPTABLES 参数,Iptables是linux里面的网络设定,IPtables可以自己研究一下
Layer Filters :Layer规则。。。也就是可以找到具体某款软件
DiffServ:服务的优先级,DSCP的大小来控制
Connection Limits:网络限制,在基本上我们的限制信息在CLASS MANAGER里面已做限制
TARGET CLASS:选择要限制Qos的类别,也就是我们在ClassManager里面建立的东东
LOG:日志的打印
设定好之后,点击confirm就可以了
4. 将Qos与网卡链接
点击 Interface Manager--ETH00右边点击--add class,然后会弹出你所在Class Manager里面建立的规
则
|
zeroshell 用户基本手册 |
Qos设置完毕,但这里面的Qos设定是借鉴linux的Iptables规则,需要理解,需要得看一下linux的
Iptablles规则的用法 ..
5. 端口映射..
点击NETWORK--Router--VIRTUAL SERVERS进入一下界面
|
zeroshell 用户基本手册 |
Input interface: 映射端口的进入接口,也就是外网的网卡。
IP Address:外网的IP地址
Protocol:端口协议
Local Port: 本机端口
Remote IP: 远程Ip,也就是提供服务的IP
Remote Port:远程端口,提供服务的本地端口
点击 + 按钮就可以添加...
6. SSH开放与设定
点击SYSTEM--setup--SSH进入界面
|
zeroshell 用户基本手册 |
设定有三个部分:
1. 设定可以连线到zeroshell的SSH服务的IP(例如:192.168.0.24),及网段(例如:192.168.0.0/24)
2. 设定可以接受SSH服务的网卡,一般是外网的。。
3. 你可以用例如putty之类的小软件远程链接linux的小软件链接到zeroshell的SSH
4. 勾选Enable,并sava保存。。
7. 防火墙设定。。
由于zeroshell为linux-based firewall 在linux中有三个table(mangle,nat,filter)。
但为了简化工作,zeroshell仅提供了filter table的设定,因此预设了三个chain,分别是
FORWARD,INPUT,OUTPUT。
虽然只提供了三个chain,但还是可以通过FORWARD chain管理通过zeroshell的网络封包,
也可以通过INPUT,OUTPUT来管理流入和流出zeroshell的网络封包,以下是firewall的设定
|
zeroshell 用户基本手册 |
1. Firewall Chain的设定
chain的添加,删除,并在Chain中添加自定义规则
|
zeroshell 用户基本手册 |
系统自动提供了FORWARD,INPUT,OUTPUT三个chain,若要添加新的规则,则可以用Add按钮
Change(修改),Delete(删除)。
2. Default Policy 设定
了解zeroshell的chain的设定之后,你就可以直接设置设定每条chain的Policy了,假设将双流量的最严格
的控管的话,你可以将FORWARD的Default Policy设定为DROP,DROP会将不符合规定的网络发包丢
弃。默认预设是ACCEPT。。
|
zeroshell 用户基本手册 |
3. 案例实例FTP服务
直接写出来可能会很让人难理解,我们就以FTP服务做个案例。。
我们New新增一个chain,名称为[FTP_TRAFFIC]
|
zeroshell 用户基本手册 |
按住chain的选项到刚刚新增的ftp_traffic准备增加新的规则(chain会自动
小写)。
|
|
按下Add添加防火墙新规则
|
zeroshell 用户基本手册 |
以下是设定的部分介绍
Destination IP:设定FTP服务的IP。
Protocol Matching:选择所要过滤的通讯协议种类。
Source Port:一般客户端都会以1024到65535之间随机取一个port与服务链接。
Des Port: FTP服务的端口为21
Connection State:New必须选钩,才可以让客户端正确连接
Action:这里必须选ACCEPT,接收。。
接着回到FORWARD Chain,将FTP_TRAFFIC这条chain加入规则中
|
zeroshell 用户基本手册 |
在ACTION选择chain,在jump to 到ftp_traffic,最后别忘了按下Confirm提交
哦。。
我们还需要在FORWARD chain再添加一条新规则,这样建立连接后,后续的连线可以
持续通过
|
zeroshell 用户基本手册 |
为了让后续的连线能够持续的通过ESTABLISHED, RELATED前选钩,ACCTION设置为
ACCEPT。
|
|
8. OpenVPN凭证认证 & VPN设定
zeroshell是用OpenVPN来设定VPN服务的,首先要了解构建VPN服务需要哪些需求
一. 凭证(Certificate)的管理与开放
二. 使用者的认证方式。
三. VPN的安全加密隧道(tunnel),和Routing相关设定
1. 凭证(Certificate)的管理与开放
要连接到VPN Server需要两个凭证,1:OpenVPN Server的CA的认证(里面包含Server Pu
blic Key),2:客户端专属CA(里面包含Public Key,Private Key)。
2. 安装OpenVPN 的客户端
在这里下载OpenVPN GUI安装,安装时只需下一步,下一步操作即可,不需要额外操作
3. 取得OpenVPN Server的CA凭证
首先进入zeroshell的web登录界面,点击CA
|
zeroshell 用户基本手册 |
接着出现CA的咨询信息,选择(Export),为Pem格式
|
zeroshell 用户基本手册 |
接着把下载的档案放到[C:\Program Files\OpenVPN\config]目录中去
4. 添加使用者(Client)
目前除了admin之外,没有其他使用者,因此需要增加一个,选择[USERS--Users--Add]
|
zeroshell 用户基本手册 |
接着输入相关资讯
|
zeroshell 用户基本手册 |
填完信息之后,submit提交以下即可
5. 取得Client CA凭证
用户新增之后,会出现以下信息
|
zeroshell 用户基本手册 |
同样Export成PEM格式,client的CA凭证,将此凭证改名为[client.pem],并
放到[C:\Program Files\OpenVPN\config]目录下面。。
6. 下载链接到服务的配置文件
你可以下载zeroshell.ovpn下载放到[C:\Program Files\OpenVPN\config],以下是
配置文件内容:
;OpenVPN server 位址
remote zeroshell.example.com 1194
proto tcp
auth-user-pass
;OpenVPN server CA 憑證存放位置
ca CA.pem
;OpenVPN client 憑證存放位置
;cert client.pem
;key client.pem
comp-lzo
verb 3
mute 20
resolv-retry infinite
nobind
client
dev tap
persist-key
persist-tun
但為了符合我們的實驗環境設定,修改成如下:
;OpenVPN server 位址
remote 10.1.16.222 1194
proto tcp
auth-user-pass
;OpenVPN server CA 憑證存放位置
ca CA.pem
;OpenVPN client 憑證存放位置
cert client.pem
key client.pem
comp-lzo
verb 3
mute 20
resolv-retry infinite
nobind
client
dev tap
persist-key
persist-tun
打开Open GUI选择Connect输入Client的用户名和密码。
6. VPN 服务设定
这个部分设置两点 1:使用者认证方式 2:VPN tunnel和routing相关设定
在Zeroshell中选择[NETWORK--VPN]
|
zeroshell 用户基本手册 |
上面注意部分
1. 通讯与协定 port number
这里的预设为TCP 1194,若有更动,客户端配置文件zeroshell.ovpn也要跟
着改变
2. 认证方式
一般的搭配选择 [Only X.509 Certificate]即可,除非另外也搭配Kerbero
s或是RADIUS 需要密码认证,才选择Password
3. VPN Client网络设定
这部分设定外部网络链接到内部网络的IP,不可与内部网络相通。最后Enable选钩
SAVE保存。
7. Routing Table的改变
VPN连线后zeroshell的Routing Table也会改变,以下是原来的Routing Table
|
zeroshell 用户基本手册 |
从图上看出Default Gateway还在原来的网卡上,VPN建立后Routing Table也会改变
|
zeroshell 用户基本手册 |