Что такое / etc / services в Linux / Unix?

Операционные системы UNIX хранят то, что называется файлом служб, в / etc / services. Он хранит информацию о многочисленных службах, которые клиентские приложения могут использовать на компьютере. Внутри файла находятся имя службы, номер порта и протокол, который он использует, и любые применимые псевдонимы. 

Номера портов сопоставляются с конкретными службами, так же как файл hosts на компьютерах Windows сопоставляет имя узла с IP-адресом. Однако файл служб операционной системы UNIX содержит не IP-адреса, а информацию о том, является ли служба TCP или UDP и какие общие имена могут использоваться.

Для редактирования файла / etc / services можно использовать простой текстовый редактор, например Vim или Kate.

Пример файла служб UNIX

В UNIX ключевая роль файла конфигурации / etc / services заключается в том, что программы могут выполнять вызовы сокетов getportbyname () в своем коде, чтобы понять, какой порт им следует использовать. Например, демон электронной почты POP3 должен выполнить getportbyname (POP3), чтобы получить число 110, на котором работает POP3. 

Идея состоит в том, что если все демоны POP3 используют getportbyname (), то независимо от того, какой демон POP3 вы запускаете, вы всегда можете перенастроить его номер порта, отредактировав / etc / services. 

Ненадежно использовать файл служб, чтобы выяснить, что означают номера портов. Если вы хотите узнать, какие порты используются программами, вам следует вместо этого использовать программу lsof, чтобы точно определить, какие порты связаны с какими процессами. Если запуск lsof не подходит, вам следует изучить порты в более общей справочной информации.

Все сервисные файлы имеют одинаковый синтаксис:

имя порт / протокол псевдонимы комментарии

Однако, псевдоним и комментарий для каждой записи базы данных не являются необходимыми, как вы можете видеть в этом примере файла служб:

$ cat / etc / services
#
# Авторские права 2008 Sun Microsystems, Inc. Все права защищены.
# Использование регулируется условиями лицензии.
#
#ident "@ (#) services 1.34 08/11/19 SMI"
#
# Сетевые сервисы, интернет стиль
#
tcpmux 1 / tcp
эхо 7 / tcp
эхо 7 / удп
сбросить 9 / tcp раковина ноль
сбросить 9 / UDP раковина ноль
пользователи systat 11 / tcp
дневное время 13 / тср
дневное время 13 / уд
netstat 15 / tcp
chargen 19 / tcp ttytst source
чарген 19 / удп ттыцть источник
ftp-данные 20 / tcp
ftp 21 / tcp
ssh 22 / tcp # Secure Shell
телнет 23 / tcp
smtp 25 / tcp mail
время 37 / tcp тимсервер
время 37 / удп тимсервер
name 42 / udp nameserver
whois 43 / tcp никнейм # обычно шри-ник
swat 901 / tcp # Samba Web Adm.Tool
servicetag 6481 / udp
servicetag 6481 / tcp
snmpd 161 / udp snmp # SMA snmp daemon
$
Ссылка на основную публикацию