Skip to main content

Cosa sono / etc / services in Linux / Unix?

Linux Tutorial for Beginners: Introduction to Linux Operating System (Aprile 2025)

Linux Tutorial for Beginners: Introduction to Linux Operating System (Aprile 2025)
Anonim

I sistemi operativi UNIX memorizzano ciò che viene chiamato un file di servizi in / etc / services. Memorizza informazioni su numerosi servizi che le applicazioni client potrebbero utilizzare sul computer. All'interno del file sono presenti il ​​nome del servizio, il numero di porta e il protocollo che utilizza e tutti gli alias applicabili.

I numeri di porta sono mappati su servizi specifici come il file hosts su computer Windows mappano un nome host a un indirizzo IP. Tuttavia, il file dei servizi del sistema operativo UNIX non include gli indirizzi IP, ma invece informazioni come se il servizio sia TCP o UDP e quali nomi comuni potrebbe essere utilizzato.

Un semplice editor di testo può essere usato per modificare il file / etc / services, come Vim o Kate.

Esempio di un file di servizi UNIX

Su UNIX, il ruolo chiave del file di configurazione / etc / services è tale che i programmi possano eseguire una chiamata a getportbyname () nel loro codice per capire quale porta devono usare. Ad esempio, un demone di posta elettronica POP3 eseguirà un getportbyname (POP3) per recuperare il numero 110 su cui viene eseguito POP3.

L'idea è che se tutti i daemon POP3 utilizzano getportbyname (), indipendentemente da quale demone POP3 venga eseguito, è sempre possibile riconfigurare il proprio numero di porta modificando / etc / services.

Nota: È inaffidabile utilizzare il file di servizi per capire quali numeri di porta significano. Se vuoi scoprire che cosa stanno usando i programmi port, dovresti usare il programma lsof per scoprire esattamente quali porte sono legate a quali processi. Se l'esecuzione di lsof non è appropriata, è necessario ricercare le porte in un riferimento più generico.

Tutti i file dei servizi seguono la stessa sintassi di:

nome alias di porta / protocollo commenti

Tuttavia, non è necessario un alias e un commento per ciascuna voce del database, come puoi vedere in questo esempio di file di servizio:

$ cat / etc / services## Copyright 2008 Sun Microsystems, Inc. Tutti i diritti riservati.# L'uso è soggetto ai termini della licenza.##ident "@ (#) servizi 1.34 08/11/19 SMI"## Servizi di rete, stile Internet#tcpmux 1 / tcpecho 7 / tcpecho 7 / udpscarta 9 / tcp sink nullscarta 9 / udp sink nullutenti di systat 11 / tcpgiorno 13 / tcpgiorno 13 / udpnetstat 15 / tcpsorgente di chart 19 / tcp ttytstsorgente di chargen 19 / udp ttytstftp-data 20 / tcpftp 21 / tcpShell ssh 22 / tcp # Securetelnet 23 / tcpsmtp 25 / posta tcptime 37 / tcp timservertime 37 / udp timservernome 42 / server dei nomi di udpwhois 43 / tcp nicname # di solito in sri-nicswat 901 / tcp # Samba Web Adm.Toolservicetag 6481 / udpservicetag 6481 / tcpdaemon snmpd 161 / udp snmp # SMA snmp$