GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana Cara Menutup Port Di Linux?

Saya memiliki beberapa pertanyaan dalam menutup port, saya pikir saya mendapatkan beberapa hal yang aneh.

Saat saya menggunakan eksekusi

nmap --top-ports 10 192.168.1.1

itu menunjukkan bahwa port 23/TCP terbuka.

Tapi ketika saya mengeksekusi

nmap --top-ports 10 localhost

itu menunjukkan bahwa port 23/tcp ditutup.

Manakah dari mereka yang benar? Saya ingin menutup port ini di seluruh sistem saya, bagaimana cara melakukannya?

Jawaban yang Diterima:

Nmap adalah pemindai port yang hebat, tetapi terkadang Anda menginginkan sesuatu yang lebih otoritatif. Anda dapat menanyakan kernel proses apa yang memiliki port mana yang terbuka dengan menggunakan netstat utilitas:

[email protected]:~$ sudo netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address   Foreign Address   State    PID/Program name
tcp        0      0 127.0.0.1:53    0.0.0.0:*         LISTEN   1004/dnsmasq    
tcp        0      0 0.0.0.0:22      0.0.0.0:*         LISTEN   380/sshd        
tcp        0      0 127.0.0.1:631   0.0.0.0:*         LISTEN   822/cupsd       
tcp6       0      0 :::22           :::*              LISTEN   380/sshd        
tcp6       0      0 ::1:631         :::*              LISTEN   822/cupsd       

Opsi yang saya berikan adalah:

  • -t Hanya TCP
  • -l Hanya mendengarkan port
  • -n Jangan mencari nama layanan dan host, cukup tampilkan nomor
  • -p Tampilkan informasi proses (memerlukan hak akses root)

Dalam hal ini, kita dapat melihat bahwa sshd mendengarkan pada antarmuka apa pun (0.0.0.0 ) port 22, dan cupsd sedang mendengarkan di loopback (127.0.0.1 ) port 631. Output Anda mungkin menunjukkan bahwa telnetd memiliki alamat lokal 192.168.1.1:23 , artinya tidak akan menjawab koneksi pada adaptor loopback (mis. Anda tidak dapat telnet 127.0.0.1 ).

Ada alat lain yang akan menampilkan informasi serupa (mis. lsof atau /proc ), tetapi netstat adalah yang paling banyak tersedia. Ia bahkan bekerja pada Windows (netstat -anb ). Netstat BSD sedikit berbeda:Anda harus menggunakan sockstat(1) untuk mendapatkan informasi proses.

Setelah Anda memiliki ID proses dan nama program, Anda dapat mencari proses dan mematikannya jika Anda ingin menutup port. Untuk kontrol yang lebih halus, Anda dapat menggunakan firewall (iptables di Linux) untuk membatasi akses hanya ke alamat tertentu. Anda mungkin perlu menonaktifkan startup layanan. Jika PID adalah "-" di Linux, itu mungkin proses kernel (ini umum terjadi pada NFS misalnya), jadi semoga berhasil mengetahui apa itu.

Catatan:Saya mengatakan "otoritatif" karena Anda tidak terhalang oleh kondisi jaringan dan firewall. Jika Anda memercayai komputer Anda, itu bagus. Namun, jika Anda menduga bahwa Anda telah diretas, Anda mungkin tidak dapat mempercayai alat di komputer Anda. Mengganti utilitas standar (dan terkadang bahkan panggilan sistem) dengan yang menyembunyikan proses atau port tertentu (alias rootkit) adalah praktik standar di antara penyerang. Taruhan terbaik Anda saat ini adalah membuat salinan forensik dari disk Anda dan memulihkan dari cadangan; kemudian gunakan salinannya untuk menentukan cara mereka masuk dan menutupnya.

Terkait:Bagaimana cara memprogram AVR Raven dengan Linux atau Mac?
Linux
  1. Cara menginstal Python di Linux

  2. Bagaimana saya menggunakan cron di Linux

  3. Cara menginstal Java di Linux

  1. Cara menggunakan BusyBox di Linux

  2. Cara mempartisi disk di Linux

  3. Cara Mengetahui Daftar Semua Port Terbuka di Linux

  1. Cara menginstal Linux dalam 3 langkah

  2. Cara memindahkan file di Linux

  3. Cara membuat daftar port terbuka di server Linux/Unix