pfSense Alias


1. 들어가기 전에 — Alias란 무엇인가

1-1. 한 줄 정의

Alias(별칭) 는 IP 주소, 네트워크, 포트, URL 같은 값(value) 에 사람이 알아보기 쉬운 이름(name) 을 붙이는 기능입니다.

“Alias는 이름을 IP주소 혹은 포트 정보등으로 번역해 주는 동의어(synonym)와 같다.”

1-2. 비유로 이해하기

프로그래밍의 변수(variable) 와 똑같습니다.

[Alias 없이]                    [Alias 사용]
192.168.1.10            →      WEB_SERVER
192.168.1.20            →      MAIL_SERVER
2001:db8::1234:5678     →      DB_SERVER_V6
80, 443, 8080, 8443     →      WEB_PORTS

방화벽 규칙 50개에 192.168.1.10이 들어가 있는 상황에서 IP가 바뀌면?

  • Alias 없이: 50개를 모두 일일이 수정 ❌
  • Alias 사용: Alias 한 곳만 수정하면 50곳에 자동 반영 ✅

2. 왜 Alias를 사용하는가 — 5가지 이점

#이점설명
1유지보수 용이값이 바뀌어도 한 곳만 수정
2가독성 향상WEB_SERVER192.168.1.10보다 직관적
3IPv6 관리 필수긴 16진수 주소를 외울 필요 없음
4그룹핑여러 IP/포트를 묶어서 한 번에 적용
5재사용성한 번 만들면 NAT, 방화벽, VPN 등 모든 곳에서 사용 가능

💡 “IPv6는 글자와 숫자가 너무 많아서 Alias 없이는 사실상 작업이 불가능하다.”


3. Alias의 6가지 타입

pfSense는 6가지 종류의 Alias를 제공합니다.

타입한국어저장하는 값사용 예
Host(s)호스트개별 IP 주소 (1개 또는 여러 개)서버 IP, 관리자 PC IP
Network(s)네트워크서브넷(CIDR) 또는 IP 범위LAN 대역, 지점 네트워크
Port(s)포트포트 번호 또는 범위웹 포트, 게임 포트 묶음
URL (IPs)URL (IP)URL에서 IP 목록을 다운로드차단 IP 리스트
URL (Ports)URL (포트)URL에서 포트 목록을 다운로드거의 사용 안 함
URL Table (IPs)URL 테이블 (IP)대용량 IP 목록을 주기적 갱신위협 인텔리전스 피드
URL Table (Ports)URL 테이블 (포트)대용량 포트 목록 갱신거의 사용 안 함

📌 실무에서 주로 쓰이는 것은 Host, Network, Port 세 가지이며, 보안 강화 목적으로 URL Table (IPs) 가 가끔 사용됩니다.


4. Alias 명명 규칙 ⚠️ 반드시 기억할 것

4-1. 허용되는 문자

  • ✅ 영문 대문자 A-Z
  • ✅ 영문 소문자 a-z
  • ✅ 숫자 0-9
  • ✅ 언더스코어 _

4-2. 금지되는 것

  • ❌ 공백 (스페이스)
  • ❌ 하이픈 -, 점 ., 슬래시 / 등 특수문자
  • ❌ 한글 등 비ASCII 문자
  • 숫자로 시작 (반드시 영문자로 시작해야 함)
  • ❌ 예약어 사용 (예: lan, wan, pptp 등 인터페이스 이름)

4-3. 좋은 이름 vs 나쁜 이름

좋은 예 ✅나쁜 예 ❌이유
WEB_SERVERWeb Server공백 포함
MAIL_SERVER_V6Mail-Server하이픈 포함
BRANCH_NETWORK2nd_Branch숫자로 시작
ADMIN_PCS관리자PC한글 사용
GAME_PORTSlan예약어

4-4. 작명 컨벤션 권장사항

  • 대문자 + 언더스코어 (예: WEB_SERVER) — 가장 보편적
  • 의미가 분명하도록 길게 써도 무방 (OFFICE_PRINTER_FLOOR_3)
  • 동일 카테고리는 접두사로 묶기 (SRV_WEB, SRV_DB, SRV_MAIL)

5. Alias 생성 — 실전 단계별 설정

5-1. 설정 경로

Firewall  →  Aliases  →  [IP / Ports / URLs / All]

탭 구성:

  • IP: Host와 Network 타입
  • Ports: Port 타입
  • URLs: URL 관련 타입들
  • All: 모든 Alias 한 번에 보기

5-2. 공통 입력 필드

필드설명
NameAlias 이름 (4장의 명명 규칙 준수)
Description이 Alias의 용도 설명 (한국어 가능)
TypeHost / Network / Port / URL 등
값 입력란타입에 따라 IP, 네트워크, 포트 등 입력
각 값의 Description개별 항목 설명

💡 Description에는 한국어를 사용해도 됩니다. Name만 영문 규칙을 지키면 됩니다.


6. 타입별 상세 사용법

