Computer >> 컴퓨터 >  >> 체계 >> Linux

Leafnode를 오프라인 USENET 서버로 설정하는 방법

Leafnode를 오프라인 USENET 서버로 설정하는 방법

원격 뉴스 서버를 다루는 것은 자주 사용하는 USENET 독자에게 고통이 될 수 있습니다. 종종 이러한 서버는 느리고 신뢰할 수 없습니다. 또한 AIOE와 같이 무료 공급자에 너무 자주 액세스하면 연결이 제한되고 IP 주소가 금지될 수 있습니다. 이러한 요소는 일부 사람들에게 USENET 경험을 고통스럽게 만들 수 있습니다.

110,000개 이상의 뉴스 그룹에서 수십억 개의 텍스트 및 바이너리 파일을 얻으십시오. 지금 NewsHosting에서 58%를 절약하십시오!

리프노드란 무엇입니까?

Leafnode는 USENET 서버용 오프라인 프록시입니다. 원격 뉴스 서버에서 뉴스 게시물을 다운로드하여 시스템에서 로컬 서비스로 제공합니다. 또한 여러 USENET 서버를 업스트림 소스로 사용하고 단일 소스로 사용하기 위해 함께 병합할 수 있습니다. 이것은 다른 공급자가 제공하는 여러 뉴스 그룹을 구독하려는 경우에 유용합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

또한, Leafnode는 사용자가 팔로우하는 뉴스 그룹의 오프라인 복사본을 가질 수 있도록 합니다. 이것은 인터넷 연결을 항상 사용할 수 없는 경우 또는 구독하는 뉴스 그룹을 보관하려는 경우에 중요합니다. 마지막으로, Leafnode는 간단하고 설정하기 쉽고 모든 최신 USENET 리더와 함께 작동합니다.

USENET 프록시는 어떻게 작동합니까?

위에서 언급했듯이 Leafnode는 프록시 USENET 서버이므로 기본적으로 뉴스 독자를 위한 뉴스 서버 역할을 합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

그러나 기존 USENET 서버와 달리 Leafnode는 다른 서버에서 모든 계층의 전체 복사본을 얻지 못합니다. Leafnode는 사용자가 설정한 조건 하에서 가져오도록 지시한 게시물만 가져옵니다.

Leafnode는 fetchnews라는 두 가지 프로그램과 상호작용합니다. 및 만료 .

  • Fetchnews 구독할 뉴스 그룹과 구독해야 하는 뉴스 그룹 수를 Leafnode에 알려주는 프로그램입니다. 또한 뉴스 게시물과 답글을 업로드합니다.
  • 만료 뉴스 그룹에서 오래된 게시물을 제거하는 유지 관리 프로그램입니다. 또한 중복되거나 깨진 메시지를 복구하고 뉴스 서버의 전체 데이터를 업데이트합니다.

이 두 프로그램을 사용하면 Leafnode를 대부분 무인으로 실행할 수 있습니다. 설정이 완료되면 Leafnode는 원격 USENET 서버인 것처럼 작동합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

이것은 또한 소규모 네트워크에서 Leafnode를 설정하고 여러 사용자가 뉴스 게시물을 읽기 위해 연결하도록 허용할 수 있음을 의미합니다. 따라서 네트워크에서 USENET에 액세스하는 데 사용하는 대역폭의 양을 줄일 수 있습니다.

리프노드 설치

Leafnode는 최대한 단순하게 설계되었습니다. 이는 설치 및 유지 관리에 모두 적용됩니다. 이를 통해 Leafnode를 설치하는 것은 배포 저장소에서 가져오기만 하면 됩니다.

예를 들어, Debian 및 Ubuntu 21.10에서는 apt에서 Leafnode를 얻을 수 있습니다. :

sudo apt install leafnode
Leafnode를 오프라인 USENET 서버로 설정하는 방법

리프노드 설정

설치하는 동안 Leafnode는 연결하려는 원격 서버에 대한 몇 가지 세부 정보를 묻습니다. 첫 번째 화면에서 원격 서버의 주소를 묻습니다. 예를 들어 AIOE에 연결하려면 여기에 nntp.aioe.org를 입력해야 합니다.

제 경우에는 Eternal September를 통해 접속하고 있으므로 여기에 주소를 추가합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

자동 USENET 다운로드 설정

거기에서 설치 프로그램은 뉴스 게시물을 가져오는 데 선호하는 방법에 대해 묻습니다. PPP, 영구 및 없음의 세 가지 옵션이 있습니다.

  • PPP 인터넷에 연결할 때마다 새 게시물이 자동으로 다운로드됩니다.
  • 영구적 자동으로 매시간 뉴스 게시물을 다운로드합니다.
  • 없음 자동 뉴스 가져오기를 활성화하지 않습니다. 원격 서버와 동기화하려면 fetchnews 명령을 실행해야 합니다.

제 경우에는 내가 모르는 사이에 Leafnode가 뉴스 서버에 자동으로 연결되는 것을 원하지 않으므로 None을 선택합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

접근 제어 활성화

Leafnode 설치 프로그램은 서버에 대한 액세스 제어를 활성화할지 묻습니다.

이것은 여러 사용자를 위한 로컬 뉴스 서버로 Leafnode를 사용하는 경우에 적합합니다. /etc/hosts 파일을 사용하여 서버에 액세스할 수 있는 클라이언트와 액세스할 수 없는 클라이언트를 제어할 수 있습니다.

예를 들어, 각 클라이언트가 뉴스 서버에 액세스할 것으로 예상되는 인트라넷에서 Leafnode를 사용하는 경우 "액세스 제어"를 활성화할 필요가 없습니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

그럼에도 불구하고 일반적으로 들어오는 모든 연결을 차단하고 원하는 연결만 활성화하는 것이 좋습니다. 또한 자신의 컴퓨터에 대한 로컬 프록시로만 Leafnode를 사용하는 경우 이 옵션을 활성화해야 합니다.

제 경우에는 이 시스템에서 이 Leafnode 인스턴스만 사용할 것이므로 액세스 제어를 활성화하겠습니다.

USENET 그룹의 초기 가져오기

그 후, Leafnode 설치 프로그램은 지금 원격 USENET 서버에 연결할 것인지 묻습니다. 이렇게 하면 Leafnode가 서버에서 사용 가능한 뉴스 그룹 목록을 가져올 수 있습니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

그러나 Eternal September와 같이 인증이 필요한 서비스를 사용하는 경우 이 옵션을 사용하여 뉴스 그룹을 가져오면 안 됩니다. 이는 아직 Leafnode에 계정 정보를 제공하지 않았으며 지금 업데이트해도 전체 뉴스 그룹 목록이 제공되지 않기 때문입니다.

제 경우에는 Eternal September를 통해 연결하기 때문에 아니요를 선택했습니다.

리프노드 구성

거기에서 구성 파일을 통해 Leafnode 동작의 특정 측면을 더 미세 조정할 수 있습니다.

예를 들어, 무엇보다도 USENET 계정을 사용하여 뉴스를 가져올 수 있는 설정이 있습니다. 또한 다운로드할 수 있는 게시물과 저장 기간을 Leafnode에 알려주는 특정 매개변수를 설정할 수도 있습니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

구성 파일의 위치는 사용 중인 Linux 배포판에 따라 다릅니다. Debian 및 Ubuntu에서는 "/etc/news/leafnode/config"에 있습니다.

sudo vim /etc/news/leafnode/config

기본 사용자 이름 및 암호 설정

Leafnode의 구성 파일은 광범위하고 잘 문서화되어 있습니다. 각 옵션에는 기능에 대한 간략한 설명이 있으며 일부 옵션에는 올바르게 설정하는 방법을 보여주는 예도 있습니다.

Leafnode에서 USENET 계정을 사용하려면 username 주석을 제거해야 합니다. 및 password 변수. 완료되면 정보를 설정하십시오.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

제 경우에는 영원한 9월 계정에 대한 계정 정보를 추가했습니다.

게시물 필터를 만드는 방법

Leafnode의 주요 기능 중 하나는 게시물을 필터링하거나 특정 뉴스 그룹이 며칠 후에 정리되지 않도록 설정하여 다운로드되는 동안 게시물이 처리되는 방식을 조작할 수 있다는 것입니다.

게시물 필터링은 두 가지 방식으로 수행될 수 있습니다.

  • 특정 게시물의 일반적인 속성을 기반으로 합니다. 예를 들어 글의 크기와 줄 수를 기준으로 필터링할 수 있습니다.
  • 게시물 헤더에 있는 특정 용어를 기반으로 합니다. 이는 필터 파일에 정규식 목록을 생성하여 수행됩니다.

일반 속성을 기반으로 필터링하려면 구성 파일에서 직접 활성화합니다. 예를 들어, minlines을 설정할 수 있습니다. 변수를 3으로 설정하면 Leafnode에 길이가 3줄 미만인 게시물을 가져오지 않도록 지시합니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

반면에 특정 단어를 기준으로 필터링하려면 Leafnode에서 filterfile 옵션을 활성화해야 합니다. filterfile 주석을 제거하여 이 작업을 수행합니다. 변수 및 필터 파일 경로 제공.

제 경우에는 필터 파일의 기본 경로를 사용하고 있습니다.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

필터 파일의 기본 구문은 다음과 같습니다.

Header-Property:^/regex/$

필터 파일의 각 줄은 게시물의 특정 헤더 속성을 가리켜야 합니다. 예를 들어 Gmail의 모든 게시물을 필터링하려면 다음과 같이 입력하십시오.

^From:.*[A-Za-z0-9]*\.*[A-Za-z0-9]*\@gmail\.com$
Leafnode를 오프라인 USENET 서버로 설정하는 방법

USENET 그룹을 보관하는 방법

기본적으로 Leafnode는 20일보다 오래된 게시물의 모든 그룹을 정리합니다. 이를 통해 Leafnode는 파일 크기를 작게 유지할 수 있으며 하루에 100~200개의 게시물을 보는 그룹에 가입할 때 유용합니다.

그러나 특정 뉴스 그룹의 모든 게시물을 보관하려는 경우가 있을 수 있습니다. groupexpire를 활성화하여 이 작업을 수행합니다. 변하기 쉬운.

예를 들어, comp.unix.misc 뉴스 그룹을 아카이브하려면 구성 파일에 다음 행을 추가합니다.

groupexpire comp.unix.misc = -1
Leafnode를 오프라인 USENET 서버로 설정하는 방법

또한 이 변수를 사용하여 특정 뉴스 그룹의 기본 정리 기간을 변경할 수도 있습니다. 예를 들어, misc.internet.news.discuss와 같은 대용량 그룹을 5일마다 정리하려면 구성 파일에 다음 줄을 입력하면 됩니다.

groupexpire misc.news.internet.discuss = 5
Leafnode를 오프라인 USENET 서버로 설정하는 방법

여러 USENET 서버를 설정하는 방법

위에서 논의한 것처럼 Leafnode는 사용자가 여러 원격 서버에서 게시물을 가져올 수도 있습니다. 한 번에 하나의 서버에만 연결할 수 있는 USENET 리더를 사용할 때 유용합니다.

또한 추가 원격 서버의 동작을 변경하는 여러 옵션을 설정할 수도 있습니다. nopost를 설정할 수 있습니다. 변수를 1로 설정하여 원격 서버가 게시물을 가져오기만 하고 이를 통해 게시물을 보내지 않도록 합니다.

반면에 noread 변수를 설정할 수 있습니다. 반대로 하세요.

Leafnode를 오프라인 USENET 서버로 설정하는 방법

예를 들어 Aioe를 Leafnode 인스턴스에 대한 추가 "읽기 전용" 서버로 설정하려는 경우 구성 파일에 다음을 입력할 수 있습니다.

server = news.aioe.org
nopost = 1

리프노드 업데이트를 위한 cronjob 생성

자동 다운로드 스크립트 외에도 Leafnode는 cronjob을 통해 업데이트할 수도 있습니다. 이를 통해 뉴스 그룹을 업데이트할 때 더 많은 유연성을 가질 수 있습니다. 예를 들어, Leafnode가 12시간마다 그리고 컴퓨터를 시작할 때 업데이트되도록 만들 수 있습니다.

그렇게 하려면 뉴스 사용자의 crontab을 편집해야 합니다. 뉴스 사용자는 “/var/spool/news” 폴더와 Leafnode 서버의 실행을 직접 관리하는 시스템 계정입니다.

뉴스 사용자의 crontab을 편집하려면 다음 명령을 실행할 수 있습니다.

sudo crontab -e -u news
Leafnode를 오프라인 USENET 서버로 설정하는 방법

이제 뉴스 사용자가 정기적으로 실행하기를 원하는 명령을 삽입할 수 있습니다. Leafnode의 예제 crontab은 다음과 같습니다.

* 3 * * 0 /usr/sbin/texpire
* 2,14 * * * /usr/sbin/fetchnews
@reboot /usr/sbin/fetchnews

이 crontab은 매주 일요일 오전 3시에 Leafnode 유지 관리 프로그램인 texpire를 실행하지만 12시간마다 한 번씩 fetchnews 프로그램도 실행합니다.

축하합니다! 이제 Leafnode를 USENET 서버 프록시로 사용하는 기본 지식이 있습니다. 이를 통해 Leafnode용 USENET 리더를 찾고 있다면 이 다섯 가지 옵션을 추천합니다.

110,000개 이상의 뉴스 그룹에서 수십억 개의 텍스트 및 바이너리 파일을 얻으십시오. 지금 NewsHosting에서 58%를 절약하십시오!

자주 묻는 질문(FAQ)

1. Debian에서 Leafnode를 다운로드했지만 초기 설치 스크립트에서 실수를 했습니다. 어떻게 다시 돌아갈 수 있나요?

dpkg-reconfigure 사용 Leafnode의 설치 스크립트를 다시 초기화하는 프로그램입니다. 그러나 이 프로그램은 기본 PATH 변수에 포함되지 않습니다.

실행하려면 다음 명령을 입력하십시오.

sudo /usr/sbin/dpkg-reconfigure leafnode

2. 내 LAN에서 Leafnode를 실행하고 싶습니다. 어떻게 해야 하나요?

"/etc/hosts.deny" 및 "/etc/hosts.allow" 파일을 모두 편집하여 이를 수행할 수 있습니다. 이를 통해 Leafnode 서버로 들어오는 모든 연결을 필터링할 수 있습니다.

hosts.deny 파일의 예는 다음과 같습니다.

leafnode: ALL

반면에 192.168.254.*를 사용하는 로컬 연결을 허용하는 hosts.allow 파일은 다음과 같습니다.

leafnode: 127.0.0.1 192.168.254.0/255.255.255.0

allowstrangers를 변경해야 합니다. 변수를 allowSTRANGERS로 지정하고 값을 42로 설정합니다.

3. 처음 연결할 때 많은 게시물을 다운로드하고 싶지만 디스크 공간을 채우고 싶지 않습니다. 이 작업을 수행할 수 있는 방법이 있습니까?

예! 이렇게 하려면 initialfetch라는 두 가지 변수만 알고 있으면 됩니다. 및 delaybody .

특정 뉴스 그룹의 모든 게시물을 다운로드하려면 initialfetch를 주석 처리하십시오. 이 뉴스 그룹의 원격 서버에서 사용 가능한 모든 게시물을 가져오기를 원한다고 Leafnode에 알리는 변수입니다.

그러나 전체 게시물을 다운로드하면 많은 공간을 차지할 수 있습니다. 게시물의 헤더와 관심있는 게시물의 본문을 다운로드하여 이를 줄일 수 있습니다. 이를 위해서는 delaybody를 설정해야 합니다. 1로 변수