op

服务介绍

VPN直译就是虚拟专用通道,是提供给企业之间或者个人与公司之间安全数据传输的隧道,OpenVPN无疑是Linux下开源VPN的先锋,提供了良好的性能和友好的用户GUI。它大量使用了OpenSSL加密库中的SSLv3/TLSv1协议函数库。

实验拓扑图

实验环境

xuegod 63 br0 IP :172.18.80.163  eth1:192.168.10.63  (vmnet1)       DG:192.168.10.64

备注使用vmnet1 模拟公网

xuegod 64 eth1:192.168.10.64    DG:192.168.10.63  (vmnet1)

xuegod63 网络信息查看

[[email protected] 桌面]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

172.18.80.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0

192.168.10.0    0.0.0.0         255.255.255.0   U     1      0        0 eth1

0.0.0.0         192.168.10.64   0.0.0.0         UG    0      0        0 eth1

xueggod 64网络信息查看

Xuegod63上面开启路由转发功能

[[email protected] ~]# vim /etc/sysctl.conf

安装vpn 前的准备工作

[[email protected] ~]# yum install openssl openssl-devel gcc -y

[[email protected] ~]# yum install openssl openssl-devel gcc -y

配置xuegod 63为openvpn服务器

上传需要的软件包    lzo-2.03.tar.gz  openvpn-2.2.2.tar.gz

安装软件 lzo-2.03.tar.gz

[[email protected] lzo-2.03]# tar zxvf lzo-2.03.tar.gz ; cd /root/openvpn/lzo-2.03

[[email protected] lzo-2.03]# ./configure --prefix=/usr/ && make -j 4 && make install

建立CA中心

[[email protected] 2.0]# pwd

/root/openvpn/openvpn-2.2.2/easy-rsa/2.0

配置CA中心的相关变量

64 export KEY_COUNTRY="US"

65 export KEY_PROVINCE="CA"

66 export KEY_CITY="SanFrancisco"

67 export KEY_ORG="Fort-Funston"

68 export KEY_EMAIL="[email protected]"

69 export [email protected]

70 export KEY_CN=changeme

71 export KEY_NAME=changeme

72 export KEY_OU=changeme

73 export PKCS11_MODULE_PATH=changeme

74 export PKCS11_PIN=1234

export KEY_COUNTRY="CN"

65 export KEY_PROVINCE="CA"

66 export KEY_CITY="beijing"

67 export KEY_ORG="xuegod"

68 export KEY_EMAIL="[email protected]"

69 export [email protected]

70 export KEY_CN=changeme

71 export KEY_NAME=changeme

72 export KEY_OU=IT

73 export PKCS11_MODULE_PATH=changeme

74 export PKCS11_PIN=1234

[[email protected] 2.0]# ls keys/

index.txt  serial

[[email protected] keys]# cat serial  CA认证签名的次数

01

[[email protected] keys]# cat index.txt  签名过的用户

配置CA中心

[[email protected] 2.0]# ./build-ca   一路回车

[[email protected] 2.0]# ./build-ca

Generating a 1024 bit RSA private key

.++++++

...........++++++

writing new private key to ‘ca.key‘

-----

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter ‘.‘, the field will be left blank.

-----

Country Name (2 letter code) [CN]:

State or Province Name (full name) [CA]:

Locality Name (eg, city) [beijing]:

Organization Name (eg, company) [xuegod]:

Organizational Unit Name (eg, section) [IT]:

Common Name (eg, your name or your server‘s hostname) [changeme]:xuegod63.cn

Name [changeme]:bob

Email Address [[email protected]]:[email protected]

[[email protected] 2.0]# ls keys/

ca.crt   # 根证书 ca.key #私钥  index.txt  serial

颁发证书

颁发证书给vpn server

[[email protected] 2.0]# ./build-key-server  server  颁发证书给server 一路回车

查看vpn生成的相关配置文件

[[email protected] 2.0]# ll keys/server.*

-rw-r--r-- 1 root root 3993 11月 12 02:20 keys/server.crt       服务器的证书

-rw-r--r-- 1 root root  712 11月 12 02:19 keys/server.csr          服务器的证书请求文件

-rw------- 1 root root  912 11月 12 02:19 keys/server.key           服务器的私钥

查看序列号和已经颁发的证书文件

[[email protected] 2.0]# cat keys/serial

02

[[email protected] 2.0]# cat keys/index.txt

