10.2. CUPS 서버에서 TLS 암호화 구성


CUPS는 TLS 암호화 연결을 지원하며 기본적으로 이 서비스는 인증이 필요한 모든 요청에 대해 암호화된 연결을 적용합니다. 인증서가 구성되지 않은 경우 CUPS는 개인 키와 자체 서명 인증서를 생성합니다. 이는 로컬 호스트 자체에서 CUPS에 액세스하는 경우에만 충분합니다. 네트워크를 통한 보안 연결의 경우 CA(인증 기관)에서 서명한 서버 인증서를 사용합니다.

주의

암호화 또는 자체 서명된 인증서가 없으면 MITTM(Man-in-the-middle) 공격은 다음과 같이 공개할 수 있습니다.

  • 웹 인터페이스를 사용하여 CUPS를 구성할 때 관리자의 인증 정보
  • 네트워크를 통해 인쇄 작업을 보낼 때 기밀 데이터

사전 요구 사항

  • CUPS가 구성되어 있습니다.
  • 개인 키 를 생성하고 CA에서 이에 대한 서버 인증서를 발급했습니다.
  • 서버 인증서의 유효성을 확인하는 데 중간 인증서가 필요한 경우 중간 인증서를 서버 인증서에 연결합니다.
  • CUPS는 서비스에서 키를 읽을 때 암호를 입력할 수 있는 옵션을 제공하지 않으므로 개인 키는 암호로 보호되지 않습니다.
  • 인증서의 Canonical Name (CN) 또는 Subject Alternative Name (SAN) 필드는 다음 중 하나와 일치합니다.

    • CUPS 서버의 FQDN(정규화된 도메인 이름)
    • DNS가 서버의 IP 주소로 확인되는 별칭
  • 개인 키 및 서버 인증서 파일은 Privacy Enhanced Mail (PEM) 형식을 사용합니다.
  • 클라이언트는 CA 인증서를 신뢰합니다.

프로세스

  1. /etc/cups/cups-files.conf 파일을 편집하고 다음 설정을 추가하여 자체 서명된 인증서 자동 생성을 비활성화합니다.

    CreateSelfSignedCerts no
    Copy to Clipboard Toggle word wrap
  2. 자체 서명된 인증서 및 개인 키를 제거합니다.

    # rm /etc/cups/ssl/<hostname>.crt /etc/cups/ssl/<hostname>.key
    Copy to Clipboard Toggle word wrap
  3. 선택 사항: 서버의 FQDN을 표시합니다.

    # hostname -f
    server.example.com
    Copy to Clipboard Toggle word wrap
  4. 개인 키와 서버 인증서를 /etc/cups/ssl/ 디렉터리에 저장합니다. 예를 들면 다음과 같습니다.

    # mv /root/server.key /etc/cups/ssl/server.example.com.key
    # mv /root/server.crt /etc/cups/ssl/server.example.com.crt
    Copy to Clipboard Toggle word wrap
    중요

    CUPS를 사용하려면 개인 키 &lt ;fqdn > .key 및 서버 인증서 파일 &lt ;fqdn > .crt 를 지정해야 합니다. 별칭을 사용하는 경우 <alias> .key 및 <alias > .crt 파일의 이름을 지정해야 합니다.

  5. root 사용자만 이 파일을 읽을 수 있는 개인 키에 대한 보안 권한을 설정합니다.

    # chown root:root /etc/cups/ssl/server.example.com.key
    # chmod 600 /etc/cups/ssl/server.example.com.key
    Copy to Clipboard Toggle word wrap

    인증서는 보안 연결을 설정하기 전에 클라이언트와 서버 간의 통신의 일부이므로 모든 클라이언트는 인증 없이 인증서를 검색할 수 있습니다. 따라서 서버 인증서 파일에 대한 엄격한 권한을 설정할 필요가 없습니다.

  6. SELinux 컨텍스트를 복원합니다.

    # restorecon -Rv /etc/cups/ssl/
    Copy to Clipboard Toggle word wrap
  7. 선택 사항: 인증서의 CN 및 SAN 필드를 표시합니다.

    # openssl x509 -text -in /etc/cups/ssl/server.example.com.crt
    Certificate:
      Data:
        ...
        Subject: CN = server.example.com
        ...
        X509v3 extensions:
          ...
          X509v3 Subject Alternative Name:
            DNS:server.example.com
      ...
    Copy to Clipboard Toggle word wrap
  8. 서버 인증서의 CN 또는 SAN 필드에 서버의 FQDN과 다른 별칭이 포함된 경우 ServerAlias 매개변수를 /etc/cups/cupsd.conf 파일에 추가합니다.

    ServerAlias alternative_name.example.com
    Copy to Clipboard Toggle word wrap

    이 경우 절차의 나머지 부분에서 FQDN 대신 대체 이름을 사용합니다.

  9. 기본적으로 CUPS는 작업에 인증이 필요한 경우에만 암호화된 연결을 적용합니다(예: 웹 인터페이스의 /admin 페이지에서 관리 작업을 수행할 때).

    전체 CUPS 서버에 암호화를 적용하려면 /etc/cups/cupsd.conf 파일의 모든 < Location > 지시문에 Encryption 을 추가합니다. 예를 들면 다음과 같습니다.

    <Location />
      ...
      Encryption Required
    </Location>
    Copy to Clipboard Toggle word wrap
  10. CUPS를 다시 시작합니다.

    # systemctl restart cups
    Copy to Clipboard Toggle word wrap

검증

  1. 브라우저를 사용하고 https:// <hostname> :631 /admin/ 에 액세스합니다. 이렇게 하려면 브라우저가 CA 인증서를 신뢰해야 합니다. 연결에 성공하면 CUPS에서 TLS 암호화를 올바르게 구성했습니다.
  2. 전체 서버에 암호화가 필요한 경우 http:// <hostname > :631/ 에 액세스합니다. CUPS는 Upgrade Required 오류를 반환합니다.

문제 해결

  • cups 서비스의 systemd 저널 항목을 표시합니다.

    # journalctl -u cups
    Copy to Clipboard Toggle word wrap

    저널에 연결을 암호화할 수 없는 Unable이 포함된 경우 다음을 수행합니다. HTTPS 프로토콜을 사용하여 웹 인터페이스에 연결하지 못한 후 파일을 읽는 동안 오류가 발생했습니다. 개인 키 및 서버 인증서 파일의 이름을 확인합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat