syslog-ng
syslog-ng원본 작성자 | 발라스 셰이들러 |
---|---|
초기 릴리즈 | 1998 |
안정적 해제 | 3.31.2 / 2021년 3월 18일;[1] 전 |
리포지토리 | |
운영 체제 | 유닉스 유사 |
유형 | 시스템 로깅 |
면허증 | |
웹사이트 | www![]() |
syslog-ng는 유닉스 및 유닉스 유사 시스템을 위한 syslog 프로토콜을 무료로 오픈 소스 방식으로 구현하는 것이다.컨텐츠 기반 필터링, 풍부한 필터링 기능, 유연한 구성 옵션으로 원래의 syslogd 모델을 확장하고 전송을 위해 TCP를 사용하는 것과 같은 중요한 기능을 syslog에 추가한다.현재, syslog-ng는 발라비트 IT Security Ltd에 의해 개발되고 있다.[when?]공통 코드베이스가 있는 3개의 판을 가지고 있다.첫 번째는 LGPL 라이선스를 가진 syslog-ng Open Source Edition(OSE)이다.두 번째는 PE(Premium Edition)라고 하며, 독점 라이선스 하에 추가적인 플러그인(모듈)을 가지고 있다.세 번째는 스토어박스(SSB)라고 불리며, 초고속 텍스트 검색, 통합 검색, 콘텐츠 기반 알림 및 최상층 지원을 포함한 추가 기능뿐만 아니라 웹 기반 UI를 갖춘 어플라이언스로 제공된다.[2]
2018년 1월, 발라빗의 일부로서, syslog-ng는 Quest Software 우산 하에 ID 및 액세스 관리 솔루션의 글로벌 벤더인 One Identity에 인수되었다.syslog-ng 팀은 One Identity 조직 내에서 독립적인 사업으로 남아 있으며 syslog-ng 브랜드로 오픈 소스 및 상용 솔루션을 지속적으로 개발하고 있다.
프로토콜
syslog-ng는 RFC 3164에 지정된 표준 BSD syslog 프로토콜을 사용한다.RFC 3164의 텍스트는 표준이 아닌 정보 설명이기 때문에, 그것에 대한 일부 양립할 수 없는 확장이 나타났다.3.0 syslog-ng 버전도 RFC 5424에 지정된 syslog 프로토콜을 지원하므로 syslog-ng는 다양한 장치와 상호운용되며, 릴레이된 메시지의 형식을 사용자 정의할 수 있다.
원래 syslog-ng 프로토콜에 대한 확장에는 다음이 포함된다.
- 밀리초 단위의 세분화 및 시간대 정보가 포함된 ISO 8601 타임스탬프
- 지정된 메시지의 경로를 추적할 수 있도록 추가 호스트 필드에 릴레이 이름 추가
- TCP를 사용한 신뢰할 수 있는 전송
- TLS 암호화(OSE의 3.0.1 이후)
역사
syslog-ng 프로젝트는 1998년 syslog-ng의 1차 저자 발라즈 셰이들러가 기존 nsyslogd 코드를 Linux에 포팅하면서 시작됐다.syslog-ng 1.0.x 분기는 nsyslogd 소스를 기반으로 하며 syslog-ng 소스 아카이브에서 사용할 수 있다.
syslog-ng 1.0.x가 발표된 직후, nsyslogd의 일부 단점을 해결하고 nsyslogd 원작자인 Darren Reed의 라이센싱 문제를 해결하기 위해 코드베이스의 재구성이 시작되었다.이러한 재구성은 버전 1.2.0의 출시와 함께 1999년 10월에 안정적이라 명명되었다.이번에는 syslog-ng가 닐스 뮐러가 원래 lsh용으로 개발한 일부 코드에 의존했다.
3개의 주요 릴리스(1.2, 1.4, 1.6)는 2007년 2월 1.6.x 지점의 마지막 릴리스인 이 코드 베이스를 사용하고 있었다.약 8년의 이 기간 동안 syslog-ng는 인기 있는 대체 syslog 구현 중 하나가 되었다.
자원봉사에 기초한 노력으로, 2001년에 다시 쓰기가 시작되었고, lsh 코드를 삭제하고 더 널리 이용 가능한 GLib 라이브러리를 사용하였다.이 코드베이스의 재작성은 시간이 걸렸고, 2006년 10월에 처음으로 안정된 2.0.0의 발매가 이루어졌다.
개발 노력은 2.0.x 지점의 개선에 집중되었고, 2007년 말에 1.6.x에 대한 지원이 중단되었다.2.x에 대한 지원은 2009년 말에 떨어졌지만, 일부 리눅스 배포판에서는 여전히 사용되고 있다.[4][5]syslog-ng의 배후 회사인 발라빗은 syslog-ng Premium Edition이라고 불리는 syslog-ng의 평행 상용 포크를 시작했다.상업적 수입의 일부는 무료 버전의 개발을 후원하는 데 사용된다.
Syslog-ng 버전 3.0은 2008년 4분기에 출시되었다.
3.0 버전 개발 작업부터 프리미엄 버전과 오픈 소스 버전에서 병행했다.PE의 노력은 품질, 전송 안정성, 성능 및 암호화된 로그 스토리지에 집중되었다.Open Source Edition의 노력은 핵심 인프라의 유연성을 향상시켜 보다 다양한 비 syslog 메시지 소스를 허용하는 데 초점을 맞췄다.
OSE & PE 포크는 모두 2010년에 두 개의 릴리스(3.1과 3.2)를 생산했다.
특징들
syslog-ng는 syslog 메시지를 전송하고 일반 텍스트 로그 파일에 저장하는 것 외에도 다음과 같은 다양한 기능을 제공한다.
- Unix 셸과 같은 변수 확장을 사용하여 로그 메시지를 포맷할 수 있는 기능(교차 플랫폼 로그 형식 호환성을 깨뜨릴 수 있음)
- 단일 문으로 여러 대상 파일을 포함하는 파일 이름 지정 시 이 셸과 같은 변수 확장 사용
- 로컬 응용 프로그램에 로그 메시지를 보낼 수 있는 기능
- 네트워크 전송에서 메시지 흐름 제어 지원
- syslog-ng OSE 2.1 이후 데이터베이스에 직접 로그인
- syslog 메시지의 일부를 기본 요소(syslog-ng OSE 3.0 이후)로 설정 및 대체
- 들어오는 로그 메시지를 분류하고 동시에 구조화되지 않은 syslog 메시지에서 구조화된 정보 추출(syslog-ng OSE 3.0 이후)
- 일반 이름-값 지원: 각 메시지는 이름-값 쌍 집합일 뿐이며, 추가 정보를 저장하는 데 사용할 수 있다(syslog-ng OSE 3.0 이후).
- syslog-ng OSE 3.0 이후 CSV 형식 행에서 열을 추출하는 것과 같이 syslog를 통해 전송되는 구조화된 메시지 형식을 처리하는 기능
- syslog-ng OSE 3.2 이후 여러 수신 메시지를 상호 연결하여 보다 복잡하고 상관 관계가 있는 이벤트를 형성하는 [6]기능
분포
syslog-ng는 다양한 리눅스 및 유닉스 배포 환경에서 사용할 수 있다.시스템 기본값으로 설치하거나 이전 표준 syslogd를 대체하는 패키지로 제공하는 경우도 있다.syslog-ng를 사용했던 몇몇 Linux 배포판은 이를 rsyslog로 대체했다.[citation needed]
- openSUSE는 열기 전에 기본값으로 사용SUSE 11.2 및 여전히 사용 가능
- SLES가 SUSE Linux Enterprise Server 12 이전 버전 사용
- Debian GNU/Linux는 5.0 이전 syslogd 및 klogd를 사용했으며 5.0 이후("Lenny"), rsyslog를[7] 사용했다.
- 겐투 리눅스
- Fedora가 Fedora 10 이전에 사용했음
- Arch Linux는 2012년 systemd를 채택하기 전에 이를 기본값으로 사용
- 휴렛패커드의 HP-UX
- FreeBSD 포트
- 마이크로소프트 윈도우즈용 Cygwin 포트 사용 가능
휴대성
syslog-ng는 오래된 시스템이나 새로운 시스템 등 많은 유닉스 시스템에서도 휴대성이 뛰어나다.현재 작동하는 것으로 알려진 Unix 버전의 목록은 다음과 같다.
- i386, ARM, PowerPC, SPARC 및 x86-64 CPU의 Linux
- i386 및 x86-64 CPU의 FreeBSD 7.x - 9.x
- IBM Power 마이크로프로세서의 AIX 5, 6, 7
- PA-RISC 및 Itanium CPU의 HP-UX 11iv1, 11iv2, 11iv3
- SPARC, x86-64 및 i386 CPU의 Solaris 8, 9, 10
- 알파 CPU의 Tru64 5.1b
위의 목록은 발라빗의 현재 직접 경험을 바탕으로 하며, 다른 플랫폼도 작동할 수 있지만 주행 거리는 다를 수 있다.
관련 RFC & 작업 그룹
- RFC 3164 - BSD syslog 프로토콜
- RFC 5424 - Syslog 프로토콜
- RFC 5425 - Syslog용 TLS(Transport Layer Security) 전송 매핑
- RFC 5426 - UDP를 통한 Syslog 메시지 전송
참고 항목
참조
- ^ "Releases - balabit/syslog-ng". Retrieved 18 March 2021 – via GitHub.
- ^ "Syslog-ng - Log Management Solutions".
- ^ "Changelog 3.0.1". Retrieved 2009-01-21.
- ^ "Debian syslog-ng package". Retrieved 2011-11-11.
- ^ "SLES syslog-ng documentation" (PDF). Retrieved 2011-11-11.
- ^ "Correlating lo messages with syslog-ng". Retrieved 2011-11-11.
- ^ "Chapter 2. What's new in Debian GNU/Linux 5.0". Retrieved 2010-05-22.