openswan 如何配置RSA认证方式

RSA Signature(RSA数字签名)认证的配制


    Openswan支持许多不同的认证方式,包括RSA keys、pre-shared keys或x.509证书方式。RSA Signature比较简单,我先介绍下所要使用的命令

    生成一个新的RSA密钥对
    #ipsec newhostkey  --output /etc/ipsec.secert
    按left或right格式生成RSA Sig
    #ipsec showhostkey --left(或--right)

    知道了上面的命令,我们就可以配置一个net-to-net,就是网关对网关的通讯。所在的Linux主机为通讯的网关,作为其子网的出口,对于子网的用户来所是透明的,远程的子网在通讯后可以像自己的局域网一样的访问。
    
    本文使用VMWare架设起一个四台虚拟Linux主机来进行试验。因为要在不同的机子上进行配置,所以请读者认清主机名。

    192.168.183.44(子网客户机,计算机名RA)
    <->
    192.168.49.2(Left网关主机,计算机名melin,同时eth1配置为192.168.183.1)
    <->
    192.168.49.3(Right网关主机,计算机名right,同时eth1配置为192.168.233.1)
    <->
    192.168.233.44(子网客户机,计算机名RB)

    两个网关主机当然要安装好Openswan。同时用iptabels配置好NAT伪装。

    然后我们运行下面的命令

    //melin    
    #ipsec newhostkey --output /etc/ipsec.secert
    #ipsec showhostkey --right >> /etc/ipsec.conf
    #vi /etc/ipsec.conf //编辑ipsec.conf配置文件
    #scp /etc/ipsec.conf root@right_GW_ipaddress:/etc/ipsec.conf //把ipsec.conf拷贝到right网关,目的是为了让right的到left的rsasig。
    //right
    #ipsec newhostkey  --output /etc/ipsec.secert
    #ipsec showhostkey   --right >> /etc/ipsec.conf
    #vi /etc/ipsec.conf
    #scp /etc/ipsec.conf  root@left_GW_ipadress:/etc/ipsec.conf
    然后分别从前启动ipsec服务
    #ipsec setup restart //这个因为你的系统不同点不同

    这里的编辑ipsec.conf应该为(配置文件中的#为注释,和以上shell命令不同)
    
version    2.0

config setup
    interfaces=%defaultroute
    nat_traversal=yes
    
conn %default
    authby=rsasig
    compress=yes

#关掉 Opportunistic Encryption
include /etc/ipsec.d/examples/no_oe.conf

conn    net-to-net
    left=192.168.49.2
    leftsubnet=192.168.183.0/24
    leftid=@melin
    leftnexthop=%defaultroute
    right=192.168.49.3
    rightsubnet=192.168.233.0/24
    rightid=@right
    rightnexthop=%defaultroute
    # RSA 2192 bits   melin   Mon May 29 03:42:49 2006
    leftrsasigkey=0sAQ...(leftrsasigkey值,省略)
    # RSA 2192 bits   right   Wed May 31 22:11:59 2006
    rightrsasigkey=0sAQ...
    auto=add

然后在任意一方网关主机运行
    ipsec auto --up net-to-net,这个时候,两个客户机之间应该可以互相ping的通,就像在一个内网一样。
    
    比如在RA上可以

    $ping 192.168.233.44
    
    在ping的过程中,在任意一个网关上用tcpdump嗅探

    #tcpdump -i eth0
    
    可以看到这样的包

    IP 192.168.233.44 > 192.168.183.44:icmp 64:echo request seq 10
    IP 192.168.49.2 > 192.168.49.3: ESP(spi=0xeb73b78b,sed=0xa)
    IP 192.168.49.3 > 192.168.49.2: ESP(spi=0x1601e0bd,sed=0xb)
    可以看到两个网关已经用ESP在通讯,说明成功。

    值得注意的是,如果网关主机开了iptables来做IP伪装(MASQUERADE)或NAT,需要竞争两个子网地址的转发,比如在我们例子中的Left主机上原来有
    #echo 1 > /proc/sys/net/ipv4/ip_forward
    #iptables -t nat -A POSTROUTING -o eth0 -s 192.168.183.0/24 -j MASQERADE
    把改为
    #iptables -t nat -A POSTROUTING -o eth0 -s 192.168.183.0/24 -d ! 192.168.233.0/24 -j MASQERADE
    即不转发目标地址为Right主机下的子网。

    另外,这一行
    include /etc/ipsec.d/examples/no_oe.conf意为关闭Opportunistic Encryption在你不知道她到底做了什么之前,还是关掉她为好,打开no_oe.conf文件,发现其内容如下,我们将在本文的第五部分讨论这个话题。

conn block
auto=ignore

conn private
auto=ignore

conn private-or-clear
auto=ignore

conn clear-or-private
auto=ignore

conn clear
auto=ignore

conn packetdefault
auto=ignore
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值