Linux内网渗透

centos7.2 专有网络

安装依赖包:

yum -y install openssl openssl-devel pam pam-devel gcc-c++

下载OpenVPN源码包,下载地址:

wget https://swupdate.openvpn.org/community/releases/openvpn-2.4.0.tar.gz
tar zxf openvpn-2.4.0.tar.gz
cd openvpn-2.4.0
./configure --prefix=/usr/local/openvpn --disable-lzo
make && make install

制作证书

下载OpenVPN证书制作工具EasyRSA,下载地址:
wget https://github.com/OpenVPN/easy-rsa/releases/download/3.0.1/EasyRSA-3.0.1.tgz
tar zxf EasyRSA-3.0.1.tgz

mkdir -p /etc/openvpn/easy-rsa

cp -rf EasyRSA-3.0.1 /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

#初始化证书目录pki
./easyrsa init-pki
# 创建根证书,回车即可
./easyrsa build-ca nopass
#生成Diffle Human参数
./easyrsa gen-dh
#制作服务端证书,回车即可,server名称随意更改
./easyrsa build-server-full server nopass
#制作客户端证书,回车即可,client名称随意更改
./easyrsa build-client-full client nopass

开启路由转发

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
#生效
sysctl -p

server端配置文件

mkdir /etc/openvpn
#复制模板
cp sample/sample-config-files/server.conf /etc/openvpn/server.conf
>/etc/openvpn/server.conf 
vim /etc/openvpn/server.conf

port 1194
proto tcp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
server 10.8.0.0 255.255.255.0 # 给客户端分配的IP段
ifconfig-pool-persist ipp.txt # 记录客户端和虚拟ip的映射关系,当客户端重新连接时依然被分配断开之前的IP地址
push "redirect-gateway def1 bypass-dhcp" # 重定向客户端网关
push "dhcp-option DNS 10.12.242.130"
push "dhcp-option WINS 10.12.250.3"
push "route 10.12.0.0 255.255.0.0"
push "route 192.168.0.0 255.255.0.0"
client-to-client
keepalive 10 120
compress lz4-v2
push "compress lz4-v2"
user root
group root
persist-key
persist-tun
status /var/log/openvpn-status.log
log /var/log/openvpn.log
verb 3 # 日志等级

 上面有几行重点解释一下:

第一行:local 0.0.0.0          #不能写公网IP

push "dhcp-option DNS 10.12.242.130"
push "dhcp-option WINS 10.12.250.3"

#上面两行是本地服务器的网络连接信息里面的DNS,如果是云主机应该填写本地DNS如下图:

如果是IDC机房的物理机应该填写服务器/etc/resolv.conf里面的DNS,如果是国外的服务器应该填写国际通用的DNS,如8.8.8.8等。 

push "route 10.12.0.0 255.255.0.0"
push "route 192.168.0.0 255.255.0.0"

#上面两行是路由规则:假设192.168.0.0是VPN服务器所在的局域网的网段,那么添加这条规则后,客户端也能访问与VPN服务器同一网段的其它机器,而10.12.0.0是本地网络IP段,这里添加之后客户端就可以访问外网,如百度等。

防火墙配置(这一条至关重要,通过配置nat将vpn网段IP转发到server内网,命令如下,不需要sava,也不需要restart)

sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

sudo iptables -nL -t nat

#但是centos7默认使用systemctl,所以如果如果执行下面命令提示“The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.”可以如下方法解决:

systemctl stop firewalld  && yum install iptables-services

开启路由转发

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
#生效
sysctl -p

将OpenVPN加入开机自启动

需要将OpenVPN加入开机自启动
方法一:
将启动命令加入到/etc/rc.local
echo “/usr/local/sbin/openvpn --config /etc/openvpn/server.conf>/dev/null  &”>>/etc/rc.local
方法二:
利用sample-scripts下面的脚本
cp /usr/local/src/openvpn-2.2.2/sample-scripts/openvpn.init /etc/init.d/openvpn
chkconfig openvpn on
chkconfig --list openvpn
openvpn         0:off   1:off  2:on    3:on    4:on   5:on    6:off

