如何让 racoon 为所有端口生成安全策略?

如何让 racoon 为所有端口生成安全策略?

我正在尝试在两个系统之间建立 IPsec 连接。我在两端都设置了 racoon。客户端将拥有一个动态 IP 地址,因此在服务器上,passive 和 generate_policy 处于开启状态,proposal_check 设置为 subject。

使用此设置,服务器会生成策略,但这些策略仅适用于端口 500。因此,从服务器到客户端的流量(端口 500 上的流量除外)均未封装。由于客户端的策略需要 esp,因此传入流量将被忽略。

我相信该策略是根据客户端的 sainfo 节设置的,因此我尝试将标识符更改为anonymous带有端口的特定地址,但没有效果。

服务器racoon.conf:

remote anonymous
{
        exchange_mode aggressive,main;
        generate_policy on;
        passive on;
        verify_cert off;
        ike_frag on;

        my_identifier address;

        lifetime time 2 min;
        proposal_check obey;

        proposal {
                encryption_algorithm blowfish;
                hash_algorithm sha1;
                authentication_method pre_shared_key;
                dh_group 5 ;
        }
}

sainfo anonymous
{
        pfs_group 5;
        lifetime time 2 min;
        encryption_algorithm blowfish ;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate;
}

客户端racoon.conf

path pre_shared_key "/tmp/psk.txt";

remote 172.16.1.1
{
        exchange_mode aggressive,base,main;
        my_identifier keyid tag "client-test";
        verify_cert off;
        nat_traversal on;
        script "/tmp/phase1-up.sh" phase1_up;
        lifetime time 2 min;
        initial_contact on;
        proposal_check obey;

        proposal {
                encryption_algorithm blowfish;
                hash_algorithm sha1;
                authentication_method pre_shared_key;
                dh_group 5 ;
        }
}

sainfo anonymous
{
        pfs_group 5;
        lifetime time 2 min;
        encryption_algorithm blowfish;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate;
}

客户端策略

#! /usr/sbin/setkey -f
flush;
spdflush;
spdadd 172.16.2.1 172.16.1.1 any -P out ipsec
    esp/transport//require;
spdadd 172.16.1.1 172.16.2.1 any -P in ipsec
    esp/transport//require;

答案1

您还需要服务器上的相应策略。只需替换客户端策略上的进出策略,将其放在服务器上,即使使用远程匿名,它也应该可以正常工作。

相关内容