신뢰할 수 없는 인증서를 무시하도록 davfs에 지시할 수 있나요?

신뢰할 수 없는 인증서를 무시하도록 davfs에 지시할 수 있나요?

내 서버는 다른 컴퓨터가 DAV에 액세스할 수 있도록 HTTPS를 통해서만 WebDAV를 제공합니다. 에 대한 인증서가 발급되었다고 가정하면 www.myserver.comWebDAV는 에 있습니다 https://www.myserver.com/webdav.

여러 가지 이유로 서버 자체가 이 디렉터리를 마운트하기를 원합니다. 실제 URL을 사용하여 인터넷 전체에 라우팅하는 것은 의미가 없으므로 다음과 같은 지름길을 택했습니다.

mount https://localhost/webdav

하지만 이제 문제가 생겼습니다.

/sbin/mount.davfs: the server certificate does not match the server name

이것은 의미가 있습니다. 의 개발자 설명대로 davfs제가 받은 인증서는 yes www.myserver.com인데 에서 제공한 것이므로 127.0.0.1당연히 일치하지 않습니다.

부팅 시 이 볼륨을 자동으로 마운트하고 싶습니다. 아마도 이것은 시작될 때마다 누군가가 인증서를 수락하기 위해 "예/아니요"라고 대답할 때까지 기다리기 때문에 작동하지 않을 것입니다. 이 URL이나 인증서에 대해 이 문제를 무시하도록 davfs에 어떻게 알릴 수 있습니까?

답변1

파일을 편집하면 이 문제를 해결할 수 있습니다 /etc/hosts. localhost를 정의하는 줄을 다음과 같이 변경하세요.

127.0.0.1    www.myserver.com all_other_aliases localhost

이를 사용하여 ping다음을 확인하세요.

$ ping www.myserver.com
PING www.myserver.com (127.0.0.1) 56(84) bytes of data.
64 bytes from www.myserver.com (127.0.0.1): icmp_req=1 ttl=64 time=0.013 ms
...

이제 설치 중 인증 확인을 위한 이름 조회가 올바르게 해결됩니다.

답변2

인증서에는 여러 개의 호스트 이름과 IP가 있을 수 있으며 이를 주체 대체 이름이라고 합니다.CACert는 이름에 대해서도 항상 이 작업을 수행할 것을 권장합니다..

openssl.conf불행하게도 동적 변경을 생성하고 요구하기가 약간 까다롭습니다 . 내 메모에 따르면 새 인증서 서명 요청을 생성하는 프로세스는 다음과 같습니다.

openssl req -sha256 -key your-private-key.pem -out your-csr.pem \
        -subject "(your subject)" \
        -config <(/bin/cat /etc/pki/tls/openssl.cnf ./myhosts.cfg) \
        -reqexts hostnames

myhosts.cfg이 콘텐츠는 어디에 있나요:

[ hostnames ]
subjectAltName = \
  DNS:www.myserver.com,\
  DNS:localhost,\
  IP:127.0.0.1

표준 openssl 구성은 /etc/pki/tls/openssl.cnfRedHat/CentO에 있으며 다른 배포판의 다른 곳에 있을 수도 있습니다. 실제로 IP에 대해서는 이 작업을 수행한 적이 없지만OpenSSL 문서이것이 가능해야 한다고 제안됩니다.

적절하게 서명된 인증서로 전환하려는 경우 일부 CA에서는 개인 서브넷 IP에 대한 인증서 발급을 거부할 수 있습니다.

답변3

나는 같은 문제를 가지고있다. 내 솔루션은 간단합니다.

echo y | mount -t davfs https://localhost/<URL details> <mount point>

예쁘지는 않지만 매력적일 수도 있습니다( <...>코드를 귀하의 세부정보로 바꾸세요). 그런 다음 이 명령을 내(Ubuntu)에 추가했고 /etc/rc.local부팅할 때마다 자동으로 설치되었습니다. 지금까지는 문제 없이 작동합니다.

관련 정보