GNU/Linux >> Belajar Linux >  >> Linux

Menggunakan komunikasi TCP/IP localhost dalam suatu program - selalu aman?

  • Lalu lintas ke 127.0.0.0/8 dan ke ::1/128 diproses secara internal oleh tumpukan TCP/IP. Itu tidak mencapai kartu jaringan fisik dan tidak pernah meninggalkan komputer, sehingga tidak dapat diblokir oleh firewall perusahaan.

  • Karena soket loopback sangat umum untuk IPC, firewall yang baik tidak boleh memblokirnya. (Windows Firewall tidak.) Namun, ada beberapa yang terlalu paranoid... Namun, dalam kasus seperti itu, saya akan menyalahkan firewall, bukan perangkat lunak Anda.

  • Di Unix, dimungkinkan untuk (secara tidak sengaja) mematikan antarmuka loopback (biasanya lo ). Sekali lagi, ini sangat tidak biasa.

  • Alih-alih port hardcode, socketpair() harus digunakan jika berlaku, untuk menghindari benturan port.

  • Lebih baik lagi jika menggunakan soket Unix di Linux dan menamai pipa di Windows.


Semua OS ini mendukung menjalankan perangkat lunak firewall. Ini dapat memblokir koneksi localhost, meskipun itu tidak biasa (menurut pengalaman saya).

Ada banyak aplikasi/layanan yang melakukan ini. Coba jalankan netstat -an di kotak Anda:kemungkinan besar Anda akan melihat beberapa aplikasi dengan soket pendengar terbuka di 127.0.0.1 .

Saya tidak tahu pengaturan pengguna yang dapat mencegah ini bekerja di Linux. Tidak ada ide untuk Windows. Tapi sekali lagi, ini adalah teknik umum.


Linux
  1. Apakah Menggunakan Rsync Saat Sumber Diperbarui Aman?

  2. Cara Membuat File Proc Linux di Program C menggunakan LKM

  3. Buat permintaan https menggunakan soket di linux

  1. Komunikasi antar-proses di Linux:Soket dan sinyal

  2. Soket Unix vs host TCP/IP:port

  3. Tidak dapat terhubung ke MySQL menggunakan 'localhost' tetapi menggunakan '127.0.0.1' tidak apa-apa?

  1. Proksi TCP menggunakan socat

  2. Apakah Menggunakan Tar Saat Direktori Sumber Diperbarui Aman?

  3. Reboot Aman Linux Menggunakan Kunci SysRq Ajaib