GNU/Linux >> Belajar Linux >  >> Linux

Mengapa ntpd mendengarkan begitu banyak port/alamat?

Solusi 1:

Itu sama sekali tidak promiscuous. Itu hanya mengikat ke alamat IP antarmuka dan localhost, baik pada protokol ipv4 dan ipv6. Jika menurut Anda seharusnya tidak mendengarkan beberapa di antaranya, ubah saja listen config seperti yang dijelaskan dalam manual (ini mungkin untuk versi berbeda yang Anda gunakan):

 listen on address
         Specify a local IP address or a hostname the ntpd(8) daemon
         should listen on. If it appears multiple times, ntpd(8) will
         listen on each given address. If the exact string '*' is given as
         an address, ntpd(8) will listen on all local addresses. Other-
         wise, address can be followed by an asterisk ('*') and a UDP port
         number to listen on instead of the default 123. ntpd(8) does not
         listen on any address by default. For example:

               listen on *
               listen on 127.0.0.1
               listen on ::1

Di beberapa versi lain, Anda perlu mengubah opsi menjadi ntpd daemon itu sendiri untuk mengubah protokol/antarmuka apa yang akan didengarkan (opsi seperti -4 , -6 , -I )

Solusi 2:

Dari bacaan saya di halaman ini, sepertinya ntp tidak menggunakan INADDR_ANY 0.0.0.0 alamat secara eksklusif sebagian untuk alasan keamanan, dan sebagian untuk alasan autentikasi.

Port pertama 123, di bawah 1024, dan dianggap sebagai port istimewa, dan hanya root yang dapat mengikat ke port tersebut. Ntp biasanya diatur untuk menjatuhkan hak istimewa setelah dimulai. Dari apa yang saya pahami dari daftar surat, dan artikel setelah hak istimewa dicabut tidak dapat membuka soket untuk membalas dari port sumber 123 yang benar, jadi ntp membuka soket untuk setiap alamat yang ditetapkan sebelum hak istimewa dicabut.

Dari apa yang saya baca, beberapa mekanisme autentikasi untuk ntp pada dasarnya mengharuskan port sumber dan tujuan menjadi 123, dan tidak ada yang lain.

Masalahnya tidak sepenuhnya jelas. Lihat bagian tentang alamat karakter pengganti 0.0.0.0 , itu dibuka oleh ntpd untuk beberapa alasan, tetapi dari komentar tidak boleh benar-benar digunakan, kecuali mungkin dalam beberapa kasus khusus yang jarang terjadi, yang tidak sepenuhnya yakin oleh pengembang, tetapi, mereka tidak ingin menghapus soket, kalau-kalau mereka merusak barang.

Perhatikan bahwa biasanya ntpd tidak boleh menerima paket pada alamat wildcard karena ada sejumlah masalah jika Anda melakukannya termasuk mengirim paket pengembalian pada alamat yang berbeda dari alamat yang diminta pengirim.DannyMayer - 27 Apr 2009

Saya pikir jawaban utama untuk pertanyaan Anda ada di komentar di atas di sini.


Linux
  1. Mengapa Manusia Mencetak "gimme Gimme Gimme" Pada 00:30?

  2. Linux – Mengapa Setuid Tidak Bekerja??

  3. Mengapa Opsi Ssh -t Menambahkan Cr &Lf Dalam Output yang Dialihkan?

  1. Mengapa Ekspansi Variabel Tanpa $ Bekerja Dalam Ekspresi?

  2. Mengapa Mv(1) Menyalin Objek Jika Izin Untuk Bergerak Ditolak?

  3. Apa itu DNS dan Bagaimana Cara Kerjanya?

  1. Mengapa git gagal saat Push/fetch dengan Terlalu banyak file terbuka

  2. Mengapa docker container meminta Izin ditolak?

  3. Mendapatkan alamat gpsd untuk ntpd