设为首页 友情链接
在线留言 发表文章
加入收藏 广告联系

刺猬首页

| 专案技术 | 网络技术 | 图形图象 | 网络编程 | 网页设计 | 操作系统 | 服务器 | 技术白皮书 | 在线实验室 | 刺猬论坛 |
小说专版  | 数据库 | 设计赏析 | 存储频道 | 网络安全 | 私服架设 |  Solaris | 网站评估 | PC维护技巧 | 下载中心 | 博 客 |
专   题: | Linux | java | cisco | 防病毒 | 刀片 | SOA | iscsi | ASP.NET | SQL | Oracle |
您现在的位置: IT公社 IT community >> Linux专题 >> 企业应用 >> 教程正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
OpenVPN 2.0 局域网终端…
利用IP别名托管多个SSL网…
利用FAM和IMON在Linux下…
如何使用X-Win32配合Ope…
在Linux桌面环境下运行P…
用 DCOP 连接 KDE 应用程…
Linux下利用IP别名托管多…
Linux下网络电视配置-gs…
采用mod_gzip加速Zope和…
利用IP 别名托管多个SSL…
  利用openvpn+linux快速建立企业VPN           
利用openvpn+linux快速建立企业VPN
 

penvpn介绍http://openvpn.sourceforge.net/ ,不多说了。

openvpn可工作于两种模式:

一种是IP遂道路由模式,主要应用于点对点。

一种是基于以太网的遂道桥模式, 应用于点对多点,有多个分支机构。

本文介绍的配置实例是第一种。

拓扑图:

局域网1: OFFICE主机装redhat9.0 两块网卡

eth1接公网 61.131.58.x ,

eth0接 内网192.168.1.56

vpn 10.1.0.1

A主机 192.168.1.222

局域网2:

HOME主机装redhat9.0两块网卡

eth0 接公网 218.85.158.244

eth1 接内网 192.168.0.235

vpn 10.1.0.2

B主机 192.168.0.45

环境:redhat9.0+lzo+openssl+openvpn

openssl用来进行加密,lzo用来进行数据压缩。

下载地址 http://prdownloads.sourceforge.net/openvpn/openvpn-2.0_beta7.tar.gz

http://www.oberhumer.com/opensource/lzo/download/lzo-1.08.tar.gz

先检查openssl是否已安装

rpm –qa | grep openssl

没有请先装openssl, openssl如何安装就不介绍了。

我将openvpn-2.0.beta7.tar.gz和lzo-1.08.tar.gz下载到/home

#cd /home

#tar zxvf lzo-1.08.tar.gz

#cd lzo-1.08.

#./comfigure

#make

#make install

#tar zxvf openvpn-2.0_beta7.tar.gz

#cd openvpn-2.0_beta7

#./configure --with-lzo-headers=/usr/local/include --with-lzo-lib=/usr/local/lib

#make

#make install

#mkdir /etc/openvpn

#cd /etc/openvpn

#openvpn --genkey --secret static.key

将static.key从office主机复制到home主机的/etc/openvpn目录中

office#scp static.key root@218.85.158.244:/etc/openvpn

office#cd /home/openvpn-2.0_beta7/sample-config-files

office#cp static-office.conf /etc/openvpn

office#cp firewall.sh /etc/openvpn

office#cp openvpn-startup.sh /etc/openvpn

office#cp office.up /etc/openvpn

修改static-office.conf ,firewall.sh ,openvpn-startup.sh,office.up

我们先来看office主机的这几个配置文件。

static-office.conf配置如下:

dev tun0

remote 218.85.158.244 #为对端的公网ip

ifconfig 10.1.0.1 10.1.0.2 #为本端和对端的vpn ip地址

secret /etc/openvpn/static.key #密钥

port 5000

comp-lzo

ping 15

ping 15

ping-restart 45

ping-timer-rem

persist-tun

persist-key

verb 3

office主机的firewall.sh脚本如下:

#!/bin/bash

PRIVATE=192.168.1.0/24

LOOP=127.0.0.1

iptables -P OUTPUT DROP

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -F

iptables -P OUTPUT ACCEPT

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -A INPUT -i eth1 -s $LOOP -j DROP

iptables -A FORWARD -i eth1 -s $LOOP -j DROP

iptables -A INPUT -i eth1 -d $LOOP -j DROP

iptables -A FORWARD -i eth1 -d $LOOP -j DROP

