利用Webmin架设Openvpn服务器_第1页
利用Webmin架设Openvpn服务器_第2页
利用Webmin架设Openvpn服务器_第3页
利用Webmin架设Openvpn服务器_第4页
利用Webmin架设Openvpn服务器_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

利用Webmin架设OpenVPN服务器企业规模随着发展,越来越多人员需要在出差与不在公司的时候进行远程办公,而传统VPN设备以其价格与平台依赖,无法很好的满足包括Windows、Linux、MACOSX甚至Andriod等最新智能手机系统的VPN使用需求。当前流行的SSLVPN中,免费、开源并广泛使用的一个VPN项目便是OpenVPN,本文将介绍如何使用Webmin架设一个基本的VPN服务器,用于中小企业远程远程接入使用(RemoteAccess)。OpenVPN是一个用于创建虚拟专用网络加密通道的软件包,最早由JamesYonan编写。OpenVPN允许参与建立VPN的单点使用共享金钥,电子证书,或者用户名/密码来进行身份验证。它大量使用了OpenSSL加密库中的SSLv3/TLSvl协议函式库。目前OpenVPN能在Solaris、Linux、OpenBSD、FreeBSD、NetBSD、MacOSX与Windows2000/XP/Vista上运行,并包含了许多安全性的功能。它并不是一个基于Web的VPN软件,也不与IPsec及其他VPN软件包兼容。OpenVPN使用OpenSSL库加密数据与控制信息:它使用了OpenSSL的加密以及验证功能,意味着,它能够使用任何OpenSSL支持的算法。它提供了可选的数据包HMAC功能以提高连接的安全性。此外,OpenSSL的硬件加速也能提高它的性能。OpenVPN提供了多种身份验证方式,用以确认参与连接双方的身份,包括:预享私钥,第三方证书以及用户名/密码组合。预享密钥最为简单,但同时它只能用于建立点对点的VPN;基于PKI的第三方证书提供了最完善的功能,但是需要额外的精力去维护一个PKI证书体系。OpenVPN2.0后引入了用户名/口令组合的身份验证方式,它可以省略客户端证书,但是仍有一份服务器证书需要被用作加密。OpenVPN所有的通信都基于一个单一的IP端口,默认且推荐使用UDP协议通讯,同时TCP也被支持。OpenVPN连接能通过大多数的代理服务器,并且能够在NAT的环境中很好地工作。服务端具有向客户端〃推送〃某些网络配置信息的功能,这些信息包括:IP地址、路由设置等。OpenVPN提供了两种虚拟网络接口:通用Tun/Tap驱动,通过它们,可以建立三层IP隧道,或者虚拟二层以太网,后者可以传送任何类型的二层以太网络数据。传送的数据可通过LZO算法压缩。IANA(InternetAssignedNumbersAuthority)指定给OpenVPN的官方端口为1194。OpenVPN2.0以后版本每个进程可以同时管理数个并发的隧道。OpenVPN使用通用网络协议(TCP与UDP)的特点使它成为IPsec等协议的理想替代,尤其是在ISP(Internetserviceprovider)过滤某些特定VPN协议的情况下。在选择协议时候,需要注意2个加密隧道之间的网络状况,如有高延迟或者丢包较多的情况下,请选择TCP协议作为底层协议,UDP协议由于存在无连接和重传机制,导致要隧道上层的协议进行重传,效率非常低下。OpenVPN与生俱来便具备了许多安全特性:它在用户空间运行,无须对内核及网络协议栈作修改;初始完毕后以chroot方式运行,放弃root权限;使用mlockall以防止敏感数据交换到磁盘。OpenVPN通过PKCS#11支持硬件加密标识,如智能卡。Webmin是个基于web的unix、linux管理台,可以通过其丰富组件来实现对系统的可视化管理。在VPN环境的架设中,我们使用到OpenVPN组件,实现快捷准确的VPN架设及管理。网络结构10.2.300.10VPNBOX10.2.300.10VPNBOXLAN:局域网一共分为三个网段10.2.100.*/24为VPN服务器所在网段10.2.200.*/24为核心交换机与防火墙网关连接网段10.2.300.*/24为服务器所在网段WAN:假设218.139.*.*为联通线路,59.57.*.*为电信线路VPN:10.2.400.*/24为VPN加密后分配的IP段系统设置硬件环境ServerVMwareEsxi4中虚拟机OSCentos5.4x86IP00MEM256MDiskSpace8G安装系统通过Vsphereclient分配虚拟机资源并安装系统,系统安装方法就不在此详细说明了。待系统安装后通过命令升级补丁并关闭SELinux,待更新完毕后重启服务器:root@vpnbox#yumupdateroot@vpnbox#vim/etc/sysconfig/selinu确保SELIUNUX=disabledroot@vpnbox#reboot安装EPEL由于OpenVPN默认没有包含在Centos的软件仓库中,需要安装EPEL仓库扩展,才可以通过yum工具安装OpenVPN,具体方式如下:root@vpnbox#wgethttp://download.fedora.redha/pub/epel/5/i386/epel—release—5—4.noarch.rpmroot@vpnbox#rpm-ivhepel-release-5-4.noarch.rpmroot@vpnbox#yumupdateroot@vpnbox#yuminstallOpenVPNroot@vpnbox#chkconfigOpenVPNon安装Webmin核心软件包通过Webmin的官方网站下载最新的软件包保本,然后通过第三方库,搜索关键字“OpenVPN”,可以获得一个OpenVPN+CA的扩展组件,点击安装确认。安装完成后,可以看到如下图示:Login:root@Webmin叵ISystem®ServersFetchmailMailRetrievalOpenVPNLogin:root@Webmin叵ISystem®ServersFetchmailMailRetrievalOpenVPN+CAProcmailMailFilterReadUserMailSSHServerSendmailMailServer回Others回Network!ng®Hardware©Cluster0Un-usedModulesSearch:|△ViewModule'sLogsSystemInformationSRefreshModules©LogoutHelp..ModuleConfigVPNListOpenVPNAdministrationOpenVPNversion2.0_rcl6,OpenSSLversion0.9.7eCertificationAuthorityListActiveConnectionStartOpenVPN StartOpenVPNactivatingallconfigurationspresentinOpenVPNhomewithextension.conforwhateveryouchoosedinmoduleconfiguration清空防火墙规则并开启IP转发•通过Webmin,点击Networking-〉LinuxFirewall,删除所有防火墙配置,记得点击ApplyConfiguration应用配置。此点仅适用于测试环境,实际生产用请根据自身应用需求调整VPN的防火墙权限。•访问控制iptables策略范例:#Accesspolicyforclient_username-AFORWARD-itunO-pudp-mudp-s10.2.400.41-ddns_server_ip—dport53-jACCEPT-AFORWARD-itun0-ptcp-mtcp-s10.2.400.41-dwww_server_ip--dport80-jACCEPT点击Networking->NetworkConfiguration-〉RoutingandGateways,将“Actasrouter”选项至为Yes,点击Save保存设置。重启服务器配置网关端口映射与内部静态路由将网关上的固定IP端口映射至OpenVPN服务器的端口,具体映射设置方法根据不同型号的网关而定,就不在此说明了,关键点为将两路的IP端口都映射至LAN内VPN的IP地址,以00为例,协议与端口分别为UDP与1194。配置核心交路由条目,将发往10.2.400.0/24网段的包转发给00,注意上文的IP分配至此,前期准备已经完成,接着便开始进行OpenVPN的详细配置。架设OPENVPN建立CA企业使用,需要建立一个证书颁发机构,用于生成VPN服务器与客户端密钥。建立CA的方法很简单:点击Webmin-〉Servers-〉OpenVPN+CA填写内容:CA名称自定义

