Dari skrip bash bagaimana saya bisa dengan cepat mengetahui apakah port 445
terbuka / mendengarkan di server.
Saya telah mencoba beberapa opsi, tetapi saya menginginkan sesuatu yang cepat:
1. lsof -i :445
(Membutuhkan detik)
2. netstat -an |grep 445 |grep LISTEN
(Membutuhkan detik)
3. telnet
(tidak kembali)
4. nmap
, netcat
tidak tersedia di server
Akan menyenangkan mengetahui cara yang tidak disebutkan pertama dan menggerutu setelah itu.
netstat -lnt
(dengan -t
dan tanpa -a
) akan membatasi output hanya untuk mendengarkan koneksi TCP. Mungkin sedikit mempercepat. Anda dapat menambahkan -4
untuk IPv4 hanya jika Anda tidak membutuhkan IPv6.
netstat -an | grep PORTNUMBER | grep -i listen
Jika output kosong, port tidak digunakan.
lsof
lambat bagi Anda, tetapi biasanya ini adalah solusi terbaik yang Anda daftarkan. netstat
Solusi Anda tidak terlalu andal (Anda dapat menebaknya kapan saja Anda gunakan grep
; toh itu akan kembali benar jika seseorang mendengarkan misalnya 4450). telnet
dan netcat
sebenarnya berusaha membuat koneksi, yang mungkin tidak selalu seperti yang Anda inginkan.