V 251108181933Z 01 unknown /C=CN/ST=beijing/L=beijing/O=xuegod/OU=IT/CN=server/name=changeme/[email protected]

颁发证书给客户端

[[email protected] 2.0]# ./build-key yonghu

查看证书

[[email protected] 2.0]# ll keys/yonghu.*

-rw-r--r-- 1 root root 3871 11月 12 02:31 keys/yonghu.crt   #客户端证书

-rw-r--r-- 1 root root  712 11月 12 02:31 keys/yonghu.csr    #客户端证请求文件

-rw------- 1 root root  916 11月 12 02:31 keys/yonghu.key   #客户端证 私钥

查看序列号和CA颁发的证书文件

[[email protected] 2.0]# cat keys/serial

03

[[email protected] 2.0]# cat keys/index.txt

V 251108181933Z 01 unknown /C=CN/ST=beijing/L=beijing/O=xuegod/OU=IT/CN=server/name=changeme/[email protected]

V 251108183134Z 02 unknown /C=CN/ST=beijing/L=beijing/O=xuegod/OU=IT/CN=yonghu/name=changeme/[email protected]

CA认证确认身份后,客户端和服务端需要协商一份对称秘钥,来加密数据

建立秘钥(迪菲尔曼)

[[email protected] 2.0]# ./build-dh

Generating DH parameters, 1024 bit long safe prime, generator 2

This is going to take a long time

........................................................................................+.....+..........................................+.............+............................................................................++*++*++*

[[email protected] 2.0]# ls keys/dh1024.pem

keys/dh1024.pem

[[email protected] 2.0]# cat keys/dh1024.pem

-----BEGIN DH PARAMETERS-----

MIGHAoGBAO+CR/g6dn05dNCsHTNMtaDoBXZJbs926pl2jKHpu2aMypLxsCRpKxDW

/imTYkftEGGzeqhOMigWgddgJhp3Cq1F+BWtgsm7bqFiPKa6x0M/ju0qZbePz8Jg

pC5aYNBh1ebuvj5co+gs2BjDmN1D050A652uNDHRVmso/XZe8MULAgEC

-----END DH PARAMETERS-----

备注以后若要添加客户端,使用CA重复给客户端颁发证书,以及生成对应的私钥使用下面的步骤

./build-key XXXX

./build-dh

配置VPN服务器

cp sample-config-files/server.conf   /etc/server.conf

ca的路径

[[email protected] keys]# pwd

/root/openvpn/openvpn-2.2.2/easy-rsa/2.0/keys

需要修改的内容

;proto tcp

36 proto udp

改为

;proto tcp

proto tcp

78 ca ca.crt

ca  /root/openvpn/openvpn-2.2.2/easy-rsa/2.0/keys/ca.crt  ##ca中心的根证书

79 cert server.crt

cert /root/openvpn/openvpn-2.2.2/easy-rsa/2.0/keys/server.crt  ##openvpn服务器的证书

80 key server.key  # This file should be kept secret

key /root/openvpn/openvpn-2.2.2/easy-rsa/2.0/keys/server.key  ##openvpn服务器的秘钥

87 dh1024.pem

dh   /root/openvpn/openvpn-2.2.2/easy-rsa/2.0/keys/dh1024.pem

295 verb 3

verb 4

138行后追加1条路由

;push "route 192.168.10.0 255.255.255.0"

;push "route 192.168.20.0 255.255.255.0"

push "route 172.18.80.0 255.255.255.0"

启动openvpn

[[email protected] ~]# /usr/local/sbin/openvpn --config /etc/server.conf --daemon(表示在后台启动)

Thu Nov 12 05:33:58 2015 Initialization Sequence Completed

查看是否启动成功

[[email protected] keys]# netstat -anutp | grep 1194

tcp        0      0 0.0.0.0:1194                0.0.0.0:*                   LISTEN      24646/openvpn

[[email protected] keys]# ifconfig 多出一个网卡

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00

inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:100

RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

配置vpn客户端

安装lzo-2.03.tar.gz

[[email protected] openvpn]# scp lzo-2.03.tar.gz openvpn-2.2.2.tar.gz  192.168.10.64:/root/

[[email protected] lzo-2.03]# tar zxvf lzo-2.03.tar.gz

[[email protected] lzo-2.03]# cd lzo-2.03

