반응형
NetBox에서 API Token 보안 강화를 위한 API_TOKEN_PEPPERS를 설정하는 방법
NetBox 4.0 이상 버전에서는 API 토큰 보안을 강화하기 위해 Pepper 기반 해시 방식이 도입되었습니다.
특히 NetBox 4.5 이상 버전에서는 v2 API Token을 사용하기 위해 최소 하나 이상의 Pepper 설정이 필요합니다.
Pepper는 API 토큰을 해싱할 때 추가적으로 사용하는 비밀 문자열로 데이터베이스 유출 상황에서도 토큰을 보호하는 역할을 합니다.
보안 정책: Pepper 문자열은 최소 50자 이상이어야 합니다.
웹 UI 오류
Unable to save v2 tokens: API_TOKEN_PEPPERS is not defined.
1. 무작위 Pepper 문자열 생성
Python의 secrets 모듈을 이용하여 안전한 무작위 문자열을 생성할 수 있습니다.
python3 -c "import secrets; print(secrets.token_urlsafe(50))"
HM6hVHK35NGJ4j0abvkgySYdcc3VAzvPwgopLA8D6o5QYe97H9NO3vIX_EJDmfLspZQ
이 문자열을 NetBox 설정 파일에 등록하여 Pepper로 사용합니다.
2. NetBox 설정 파일 수정
NetBox의 설정 파일을 열어 API_TOKEN_PEPPERS 항목을 수정합니다.
- API_TOKEN_PEPPERS 항목을 수정합니다.
sudo vim /opt/netbox/netbox/netbox/configuration.py
# Define a mapping of cryptographic peppers to use when hashing API tokens. A minimum of one pepper is required to
# enable v2 API tokens (NetBox v4.5+). Define peppers as a mapping of numeric ID to pepper value, as shown below. Each
# pepper must be at least 50 characters in length.
#
# API_TOKEN_PEPPERS = {
# 1: "<random string>",
# 2: "<random string>",
# }
API_TOKEN_PEPPERS = {
2: "HM6hVHK35NGJ4j0abvkgySYdcc3VAzvPwgopLA8D6o5QYe97H9NO3vIX_EJDmfLspZQ"
}
3. NetBox 서비스 재시작
설정을 적용하기 위해 NetBox 서비스를 재시작합니다.
sudo systemctl restart netbox
4. 서비스 로그 확인
서비스가 정상적으로 시작되었는지 로그를 확인합니다.
sudo journalctl -u netbox --no-pager | tail -n 50
정상적으로 설정되었다면 오류 메시지 없이 NetBox 서비스가 실행됩니다.
728x90
반응형
'리눅스' 카테고리의 다른 글
| 우분투 24.04에서 NetBox를 설치하는 방법 (0) | 2026.03.05 |
|---|---|
| Docker Compose를 사용하여 NetBox를 설치하는 방법 (0) | 2026.03.04 |
| HashiCorp Vault에서 MySQL 동적 계정 구성하는 방법 (0) | 2026.02.23 |
| 리눅스의 일반 계정에서 암호 없이 특정 계정으로 전환하는 방법 (0) | 2026.02.23 |
| Vault OTP 계정과 로컬 계정을 함께 사용하는 SSH 인증 구성하는 방법 (0) | 2026.02.20 |