安装服务端

安装服务端,第1张

CentOS6.7安装Open***服务端

本文主要描述如何在Linux下(以CentOS6.7为例)构建一个开放式服务器。

Open××××基本介绍:

OpenXXX是一个开源的守护进程,easy-RSA提供了一些简单的CA证书工具。

XXX原则:

简单来说,客户端主机A与***服务器B建立连接(可以是TCP,也可以是UDP),通过***client(在××××客户端与×××服务器建立连接后形成)在客户端主机A上创建虚拟网卡A。这个虚拟网卡A通过XXX服务器的开放端口与XXX服务器B上的另一个虚拟网卡B(在XXX服务启动后形成)建立所谓的“私有连接”通道。连接成功后,根据XXX服务器B上的配置,在客户端主机A上建立一条路由,根据这条路由,当客户端A要访问某些特定网络(可以有多个特定网络)时,会

建立实验环境:

实验环境可以用VMware等虚拟化软件模拟,开放的×××服务器可以有单网卡或双网卡。单网卡无非是在原有网卡的基础上配置一个虚拟网卡。以双网卡为例。

实验环境的拓扑图如下:

(1)XXX客户甲:

windows8+Open×××2.3.4x86_64-w64-mingw32[SSL(OpenSSL)][LZO][PKCS11][IPv6]构建于2014年6月5日

1:192.168.1.228网卡

(2)XXX服务器B:

CentOS版本6.7(最终版)

Linuxlocalhost.localdomain2.6.32-573.3.1.el6.x86_64#1SMP2013年8月13日星期四22:55:16UTC2015x86_64x86_64x86_64GNU/Linux

开放×××版本:开放××××2.3.8(gitsource)

1:192.168.1.182网卡

2:10.20.0.129网卡

(3)服务器C(用于进一步测试XXX连接):

1:192.168.1.113网卡(假设没有这个地址,这个地址与本实验无关,列出来是为了不让读者在阅读以下内容时产生混淆)

2:10.20.0.130网卡

打开XXX安装步骤:

S1。安装基础软件包,用于编译安装open***和解决open***相关的依赖包。

yum -y install gcc gcc-c++     yum -y install autoconf      yum -y install automake      yum -y install libtool      yum -y install gettext      yum -y install lzo lzo-devel      yum -y install pam-devel

S2。从github获取开放的×××源代码,选择稳定版本的分支,生成configure等文件,编译安装。

git clone git@github.com:Open×××/open***.git     git checkout -b 2.3 remotes/origin/release/2.3      autoreconf -i -v -f      ./configure --prefix=/usr/local/open***      make      make install

S3。配置开放的×××服务器。

S3.1配置开放×××XXX

cp distro/rpm/open***.init.d.rhel /etc/init.d/open***     ln -s /usr/local/open***/sbin/open*** /usr/sbin/open***      mkdir /usr/local/open***/etc      ln -s /usr/local/open***/etc /etc/open***      cp sample/sample-config-files/server.conf /etc/open***/

S3.2编辑打开×××的主配置文件。上一步配置文件sample-config中的注释可以帮助你很好的理解各个字段的内容,这里就不详细解释了。一眼就能看懂。

vim /etc/open***/server.conf         # grep -v ^# /etc/open***/server.conf | grep -v ^$ | grep -v ^\;          port 1194          proto udp          dev tun          ca ca.crt          cert server.crt          key server.key  # This file should be kept secret          dh dh2048.pem          server 10.8.0.0 255.255.255.0          ifconfig-pool-persist ipp.txt          push "route 10.20.0.0 255.255.255.0"       push "dhcp-option DNS 114.114.114.114"          push "dhcp-option DNS 8.8.4.4"          client-to-client          duplicate-cn          keepalive 10 120          comp-lzo          persist-key          persist-tun          status open***-status.log          log         open***.log          verb 3

S4。配置OpenXXX服务器和客户端证书,使客户端可以通过证书登录OpenXXX。

S4.1从github获取easy-RSA的源代码,用来生成服务器端和客户端的证书,可以用openssl工具单独生成。

cd     git clone git@github.com:Open×××/easy-rsa.git      git checkout -b 2.x remotes/origin/release/2.x      cd easy-rsa/easy-rsa/2.0/

S4.2编辑证书配置信息

vim vars         # grep -v ^# vars | grep -v ^$          export EASY_RSA="`pwd`"          export OPENSSL="openssl"          export PKCS11TOOL="pkcs11-tool"          export GREP="grep"          export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`          export KEY_DIR="$EASY_RSA/keys"          echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR          export PKCS11_MODULE_PATH="dummy"          export PKCS11_PIN="dummy"          export KEY_SIZE=2048          export CA_EXPIRE=3650          export KEY_EXPIRE=3650          export KEY_COUNTRY="CN"          export KEY_PROVINCE="Shandong"          export KEY_CITY="Qingdao"          export KEY_ORG="51devops"          export KEY_EMAIL="chris@51devops.com"          export KEY_OU="chris"          export KEY_NAME="EasyRSA"