6-1. Host(s) — 개별 IP 주소

용도: 서버, PC 등 특정 호스트 1개 또는 여러 개를 묶음

입력 예시

NameTypeIP or FQDNDescription
WIN_SERVERHost(s)192.168.1.10사내 윈도우 서버
ADMIN_PCSHost(s)192.168.1.50
192.168.1.51
192.168.1.52
관리자 PC들

특징

  • IPv4와 IPv6 모두 가능
  • 여러 IP를 한 Alias에 등록 가능 (각 IP에 개별 Description)
  • FQDN(도메인 이름) 도 입력 가능 → pfSense가 주기적으로 DNS 조회해서 IP 갱신

💡 동적 IP 호스트(예: 동적 DNS를 쓰는 외부 서버)는 IP 대신 도메인을 입력하면 자동 추적됩니다.


6-2. Network(s) — 네트워크 대역

용도: 서브넷 전체 또는 IP 범위

입력 형식

  1. CIDR 표기: 192.168.10.0/24 → 192.168.10.0~192.168.10.255 전체
  2. IP 범위: 192.168.1.10-192.168.1.40 → 두 IP 사이의 모든 주소

입력 예시

NameTypeNetworkDescription
BRANCH_NETNetwork(s)192.168.10.0/24지점 네트워크
WIFI_NETNetwork(s)192.168.20.0/24사내 WiFi 네트워크
DHCP_RANGENetwork(s)192.168.1.100-192.168.1.200DHCP 할당 범위

CIDR 빠른 참조

CIDR호스트 수사용 예
/321단일 IP
/302Point-to-Point
/296작은 서브넷
/2814작은 사무실
/24254일반 LAN (가장 흔함)
/1665,534대규모 사설망
/816,777,214매우 큰 사설망

6-3. Port(s) — 포트 번호

용도: 서비스 포트 묶음

입력 형식

  1. 단일 포트: 80
  2. 포트 범위: 8000:8100 (콜론 사용 ⚠️)
  3. 여러 포트: 각 항목으로 추가

입력 예시

NameTypePortDescription
WEB_PORTSPort(s)80
443
HTTP, HTTPS
GAME_PORTSPort(s)27015:27030Steam 게임 서버
DEV_PORTSPort(s)3000
8080
9000:9010
개발 서버 포트

⚠️ 포트 범위는 콜론(:)을 사용합니다. 하이픈(-)이 아닙니다. (네트워크 IP 범위와 표기법이 다름)


6-4. URL (IPs) — URL에서 IP 목록 가져오기

용도: 외부 URL에 있는 IP 리스트를 다운로드해서 Alias로 사용

동작 방식

  • pfSense가 지정한 URL에 접속
  • 텍스트 형태의 IP 목록을 한 번 다운로드
  • 결과를 Host Alias로 저장

사용 예

  • 차단해야 할 악성 IP 리스트
  • 허용 대상 파트너사 IP 목록

6-5. URL Table (IPs) — 대용량 + 자동 갱신 ⭐

용도: 수천~수만 개의 IP를 주기적으로 자동 갱신

URL과 URL Table의 차이

구분URLURL Table
다운로드 시점생성 시 1회주기적 자동 갱신
처리 방식메모리에 보관pfSense의 pf 테이블 사용
적합한 크기수십~수백 개수천~수십만 개
갱신 주기수동일(day) 단위 설정
주 용도정적 목록위협 인텔리전스 피드

활용 예 (보안 강화)

  • 알려진 악성 IP 차단 리스트 (Spamhaus, FireHOL 등)
  • 국가별 IP 차단 (Geo-IP)
  • 광고/추적 IP 차단

💡 pfBlockerNG 패키지는 이 기능을 더욱 강력하게 확장한 것입니다.


7. Alias가 사용되는 위치

한 번 만든 Alias는 pfSense의 거의 모든 IP/포트 입력란에서 사용 가능합니다.

사용 가능한 곳

위치사용 예
Firewall → RulesSource/Destination에 Alias 사용
Firewall → NATPort Forward의 대상 IP/포트
VPN → OpenVPN/IPsec허용 클라이언트 IP
Services → DHCP정적 매핑 그룹화
Traffic Shaper우선순위 부여 대상
Captive Portal우회 허용 IP

입력 시 사용 방법

입력란에 Alias 이름을 타이핑하면 자동완성 드롭다운에 나타납니다.

Source IP: WEB[자동완성] → WEB_SERVER 선택

8. 실전 활용 예제

예제 1: 사내 서버 그룹 관리

Alias 생성:
  Name: INTERNAL_SERVERS
  Type: Host(s)
  Values:
    192.168.1.10  (Web Server)
    192.168.1.20  (Mail Server)
    192.168.1.30  (DB Server)

활용:
  방화벽 규칙: "INTERNAL_SERVERS는 외부 인터넷 접속 차단"
  → 서버 1대 추가 시 Alias에만 IP 추가하면 끝

