Linux vs Windows vs MacOS для работы. Какой ЛИНУКС выбрать в 2020 для рабочего компьютера?
İçindekiler:
- Dinleme Limanı Nedir
netstat
ile Dinleme Portlarını Kontrol Edin- Dinleme Portlarını
ss
ile kontrol edin - Dinleme Portlarını
lsof
ile Kontrol Edin - Sonuç
Ağ bağlantısı veya uygulamaya özgü sorunları giderirken, kontrol edilmesi gereken ilk şeylerden biri sisteminizde hangi bağlantı noktalarının gerçekten kullanıldığını ve hangi uygulamanın belirli bir bağlantı noktasını dinlediğini kontrol etmelidir.
Bu makalede,
netstat
,
ss
ve
lsof
komutlarını kullanarak hangi bağlantı noktalarını hangi hizmetlerin dinlediğini nasıl bulacağınız açıklanmaktadır. Talimatlar, macOS gibi tüm Linux ve Unix tabanlı işletim sistemleri için geçerlidir.
Dinleme Limanı Nedir
Ağ bağlantı noktası numarası, ilişkilendirilmiş IP adresi ve TCP veya UDP gibi iletişim protokolünün türü ile tanımlanır.
Dinleme bağlantı noktası, bir uygulama veya işlemin dinlediği ve iletişim uç noktası görevi gören bir ağ bağlantı noktasıdır.
Her dinleme bağlantı noktası bir güvenlik duvarı kullanılarak açılabilir veya kapatılabilir (filtrelenebilir). Genel olarak, açık bir bağlantı noktası uzak konumlardan gelen paketleri kabul eden bir ağ bağlantı noktasıdır.
Aynı IP adresini aynı bağlantı noktasında dinleyen iki hizmetiniz olamaz.
Örneğin,
80
ve
443
numaralı bağlantı noktalarını dinleyen bir Apache web sunucusu çalıştırıyorsanız ve Nginx'i yüklemeye çalışırsanız, HTTP ve HTTPS bağlantı noktaları zaten kullanımda olduğundan daha sonra başlamaz.
netstat
ile Dinleme Portlarını Kontrol Edin
netstat
, ağ bağlantıları hakkında bilgi sağlayabilen bir komut satırı aracıdır.
Bağlantı noktalarını ve soket durumunu kullanan hizmetler de dahil olmak üzere, dinlenmekte olan tüm TCP veya UDP bağlantı noktalarını listelemek için aşağıdaki komutu kullanın:
sudo netstat -tunlp
Bu komutta kullanılan seçenekler şu anlama gelir:
-
-t
- TCP bağlantı noktalarını gösterir.-u
- UDP bağlantı noktalarını göster.-n
- Ana bilgisayarları çözümlemek yerine sayısal adresleri gösterir.-l
- Yalnızca dinleme bağlantı noktalarını göster.-p
- Dinleyicinin işleminin PID'sini ve adını gösterir. Bu bilgi yalnızca komutu kök veya sudo kullanıcısı olarak çalıştırırsanız gösterilir.
Çıktı şöyle görünecektir:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 929/master tcp6 0 0:::3306:::* LISTEN 534/mysqld tcp6 0 0:::80:::* LISTEN 515/apache2 tcp6 0 0:::22:::* LISTEN 445/sshd tcp6 0 0:::25:::* LISTEN 929/master tcp6 0 0:::33060:::* LISTEN 534/mysqld udp 0 0 0.0.0.0:68 0.0.0.0:* 966/dhclient
Bizim durumumuzdaki önemli sütunlar:
-
Proto
- Soket tarafından kullanılan protokol.Local Address
- İşlemin dinlediği IP Adresi ve bağlantı noktası numarası.PID/Program name
- PID ve işlemin adı.
sudo netstat -tnlp | grep:22
Çıktı, bu makine portunda 22 SSH sunucusu tarafından kullanıldığını göstermektedir:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp6 0 0:::22:::* LISTEN 445/sshd
Çıkış boşsa, bağlantı noktasında hiçbir şey dinlenmiyor demektir.
Ayrıca listeyi, örneğin PID, protokol, durum vb. Ölçütlere göre filtreleyebilirsiniz.
netstat
kullanılmıyor ve
ss
ve
ip
ile değiştiriliyor, ancak yine de ağ bağlantılarını kontrol etmek için en çok kullanılan komutlardan biri.
Dinleme Portlarını
ss
ile kontrol edin
ss
yeni bir
netstat
. Bazı
netstat
özelliklerinden yoksundur, ancak daha fazla TCP durumu gösterir ve biraz daha hızlıdır. Komut seçenekleri çoğunlukla aynıdır, bu nedenle
netstat
geçiş zor değildir.
ss
ile tüm dinleme bağlantı noktalarının bir listesini almak için şunu yazabilirsiniz:
sudo ss -tunlp
Çıktı neredeyse
netstat
tarafından bildirilenle aynı:
State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd", pid=445, fd=3)) LISTEN 0 100 0.0.0.0:25 0.0.0.0:* users:(("master", pid=929, fd=13)) LISTEN 0 128 *:3306 *:* users:(("mysqld", pid=534, fd=30)) LISTEN 0 128 *:80 *:* users:(("apache2", pid=765, fd=4), ("apache2", pid=764, fd=4), ("apache2", pid=515, fd=4)) LISTEN 0 128:22:* users:(("sshd", pid=445, fd=4)) LISTEN 0 100:25:* users:(("master", pid=929, fd=14)) LISTEN 0 70 *:33060 *:* users:(("mysqld", pid=534, fd=33))
Dinleme Portlarını
lsof
ile Kontrol Edin
lsof
, işlemler tarafından açılan dosyalar hakkında bilgi sağlayan güçlü bir komut satırı yardımcı programıdır.
Linux'ta her şey bir dosyadır. Bir soketi ağa yazan bir dosya olarak düşünebilirsiniz.
lsof
türündeki tüm dinleme TCP bağlantı noktalarının bir listesini almak için:
sudo lsof -nP -iTCP -sTCP:LISTEN
Kullanılan seçenekler aşağıdaki gibidir:
-
-n
- Bağlantı noktası numaralarını bağlantı noktası adlarına dönüştürmeyin.-p
- Ana bilgisayar adlarını çözmeyin, sayısal adresler gösterin.-iTCP -sTCP:LISTEN
- Yalnızca TCP durumu LISTEN olan ağ dosyalarını göster.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 445 root 3u IPv4 16434 0t0 TCP *:22 (LISTEN) sshd 445 root 4u IPv6 16445 0t0 TCP *:22 (LISTEN) apache2 515 root 4u IPv6 16590 0t0 TCP *:80 (LISTEN) mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN) mysqld 534 mysql 33u IPv6 19973 0t0 TCP *:33060 (LISTEN) apache2 764 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) apache2 765 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) master 929 root 13u IPv4 19637 0t0 TCP *:25 (LISTEN) master 929 root 14u IPv6 19638 0t0 TCP *:25 (LISTEN)
Çıktı sütunlarının çoğu kendi kendini açıklar niteliktedir:
-
COMMAND
,PID
,USER
- Bağlantı noktasıyla ilişkili programı çalıştıran ad, pid ve kullanıcı.NAME
- Bağlantı noktası numarası.
Belirli bir bağlantı noktasında hangi işlemin dinlediğini bulmak için, örneğin
3306
bağlantı noktasını kullanırsınız:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN
Çıktı,
3306
bağlantı noktasının MySQL sunucusu tarafından kullanıldığını gösterir:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN)
Daha fazla bilgi için lsof man sayfasını ziyaret edin ve bu aracın diğer tüm güçlü seçenekleri hakkında bilgi edinin.
Sonuç
Sisteminizde hangi bağlantı noktalarının kullanıldığını ve belirli bir bağlantı noktasında hangi işlemin dinlediğini nasıl bulacağınızı kontrol etmek için kullanabileceğiniz birkaç komut gösterdik.
terminalMicrosoft Fix`i kullanarak Uzak Masaüstü için dinleme bağlantı noktasını kolayca değiştirin

Bu makalede, Uzak Masaüstü`nün dinlediği bağlantı noktasının nasıl değiştirileceği anlatılmaktadır. , Windows`da.
Hatta müzik dokunmadan ve android üzerinde çağrıları kontrol etmeden nasıl kontrol edilir

Hava Üzerindeki Kinect Benzeri El Hareketlerini Kullanarak Dokunmadan Bile Müzik ve Android Aramalarını Kontrol Etmeyi Öğrenin.
Linux'ta açık portlar nasıl kontrol edilir (taranır)

Bu makalede, Linux sisteminizde hangi bağlantı noktalarının dışarıya açıldığını bulmak için çeşitli yaklaşımlar açıklanmaktadır.