openssl配置文件默认不变CA密钥有效期自定义国家自定义省自定义市自定义组织自定义邮箱自定义注意:Keysize如果采用2048,生成时间会比较长,可以改成1024,提高速度CA配置文件生成后,在CertificationAuthorityList中可以查看,不要随意删除CA密钥配置CA密钥为VPN所配置的授权中心,server及client的密钥都基于该key生成二、生成VPN服务端密钥1.点击CertificationAuthorityList,点击之前建立的CA,点击右边的keyslist,查看该CA下的密钥文件,一开始应该是空的,然后开始生成Server端密钥,需要填写以下内容:密钥名称自定义密钥密码服务器端不要填写密钥类型服务器密钥有效期自定义国家自定义省自定义市自定义组织自定义组织单元自定义VPNListActiveConnectionCertificationAuthorityListSaveStartOpenVPN StartOpenVPNactivatingallconfigurationspresentinOpenVPNhomewithextenslon.8nforwhateveryouchoosedVPNListActiveConnectionCertificationAuthorityListSaveStartOpenVPN StartOpenVPNactivatingallconfigurationspresentinOpenVPNhomewithextenslon.8nforwhateveryouchoosedinmoduleconfiguration示意图点击Save进行保存,系统会自动生成CA密钥。邮箱自定义示意图配置VPN服务端各配置项比较复杂,就不在此叙述,大部分情况保持默认选项,需要关注几点,可以根各配置项比较复杂,就不在此叙述,大部分情况保持默认选项,需要关注几点,可以根据自己的需求查阅OpenVPN的官方文档•推送路由:push""route""推送DNS、WINS、域信息:push""dhcp—optionDNSdns♦〃server_ippush""dhcp—optionWINSwins_server_ip""push""dhcp—optionDOMAIN""LoginrootQWtBmin0SytwmOSenmraFttctwnailMailR«tri«valO$«nVPN+CAProcmallMailFliterReadUserMailSSHS«iwrStMmaiiMailS«<v«<D推送DNS、WINS、域信息:push""dhcp—optionDNSdns♦〃server_ippush""dhcp—optionWINSwins_server_ip""push""dhcp—optionDOMAIN""LoginrootQWtBmin0SytwmOSenmraFttctwnailMailR«tri«valO$«nVPN+CAProcmallMailFliterReadUserMailSSHS«iwrStMmaiiMailS«<v«<DOthers0NetworkingOHardwareOClusurUUnusedModulesSearch_Help..ModuleCon岬NewVPN&erverNameport(Port)proto(Protocol)DeviceBridgeDeviceNetworkDeviceforBridgeIPconfigforbridgeOpenVPNAdministrationOptnVPNvertion20_rd6, vtrsion097*I|chan9«me•tno»SearchDocsOpenVPNAdministrationAViewModule'sLogsWSystemInformation$R»fr»»nModuMt◎LogoutIPAddress/Gatcway: 留空Netmask|Stan:|留空ErtU:Pmanagement(tnableManagement)ca(CertillcalionAuthority)Choos*key留空EnaNt|no▼IP127001Port|留空cnangemeseiver▼CeititicateServerautomaticKayServetDiNis-HellmanrandomtilsCeititicateServerautomaticKayServetDiNis-Hellmanrandomtilsautomaticdh2048pemnoTenableTISandanumesetvetroleduringILSndsliake