S4.3.生成服务器证书,包括CA和服务器证书。

source vars      ./clean-all      ./pkitool --initca      ./pkitool --server server      ./build-dh

S4.4.生成客户端证书

# ./pkitool client-christhinkt430      ./pkitool --pkcs12 client-christhinkt430 \cp -f keys/ca.crt /etc/open***/     \cp -f keys/server.crt /etc/open***/      \cp -f keys/server.key /etc/open***/      \cp -f keys/dh2048.pem /etc/open***/

S5。启动开放的×××XXX服务,准备测试。

打开内核转发参数:

vim /etc/sysctl.conf net.ipv4.conf.default.accept_source_route = 1 net.ipv4.conf.default.rp_filter = 0 net.ipv4.ip_forward = 1

配置iptables内网转发,启动Open×××XXX服务。

iptables -I INPUT -m state --state NEW -m udp -p udp --dport 1194 -j ACCEPT iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE service iptables save || iptables-save > /etc/sysconfig/iptables service open*** start

如果iptables提示nat有问题(当时没有具体问题的截图和文字记录),可能是因为没有加载模块。可以通过“modprobeiptable_nat”命令加载nat模块,然后通过“lsmod|grepnat”命令确认已经正确加载到内核中。

下面是iptables文件(/etc/sysconfig/iptables)内容的附加列表,以便于参考:

# Generated by iptables-save v1.4.7 on Tue Sep 15 09:50:41 2015    *filter     :INPUT ACCEPT [95751:71225675]     :FORWARD ACCEPT [2:120]     :OUTPUT ACCEPT [18830:1205082]     -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT     -A INPUT -p icmp -j ACCEPT     -A INPUT -i lo -j ACCEPT     -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT     -A INPUT -p udp -m state --state NEW -m udp --dport 1194 -j ACCEPT     #-A INPUT -j REJECT --reject-with icmp-host-prohibited     #-A FORWARD -j REJECT --reject-with icmp-host-prohibited     COMMIT     # Completed on Tue Sep 15 09:50:41 2015     # Generated by iptables-save v1.4.7 on Tue Sep 15 09:50:41 2015     *nat     :PREROUTING ACCEPT [8758:1233668]     :POSTROUTING ACCEPT [467:144522]     :OUTPUT ACCEPT [466:144462]     -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE     COMMIT     # Completed on Tue Sep 15 09:50:41 2015

检查打开的×××服务器b上的日志。

打开服务器b上的×××网卡信息

打开的×××服务器上显示的客户端连接日志信息

服务器B上的网卡和IP信息

打开的×××客户端上的IP信息(显示子网掩码为255.255.255.252,可以先忽略,不影响连接)

S6。在步骤S4.4中生成的客户端证书被发送到Windows客户端,并且Windows的openxx客户端被配置为连接到openxx服务器。

客户端的证书也在/root/easy-RSA/easy-RSA/2.0/keys的路径下,只需要client-Christthink430.p12的证书。

如何安装Windows?只需将证书放在打开的×××XXX安装路径下的config文件夹中,并创建一个。o***。配置文件如下所示:

remote 192.168.1.182 1194 udp    persist-key     tls-client     pull     dev tun     persist-tun     comp-lzo adaptive     nobind     pkcs12 client-christhinkt430.p12

用管理员权限打开打开的×××客户端,选择“连接”。如果连接成功,会显示以下信息,原来的灰色小图标会变成绿色。

此时可以连接到打开的××××服务器后端的内网地址,如下图所示,表示连接成功。

简单总结:

配置Open×××的一些难点或技巧:

1.如果没有×××,很难得到开放的×××安装包和文档支持,github可以解决。您应该通过适当的分支选择适当的版本和客户端。

2.需要理解2.iptables防火墙的后路由和伪装。其原理是通过SNAT将某个网络的地址转换(封装、伪装)成某个网卡的地址,从而达到内网渗透的目的。

如iptables-tNAT-arouting-s10.8.0.0/24-oeth1-j伪装,即当源地址为10.8.0.0/24网段时,将这些地址伪装成eth1网卡的地址,实现内网穿透。比如10.8.0.6(开放×××客户端地址)。当这个地址想访问10.20.0.130(服务器B地址)时,实际上是通过10.20.0.129(开放×××服务器eth1地址)出去的。

最后列举一些文章供参考:

1.开×××××配置http://blog.chinaunix.net/uid-26835604-id-3484906.html1下。Linux
2。iptableshttp://blog.csdn.net/jk110333/文章/details/8229828
3中SNAT、DNAT和假面舞会的含义。Ubuntu简单客户端配置https://help.ubuntu.com/lts/serverguide/open***.html#open***-简单客户端配置

标签:Linux配置是开放的×××,Linux安装是开放的×××,开放的××是开放的

-结束-

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/779918.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-04
下一篇 2022-05-04

发表评论

登录后才能评论

评论列表(0条)

保存