Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest wtorek, 24 czerwca 2025, 00:49

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 7 ] 
Autor Wiadomość
Post: niedziela, 2 października 2005, 22:37 
Offline
MODERATOR

Rejestracja: piątek, 5 lipca 2002, 17:31
Posty: 2449
Lokalizacja: Londyn
Pomimo, że tu raczej większość preferuje forum niż newsy jako sposób wymiany informacji postanowiłem przygotować nowy pakiet - Leafnode.
Jest to serwer news, pozwalający na pobieranie grup i wysyłanie postów na wiele serwerów zewnętrznych, posiadający prosty mechanizm autoryzacji oraz obsługujący grupy lokalne (posty są dostępne wyłącznie na loklanym serwerze).

PKGBUILD
: [/] [] ()
# Wersja dla NND: Mis' <michal@doriath.homeip.net>

pkgname=leafnode
pkgver=2.0.0.alpha20050914a
pkgrel=2nnd
pkgdesc="Serwer news (NNTP)"
url="http://www.dt.e-technik.uni-dortmund.de/~ma/leafnode/beta/"
license=""
depends=('xinetd' 'glibc' 'pcre' 'dcron')
makedepends=('glibc-devel' 'pcre-devel')
conflicts=()
replaces=()
backup=('etc/leafnode/config' 'etc/leafnode/filters' 'etc/leafnode/uucp' 'etc/leafnode/local.groups')
install=leafnode.install
source=(http://home.pages.de/~mandree/leafnode/beta/$pkgname-$pkgver.tar.bz2 nntp news local.groups)
md5sums=('1a6f1596fe79992a8d6df23edd4a43a3' 'b1a49a7cfb70f8acebdaf0a947896243'\
         '3967056f3402b75367a5b55e9354650d' 'd41d8cd98f00b204e9800998ecf8427e')

build() {
  mkdir -p $startdir/pkg/etc/xinetd.d
  mkdir -p $startdir/pkg/var/spool/cron
  cd $startdir/src/$pkgname-$pkgver
  ./configure --prefix=/usr --sysconfdir=/etc/leafnode
  make || return 1
  make DESTDIR=$startdir/pkg install
  install -m 644 -o root -g root $startdir/src/nntp $startdir/pkg/etc/xinetd.d/nntp
  install -m 600 -o root -g root $startdir/src/news $startdir/pkg/var/spool/cron/news
  install -m 644 -o root -g root $startdir/src/local.groups $startdir/pkg/etc/leafnode/local.groups
}



nntp
: [/] [] ()
service nntp
{
        port            = 119
        socket_type     = stream
        protocol        = tcp
        wait            = no
        disable         = yes
        only_from       = 192.168.1.0/24 127.0.0.1
        user            = news
        server          = /usr/sbin/leafnode
}



news
: [/] [] ()
*/30 * * * * /usr/sbin/fetchnews
07 03 * * * /usr/sbin/texpire


leafnode.install
: [/] [] ()
              # arg 1:  the new package version
              pre_install() {
                #
                #  do pre-install stuff here
                #
                grep news /etc/group >/dev/null
                if [ $? != 0 ]; then
                    groupadd -g 13 news
                fi
                grep news /etc/passwd >/dev/null
                if [ $? != 0 ]; then
                    useradd -u 13 -g news -s /bin/false news
                fi
                /bin/true
              }
              # arg 1:  the new package version
              post_install() {
                #
                #  do post-install stuff here
                #
                echo ""
                echo "------------------------------------------------------------------------"
                echo ""
                echo "Pakiet leafnode został zainstalowany. "
                echo "Pamiętaj aby po zakończeniu instalacji zmienić nazwy plików w katalogu "
                echo "/etc/leafnode (config.example na config i filters.exsmple na filters). "
                echo "Następnie w pliku /etc/xinetd.d/nntp zmień linię 'disable = yes' na "
                echo "'disable = no'. Skonfigureuj serwer edytując pliki /etc/leafnode/config"
                echo "i /etc/leafnode/filters, a następnie zrestartuj serwer xinetd."
                echo ""
                echo "Domyślnie leafnode jest dostępny wyłącznie z sieci lokalnej. "
                echo "Jeśli chcesz aby serwer news był dostępny 'ze świata' musisz otworzyć "
                echo "dostęp do portu 119 (tcp). Pamiętaj, że w takiej sytuacji dostęp do "
                echo "serwera powinien być ograniczony tylko do użytkowników mających "
                echo "odpowiednie konta. "
                echo ""
                echo "Więcej informacji na temat konfiguracji i używania Leafnode znajdziesz "
                echo "w manualach, musisz jednak zainstalować pakiet leafnode-man."
                echo ""
                echo "------------------------------------------------------------------------"
                echo ""
                grep nntp /etc/hosts.allow 2>/dev/null
                if [ $? != 0 ]; then
                    sed -i '/^# End of file$/i\nntp: 192.168.1.0/24' /etc/hosts.allow
                fi
                /bin/true
              }
              # arg 1:  the new package version
              # arg 2:  the old package version
              pre_upgrade() {
                #
                #  do pre-upgrade stuff here
                #
                grep news /etc/group >/dev/null
                if [ $? != 0 ]; then
                    groupadd -g 13 news
                fi
                grep news /etc/passwd >/dev/null
                if [ $? != 0 ]; then
                    useradd -u 13 -g news -s /usr/bin/news news
                fi
                /bin/true
              }
              # arg 1:  the new package version
              # arg 2:  the old package version
              post_upgrade() {
                #
                #  do post-upgrade stuff here
                #
                grep nntp /etc/hosts.allow 2>/dev/null
                if [ $? != 0 ]; then
                    sed -i '/^# End of file$/i\nntp: 192.168.1.0/24' /etc/hosts.allow
                fi
                /bin/true
              }
              # arg 1:  the old package version
              pre_remove() {
                #
                #  do pre-remove stuff here
                #
                /bin/true
              }
              # arg 1:  the old package version
              post_remove() {
                #
                #  do post-remove stuff here
                #
                grep news /etc/group >/dev/null
                if [ $? = 0 ]; then
                    groupdel news
                fi
                grep news /etc/passwd >/dev/null
                if [ $? = 0 ]; then
                    userdel news
                fi
                grep nntp /etc/hosts.allow 2>/dev/null
                if [ $? = 0 ]; then
                    sed -i '/^nntp:/d' /etc/hosts.allow
                fi
                /bin/true
              }

              op=$1
              shift
              $op $*


do budowy pakietu potrzebny jest jeszcze pusty plik o nazwie local.groups.

bezpośrednie linki do pakietów:

http://www.hustons.homechoice.co.uk/nnd ... pkg.tar.gz
http://www.hustons.homechoice.co.uk/nnd ... pkg.tar.gz

zapraszam do testów.

_________________
Mis'
___________________________________
"Real Men Use Telnet on port 80" (el bid)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: wtorek, 11 października 2005, 18:01 
Offline
Użytkownik

Rejestracja: poniedziałek, 14 marca 2005, 12:47
Posty: 196
Lokalizacja: Kutno
Malo kto sie tym zaintereswal, mnie ciekawi taka sprawa czy jest mozliwosc zeby ten serwer sciagal sobie automatycznie grupy np z serwera news.gazeta.pl a ja juz pozniej bede sobie je czytal z mojego serwerka. Pozdrawiam, jak narazie jeszcze nie odpalalem tego pakietu


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: wtorek, 11 października 2005, 19:16 
Offline
MODERATOR

Rejestracja: piątek, 5 lipca 2002, 17:31
Posty: 2449
Lokalizacja: Londyn
urug pisze:
Malo kto sie tym zaintereswal, mnie ciekawi taka sprawa czy jest mozliwosc zeby ten serwer sciagal sobie automatycznie grupy np z serwera news.gazeta.pl a ja juz pozniej bede sobie je czytal z mojego serwerka.


do tego właśnie służy.

_________________
Mis'
___________________________________
"Real Men Use Telnet on port 80" (el bid)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 12 października 2005, 21:24 
Offline

Rejestracja: środa, 19 maja 2004, 00:07
Posty: 21
Lokalizacja: Warszawa
to prościej odpalić jabbera i w np PSI przychodzą rss na pulpit
pozdrawiam

_________________
Ryszard sp5rh


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 12 października 2005, 22:43 
Offline
Użytkownik

Rejestracja: poniedziałek, 14 marca 2005, 12:47
Posty: 196
Lokalizacja: Kutno
A co ma rss do grup dyskusyjnych. Mis jak bys mogl podac jak to odpalic bo cos mi nie wychodzi. Niby sie odpala ale w thunderbirde pokazuje mi sie blad serwera (NNTP)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 12 października 2005, 23:37 
Offline
MODERATOR

Rejestracja: piątek, 5 lipca 2002, 17:31
Posty: 2449
Lokalizacja: Londyn
urug pisze:
jak to odpalic bo cos mi nie wychodzi. Niby sie odpala ale w thunderbirde pokazuje mi sie blad serwera (NNTP)


Zakładam że zrobiłeś to co miałeś wyświetlone podczas instalacji. Jeśli tak to:

1. zwróć uwagę na plik /etc/xinetd.d/nntp. Masz tam linię "only from = " musi tam być adres twojej sieci. Jeśli masz adres sieci inny niż 192.168.1.0/24 to nie połaczysz się.

2. fetchnews domyślnie jest ustawiony na ściąganie newsów co pół godziny. Podczas pierwszego połączenia jest również pobierana lista dostępnych grup. Na gazeta.pl jest w tej chwili dostępnych ok. 130 tysięcy grup. To też chwilę trwa.

ja to robię tak:

1. /etc/rc.d/crond stop
2. pacman -S leafnode
3. odpowiednie zmiany w konfiguracji
4. fetchnews
5. czekam na pobranie listy grup
6. z czytnika łączę się z serwerem i wybieram grupy, które chcę subskrybować
7. fetchnews
8. czekam na pobranie postów z zasubskrybowanych grup
9. /etc/rc.d/crond start

fetchnews jest wywoływany dwa razy: raz - pobiera listę grup., dwa - pobiera posty z zasubskrybowanych grup. To niestety też trwa, jak mu każesz pobierać po 100000 postów z 50 grup to może i całą nockę ściągać.
crona wyłączam na wszelki wypadek, żeby nie mieć dwóch lub więcej fetchnews działających w tym samym czasie. Na koniec całego procesu włączam crona i posty są pobierane i wysyłane automagicznie przez fetchnews uruchomione z crona.
Co do konfiguracji to przypominam że gazeta wymaga posiadania konta e-mail i w konfigu musisz podać username i hasło do tego konta.
Leafnode automagicznie przestanie pobierać posty z grup. których nikt nie czyta przez założony czas (do ustawienia w konfigu).
Jesli chcesz mieć grupy lokalne to wpisujesz ich nazwy wraz z falagą Y/N/M i krótkim opisem grupy w pliku /etc/leafnode/local.groups. Przykład:

moja.grupa.lokalna y Grupa dla mojej sieci osiedlowej.

poszczególne składniki są oddzielone pojedyńczym tabulatorem. Flagi Y/N/M oznaczają czy można wysyłać na taką grupę (y), czy nie (N) oraz czy grupa jest moderowana (M).

EDIT: Oczywiście powyższe jest prawdziwe jeśli nic nie blokuje wewnątrz sieci lokalnej portu 119.

_________________
Mis'
___________________________________
"Real Men Use Telnet on port 80" (el bid)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 13 października 2005, 08:16 
Offline
Użytkownik

Rejestracja: poniedziałek, 14 marca 2005, 12:47
Posty: 196
Lokalizacja: Kutno
Dzieki za dokladny opis, teraz do szkoly sie spiesze ale potestuje jak wroce :) Pozdrawiam

Cytuj:
jak probuje wydac polecenie /usr/sbin/fetchnews to dostaje opis ze mam poprawic nazwe w /etc/hosts/ mam tam wpisane sowinskiego.hopto.org


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 7 ] 

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 26 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl