FreeRADIUS와 동일한 중간 단계로 openLDAP의 해시된 비밀번호를 사용하여 Mikrotik 핫스팟에서 인증합니다.

FreeRADIUS와 동일한 중간 단계로 openLDAP의 해시된 비밀번호를 사용하여 Mikrotik 핫스팟에서 인증합니다.

Mikrotik Hotspot-FreeRADIUS0-OpenLDAP 체인이 있고 Hotspot의 LDAP 디렉토리에 저장된 사용자를 인증하고 싶다고 가정합니다. 지금까지는 모든 암호가 일반 텍스트로 되어 있고 모든 것이 잘 작동하지만 이제 이러한 암호를 해시 형식(아마도 SSHA, 기본 ldappasswd 옵션)으로 저장하려고 합니다. 체인의 모든 단계에서 해시된 비밀번호 옵션을 활성화해야 한다고 생각하는데 FreeRADIUS 어디에서나 활성화하는 방법을 찾을 수 없습니다. 당신의 도움을 주셔서 감사합니다

답변1

존재하다raddb/mods-available/ldap

ldap {
    ...
    update {
        control:Password-With-Header := '<your ldap password attribute>'
    }
    ...
}

또는raddb/sites-available/defaultraddb/sites-available/inner-tunnel

authorize {
    ...
    eap
    ldap
    pap
    ...
}

LDAP 비밀번호 속성에서 비밀번호 값 앞에 적절한 헤더를 추가합니다.

전체 타이틀 목록은 다음과 같습니다.https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/src/modules/rlm_pap/rlm_pap.c#L76

LDAP 모듈이 실행되면 비밀번호 속성을 찾아 FreeRADIUS 내부 Password-With-Header속성에 저장합니다.

PAP 모듈이 실행되면 속성을 검색하고 Password-With-Header사전 정의된 헤더 이름 목록을 보고 값의 시작 부분과 일치하는 항목이 있는지 확인합니다 Password-With-Header.

이 작업이 완료되면 PAP 모듈은 헤더를 제거하고, 필요한 경우 base64/hex에서 변환하고, 동일한 다이제스트 알고리즘과 솔트를 사용하여 사용자가 제공한 비밀번호를 해시하고 결과를 비교합니다.

해시가 일치하면 pap 모듈은 ok를 반환하고 인증은 계속됩니다. 그렇지 않으면 pap 모듈은 거부를 반환하고 인증은 실패합니다.

이 기능이 작동하려면 EAP-TTLS-PAPEAP 유형(WPA2 Enterprise의 경우) 또는 일반 유형 PAP(포털 로그인의 경우)을 사용해야 합니다.

관련 정보