Keepalived 가상 IP 뒤에 이 freeradius를 구현하는 데 약간의 어려움이 있습니다. 이 2단계 인증 서버에 중복성이 필요하기 때문에 연결 유지가 필요합니다.
Radius는 Juniper VPN에서 2단계 인증을 처리합니다. 따라서 VPN이 가상 IP에서 Radius 서버와 통신을 시도할 때까지 모든 것이 잘 작동합니다. VPN은 keepalived에 의해 설정된 가상 IP의 Radius 서버에 액세스 요청을 보냅니다. Radius는 서버의 실제 IP로 Access-Challenge에 응답합니다. 여기서 VPN 연결이 끊어지므로 사용자는 인증할 수 없습니다.
Radius가 가상 IP를 사용하여 응답하도록 하려면 어떻게 해야 합니까? 일부 경로를 변경해야 합니까?
답변1
일반적으로 VIP를 이런 방식으로 사용하려면 NAT를 사용하므로 패킷의 대상 IP가 RADIUS 서버의 내부 IP 주소로 다시 쓰여지고 패킷의 소스 IP가 라우터의 주소로 다시 쓰여집니다.
Juniper에서 이 기능을 구성할 수 없고 소스/대상 IP 무결성을 사용하여 RADIUS 서버에 패킷을 전달하는 방법을 찾은 경우 FreeRADIUS가 응답할 때 특정 소스 주소를 사용하도록 강제할 수 있습니다.
먼저 다음과 같이 VIP를 IP 별칭으로 추가해야 합니다.https://support.kemptechnologies.com/hc/en-us/articles/203861685-Configuring-DSR
그런 다음 가상 서버 구성에 다음 코드 조각을 추가해야 합니다.
server {
post-auth {
update control {
Packet-Src-IP-Address := <VIP address>
}
}
}
이렇게 하면 FreeRADIUS에서 전송된 패킷의 src 주소가 VIP와 일치하는지 확인됩니다.