อะไรคือ / etc / services ใน Linux / Unix?

แฟ้มบริการลินุกซ์จัดเก็บพอร์ตที่รู้จักกันดี

ระบบ ปฏิบัติการ ยูนิกซ์จัดเก็บสิ่งที่เรียกว่า ไฟล์ บริการที่ / etc / services จะจัดเก็บข้อมูลเกี่ยวกับบริการจำนวนมากที่โปรแกรมประยุกต์ของไคลเอ็นต์อาจใช้บนคอมพิวเตอร์ ภายในไฟล์คือชื่อบริการ หมายเลขพอร์ต และโปรโตคอลที่ใช้และชื่อแทนใด ๆ ที่เกี่ยวข้อง

หมายเลขพอร์ตจะถูกแม็พกับบริการเฉพาะเช่นเดียวกับไฟล์โฮสต์บนคอมพิวเตอร์ที่ใช้ Windows จะแม็พชื่อโฮสต์กับที่ อยู่ IP อย่างไรก็ตามไฟล์บริการของระบบปฏิบัติการยูนิกซ์ไม่ได้รวมถึงที่อยู่ IP แต่ข้อมูลเช่นว่าบริการนี้เป็น TCP หรือ UDP หรือไม่และชื่อทั่วไปที่จะใช้เป็นอย่างไร

โปรแกรมแก้ไขข้อความแบบเรียบง่ายสามารถใช้เพื่อแก้ไขไฟล์ / etc / services เช่น Vim หรือ Kate

ตัวอย่างไฟล์บริการ UNIX

บน UNIX บทบาทสำคัญของไฟล์ configuration / etc / services คือเพื่อให้โปรแกรมสามารถทำซ็อกเก็ต getportbyname () ในโค้ดเพื่อให้เข้าใจว่าควรใช้พอร์ตใด ตัวอย่างเช่นภูตอีเมล POP3 จะทำ getportbyname (POP3) เพื่อเรียกใช้หมายเลข 110 ที่ POP3 ทำงานอยู่

แนวคิดก็คือถ้า daemon ของ POP3 ทั้งหมดใช้ getportbyname () แล้วไม่ว่าคุณจะใช้ POP3 daemon ใดก็ตามคุณสามารถกำหนดค่าหมายเลขพอร์ตใหม่ได้โดยการแก้ไข / etc / services

หมายเหตุ: ไม่น่าเชื่อถือในการใช้ไฟล์บริการเพื่อหาตัวเลขของพอร์ตที่หมายถึง ถ้าคุณต้องการหาสิ่งที่พอร์ตโปรแกรมกำลังใช้คุณควรใช้ lsof โปรแกรมเพื่อหาว่าพอร์ตที่ถูกผูกไว้กับกระบวนการที่ หากใช้ lsof ไม่เหมาะสมแล้วคุณควรวิจัยพอร์ตในการอ้างอิงทั่วไปมากขึ้น

ไฟล์บริการทั้งหมดมี รูปแบบ ดังนี้:

ชื่อ port / โปรโตคอลนามแฝงความคิดเห็น

อย่างไรก็ตามคุณสามารถดูนามแฝงและความคิดเห็นสำหรับรายการฐานข้อมูลแต่ละรายการได้ตามที่เห็นในไฟล์เซอร์วิสตัวอย่างนี้:

$ cat / etc / services # # Copyright 2008 Sun Microsystems, Inc. สงวนลิขสิทธิ์ # การใช้งานจะอยู่ภายใต้เงื่อนไขการอนุญาต. 1.32 08/11/19 SMI "# # บริการเครือข่ายลักษณะอินเทอร์เน็ต # tcpmux 1 / tcp echo 7 / tcp echo 7 / udp ทิ้ง 9 / tcp sink null ทิ้ง 9 / ผู้ใช้ 11 / tcp daytime 13 / tcp daytime 13 / udp netstat 15 / tcp chargen 19 / tcp แหล่งข้อมูล ttytst chargen 19 / udp ttytst แหล่งข้อมูล ftp-20 / tcp ftp 21 / tcp ssh 22 / tcp # Secure Shell telnet 23 / tcp smtp 25 / tcp mail เวลา 37 / tcp timserver เวลา 37 / udp ชื่อ timserver 42 / udp nameserver whois 43 / tcp nicname # ปกติจะ sri-nic swat 901 / tcp # Samba เว็บ Adm.Tool servicetag 6481 / udp servicetag 6481 / tcp snmpd 161 / udp snmp # SMA snmp daemon $