상위 문서: 라이믹스/매뉴얼
개요[편집 / 원본 편집]
라이믹스의 관리자 로그인 허용·금지 IP, 디버그 허용 IP, 사이트 잠금의 접근 허용 IP, 스팸필터의 IP 차단 등에서 사용하는 주소·대역 표기 방식이다. XE에서 이어진 일부 기능은 모든 형식을 지원하지 않을 수 있으므로 해당 설정의 설명을 확인한다.
표기 형식[편집 / 원본 편집]
| 종류 | 예 | 의미 |
|---|---|---|
| IPv4 단일 주소 | 192.168.122.96 |
주소 하나 |
| IPv4 와일드카드 | 192.168.122.* |
마지막 구간 전체 |
| IPv4 와일드카드 축약 | 192.168.* |
뒤쪽 구간 전체 |
| IPv4 시작-끝 | 192.168.122.0-192.168.122.255 |
지정한 범위 |
| IPv4 CIDR | 192.168.216.0/24 |
접두 길이 24비트인 대역 |
| IPv6 단일 주소 | 2001:2300::ffff:0, ::1 |
축약 표기 가능 |
| IPv6 CIDR | 2001:2300::/64, ::1/128 |
접두 길이로 대역 지정 |
IPv6는 연속한 0 구간을 ::로 줄일 수 있어 문자열 모양만으로 비교하면 안 된다. 한 주소와 그 주소를 포함하는 대역은 서로 다른 입력 형식이다.
단일 IP 검증[편집 / 원본 편집]
공식 매뉴얼은 정규표현식을 직접 작성하는 대신 PHP의 filter_var()를 사용하도록 안내한다. 성공 시 주소 문자열, 실패 시 false가 반환되므로 엄격하게 비교한다.
$is_valid = filter_var($ip, FILTER_VALIDATE_IP) !== false;
$is_ipv4 = filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) !== false;
$is_ipv6 = filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) !== false;
대역 검증과 포함 여부[편집 / 원본 편집]
라이믹스의 Rhymix\Framework\Filters\IpFilter를 사용한다.
use Rhymix\Framework\Filters\IpFilter;
$is_valid = IpFilter::validateRange('192.168.122.0/24');
$included = IpFilter::inRange('192.168.122.96', '192.168.122.0/24');
여러 대역은 validateRanges()와 inRanges()를 사용한다. 전자는 모든 대역이 유효해야 참이고, 후자는 하나 이상의 대역에 주소가 포함되면 참이다. 실제 인자 형태는 사용 중인 버전의 클래스 명세를 확인한다.
운영 시 확인[편집 / 원본 편집]
허용 목록을 바꾸기 전 현재 관리자의 접속 IP가 포함되는지 확인한다. 역방향 프록시나 CDN을 사용한다면 라이믹스가 인식한 클라이언트 IP가 실제 접속자와 일치하는지도 점검한다. HTTP 헤더 값을 검증 없이 접속자 IP로 신뢰해서는 안 된다.
같이 보기[편집 / 원본 편집]
- 라이믹스/매뉴얼/라이믹스 프레임워크 — IpFilter, RX_CLIENT_IP
- 라이믹스/보안
관련 운영 문서[편집 / 원본 편집]
출처[편집 / 원본 편집]
이 문서는 라이믹스 공식 매뉴얼을 바탕으로 설명과 예제를 정리하였다. 공식 매뉴얼은 CC BY-SA 4.0으로 배포된다. 원문의 기여 이력은 rhymix-docs 저장소에서 확인할 수 있다.
| 라이믹스 · 설치·운영·개발 매뉴얼 둘러보기 | |
|---|---|
| 설치·이전 | 설치 환경 · 설치 · 업데이트 · XE에서 이전 · 호환성 점검 · nginx · 도메인 변경 |
| 운영 | 백업·복원 · 업로드·서버 진단 · 캐시·성능 · Crontab · 보안 · 릴리즈 노트 |
| 개발 | 확장 기능 제작 · 애드온 · DB 연산자 · 라우터 · 이벤트 · 개발 보안 |
| 테마·API | 테마 제작 · 템플릿 v1 · 템플릿 v2 · 프레임워크 · PHP 전역 함수 · JS 라이브러리 · JS 함수 · 레거시 JS 함수 · String 확장 |
| 기여·연동 | 이슈·PR · 코딩 규칙 · 라이선스 · IP 대역 · 시간대 · 포토스와이프 · 모바일 푸시 · 네모의 꿈 색상 |