Strongwan은 사용자 액세스를 비활성화합니다.

Strongwan은 사용자 액세스를 비활성화합니다.

Strongswan 공개 키 인증을 사용하여 특정 사용자의 액세스를 비활성화하려면 어떻게 해야 합니까?

그래서 공개 키 인증이 작동하고 있습니다. SAN은 이메일이자 ID입니다. 특정 사용자 ID(rightid)에 대한 인증을 거부하는 방법이 있습니까? 나는 사용자 액세스를 쉽게 켜고 끌 수 있기를 원하며, 비밀 파일에서 항목을 제거하기만 하면 psk 인증으로 수행할 수 있다는 것을 깨달았습니다. 인증서와 관련된 방법이 있기를 바랍니다. "보류" 이유로 인증서를 취소하고 싶지만 Strongswan의 pki는 취소 취소 기능을 지원하지 않습니다. 인증을 거부하는 트랩도 설정해 보았지만 성공하지 못했습니다. 연결이 허용되는 클라이언트 ID를 지정하는 기능이 있어야 합니다.

conn main
       leftauth=pubkey
       leftcert=servercert.pem
       rightauth=pubkey
       leftid=mydomain.com
       type=tunnel 
       left=%any 
       leftsubnet=0.0.0.0/0 
       right=%any
       rightsubnet=192.168.137.0/24
       esp=aes128gcm16-sha256-modp3072
       ike=aes128gcm16-sha256-modp3072
       keyexchange=ikev2
       ikelifetime=28800s #Time before re authentication of keys
       auto=add

conn close
       also=main
       [email protected]
       rightauth=never
       auto=route

답변1

현재 단일 ID(또는 인증서/키)를 블랙리스트에 추가하는 플러그인은 없지만화이트리스트플러그인허용된 모든 ID를 화이트리스트에 추가하는 방법을 제공합니다. IKE 데몬이 실행되는 동안 화이트리스트를 관리하는 명령이 함께 제공됩니다.

보다 동적인 방식으로 유사한 작업을 수행하는 것(예: 특정 패턴과 일치하는 모든 ID를 거부하는 것)은 다음을 통해 가능합니다.외부 인증플러그인. 구성된 스크립트(또는 명령)는 클라이언트 인증이 성공한 후 호출되며 환경 변수에서 클라이언트 ID를 받습니다 IKE_REMOTE_ID. 명령이 가 아닌 다른 명령으로 종료되면 0클라이언트가 거부됩니다.


기술적으로 클라이언트 인증서를 차단하는 적절한 방법은 CRL 또는 OCSP를 사용하는 것입니다. 델타 CRL을 사용하는 경우 "보류" 이유( --reason certificate-holdwith pki --signcrl)가 주로 관련됩니다. 왜냐하면 이러한 취소는 "removeFromCRL" 이유(strongSwan이 현재 전혀 지원하지 않음)를 통해 델타 CRL에서 되돌릴 수 있기 때문입니다. 그러나 지적한 대로 명령은 현재 이전 CRL을 기반으로 새 전체 CRL을 생성하는 옵션을 pki사용할 때 일부 해지 생략(즉, 되돌리기)을 지원하지 않습니다 .--lastcrl

현재 해지된 모든 인증서를 포함하는 새 CRL을 처음부터 생성할 수 있지만 문제는 현재 cRLNumber발급된 CRL의 일련 번호( )를 수동으로 지정할 수 없다는 것입니다. --lastcrl(또는 )을 사용 하지 않는 한 --basecrl항상 1이 됩니다. 그리고 동일한(또는 더 낮은) 일련 번호를 사용하면 CRL이 다시 로드될 때 교체되지 않습니다(로드하기 전에 모든 자격 증명과 캐시를 완전히 지우지 않는 한). swanctlCRL을 다시 로드하기 위해 IKE 데몬을 다시 시작하는 것과 같은 과감한 조치를 취합니다 .

OCSP를 사용하는 것은 하나의 옵션이 될 수 있습니다. 예를 들어 openssl ocsp수동으로 생성하고 수정할 수 있는 간단한 인덱스 파일을 제공할 수 있기 때문입니다(예:내 대답은 여기형식에 대한 설명을 참조하세요.) 추가 서비스를 실행해야 하는 것 외에도 OpenSSL에서는 인덱스에 현재 유효한 인증서가 모두 포함되어 있어야 한다는 단점이 있을 수 있습니다.

관련 정보