noTenableTISandanumesetvetroleduringILSndsliakeLogmroo<OWetxninOSystem3SeiversF«tchmajlMailRetrievalOpenVPN*CAProcmailMMFlltwReadumtManSSHSemrSendmailMailServer3othersSNfttwortang0H«ri#war«□ClusterOUrvusedModulesSearch:|—△ViewModule'sLogsWSysteminformauon=RefreshModules完成了VPN服务器端密钥生成与VPN服务器配置后,整个VPN服务器就可以通过Webmin启动了,点击页面中的启动按钮即可启动OpenVPN服务进程。四、创建客户端密钥新建密钥点击Webmin-〉OpenVPN+CA-〉CertificationAuthorityList-〉创建的VPNCA中—〉KeysList填写NewkeytoCertificationAuthority内的vpn_ca相关选项:•Keyname:建议以client_username的方式命名(前缀为client_,后面根据账户的命名规则来填写),便于区分serverkey与clientkey,并避免Keyname少于四个字符不予创建账户的限制Keypassword:建议利用其他密码生成器随机生成六位长度的密码作为用户初始密码KeyServer:设置为clientGenerateexportablePKCS#12key:默认为noPasswordforexportingPKCS#12(min4chars):目前暂无用处,可以留空Keyexpirationtime(days):设置授权过期时间,默认365天State,Province,City:根据实际填写Organization:根据实际填写OrganizationUnit:根据用户所属不同部门自行调整即可,与域控制器的OU无关,不影响实际使用,有利于VPN登陆日志查询使用Email:用户的Email账户,不影响实际使用点击Export导出密钥及配置文件的压缩包,之后通过一定途径交给用户NewkeytoCertificationAuthority:my_vpn_caKeynameKeypassword[min4chars)KeynameKeypassword[min4chars)KeyServerGenerateexportablePKCS#12keymyvpnclient••••••Serverkeydoesn'tneedpassword!client7PasswordforexportingFKCS#12(imin4chars)••••••Keyexpirationtime(days) 355StateProvinceCityOrganizationOrganizationUnitEmailSa>/e示意图配置VPNClient点击VPNList点击vpn_server对应的ClientList点击VPNClient,若第一步已新建了一个clientkey,则系统默认会将keyname作为该client的名称remote(RemoteIP)设置为59.57.*.*,公司网关的电信出口IP(需要做双线路支持,只需将交给客户的密钥压缩包中的配置文件复制一份,将其中IP地址变更为联通线路IP)分配VPN用户连接后获取到的IP,在client配置-〉ccdfilecontent添加配置选项:ifconfig-push10.2.400.4110.2.400.42其中41为客户端IP,42为服务端产生用于与客户端互联的IP可用的IP对如下:[1,2:][5,6;][9,10][13,14][:17,18][21,22][25•,26][29',30][33,34][37,38]][41,42][45,46][49,50][53,54][57,58][61,62][65i,66][69',70][73,74][77,78]][81,82][85•,86][89',90][93,94][97,98]][101,102][105,106][109,110][113,114][117,118][121,122][125,126][129,130][133,134][137,138][141,142][145,146][149,150][153,154][157,158][161,162][165,166][169,170][173,174][177,178][181,182][185,186][189,190][193,194][197,198][201,202][205,206][209,210][213,214][217,218][221,222][225,226][229,230][233,234][237,238][241,242][245,246][249,250][253,254]配置VPN用户网关重定向在client配置-〉AdditionalConfigurations中增加redirect-gatewaydefl此功能用于某些特殊情况,有网络管理知识的技术人员们需要了解,我就不在此介绍了,默认使用中不必添加此内容。•点击Save保存配置删除VPN配置VPNList-〉vpn_server对应的ClientList点击remove删除不再使用的VPNclient•删除VPNKey点击CertificationAuthorityList-〉vpn_ca所对应的Keyslist点击remove删除不再使用的VPNClientKey五、安装客户端Windows客户端安装OpenVPN客户端,下载地址位于。将管理员提供的密钥文件释放至OpenVPN的配置目录中。例如:将client_username.zip释放至C:\ProgramFiles\OpenVPN\config\目录下。运行桌面图标OpenVPNGUI。右键右下角图标,点击connect之后会提示输入密码(用户初始密码为000000,建议用户通过右键ChangePasswd进行密码的修改),输入密码后客户端即开始进行VPN连接,并且分配IP,当右下角VPN连接成为绿色,说明VPN连接已经建立,可以访问内网资源。MacOSX客户端安装tunnelblick。最新版本下载地址:/p/tunnelblick/。原版安装扌旨南见:http:///p/tunnelblick/wiki/FAQ下载最新版本镜像,解压后,将Tunnelblick.app拖拽到应用程序的文件夹下或者硬盘内的任意位置。删除tunnelblick直接将Tunnelblick.app的图标拖动至垃圾箱。其余OpenVPN的配置文件将保留在/users/currentuser/Library/OpenVPN目录下,若不需要,可以删去。具体细节见tunnelblick使用指南为何tunnelblick需要root权限OpenVPN需要root权限修改例如配置新网络设备,修改路由,添加与删除DNS服务器等操作。配置密钥文件.将管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论