ubuntu上搭建open***
本次ubuntu的版本
root@node2:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.5 LTS Release: 12.04 Codename: precise
ip地址
root@node2:~# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:16:3e:00:3f:b0 brd ff:ff:ff:ff:ff:ffinet 10.168.198.51/21 brd 10.168.199.255 scope global eth0 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:16:3e:00:48:5d brd ff:ff:ff:ff:ff:ffinet 121.41.48.13/22 brd 121.41.51.255 scope global eth1
一、open***原理
open***通过使用公开密钥(非对称密钥,加密解密使用不同的key,一个称为Publice key,另外一个是Private key)对数据进行加密的。这种方式称为TLS加密
open***使用TLS加密的工作过程是,首先××× Sevrver端和××× Client端要有相同的CA证书,双方通过交换证书验证双方的合法性,用于决定是否建立×××连接。
然后使用对方的CA证书,把自己目前使用的数据加密方法加密后发送给对方,由于使用的是对方CA证书加密,所以只有对方CA证书对应的Private key才能解密该数据,这样就保证了此密钥的安全性,并且此密钥是定期改变的,对于窃听者来说,可能还没有破解出此密钥,×××通信双方可能就已经更换密钥了。
二、安装open***
1、直接使用apt-get安装
sudo apt-get -y install open*** libssl-dev openssl
2、查看版本
root@node2:~# open*** --version Open××× 2.2.1 x86_64-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Dec 1 2014 Originally developed by James Yonan Copyright (C) 2002-2010 Open××× Technologies, Inc. <sales@open***.net>
3、准备工作
root@node2:~# cp -a /usr/share/doc/open***/examples/easy-rsa/2.0/ /etc/open***/easy-rsa root@node2:~# cp /usr/share/doc/open***/examples/sample-config-files/server.conf.gz /etc/open***/ root@node2:~# cp /usr/share/doc/open***/examples/sample-config-files/client.conf /etc/open***/ root@node2:~# cd /etc/open*** && gzip -d server.conf.gz root@node2:/etc/open***# ls easy-rsa server.conf update-resolv-conf
三、制作相关证书(使用root权限)
1、编辑vars文件
root@node2:/etc/open***# cd easy-rsa root@node2:/etc/open***/easy-rsa# vim vars export KEY_COUNTRY="CN" export KEY_PROVINCE="NJ" export KEY_CITY="NanJing" export KEY_ORG="health" export KEY_EMAIL="yao@health.com" export KEY_NAME='***-server' export KEY_OU='health'root@node2:/etc/open***/easy-rsa# source vars NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/open***/easy-rsa/keys root@node2:/etc/open***/easy-rsa# ./clean-all
2、制作CA证书
root@node2:/etc/open***/easy-rsa# ./build-ca # 一路回车即可 root@node2:/etc/open***/easy-rsa# ls keys ca.crt ca.key index.txt serial
3、制作server端证书
root@node2:/etc/open***/easy-rsa# ./build-key-server ***-server # 证书名,vars中的KEY_NAME,同样一路回车 root@node2:/etc/open***/easy-rsa# ls /keys 01.pem ca.crt ca.key index.txt index.txt.attr index.txt.old serial serial.old ***-server.crt ***-server.csr ***-server.key
4、生成加密交换时的Diffie-Hellman文件
root@node2:/etc/open***/easy-rsa# ./build-dh root@node2:/etc/open***/easy-rsa# ls /keys 01.pem ca.crt ca.key dh1024.pem index.txt index.txt.attr index.txt.old serial serial.old ***-server.crt ***-server.csr ***-server.key
5、制作client端证书
root@node2:/etc/open***/easy-rsa# ./build-key ***-client # 证书名随意,一路回车 root@node2:/etc/open***/easy-rsa# ls /keys 01.pem ca.crt ca.key dh1024.pem ***-client.crt ***-client.csr ***-client.key index.txt index.txt.attr index.txt.old serial serial.old ***-server.crt ***-server.csr ***-server.key
6、编辑server端配置文件
root@node2:/etc/open***/easy-rsa# cd .. root@node2:/etc/open***# egrep '^[^(#|;)].*' server.conf port 1194 proto tcp # 修改成tcp协议 dev tun ca /etc/open***/easy-rsa/keys/ca.crt # 修改成ca证书的路径 cert /etc/open***/easy-rsa/keys/***-server.crt # ×××路径 key /etc/open***/easy-rsa/keys/***-server.key # 修改密钥路径 dh /etc/open***/easy-rsa/keys/dh1024.pem # 修改Diffie-Hellman文件路径 server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "route 10.168.198.0 255.255.255.0" client-config-dir ccd keepalive 10 120 comp-lzo persist-key persist-tun status open***-status.log verb 3
四、启动服务
root@node2:/etc/open***# service open*** start root@node2:/etc/open***# ss -tnl | grep 1194 # 端口已经开启 LISTEN 0 1 *:1194 *:*
五、配置windows客户端
1、直接安装与server端相同的版本
2、将ca证书,客户端证书,客户端密钥,客户端配置文件放到windows的配置文件路径下
3、编辑client配置文件
4、启动
5、显示已连接
六、配置linux客户端
以centos 6.5 为例
1、直接yum安装open***
[root@test ~]# yum install -y open***
2、新建配置文件目录
[root@test ~]# mkdir /etc/open***/client && cd /etc/open***/client
3、将ca证书,客户端证书,客户端密钥,客户端配置文件放到配置文件目录
[root@test client]# ls ca.crt client.o*** ***-client.crt ***-client.key
4、配置文件与win的相同
[root@test client]# egrep '^[^(#|;)].*' client.o*** client dev tun proto tcp remote 121.41.48.133 1194 resolv-retry infinite nobind persist-key persist-tun ca /etc/open***/client/ca.crt cert /etc/open***/client/***-client.crt key /etc/open***/client/***-client.key ns-cert-type server comp-lzo verb 3
5、后台启动
[root@test client]# /usr/sbin/open*** --config /etc/open***/client/client.o*** > /var/log/open***.log &
6、查看ip地址,多了一个tun0
[root@haproxy client]# [root@haproxy client]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host loinet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 52:54:00:c3:69:30 brd ff:ff:ff:ff:ff:ffinet 192.168.3.201/24 brd 192.168.3.255 scope global eth0inet6 fe80::5054:ff:fec3:6930/64 scope link valid_lft forever preferred_lft forever 4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100link/[65534] inet 10.8.0.6 peer 10.8.0.5/32 scope global tun0
7、测试
客户端尝试ping服务端
[root@test client]# ping 10.8.0.1 -c 1 PING 10.8.0.1 (10.8.0.1) 56(84) bytes of data. 64 bytes from 10.8.0.1: icmp_seq=1 ttl=64 time=10.4 ms[root@test client]# ping 10.168.198.51 -c 1 PING 10.168.198.51 (10.168.198.51) 56(84) bytes of data. 64 bytes from 10.168.198.51: icmp_seq=1 ttl=64 time=10.4 ms
服务器端尝试ping客户端
root@node2:/etc/open***# ping 10.8.0.6 -c 1 PING 10.8.0.6 (10.8.0.6) 56(84) bytes of data. 64 bytes from 10.8.0.6: icmp_req=1 ttl=64 time=9.93 ms
测试成功!
转载于:https://blog.51cto.com/yaoliang83/1878504
ubuntu上搭建open***相关推荐
- 【mongodb环境】在ubuntu上搭建mongodb,并且开启远程连接
[mongodb环境]在ubuntu上搭建mongodb,并且开启远程连接 标签(空格分隔): mongodb 参考资料 mongodb 官方文档 安装mongodb 第一步:设置 public ke ...
- 基于docker在Ubuntu上搭建TensorFlow-GPU计算环境
这里转载一篇Docker安装TF GPU的版本 基于docker在Ubuntu上搭建TensorFlow-GPU计算环境 由于实验室的服务器有多人共享使用,而不同人的代码对应的keras和tensor ...
- 在ubuntu上搭建IC数模混合环境
在ubuntu上搭建IC数模混合环境 仅以这篇博客来纪念一下当年因搭环境而掉的头发 文章目录 在ubuntu上搭建IC数模混合环境 对linux新手的一些搭环境常识补充 尽信书不如无书 没有基础的劝退 ...
- Ubuntu上搭建自己的ngrok服务器
Ubuntu上搭建自己的ngrok服务器 参考网站:http://www.sunnyos.com/article-show-48.html 上面的内容似乎是sunny大神本人写的,了解的越多,发现自己 ...
- 在Ubuntu上搭建Maemo 5及Qt 4开发环境
Maemo 是Linux的一个嵌入式发行版,支持ARM构架,其开发环境自然是桌面Linux了.由于Maemo使用了Debian包管理系统,所以最好还是在Debian或者Ubuntu上搭建开发环境了(目 ...
- linux 安装cifs,在ubuntu上搭建sambd实现linux的之间的cifs通信
在ubuntu上搭建sambd实现linux的之间的cifs通信 (2013-05-14 15:33:36) CIFS是 common internet file system 的简称,windows ...
- ubuntu上搭建tftp服务
ubuntu上搭建tftp服务 1. 安装tftp服务 2. 配置 3. 重启tftp服务 4. 测试 1. 安装tftp服务 sudo apt install xinetd tftp tftpd 2 ...
- Ubuntu上搭建网站【建立数据隧道,降低开支】
上篇:Ubuntu搭建web站点并发布公网访问 目录 1.安装WordPress 2.创建WordPress数据库 3.安装相对URL插件 4.内网穿透将网站发布上线 1.命令行方式: 2.图形化操作 ...
- 在ubuntu 上搭建Nginx-RTMP 直播服务器
前言 近段时间在学习Android直播,那么毋庸置疑ffmpeg和WebRTC是音视频界的两个大佬. ffmpeg的基本使用:https://blog.csdn.net/huangliniqng/ar ...
- linux 网桥 权限,如何在 Ubuntu 上搭建网桥
导读 作为一个 Ubuntu 16.04 LTS 的初学者.如何在 Ubuntu 14.04 和 16.04 的主机上搭建网桥呢?顾名思义,网桥的作用是通过物理接口连接内部和外部网络.对于虚拟端口或者 ...
最新文章
- applet打包的MANIFEST.MF配置
- MySQL 5.7.17 VS MariaDB 10.1.19 Enterprise性能压测
- [Windows]Windows路径探究
- linux snmp设置报警次数,CentOS/RHEL 6下禁止重复的SNMP连接日志
- 【数据分析】年轻人逃离大城市之后的下一站选哪儿?用数据来为你揭晓
- 使用redis作为Return存储方式
- UIImageView01
- ThinkPHP文件上传
- 自适应采样次数的Ransac算法
- leetcode 394.字符串解码 dfs
- 程序上下文切换,什么是上下文?
- 孝当先集团六周年庆典在深圳龙岗圆满举行
- win10中文用户名怎么改成英文文件夹路径
- Cortex-A7 MPCore 架构
- YOLOV4-模型集成-pytorch
- 计算机专业基础英语,计算机专业基础英语1.ppt
- 一杯清茶!细品人生!
- JS中find()和findIndex()
- ro模式数据库mysql_ro数据库-和ro数据库相关的内容-阿里云开发者社区
- JS生成随机字符,生成一堆高逼格的乱码。。。
热门文章
- 【个人刷题笔记】1007 Maximum Subsequence Sum (25 分)最大子段和简单DP,一堆坑
- 驻足回首,二十载已沧海桑田;登高望远,路漫漫亦求索不息
- java封装的作用_Java的封装性
- WebDriver高阶API(8)
- HP惠普暗影精灵6 OMEN笔记本电脑-15-en0007ax原厂Win10系统镜像,原装OEM系统,恢复出厂状态
- github与码云的界面英文介绍
- Word draw.io日常使用快捷键和遇到的问题及解决办法
- impdp 并行_Oracle expdp/impdp常用性能优化方法
- 2018年四川理工学院软件工程考试大纲(软件工程概述)
- 两年制大专计算机网络技术,4G网络技术与运维工程师专业(两年制专科).doc