iptables -A FORWARD -p tcp --sport 137:139 -o eth1 -j DROP

iptables -A FORWARD -p udp --sport 137:139 -o eth1 -j DROP

iptables -A OUTPUT -p tcp --sport 137:139 -o eth1 -j DROP

iptables -A OUTPUT -p udp --sport 137:139 -o eth1 -j DROP

iptables -A FORWARD -s ! $PRIVATE -i eth0 -j DROP

iptables -A INPUT -s $LOOP -j ACCEPT

iptables -A INPUT -d $LOOP -j ACCEPT

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

iptables -A INPUT -p tcp --dport http -j ACCEPT

iptables -A INPUT -p tcp --dport ssh -j ACCEPT

iptables -A INPUT -p udp --dport 5000 -j ACCEPT #openvpn默认使用udp 5000端口

iptables -A INPUT -i tun+ -j ACCEPT

iptables -A FORWARD -i tun+ -j ACCEPT #这两句很重要

iptables -A INPUT -i tap+ -j ACCEPT

iptables -A FORWARD -i tap+ -j ACCEPT

iptables -A INPUT -i eth0 -j ACCEPT

iptables -A FORWARD -i eth0 -j ACCEPT

iptables -A OUTPUT -m state --state NEW -o eth1 -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -m state --state NEW -o eth1 -j ACCEPT

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -t nat -A POSTROUTING -s $PRIVATE -o eth1 -j MASQUERADE

office.up脚本配置如下:

#!/bin/bash

route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.1.0.2 #此处是对端的vpn ip地址

openvpn-startup.sh脚本配置如下:

#!/bin/bash

dir=/etc/openvpn

$dir/firewall.sh

modprobe tun

echo 1 > /proc/sys/net/ipv4/ip_forward

openvpn --config /etc/openvpn/static-office.conf

home主机的4个配置文件

static-home.conf如下

dev tun0

remote 61.131.58.194

ifconfig 10.1.0.2 10.1.0.1

secret /etc/openvpn/static.key

port 5000

comp-lzo

ping 15

ping 15

ping-restart 45

ping-timer-rem

persist-tun

persist-key

verb 3

firewall.sh如下

#!/bin/bash

PRIVATE=192.168.0.0/24

LOOP=127.0.0.1

iptables -P OUTPUT DROP

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -F

iptables -P OUTPUT ACCEPT

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -A INPUT -i eth0 -s $LOOP -j DROP

iptables -A FORWARD -i eth0 -s $LOOP -j DROP

iptables -A INPUT -i eth0 -d $LOOP -j DROP

iptables -A FORWARD -i eth0 -d $LOOP -j DROP

iptables -A FORWARD -p tcp --sport 137:139 -o eth0 -j DROP

iptables -A FORWARD -p udp --sport 137:139 -o eth0 -j DROP

iptables -A OUTPUT -p tcp --sport 137:139 -o eth0 -j DROP

iptables -A OUTPUT -p udp --sport 137:139 -o eth0 -j DROP

iptables -A FORWARD -s ! $PRIVATE -i eth1 -j DROP

iptables -A INPUT -s $LOOP -j ACCEPT

iptables -A INPUT -d $LOOP -j ACCEPT

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

iptables -A INPUT -p tcp --dport http -j ACCEPT

iptables -A INPUT -p tcp --dport ssh -j ACCEPT

iptables -A INPUT -p udp --dport 5000 -j ACCEPT

iptables -A INPUT -i tun+ -j ACCEPT

iptables -A FORWARD -i tun+ -j ACCEPT

iptables -A INPUT -i tap+ -j ACCEPT

iptables -A FORWARD -i tap+ -j ACCEPT

iptables -A INPUT -i et

[1] [2] 下一页

频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。

原始作者:佚名 录入时间:2007-3-31 2:17:05
信息来源:不详 投稿信箱:itqoo@126.com
教程录入:itqoo    责任编辑:itqoo 
  • 上一个教程:

  • 下一个教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    - 关于我们 - 合作伙伴 - 友情链接 - 广告刊登 - 投稿热线 - 在线留言版权声明联系方式 -
    IT公社版权所有 粤ICP备05127012号
    Copyrigh@2005-2006 itqoo.com.Inc All Rights Reserved  推荐分辨率 1024*768
    联系站长:E-Mail:itqoo@126.com     MSN:urchincc@hotmail.com    QQ:点击这里给我发消息
    特别感谢:亿太网络提供空间支持