[[email protected] lzo-2.03]# ./configure --prefix=/usr/ && make -j 4 && make install

[[email protected] lzo-2.03]# echo $?

0

安装 openvpn

[[email protected] openvpn-2.2.2]# tar zxvf openvpn-2.2.2.tar.gz

[[email protected] openvpn-2.2.2]# cd openvpn-2.2.2

[[email protected] openvpn-2.2.2]# ./configure --with-lzo-lib=/usr/  && make -j 4 && make install

[[email protected] openvpn-2.2.2]# echo $?

0

把之前生成的证书颁发给客户端

[[email protected] ~]# mkdir /etc/openvpn   新建目录用于存放证书

拷贝证书

拷贝文件

[[email protected] ~]# cp /root/openvpn-2.2.2/sample-config-files/client.conf   /etc/openvpn/

编辑文件

[[email protected] ~]# vim /etc/openvpn/client.conf

37行

;proto tcp

proto udp

proto tcp

remote my-server-1 1194

;remote my-server-2 1194

remote 192.168.10.63 1194

ca ca.crt

ca /etc/openvpn/ca.crt

cert client.crt

cert /etc/openvpn/yonghu.crt

key client.key

key /etc/openvpn/yonghu.key

启动客户端

[[email protected] ~]# /usr/local/sbin/openvpn --config /etc/openvpn/client.conf --daemon

查看启动情况

[[email protected] openvpn]# ifconfig tun0

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00

inet addr:10.8.0.6  P-t-P:10.8.0.5  Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:100

RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

测试通信

openVPN搭建完成

场景模拟:在xuegod63上开启一台ftp服务器只允许内网用户和分公司的用户访问,可以先登录vpn,在访问192.168.10.63 或10.8.0.1

配置xuegod63为ftp 服务器

[[email protected] keys]# rpm -ivh /mnt/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm

[[email protected] keys]# /etc/init.d/vsftpd restart

关闭 vsftpd:                                              [失败]

为 vsftpd 启动 vsftpd:                                    [确定]

xuegod 64 上进行测试

[[email protected] openvpn]# rpm -ivh /mnt/Packages/lftp-4.0.9-1.el6.x86_64.rpm

测试2

[[email protected] ~]# echo "zhe shi wod vpn " > /var/www/html/index.html

[[email protected] ~]# cd /var/www/html/

[[email protected] html]# ls

index.html

[[email protected] html]# cat index.html

zhe shi wod vpn

[[email protected] html]# /etc/init.d/httpd restart

停止 httpd:                                               [失败]

正在启动 httpd:                                           [确定]

[[email protected] ~]# curl 10.8.0.1

zhe shi wod vpn

在xuegod63上开启防火墙只允许 10.8.0.0/24 的20和21端口访问

[[email protected] keys]# /etc/init.d/iptables restart

[[email protected] keys]# iptables -t filter -A INPUT -s 10.8.8.0/24 -p tcp --dport 20 -j ACCEPT

[[email protected] keys]# iptables -t filter -A INPUT -s 10.8.8.0/24 -p tcp --dport 21 -j ACCEPT

[[email protected] keys]# /etc/init.d/iptables save

[[email protected] keys]# iptables -nL --line-number

Chain INPUT (policy ACCEPT)

num  target     prot opt source               destination

1    ACCEPT     tcp  --  10.8.8.0/24          0.0.0.0/0           tcp dpt:20

2    ACCEPT     tcp  --  10.8.8.0/24          0.0.0.0/0           tcp dpt:21

op

时间: 2024-10-12 06:07:45

                                op的相关文章

ERROR<53761> - Plugins - conn=-1 op=-1 msgId=-1 - Connection Bind through PTA failed (91). Retrying...

