인프런 커뮤니티 질문&답변

leejy님의 프로필 이미지
leejy

작성한 질문수

Airflow 마스터 클래스

docker 설치 과정에서 Certification 문제

작성

·

135

·

수정됨

0

안녕하세요.

Airflow 설치 과정에서 도커 설치 하려는데

sudo apt-get update 치면

Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown. Could not handshake: Error in the certificate verification. 라고 뜹니다.

구글링해서 https://velog.io/@hyojinnnnnan/%EB%A6%AC%EB%88%85%EC%8A%A4-curl-60-SSL-certificate-problem-unable-to-get-local-issuer-certificate 참고하여 보안 파일에 download.docker.com 를 추가했는데도 계속 동일한 오류가 뜨는데 어떻게 해결할 수 있나요? ㅠㅠ

답변 부탁드립니다.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

leejy님, docker 설치 과정에서 발생하는 SSL 인증서 문제로 인해 어려움을 겪으신 것 같습니다. 이 문제는 보통 시스템의 SSL 인증서가 업데이트되지 않았거나, 인증서 파일이 손상된 경우에 자주 발생합니다. 아래의 몇 가지 단계를 따라 문제를 해결해 보세요.

  1. 인증서 업데이트:
    시스템의 CA 인증서를 업데이트할 수 있습니다. 다음 명령어를 사용해 보세요:

    sudo apt-get install --reinstall ca-certificates
    sudo update-ca-certificates
    
  2. 시간 동기화 확인:
    시스템 시간이 올바르게 설정되지 않은 경우, SSL 인증서 문제가 발생할 수 있습니다. 시간을 동기화하려면 다음 명령어를 사용하세요:

    sudo apt-get install ntp
    sudo service ntp restart
    
  3. 보안 파일 수정:
    다시 한 번 보안 파일에 올바른 entry가 추가되었는지 확인하세요. 제대로 설정하지 않았거나 오타가 있는 경우, 동일한 문제가 계속 발생할 수 있습니다.

    echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
    sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
    
  4. 프록시 설정:
    프록시 서버를 사용하는 환경에서는 프록시 설정이 올바르게 되어 있는지 확인하세요. /etc/apt/apt.conf.d/proxy.conf 파일을 수정하거나 생성하여 프록시 설정을 추가할 수 있습니다.

    Acquire::http::Proxy "http://[user:password@]proxy.server:port/";
    Acquire::https::Proxy "https://[user:password@]proxy.server:port/";
    

이와 유사한 문제를 겪으신 학습자가 참고할 수 있는 몇 가지 게시물을 소개합니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

leejy님의 프로필 이미지
leejy
질문자

  1. 시간 동기화 확인 단계가 제대로 진행되지 않습니다.

sudo apt-get install ntp 하면

Reading package lists... Done

Building dependency tree... Done

Reading state information... Done

Some packages could not be installed. This may mean that you have

requested an impossible situation or if you are using the unstable

distribution that some required packages have not yet been created

or been moved out of Incoming.

The following information may help to resolve the situation:

The following packages have unmet dependencies:

ntpsec : Conflicts: time-daemon

systemd-timesyncd : Conflicts: time-daemon

E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

라고 뜨고, 무시하고 sudo service ntp restart 를 치면

Failed to restart ntp.service: Unit ntp.service not found. 라고 뜨네요.

김현진님의 프로필 이미지
김현진
지식공유자

안녕하세요 leejy 님!

답글이 좀 늦었네요. 현재 WSL 환경이시죠?

NTP는 설치 안되어있다 하더라도 시간이 정상적이면 괜찮을 것 같습니다.

WSL에서 date 명령을 쳐서 현재 시간이 맞는지 확인좀 해주시고

 

현재 문제가 되고 있는 sudo apt-get update 쳤을 때 발생하는 에러 메시지 전체를 붙여주시겠어요?

leejy님의 프로필 이미지
leejy
질문자

안녕하세요, WSL 에서 보안 설정 전/후 동일하게 auth 권한 오류가 나는데요,

지금 PC 포맷 중이에요. PC 포맷 후에도 동일한 상황인지 확인하고 다시 말씀 드리겠습니다

감사합니다.

leejy님의 프로필 이미지
leejy
질문자

포맷했는데도 같은 문제가 발생했습니다.

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc


를 치고 나면

 

curl: (60) SSL certificate problem: unable to get local issuer certificate

More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not

establish a secure connection to it. To learn more about this situation and

how to fix it, please visit the web page mentioned above.

이라는 메세지가 뜹니다.

김현진님의 프로필 이미지
김현진
지식공유자

어이쿠 포맷까지 하셨군요.

제가 꼭 같이 해결해드리겠습니다.

우선 WSL의 시간, 로컬 컴퓨터 시간이 실제 시간과 잘 동기화 돼있는지 확인해주시겠어요?

leejy님의 프로필 이미지
leejy
질문자

WSL의 시간과 로컬 컴퓨터 시간은 동기화 되어 있습니다.

image.png

 

김현진님의 프로필 이미지
김현진
지식공유자

리눅스에서 curl은 기본적으로 대상 서버의 인증서를 검증하도록 되어 있고, 로컬 내 내장된 인증 저장소를 사용해서 검사하도록 돼있습니다.

그런데 k 옵션을 주면 인증서 검사를 패스할 수 있습니다.

일단 현재 막힌 단계인 curl 은 -k 옵션을 붙여서 해보시겠어요?

sudo curl -fksSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
leejy님의 프로필 이미지
leejy
질문자

-k 옵션 붙여서 해봤는데요, 해당 단계는 넘어갔는데 결국 sudo apt-get update 할 때 아래와 같은 경고가 떴고 도커 엔진 install 할 때 실패했습니다.

(생략)

Fetched 7514 kB in 12s (640 kB/s)

Reading package lists... Done

W: Failed to fetch https://download.docker.com/linux/ubuntu/dists/jammy/InRelease Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown. Could not handshake: Error in the certificate verification. [IP: (지움) ]

W: Some index files failed to download. They have been ignored, or old ones used instead.

 

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

이후 발생한 오류

Reading package lists... Done

Building dependency tree... Done

Reading state information... Done

Package docker-ce is not available, but is referred to by another package.

This may mean that the package is missing, has been obsoleted, or

is only available from another source

E: Package 'docker-ce' has no installation candidate

E: Unable to locate package docker-ce-cli

E: Unable to locate package containerd.io

E: Couldn't find any package by glob 'containerd.io'

E: Couldn't find any package by regex 'containerd.io'

E: Unable to locate package docker-buildx-plugin

E: Unable to locate package docker-compose-plugin

leejy님의 프로필 이미지
leejy

작성한 질문수

질문하기