一般我习惯用方法二:
如果/etc/init.d/openvpt start启动失败要先
Pkill openvpn
再启动
如果提示/etc/init.d/openvpn: line 94: [: =: unary operator expected
就打开/etc/init.d/openvpt把94行的[]改成[[]]

修改客户端配置:

cd /etc/openvpn/easy-rsa/pki 

vim client.ovpn            #注意后缀

client
dev tun
proto tcp
remote 49.51.9.203 1194    #客户端必须是网外ip
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert test.crt
key test.key
ns-cert-type server
comp-lzo
verb 3

Windows客户端安装和配置:

网上下载客户端

将客户端需要的文件sz -y到客户端安装vpn的路径config下:

/etc/openvpn/easy-rsa/pki/private/client.key
/etc/openvpn/easy-rsa/pki/issued/client.crt
/etc/openvpn/easy-rsa/pki/ca.crt
/etc/openvpn/easy-rsa/pki/client.ovpn
 

 

 启动OpenVPN服务

/usr/local/openvpn/sbin/openvpn --config /etc/openvpn/server.conf &
 #注意查看端口和进程

启动成功之后会生成一个虚拟网卡tun0

[root@VM_124_128_centos ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 52:54:00:0c:ec:e0 brd ff:ff:ff:ff:ff:ff
    inet 10.105.124.128/18 brd 10.105.127.255 scope global eth0
3: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
    link/[65534]
    inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0

#启动成功之后右下角图标会变绿,并且本地windows客户端能ping通openvpn服务器的内网,或者在跟vpn服务器同一个vpc网络中的服务器内网都可以ping通;


测试vpn:

正常启动成功后可以访问外网,本地浏览器输入ip会显示该服务器所在的城市位置

并且会形成一块新网卡,下面以太网3就是openvpn网卡,虽然显示“未识别网络”,但是我们想要的功能达到了就不用管它了。

openvpn搭建完成.

yum方式部署

yum install openvpn easy-rsa openssh-server lzo openssl openssl-devel openvpn NetworkManager-openvpn openvpn-auth-ldap -y
mkdir -p /etc/openvpn/easy-rsa
cp -a /usr/share/easy-rsa/3.0.8/* /etc/openvpn/easy-rsa/
cd /etc/openvpn/easy-rsa/
./easyrsa init-pki
./easyrsa build-ca nopass
./easyrsa gen-dh
./easyrsa build-server-full server nopass
./easyrsa build-client-full client nopass

开启转发:
vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
sysctl -p

cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf  /etc/openvpn/server.conf
vim /etc/openvpn/server.conf 
local 0.0.0.0 #服务器IP
port 1194 #监听端口
proto tcp #使用tcp协议可更改udp
dev tun #虚拟接口类型
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
server 10.12.0.0 255.255.255.0 # 给客户端分配的IP段
ifconfig-pool-persist ipp.txt # 记录客户端和虚拟ip的映射关系,当客户端重新连接时依然被分配断开之前的IP地址
push "redirect-gateway def1 bypass-dhcp" # 重定向客户端网关
push "dhcp-option DNS 10.12.242.130"
push "dhcp-option WINS 10.12.250.3"
client-to-client
keepalive 10 120
compress lz4-v2
push "compress lz4-v2"
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn-status.log
log /var/log/openvpn.log
verb 3 # 日志等级
启动:
openvpn /etc/openvpn/server.conf &
客户端证书:
cp /etc/openvpn/easy-rsa/pki/ca.crt /etc/openvpn/client
cp /etc/openvpn/easy-rsa/pki/issued/client.crt /etc/openvpn/client
cp /etc/openvpn/easy-rsa/pki/private/client.key /etc/openvpn/client

 

 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小数苗小数苗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值