LDAP6.3在DSCC控制台启动实例完成,但是操作状态显示“意外错误”,查看日志如下: 04/May/2016:21:10:39 +0800] - Sun-Java(tm)-System-Directory/6.3 B2008.0311.0224 (32-bit) starting up[04/May/2016:21:10:39 +0800] - Listening on all interfaces port 11111 for LDAP requests[04/May/2016:21:10

OP趋势系统

经过3年多时间的摸索,经历过熊市牛市的历练,终于完成坚持已久的OP趋势系统的实践,接下来,我将在股灾后,每天都分享OP趋势系统的信号,可以很负责任的说,经过10年历史数据的测试,加上3年的实盘,更加坚定我对这个OP趋势系统的信心,我们只需要等待,等待下一个行情,正如E大一样,等待价值回归,打折后买入一样,我们是等待OP趋势系统的信号,坚定执行,华丽丽完成人生下一次财富的积累. ————————————信号篇————————————OP趋势系统,从个股到指数ETF,正是其走向成熟的标志,之所以会公

互联网行业的那些缩写PM,RD,FE,UE,QA,OP,BRD,MRD,PRD,FSD

PM--product manager 这个是产品经理的意思.我一直以为是项目经理的缩写.太坑爹了,本人还写过一个屌丝文章,看来要贻笑大方了. RD--research and develop RD是研究与开发(研发).诸如PHP程序猿,Java程序猿,无论是爱疯的还是安卓的都是属于这一类别. FE -- front end development FE是前端研发.有点意思! UE--  user experience UE是用户体验 QA--quality assurance QA是测试 OP

如何从普通程序员晋升为架构师 面向过程编程OP和面向编程OO

引言 计算机科学是一门应用科学,它的知识体系是典型的倒三角结构,所用的基础知识并不多,只是随着应用领域和方向的不同,产生了很多的分支,所以说编程并不是一件很困难的事情,一个高中生经过特定的训练就可以做得到.但是,会编程和编好程绝对是两码事,同样的程序员,有的人几年之后成为了架构师,有的人却还在不停地coding,只不过ctrl-c.ctrl-v用得更加纯熟了.在中国,编程人员最终的归途无外乎两条:一是转向技术管理,它的终点是CTO:二是继续深入,它的终点是首席架构师,成为CEO的人毕竟是少数.如

Python 实现的下载op海贼王网的图片(网络爬虫)

没得事就爬一下我喜欢的海贼王上的图片 需要在d盘下建立一个imgcache文件夹 # -*- coding: utf-8 -*- import urllib import urllib2 import json from bs4 import BeautifulSoup import threadpool import thread class htmlpaser: def __init__(self): self.url='http://1.hzfans.sinaapp.com/process

完绘质勘Datamine.Studio.EM/OP.v2.1.170.0

完绘质勘Datamine.Studio.EM/OP.v2.1.170.0 Datamine Studio OP v2.1.2.0 Win64 1CD 主要特点和优点-整合-工作室EM可以与主机的现有的数据格式,包括动态链接到一个实时更新的钻孔数据库整合能力.图像支持容易进出查看地理参考图像从主机格式褶皱平面图像或适合现有地形数据.固体建模灵活的工具允许手动或自动线框实体或表面代表地质特征的创作.块建模利用笪塔敏锷著名的模块化建模工具快速创建准确的体积模型和进行基本的品位估计的力量.-通讯-以3D

PCI OP WiFi 測试(二):PCI对OP的要求

每次看PCI的文档.都一头雾水,本来就非常抽象.看英文就感觉更抽象.泛泛而谈的要求,看一次忘一次.仅仅好翻译成中文.没事就看看,知道指导思想. 例如以下,是翻译PCI的<Modular Derived Test Requirements>的OP部分,这样直接翻译不知道是不是有侵权的问题(⊙﹏⊙)b 正文開始: DTR 模块3: 开放协议的需求 F-发现与定义协议和接口 DTR F1:接口的定义 设备所用到的公开的协议和接口.应该清晰地写在<开放协议模块-协议声明表格>(原文摘录:O

ifconfig &nbsp; grep -op

[[email protected] ansible]#  ifconfig | grep eth -A 7eth0      Link encap:Ethernet  HWaddr 00:0C:29:D3:1E:A5            inet addr:10.4.104.86  Bcast:10.4.104.255  Mask:255.255.255.0          inet6 addr: fe80::20c:29ff:fed3:1ea5/64 Scope:Link        

数组进行多少次OP操作,才能有序

1 题目描述: 有一个数组:2,1,4,3.对于数组,有一种操作op(idx):将该index对应的数字移到首位.比如: op(3):  2 1 43 -> 3 2 1 4 op(1):  3 2 14 -> 2 3 1 4 op(2):  2 3 1 4 -> 1 2 3 4 问对于给定的数组,数组各个元素是任意的整数,可能有重复值,需要多少次OP操作,才能使得数组有序? 对于上面的例子,需要3次即可. 2. 问题解析: 最坏的情况需要 n 次就够了,第 i 次找到数组中倒数第 i 大