예제 2: 다중 사이트 환경

Alias 생성:
  HQ_NET       → 192.168.1.0/24   (본사)
  BRANCH1_NET  → 192.168.10.0/24  (지점1)
  BRANCH2_NET  → 192.168.20.0/24  (지점2)
  ALL_BRANCHES → BRANCH1_NET, BRANCH2_NET (중첩 가능!)

활용:
  VPN 라우팅, 방화벽 정책에 그룹별로 적용

예제 3: 차단 리스트 자동화

Alias 생성:
  Name: MALICIOUS_IPS
  Type: URL Table (IPs)
  URL: https://example-threat-feed.com/blocklist.txt
  Update Frequency: 1 (일 1회 갱신)

활용:
  WAN 인터페이스에 "MALICIOUS_IPS → 차단" 규칙
  → 매일 자동으로 최신 위협 차단

예제 4: 개발/스테이징 포트 관리

Alias 생성:
  DEV_PORTS:  3000, 8080, 9000:9010
  ADMIN_PCS:  192.168.1.50, 192.168.1.51

활용:
  "ADMIN_PCS만 DEV_SERVER의 DEV_PORTS에 접근 허용"
  → 개발자 PC 추가 시 ADMIN_PCS Alias에만 추가

9. Alias 중첩 (Nested Alias) — 고급 활용

같은 타입의 Alias 안에 다른 Alias를 포함시킬 수 있습니다.

예시

HQ_SERVERS    = 192.168.1.10, 192.168.1.20
BRANCH_SERVERS = 192.168.10.10, 192.168.10.20
ALL_SERVERS   = HQ_SERVERS, BRANCH_SERVERS  ← 중첩!

주의사항

  • 같은 타입끼리만 중첩 가능 (Host 안에 Network 불가)
  • 너무 깊게 중첩하면 가독성 떨어짐 → 2~3단계 이내 권장
  • 순환 참조(A 안에 B, B 안에 A) 금지

10. 자주 하는 실수 & 트러블슈팅

증상원인해결
Alias 저장 시 오류 발생Name에 공백/특수문자 사용영문+숫자+언더스코어만 사용
Alias가 자동완성에 안 뜸다른 타입 입력란에 사용 시도Host용은 IP 칸, Port용은 Port 칸에만
URL Table이 비어 있음URL 접근 실패 또는 형식 오류URL 직접 접속 확인, 한 줄 한 IP 형식 확인
FQDN Alias가 동작 안 함DNS 해석 실패pfSense의 DNS 설정 확인
변경 후 효과 없음Apply Changes 안 누름상단 노란 버튼 클릭
포트 범위가 안 먹음하이픈 사용 (80-90)콜론으로 변경 (80:90)
인터페이스 이름과 충돌lan, wan 같은 예약어 사용다른 이름으로 변경

11. 모범 사례 (Best Practices)

✅ 해야 할 것

  • 명명 규칙 통일: 대문자_언더스코어 일관 사용
  • Description 충실히: 6개월 후의 자신을 위해
  • 카테고리 접두사: SRV_, NET_, PORT_ 등으로 분류
  • 자주 변하는 값은 무조건 Alias로: 하드코딩하지 말 것
  • 변경 이력 관리: pfSense 백업 활용
  • 불필요한 Alias 정리: 미사용 Alias는 주기적으로 삭제

❌ 피해야 할 것

  • 의미 없는 이름 (alias1, test, temp)
  • 너무 짧은 이름 (s1, web)
  • 너무 긴 이름 (40자 초과)
  • Description 비워 두기
  • 비슷한 이름의 Alias 남발 (WEB1, WEB2, WEB3…)

12. 핵심 요약 (한 줄 정리)

  1. Alias는 IP/네트워크/포트/URL에 이름을 붙이는 변수와 같다.
  2. 6가지 타입: Host, Network, Port, URL, URL Table (실무는 앞 3개가 주력)
  3. 명명 규칙: 영문/숫자/언더스코어만, 영문자로 시작, 예약어 금지
  4. Description은 한국어 가능, Name만 영문 규칙 준수
  5. 한 번 만들면 NAT, 방화벽, VPN 등 모든 곳에서 재사용
  6. 값 변경 시 Alias 한 곳만 수정하면 모든 규칙에 자동 반영
  7. IPv6 환경에서는 Alias 사용이 사실상 필수
  8. 포트 범위는 콜론(:), IP 범위는 하이픈(-) — 표기법 주의
  9. URL Table은 위협 인텔리전스 같은 대용량 자동 갱신 리스트에 사용
  10. 같은 타입끼리 Alias 중첩 가능 — 그룹의 그룹 만들기 가능


💡 마지막 한마디
Alias는 단순한 편의 기능처럼 보이지만, pfSense 운영의 효율성을 결정짓는 핵심입니다.
규칙을 만들기 전에 Alias부터 만든다“는 습관을 들이면, 6개월 뒤의 자신이 고마워할 것입니다.