Linux 与Windows Ipsec连接实验

简介:

————————————————————————————————————————————————————————————

实验目的: linux 与 windows 通过 Ipsec 加密某端口通讯 比如RDP 3389

————————————————————————————————————————————————————————————

环境:

computer1 :

————————————————————————————————————————————————————————————

Windows2003 Server +SP2

IP  192.168.30.3 (私有地址)

Ipsec 设置如下

启用安全审核 成功 失败, 修改注册表 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\PolicyAgent\Oakley\EnableLogging DEWORD值=1

(以上设置为了便于调试)

Windows 防火墙:3389 开  UDP 500 开 UDP 4500开

Windows 设置 3389端口通过Ipsec加密

Ipsec设置

源地址 any 源mask any 源端口 any 目的地址 我的IP  目标端口  TCP 3389

IKE2阶段 ESP 3DES hsa1 ah 无 PFS 无

预共享密匙 0X1234567890

——————————————————————————————————————————————————————————

computer2 :

______________________________________________________________________________________________________

Windows2003 Server +SP2

IP  222.55.10.3   (公网地址)

启用安全审核 成功 失败, 修改注册表 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\PolicyAgent\Oakley\EnableLogging DEWORD值=1

(以上设置为了便于调试)

Windows 防火墙:3389 开  UDP 500 开 UDP 4500开

Windows 设置 3389端口通过Ipsec加密

Ipsec设置

源地址 any 源mask any 源端口 any 目的地址 我的IP  目标端口  TCP 3389

IKE2阶段 ESP 3DES hsa1 ah 无 PFS 无

预共享密匙 0X1234567890

————————————————————————————————————————————————————————————

computer3 :

—————————————————————————————————————————————————————————————

Ubuntu 11

IP :192.168.30.2

Ipsec-tools 0.8.0

/etc/racoon/setkey.conf

_________________________________________________________________________________________________________

flush; #flush SAD

spdflush;# flush SPD

spdadd 192.168.30.2any] 222.55.10.3 [3389] tcp -P out ipsec esp/transport//require;

spdadd 222.55.10.3 [3389] 192.168.30.2[any] tcp -P in ipsec esp/transport//require;

spdadd 192.168.30.2[any] 192.168.30.3[3389] tcp -P out ipsec esp/transport//require;

spdadd 192.168.30.3[3389] 192.168.30.2[any] tcp -P in ipsec esp/transport//require;

__________________________________________________________________________________________________________

psk.txt

_______________________________________________________________________________________________________

192.168.30.3  0X1234567890

222.55.10.3     0X1234567890

————————————————————————————————————————————————————————————

/etc/raccon/raccon.conf

_________________________________________________________________________________________________________

path pre_shared_key "/etc/racoon/psk.txt";                  #共享密钥文件

#path certificate "/etc/racoon/cert";                                 ##证书文件目录

log debug2;


padding

{

   maximum_length 20;  

   randomize off;      

   strict_check off;    

   exclusive_tail off;  

}

listen

{


   isakmp 192.168.30.2[500];

   isakmp_natt 192.168.30.2 [4500];


}


# Specify various default timers.

timer

   {

   counter 10;

       interval 20 sec;

      persend 1;

      phase1 90 sec;

      phase2 60 sec;

         natt_keepalive 30 sec;

     }

remote anonymous {

   exchange_mode main;

   lifetime time 480 min;

   generate_policy off;

   send_cert on;

   nat_traversal        on;

           proposal {

               encryption_algorithm 3des;

               hash_algorithm sha1;

               authentication_method pre_shared_key;

              dh_group 2;

       }


}

sainfo anonymous

{

#pfs_group 2;

lifetime time 12 hour;

encryption_algorithm 3des;

authentication_algorithm hmac_sha1;

compression_algorithm deflate;

}

chmod 600 /etc/racoon/setkey.conf

chmod 600 /etc/racoon/racoon.conf

chmod 600 /etc/racoon/psk.txt

——————————————————————————————————————————————————————————————

sudo racoon -F -v -ddd -f /etc/racoon/racoon.conf -l ~skybug/racoon_debug.log

telnet 192.168.30.3 3389

正常访问  能够使用RDP连接

telnet 222.55.10.3 3389

debug.log显示 phase1 IKE交换完成  phase2  出现  INVALID-ID-INFORMATION 的错误

在222.55.10.3上 可以看到

event id 547 的错误

失败点: 我 失败原因: 没有配置策略 额外状态: 处理了第三个(ID)负载响应程序。增量时间 0 0x0 0x0

ipsecmon上可以看到 安全关联  Oakley.log中显示与eventid 547相同的错误。

————————————————————————————————————————————————————————————

结果: linux上同样的ipsec-tools配置  可以连接到同Ipsec配置的局域网内的Windows 机器,但是局域网内的linux发起的IKE 与windows 建立安全关联后 无法完成ipsec IKE交换


猜想1 在NAT前数据包加密验证完整性 NAT后 IP地址换了后 完整性?

猜想2  linux下 NAT-T 不支持传输模式?or NAT-T 不支持与共享密匙?

猜想3 linux Ipesc 访问局域网内的windows机器和局域网外(NAT后)的windows机器配置应该不同?(不同在哪里?)


下次用rsa证书验证试试



      本文转自天山三害 51CTO博客,原文链接:http://blog.51cto.com/skybug/1336796,如需转载请自行联系原作者





相关文章
|
1月前
|
Linux Shell Windows
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
|
28天前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 关闭PPP(Point-to-Point Protocol)连接 ppp-off命令 使用指南
【Shell 命令集合 网络通讯 】Linux 关闭PPP(Point-to-Point Protocol)连接 ppp-off命令 使用指南
40 1
|
28天前
|
监控 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 显示网络 连接、路由表和网络接口信息 netstat命令 使用指南
【Shell 命令集合 网络通讯 】Linux 显示网络 连接、路由表和网络接口信息 netstat命令 使用指南
54 1
|
4天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
29 0
|
7天前
|
Linux Windows
Windows、Mac、Linux解决端口被占用的问题
Windows、Mac、Linux解决端口被占用的问题
8 1
|
14天前
|
安全 Ubuntu Linux
Linux远程访问Windows实现步骤
在Windows上启用远程桌面连接并获取IP地址后,Linux用户需安装SSH客户端( Debian系:`sudo apt-get update; sudo apt-get install openssh-client`,RPM系:`sudo yum install openssh-clients`)。然后使用命令`ssh 用户名@Windows_IP地址`连接,其中`用户名`和`Windows_IP地址`按实际情况填写。
14 4
|
28天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 启动和管理SLIP 连接 sliplogin命令 使用指南
【Shell 命令集合 系统管理 】Linux 启动和管理SLIP 连接 sliplogin命令 使用指南
30 0
|
28天前
|
监控 Shell Linux
【Shell 命令集合 网络通讯 】Linux 拨号连接 dip命令 使用指南
【Shell 命令集合 网络通讯 】Linux 拨号连接 dip命令 使用指南
35 0
|
28天前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 建立串行连接 cu命令 使用指南
【Shell 命令集合 网络通讯 】Linux 建立串行连接 cu命令 使用指南
28 0
|
28天前
|
Shell Linux C语言
【Shell 命令集合 文本处理工具】Linux 字段连接 join 命令使用指南
【Shell 命令集合 文本处理工具】Linux 字段连接 join 命令使用指南
28 1