Proxmox VE 매뉴얼을 Google Translate로 기계번역하고, 살짝 교정했습니다.
https://pve.proxmox.com/pve-docs/pve-admin-guide.html
version 8.1.4, Wed Mar 6 18:21:39 CET 2024
18.1. pvedaemon – Proxmox VE API 데몬
이 데몬은 127.0.0.1:85에 전체 Proxmox VE API를 노출합니다. 루트로 실행되며 모든 권한 있는 작업을 수행할 수 있는 권한이 있습니다.
참고: 데몬은 로컬 주소만 수신하므로 외부에서는 해당 주소에 액세스할 수 없습니다. pveproxy 데몬은 API를 외부 세계에 노출합니다.
18.2. pveproxy – Proxmox VE API 프록시 데몬
이 데몬은 HTTPS를 사용하여 TCP 포트 8006에서 전체 Proxmox VE API를 노출합니다. 사용자 www-data로 실행되며 매우 제한된 권한을 갖습니다. 더 많은 권한이 필요한 작업은 로컬 pvedaemon으로 전달됩니다.
다른 노드를 대상으로 하는 요청은 자동으로 해당 노드로 전달됩니다. 즉, 단일 Proxmox VE 노드에 연결하여 전체 클러스터를 관리할 수 있습니다.
18.2.1. 호스트 기반 액세스 제어
“apache2″와 같은 액세스 제어 목록을 구성할 수 있습니다. /etc/default/pveproxy 파일에서 값을 읽습니다. 예를 들어:
ALLOW_FROM="10.0.0.1-10.0.0.5,192.168.0.0/22" DENY_FROM="all" POLICY="allow"
IP 주소는 Net::IP에서 이해하는 모든 구문을 사용하여 지정할 수 있습니다. 이름 all은 0/0 및 ::/0(모든 IPv4 및 IPv6 주소를 의미)의 별칭입니다.
기본 정책은 허용입니다.
Match | POLICY=deny | POLICY=allow |
---|---|---|
Match Allow only | allow | allow |
Match Deny only | deny | deny |
No match | deny | allow |
Match Both Allow & Deny | deny | allow |
18.2.2. 수신 IP 주소
기본적으로 pveproxy 및 spiceproxy 데몬은 와일드카드 주소를 수신하고 IPv4 및 IPv6 클라이언트 모두의 연결을 허용합니다.
/etc/default/pveproxy에 LISTEN_IP를 설정하면 pveproxy 및 spiceproxy 데몬이 바인딩되는 IP 주소를 제어할 수 있습니다. IP 주소는 시스템에서 구성되어야 합니다.
sysctl net.ipv6.bindv6only를 기본값이 아닌 1로 설정하면 데몬이 IPv6 클라이언트의 연결만 허용하게 되며 일반적으로 다른 많은 문제도 발생합니다. 이 구성을 설정하는 경우 sysctl 설정을 제거하거나 LISTEN_IP를 0.0.0.0(IPv4 클라이언트만 허용)으로 설정하는 것이 좋습니다.
LISTEN_IP는 소켓을 내부 인터페이스로 제한하는 데에만 사용할 수 있으므로 공용 인터넷에 대한 노출이 줄어듭니다. 예를 들면 다음과 같습니다.
LISTEN_IP="192.0.2.1"
마찬가지로 IPv6 주소도 설정할 수 있습니다.
LISTEN_IP="2001:db8:85a3::1"
링크-로컬 IPv6 주소를 지정하려면 인터페이스 이름 자체를 제공해야 합니다. 예를 들어:
LISTEN_IP="fe80::c463:8cff:feb9:6a4e%vmbr0"
경고: 클러스터의 노드는 통신을 위해 아마도 다른 서브넷에서 pveproxy에 액세스해야 합니다. 클러스터형 시스템에서는 LISTEN_IP를 설정하지 않는 것이 좋습니다.
변경 사항을 적용하려면 노드를 재부팅하거나 pveproxy 및 spiceproxy 서비스를 완전히 다시 시작해야 합니다.
systemctl restart pveproxy.service spiceproxy.service
참고: 다시 로드와 달리 pveproxy 서비스를 다시 시작하면 일부 장기 실행 작업자 프로세스(예: 가상 게스트에서 실행 중인 콘솔 또는 셸)가 중단될 수 있습니다. 따라서 이 변경 사항을 적용하려면 유지 관리 기간을 이용하시기 바랍니다.
18.2.3. SSL 암호화 제품군
CIPHERS(TLS ⇐ 1.2) 및 CIPHERSUITES(TLS >= 1.3) 키를 통해 /etc/default/pveproxy에서 암호 목록을 정의할 수 있습니다. 예를 들어
CIPHERS="ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256" CIPHERSUITES="TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256"
위는 기본값입니다. 사용 가능한 모든 옵션 목록은 openssl 패키지의 ciphers(1) 매뉴얼 페이지를 참조하십시오.
또한 /etc/default/pveproxy에서 사용되는 암호를 선택하도록 클라이언트를 설정할 수 있습니다(기본값은 클라이언트와 pveproxy 모두에서 사용할 수 있는 목록의 첫 번째 암호입니다).
HONOR_CIPHER_ORDER=0
18.2.4. 지원되는 TLS 버전
안전하지 않은 SSL 버전 2와 3은 pveproxy에 대해 무조건 비활성화됩니다. 1.1 미만의 TLS 버전은 pveproxy가 적용하는 최신 OpenSSL 버전에서 기본적으로 비활성화되어 있습니다(/etc/ssl/openssl.cnf 참조).
TLS 버전 1.2 또는 1.3을 비활성화하려면 /etc/default/pveproxy에서 다음을 설정하십시오.
DISABLE_TLS_1_2=1
또는 각각:
DISABLE_TLS_1_3=1
참고: 특별한 이유가 없는 한 지원되는 TLS 버전을 수동으로 조정하는 것은 권장되지 않습니다.
18.2.5. Diffie-Hellman 매개변수
예를 들어, DHPARAMS를 PEM 형식의 DH 매개변수가 포함된 파일의 경로로 설정하여 /etc/default/pveproxy에서 사용된 Diffie-Hellman 매개변수를 정의할 수 있습니다.
DHPARAMS="/path/to/dhparams.pem"
이 옵션을 설정하지 않으면 내장된 skip2048 매개변수가 사용됩니다.
참고: DH 매개변수는 DH 키 교환 알고리즘을 활용하는 암호 제품군이 협상되는 경우에만 사용됩니다.
18.2.6. 대체 HTTPS 인증서
사용되는 인증서를 외부 인증서 또는 ACME를 통해 얻은 인증서로 변경할 수 있습니다.
pveproxy는 /etc/pve/local/pveproxy-ssl.pem 및 /etc/pve/local/pveproxy-ssl.key(있는 경우)를 사용하고 /etc/pve/local/pve-ssl.pem 및 /etc로 대체됩니다. /pve/local/pve-ssl.key. 개인 키에는 암호를 사용할 수 없습니다.
/etc/default/pveproxy에서 TLS_KEY_FILE을 설정하여 인증서 개인 키 /etc/pve/local/pveproxy-ssl.key의 위치를 재정의할 수 있습니다. 예를 들면 다음과 같습니다.
TLS_KEY_FILE="/secrets/pveproxy.key"
참고: 포함된 ACME 통합은 이 설정을 따르지 않습니다.
자세한 내용은 설명서의 호스트 시스템 관리 장을 참조하세요.
18.2.7. 응답 압축
기본적으로 pveproxy는 클라이언트가 지원하는 경우 압축 가능한 콘텐츠에 대해 gzip HTTP 수준 압축을 사용합니다. /etc/default/pveproxy에서 비활성화할 수 있습니다.
COMPRESSION=0
18.3. pvestatd – Proxmox VE 상태 데몬
이 데몬은 정기적으로 VM, 스토리지 및 컨테이너의 상태를 쿼리합니다. 결과는 클러스터의 모든 노드로 전송됩니다.
18.4. spiceproxy – SPICE 프록시 서비스
SPICE(독립 컴퓨팅 환경을 위한 단순 프로토콜)는 원격 디스플레이 및 장치(예: 키보드, 마우스, 오디오)에 대한 클라이언트 액세스를 제공하는 개방형 원격 컴퓨팅 솔루션입니다. 주요 사용 사례는 가상 머신 및 컨테이너에 대한 원격 액세스를 얻는 것입니다.
이 데몬은 TCP 포트 3128에서 수신 대기하고 SPICE 클라이언트의 CONNECT 요청을 올바른 Proxmox VE VM으로 전달하기 위해 HTTP 프록시를 구현합니다. 사용자 www-data로 실행되며 매우 제한된 권한을 갖습니다.
18.4.1. 호스트 기반 액세스 제어
액세스 제어 목록과 같은 “apache2″를 구성하는 것이 가능합니다. /etc/default/pveproxy 파일에서 값을 읽습니다. 자세한 내용은 pveproxy 설명서를 참조하세요.
18.5. pvescheduler – Proxmox VE 스케줄러 데몬
이 데몬은 복제, vzdump 작업 등 일정에 따라 작업을 시작하는 역할을 담당합니다.
vzdump 작업의 경우 /etc/pve/jobs.cfg 파일에서 구성을 가져옵니다.