inetd_3.pdf
(
145 KB
)
Pobierz
3.doc
AKADEMIA GÓRNICZO-
HUTNICZA
Wydział Elektrotechniki, Automatyki, Informatyki i
Elektroniki
KATEDRA INFORMATYKI
inetd, telnet, ftp, rexec, rsh, tcpd, host.allow
Kierunek, rok studiów:
Informatyka rok IV
Przedmiot:
Administrowanie systemami komputerowymi
Prowadzący zajęcia
:
Rok akad:
2000/2001
mgr inż. Bogusław Juza
Semestr:
letni
Zespół autorski:
Artur Leśniak
stingray@ds14.agh.edu.pl
Rafał Kuczyński
stuk@ds14.agh.edu.pl
Spis treści:
1. inetd - superserwer internetu.......................................................................................3
2. telnet – interfejs użytkownika dla protokołu TELNET................................................5
3. ftp - ARPANET'owy program do przesyłania plików..................................................8
4. rexec.........................................................................................................................13
5. rsh............................................................................................................................14
6. tcpd- urządzenie kontroli dostępu do usług internetowych........................................15
7. host.allow- plik konfiguracyjny programu /usr/sbin/tcpd...........................................17
Bibliografia:.....................................................................................................................19
1. inetd - superserwer internetu
Inetd
powinien być wywoływany podczas startu systemu z
/etc/rc.local.
Nasłuchuje
on później połączeń na określonych gniazdach internetowych. Gdy na jednym z
gniazd zaistnieje połączenie, decyduje on, jakiej usłudze to gniazdo odpowiada i
wywołuje program, który obsłuży żądanie. Po zakończeniu programu, inetd
kontynuuje nasłuchiwania gniazda (poza niektórymi wypadkami, opisanymi poniżej).
Ogólnie,
inetd
umożliwia używanie jednego daemona do wywoływania wielu innych,
zmniejszając wymagane obciążenie systemu.
Składnia:
inetd
[
-d
] [
plik
konfiguracyjny
]
Opcje dostępne dla
inetd:
-d
włącza debuggowanie.
Podczas uruchamiania,
inetd
odczytuje swoją konfigurację z pliku konfiguracyjnego,
którym domyślnie jest
/etc/inetd.conf
. Musi znaleźć się tam wpis dla każdego pola
pliku konfiguracyjnego, z poszczególnymi wpisami dla danego pola; wpisy są
oddzielane znakiem tabulacji lub spacji. Komentarze są zaznaczane przez ``#'' na
początku linii. Musi istnieć wpis dla każdego pola. Pola pliku konfiguracyjnego są
następujące:
nazwa usługi (service name)
rodzaj gniazda (socket type)
protokół (protocol)
określenie, czy usługa ma "zwlekać" (wait/nowait[.max])
użytkownik[.grupa] (user[.group])
program serwera (server program)
argumenty programu serwera (server program arguments)
Aby podać usługę opartą o
Sun-RPC (Remote Procedure Call)
, wpis powinien
zawierać te pola:
nazwa usługi/wersja (service name/version)
rodzaj gniazda (socket type)
rpc/protokół (rpc/protocol)
zwłoka (wait/nowait[.max])
użytkownik[.grupa] (user[.group])
program serwera (server program)
argumenty programu serwera (server program arguments)
Wpis
nazwa-usługi
jest nazwą prawidłowej usługi, zdefiniowanej w pliku
/etc/services.
Plik /etc/services jest prostą bazą, która kojarzy łatwe dla człowieka
nazwy portów z wykorzystywanymi przez komputery numerami:
nazwa port/protokół aliasy # komentarz
Dla usług „wewnętrznych'' (internal) (opisanych niżej), nazwa usługi musi być
oficjalną nazwą usługi (to znaczy pierwszym wpisem w
/etc/services
). Podczas
podawania usługi opartej o
Sun-RPC
, pole to jest prawidłową nazwą usługi RPC,
zdefiniowaną w pliku
/etc/rpc
. Część na prawo od „/'' jest numerem wersji RPC. Może
to być zwyczajny argument numeryczny, lub zakres wersji. Zakres jest obramowany
od niższej wersji do wyższej – „rusers/1-3''.
Wpis
rodzaj
gniazda
powinien być jednym z „stream'', „dgram'', „raw'', „rdm'', lub
„seqpacket'', zależnie od tego, czy gniazdo jest strumieniowe (stream), datagramowe
(datagram), lub typu raw, reliably delivered message (rdm), czy też sequenced
packet.
Pole
protokół
musi być prawidłowym protokołem, zdefiniowanym w
/etc/protocols
.
Przykładami mogą być „tcp'' lub ``udp''. Usługi oparte o RPC są określane przez
``rpc/tcp'' lub ``rpc/udp.''
Wpis
zwłoka
jest używany tylko dla gniazd datagramowych (inne gniazda powinny
mieć wpis „nowait'' ). Jeśli serwer datagramowy łączy się ze swoim rozmówcą,
zwalniając gniazdo w ten sposób, że
inetd
może odbierać dalsze wiadomości z tego
gniazda, to mówi się o nim jako o serwerze „wielowątkowym'' (multi-threaded) i
powinno się używać wpisu „nowait''.
Serwery datagramowe, które przetwarzają wszystkie nadchodzące do gniazda
datagramy, ewentualnie mające timeouty, nazywa się „jednowątkowymi'' (single
threaded) i powinno używać się dla nich wpisu „wait.'' Serwer „biff” (zostań
poinformowany, jeśli przyjdzie poczta i od kogo) i talkd (talk) są przykładami tego
drugiego rodzaju serwerów datagramowych. Tftpd jest wyjątkiem; jest to serwer
datagramowy, który zestawia pseudopołączenia. Musi być zdefiniowany jako „wait''
aby zapobiec wyścigowi; serwer odczytuje pierwszy pakiet, tworzy nowe gniazdo,
następnie forkuje i wychodzi, aby
inetd
mógł robić swoje i oczekiwać na nowe
żądania usług, które (jak zwykle) przyłącza następnie do odpowiednich innych
serwerów. Opcjonalny przyrostek „max'' (oddzielony od „wait'' lub „nowait'' kropką)
określa maksymalną liczbę instancji serwera, jakie mogą zostać postawione przez
inetd
w czasie 60 sekund. Gdy zostanie to pominięte, „max'' przyjmuje wartość 40.
Wpis
użytkownik
powinien zawierać nazwę użytkownika, pod którym powinien
uruchamiać się serwer. Umożliwia to serwerom posiadanie mniejszych praw niż
prawa roota. Opcjonalnie, po dodaniu kropki do nazwy użytkownika, można podać w
tym polu nazwę grupy. Umożliwia to serwerom pracę w innym (podstawowym) id
grupy niż ten, podany w pliku z hasłami. Jeśli grupa jest podana, a użytkownik nie
jest rootem, to uzupełniające grupy związane z użytkownikiem wciąż będą
ustawione.
Wpis
program
serwera
powinien zawierać ścieżkę programu, który ma być
wywoływany przez
inetd
po otrzymaniu żądania na gnieździe. Jeśli
inetd
udostępnia
tę usługę wewnętrznie, to wpis ten powinien być wpisem „internal''.
Wpis
argumenty
programu
serwera
powinien wyglądać tak jak zwykłe argumenty,
poczynając od arg[0], który jest nazwą programu. Jeśli usługa jest udostępniana
wewnętrznie, to wpis powinien przyjąć nazwę „internal.''
Inetd
udostępnia wiele „trywialnych'' usług wewnętrznie, używając do tego swoich
własnych procedur. Tymi usługami są „echo'', „discard'', „chargen'' (generator
znaków), „daytime'' (odczytywalny przez człowieka czas) oraz „time'' (czas
odczytywalny przez maszynę, liczba sekund od północy 1 stycznia 1900). Wszystkie
te usługi są oparte o tcp.
Inetd
odczytuje swój plik konfiguracyjny od nowa gdy otrzyma sygnał zawieszenia
(hangup), czyli SIGHUP. Usługi mogą być tak dodawane, kasowane lub
modyfikowane.
Inetd
tworzy plik
/etc/inetd.pid
który zawiera jego identyfikator
procesu (PID).
Komenda
inetd
pojawiła się w 4.3BSD. Wsparcie dla usług opartych o
Sun-RPC
zostało zamodelowane wg udostępnionego przez
Sun-OS
4.1
.
Fragment pliku /etc/inetd.conf (dostarczany z dystrybucją Debian) :
# Internal services
#echo stream tcp nowait root internal
#echo dgram udp wait root internal
discard stream tcp nowait root internal
discard dgram udp wait root internal
# These are standard services.
telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd
ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd
2. telnet – interfejs użytkownika dla protokołu TELNET
Komenda telnet wykożystywana jest do komunikacji z innym hostem przy użyciu
protokołu TELNET (interaktywne połączenie terminalowe).
Telnet pozwala zatem na zdalną pracę na dowolnym komputerze w sieci, telnet
działa jak zdalny terminal komputera, istnieją różne rodzaje terminali i poszczególne
komputery przystosowane są do pracy tylko z określonymi spośród nich, Dla
użytkownika telnetu istotną wiadomością jest zatem, z jakimi typami terminali potrafi
pracować docelowy komputer, a z drugiej strony - jakie terminale potrafi
emulować
wykorzystywany przez nas program telnetu (większość systemów używa zbliżonych
standardów obsługi terminala),
Najprostszym typem terminala jest tzw.
tępy terminal
(
dumb terminal
). Jego
możliwości sprowadzają się wyłącznie do przesyłania w obie strony drukowalnych
znaków ASCII, bez możliwości jakiegokolwiek sterowania sposobem ich
wyświetlania. Jeżeli oprogramowanie „po obu stronach” połączenia nie może
uzgodnić wspólnego standardu obsługi terminala, komputery pracują w tym trybie
dumb.
Większość systemów Unixowych (i nie tylko) osiągalnych w Internecie, jak również
większość typowych programów telnetu, przystosowana jest do obsługi terminali
Plik z chomika:
orzeszek10
Inne pliki z tego folderu:
krok po kroku jak upiekszyc chomika.rar
(2328 KB)
administrowanie_uzytkownikami.doc
(1883 KB)
Agresywne_Strony_WWW.pdf
(3884 KB)
Analiza_ryzyka_dla_potrzeb_bezpiecze_stwa.pdf
(223 KB)
Apache+SSL+PHP+fp.pdf
(31 KB)
Inne foldery tego chomika:
Pliki dostępne do 01.06.2025
Pliki dostępne do 09.04.2026
Pliki dostępne do 19.01.2025
!!!XXX!!!
ADOBE produkty
Zgłoś jeśli
naruszono regulamin