루트 인증서는 어떻게 설치합니까?


223

누구든지 우분투 10 또는 11에 루트 인증서를 설치하는 좋은 자습서를 알려 줄 수 있습니까?

.crt파일 이 제공되었습니다 . 나는 디렉토리를 만들고 그 디렉토리에 /usr/share/ca-certificates/newdomain.org배치 해야하는 것을 수집합니다 .crt . 그 외에도 진행 방법을 잘 모르겠습니다.


19
누군가가 crt 대신 cer 파일로 여기에 착륙 하면 같은 확장자입니다 (다른 확장자로). 이 답변을 따를 수 있고 파일 이름 만 대체하면됩니다.
Oli

Btw : 명령 줄에서 CA 인증서가져 오는 편리한 방법 은 serverfault를 참조하십시오.
Frank Nocke

답변:


297

루트 / CA 인증서 설치

CA 인증서 파일이 제공 foo.crt되면 다음 단계에 따라 Ubuntu에 설치하십시오.

  1. 다음에 추가 CA 인증서의 디렉토리를 작성하십시오 /usr/share/ca-certificates.

    sudo mkdir /usr/share/ca-certificates/extra
    
  2. CA .crt파일을이 디렉토리로 복사하십시오 .

    sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt
    
  3. 우분투 가 다음에 .crt상대적인 파일 경로를 추가하도록 하십시오 ./usr/share/ca-certificates/etc/ca-certificates.conf

    sudo dpkg-reconfigure ca-certificates
    

    비 대화식으로이 작업을 수행하려면 다음을 실행하십시오.

    sudo update-ca-certificates
    

.pemUbuntu에 파일 이있는 경우 먼저 .crt파일 로 변환해야 합니다.

openssl x509 -in foo.pem -inform PEM -out foo.crt

54
어떻게 사용에 대한 /usr/local/share/ca-certificates(현지!) 대신 시스템 패키지 관리를 사용하는이 directoy 관리?
gertvdijk

6
Firefox (및 다른 소프트웨어)는 시스템 전체 인증서를 사용하지 않지만 자체 인증서 저장소는 askubuntu.com/a/248326/79344 입니다.
Amir Ali Akbari

12
파일 PEM 형식 이어야 하며 ".crt"확장자를 가져야합니다.
Anton

2
sudo dpkg-reconfigure ca-certificates고마워, 다른 사람 sudo update-ca-certificates --fresh은 16.10에서 작동하지 않았습니다.
antivirtel

7
이 명령 openssl x509 -in foo.pem -inform PEM -out foo.crt은 PEM 파일을 PEM 파일로 복사합니다. 이름을 바꾸면 더 쉽게 할 수 있습니다.
Marian

190

CA 인증서 파일 'foo.crt'가 주어지면 다음 단계에 따라 Ubuntu에 설치하십시오.

먼저 CA를 dir에 복사하십시오. /usr/local/share/ca-certificates/

sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt

그런 다음 CA 저장소를 업데이트하십시오.

sudo update-ca-certificates

그게 다야. 이 출력을 가져와야합니다.

Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
Adding debian:foo.pem
done.
done.

파일을 편집 할 필요가 없습니다. CA에 대한 링크가 자동으로 생성됩니다.

인증서 파일 이름은로 끝나야 합니다. .crt그렇지 않으면 update-ca-certificates스크립트가 해당 파일 이름을 선택하지 않습니다.

이 절차는 최신 버전에서도 작동합니다 : manuals .


1
이 신뢰할 수있는 tahr 14.04에서 작동하지 않는 것 같습니다
mcantsin

25
/ usr / share / ca-certificates에 추가하는 것과 달리 이것은 하위 디렉토리가 아닌 / usr / local / share / ca-certificates에 직접있는 경우에만 작동하는 것 같습니다. 시스템 폴더 대신 로컬 폴더를 사용하는 경우 +1!
Toby J

2
이것은 README.Debian에 문서화되어 있습니다.
pevik

1
@ Sparky1, 이것은 허용되는 답변이어야합니다.
Drew Chapin 2012

1
@FranklinYu thanks :) 데비안은 Alioth에서 Salsa로 옮겨갔습니다. salsa.debian.org/debian/ca-certificates/raw/master/debian/… .
pevik

7

우분투에 인증 기관 설치

우분투 14.04에서 이것을 테스트했습니다.

여기 내 해결책이 있습니다. 이것을 작동시키는 방법을 알아 내려고 오랫동안 보았습니다.

  1. 브라우저에서 .cer을 추출하십시오. IE 11을 사용했습니다.
    • 설정-> 인터넷 옵션-> 중간 인증 기관
    • 내보낼 인증 기관을 선택하십시오 ( certutil -config - -ping회사 프록시 뒤에있는 경우 사용중인 인증 기관 이 표시됩니다)
    • 내보내기-> 사용하려는 형식을 선택하십시오 : DER Encoded .cer
  2. 어떻게 든 우분투에 .cer 파일 가져 오기
  3. .crt로 변환 openssl x509 -inform DER -in certificate.cer -out certificate.crt
  4. 추가 디렉토리 만들기 sudo mkdir /usr/share/ca-certificates/extra
  5. 인증서 복사 sudo cp certificate.crt /usr/share/ca-certificates/extra/certificate.crt
  6. sudo update-ca-certificates
  7. 그렇지 않다면 내가 한 일을해야합니다. sudo nano /etc/ca-certificates.conf
  8. 아래로 스크롤하여 .cer을 찾은 다음 인증서 !이름을 찾을 수없는 경우 파일 이름 앞에서 update-ca-certificates 문서를 제거 하십시오.dpkg-reconfigure ca-certificates
  9. 운영 sudo update-ca-certificates
  10. Firefox, Chrome 등에서 CA를 개별적으로 신뢰해야 할 수도 있습니다. Docker와 함께 작동하려면이 CA가 필요했기 때문에이 단계 후에 Docker와 작동했습니다.

1
16.04에서 작동합니까?
endolith

@endolith는 16.04에서 나를 위해 일했습니다.
Shubham

4

우분투 18.04에서는 다른 답변이 효과가 없었습니다. /etc/ssl/certs/ca-certificates.crt다음 명령 을 사용하여 인증서 인증서를 추가하십시오 .

cat YOUR_CERT_HERE.crt >> /etc/ssl/certs/ca-certificates.crt 

1
내가 이것을 발견하기 전에 가져 오기 명령으로 2 시간 엉망. 완전한!
beirtipol

명령이 잘못 s되었습니다. 최종본 이 없습니다 cat YOUR_CERT_HERE.crt >> /etc/ssl/certs/ca-certificates.crt .. 이 솔루션에 감사드립니다.
SommerEngineering

참고 : 실행 후 추가 된 인증서가 제거되므로 임시 솔루션 update-ca-certificates입니다.
kenorb

3

원하는 경우 네트워크의 로컬 웹 서버에서 (루트 / CA) 인증서를 사용할 수 있도록하십시오.

  • Firefox로 찾아보십시오.
  • 인증서를 열고 Firefox에 예외로 추가하도록 지시하십시오.
  • Firefox는 웹 사이트, 전자 메일 사용자 또는 소프트웨어 게시자를 식별하기 위해이 인증서를 신뢰할 것인지 묻습니다.
  • 즐겨!

업데이트 : 이것이 Ubuntu 11에서 작동하는지 확인해야합니다. Ubuntu 12.04 LTS에서 방금 수행했음을 깨달았습니다.


5
Firefox 자체 인증서 컨테이너를 사용하지 않았습니까? 이런 식으로 인증서를 추가하면 파이어 폭스가 인증서를 사용할 수 있습니까?
Aiyion.Prime

그것은 전혀 작동하지 않으므로 여전히 OS의 전역 인증서 컨테이너에 추가해야합니다. 그렇지 않으면 Firefox 컨테이너에만 있습니다.
arc_lupus

1

에서 여기 :

인증서 설치

터미널 프롬프트에서 다음 명령을 실행하여 키 파일 example.key 및 인증서 파일 example.crt 또는 CA에서 발행 한 인증서 파일을 설치할 수 있습니다.

sudo cp example.crt /etc/ssl/certs
sudo cp example.key /etc/ssl/private

이제 공개 키 암호화를 사용하여 인증서와 키 파일을 사용하도록 응용 프로그램을 구성하십시오. 예를 들어 Apache는 HTTPS를 제공하고 Dovecot은 IMAPS 및 POP3S 등을 제공 할 수 있습니다.


