Juniper配合自建RPKI Server进行路由验证
全球BGP网络上,盗播,劫持等情况屡见不鲜,在路由器上使用RPKI进行验证,丢弃invaild路由,可以一定程度上来保证网络安全
鉴于RIPE官方的rpki-validator已经停止维护,我们使用Routinator 来替代
Routinator 的搭建过程
开源地址
https://github.com/NLnetLabs/routinator
安装过程在官方文档里面已经很详细的针对了不同的系统,不同的安装方式进行了说明,这里不做累述,可以直接查看
https://routinator.docs.nlnetlabs.nl/en/stable/installation.html
我这次使用的Centos普通的yum安装,接下来说一些安装后的细节
安装完成后需要进行初始化和开机自启动
routinator-init --accept-arin-rpa
systemctl enable --now routinator
systemctl status routinator
然后进行初始化RIR的Tal
routinator init --rir-tals --accept-arin-rpa
到这里就可以直接打开IP:8323进行访问了,RTR的端口在3323
默认绑定的127.0.0.1,需要外部访问的话,修改/etc/routinator/routinator.conf内的rtr-listen和http-listen即可
Juniper连接RPKI服务器并配置策略
set routing-options validation group RPKI session 你的服务器IP port 3323
检查是否正确连接
show validation session
一切正常的话,state会变成UP,后面也会显示具体收到了多少记录
到这里我们就可以继续进行下一步过滤措施了
举例来说,在互联的邻居import策略上,根据自身策略的情况,调整并加上这些语句
term valid {
from {
protocol bgp;
validation-database valid;
}
then {
validation-state valid;
accept;
}
}
term invalid {
from {
protocol bgp;
validation-database invalid;
}
then {
validation-state invalid;
reject;
}
}
term unknown {
from {
protocol bgp;
validation-database unknown;
}
then {
validation-state unknown;
accept;
}
}
拒绝invalid的路由条目,允许其他的通过