좀 더 자세히 읽어보아야 ... 루트 인증서가 아닌 것 같습니다. 내가 링크 한 페이지에는 루트 인증서에 대한 정보가 있습니다.
jat255

1
공개 키와 개인 키가 없으며 .crt 만 있으므로 불행히도 해당 명령이 적용되지 않는 것 같습니다.
Sparky1

0

FireFox에 루트 CA 인증서를 추가하는 것은 오늘날 매우 쉽습니다. 환경 설정을 열고 "개인 정보 및 보안"으로 이동하여 "인증서"로 스크롤 한 다음 "인증서보기 ..."를 클릭하십시오. "인증서 가져 오기"를 클릭하십시오. 루트 CA (.pem)를 가리키고 확인하십시오. 그게 다야


0

간단한 단계는 다음과 같습니다.

  1. SSL 기반 애플리케이션이 SSL 연결의 진위 여부를 확인할 수 있도록 CA 인증서를 설치하십시오.

    sudo apt-get install ca-certificates
    
  2. 인증서 파일 ( crt또는.cer )을 /usr/local/share/ca-certificates/폴더에 복사하십시오. 예 :

    sudo cp file.crt /usr/local/share/ca-certificates/
    

    PEM 파일은 .pem을 .crt 및 .key로 변환을 참조하십시오 .

    선택적으로 Charles 프록시를 사용하는 경우이 명령이 작동 할 수 있습니다.

    curl -L chls.pro/ssl | sudo tee /usr/local/share/ca-certificates/charles.crt
    
  3. 인증서 업데이트 :

    sudo update-ca-certificates
    

    이 명령은 /etc/ssl/certsSSL 인증서를 보유 하도록 디렉토리를 업데이트 하고 ca-certificates.crt파일 (연결된 단일 파일 인증서 목록)을 생성 합니다.

    참고 : 인증서 는 영구적이지 않고 제거 될 예정이므로 여기에 제안 된대로 수동으로 인증서를 추가하지 마십시오 .

참고 :로 실행중인 경우 위 명령 root에서을 삭제할 수 있습니다 sudo.


0

사이의 명확화 update-ca-certificatesdpkg-reconfigure ca-certificates하나 개의 작품과 다른하지 않는 이유!

update-ca-certificates또는 업데이트 된 sudo update-ca-certificates 경우에만 작동합니다 /etc/ca-certificates.conf .

/etc/ca-certificate.conf dpkg-reconfigure ca-certificates인증서 이름을 가져올 업데이트 를 실행 한 후에 만 ​​업데이트 됩니다./etc/ca-certificates.conf

/etc/ca-certificates.conf파일 헤더에 명시되어 있습니다.

# This file lists certificates that you wish to use or to ignore to be
# installed in /etc/ssl/certs.
# update-ca-certificates(8) will update /etc/ssl/certs by reading this file.
#
# This is autogenerated by dpkg-reconfigure ca-certificates.  <=======
# Certificates should be installed under /usr/share/ca-certificates
# and files with extension '.crt' is recognized as available certs.
#
# line begins with # is comment.
# line begins with ! is certificate filename to be deselected.
#
mozilla/ACCVRAIZ1.crt
mozilla/AC_RAIZ_FNMT-RCM.crt
mozilla/Actalis_Authentication_Root_CA.crt
mozilla/AddTrust_External_Root.crt
...

보다시피, 형식 /etc/ca-certificates.conf<folder name>/<.crt name>

따라서 사용 update-ca-certificates하거나 sudo update-ca-certificates다음을 수행하여 .crt를 가져올 수 있습니다.

  1. / usr / share / ca-certificates에 추가 CA 인증서의 디렉토리를 작성하십시오.

    sudo mkdir /usr/share/ca-certificates/extra

  2. .crt 파일을이 디렉토리에 복사하십시오.

    sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt

  3. /etc/ca-certificates.conf사용하여 줄을 추가하십시오 <folder name>/<.crt name>.

    echo "extra/foo.crt" >> /etc/ca-certificate.conf

  4. sudo update-ca-certificates를 사용하여 인증서를 비 대화식 으로 업데이트

    sudo update-ca-certificates

    ... Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.

즐기세요!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.