Что такое Linux, обзор, отличия. Какой Linux выбрать в 2020
İçindekiler:
- Açık Liman Nedir
nmap
ile Açık Portları Kontrol Edinnetcat
ile Açık Portları Kontrol Edin- Bash Pseudo Device kullanarak Açık Portları Kontrol Et
- Sonuç
Ağ bağlantısı sorunlarını gideriyor veya güvenlik duvarı yapılandırıyor olsanız da, kontrol edilmesi gereken ilk şeylerden biri sisteminizde gerçekte hangi bağlantı noktalarının açıldığıdı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.
Açık Liman Nedir
Dinleme bağlantı noktası, uygulamanın dinlediği bir ağ bağlantı noktasıdır. Ağ yığınını
ss
,
netstat
veya
lsof
gibi komutlarla sorgulayarak sisteminizdeki dinleme bağlantı noktalarının bir listesini alabilirsiniz. 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.
Örneğin,
80
ve
443
numaralı bağlantı noktalarını dinleyen bir web sunucusu çalıştırıyorsanız ve bu bağlantı noktaları güvenlik duvarınızda açıksa, herkes (engellenen ips hariç) tarayıcısını kullanarak web sunucunuzda barındırılan web sitelerine erişebilir. Bu durumda, hem
80
hem de
443
açık bağlantı noktalarıdır.
Açık bağlantı noktaları güvenlik açıkları oluşturabilir, çünkü her açık bağlantı noktası saldırganlar tarafından bir güvenlik açığından yararlanmak veya başka türden saldırılar gerçekleştirmek için kullanılabilir. Yalnızca uygulamanızın işlevselliği için gereken bağlantı noktalarını açmalı ve diğer tüm bağlantı noktalarını kapatmalısınız.
nmap
ile Açık Portları Kontrol Edin
Nmap, tek ana bilgisayarları ve büyük ağları tarayabilen güçlü bir ağ tarama aracıdır. Genellikle güvenlik denetimleri ve sızma testleri için kullanılır.
Mümkünse, bağlantı noktası taraması söz konusu olduğunda
nmap
ilk aracınız olmalıdır. Bağlantı noktası taramasının yanı sıra
nmap
, Mac adresini, işletim sistemi türünü, çekirdek sürümlerini ve çok daha fazlasını algılayabilir.
Konsoldan verilen aşağıdaki komut, hangi bağlantı noktalarının ağdan TCP bağlantılarını dinlediğini belirler:
sudo nmap -sT -p- 10.10.8.8
-sT
,
nmap
TCP bağlantı noktalarını taramasını ve
-p-
tüm 65535 bağlantı noktalarını taramasını söyler.
-p-
kullanılmazsa
nmap
yalnızca 1000 bağlantı noktasını tarar.
Starting Nmap 7.60 (https://nmap.org) at 2019-07-09 23:10 CEST Nmap scan report for 10.10.8.8 Host is up (0.0012s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http MAC Address: 08:00:27:05:49:23 (Oracle VirtualBox virtual NIC) Nmap done: 1 IP address (1 host up) scanned in 0.41 seconds
Yukarıdaki çıktı, hedef sistemde sadece
22
,
80
ve
8069
bağlantı noktalarının açıldığını göstermektedir.
UDP bağlantı noktalarını taramak için
-sT
yerine
-sU
kullanın:
sudo nmap -sU -p- 10.10.8.8
Daha fazla bilgi için nmap man sayfasını ziyaret edin ve bu aracın diğer tüm güçlü seçeneklerini okuyun.
netcat
ile Açık Portları Kontrol Edin
Netcat (veya
nc
), TCP veya UDP protokollerini kullanarak ağ bağlantıları üzerinden veri okuyabilen ve yazabilen bir komut satırı aracıdır.
netcat
ile tek bir portu veya port aralığını tarayabilirsiniz.
Örneğin,
20-80
aralığında IP adresi
10.10.8.8
olan uzak bir makinede açık TCP bağlantı noktalarını taramak için aşağıdaki komutu kullanırsınız:
nc -z -v 10.10.8.8 20-80
-z
seçeneği
nc
herhangi bir veri göndermeden yalnızca açık bağlantı noktalarını taramasını söyler ve
-v
daha ayrıntılı bilgi içindir.
Çıktı şöyle görünecektir:
nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refused nc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refused Connection to 10.10.8.8 22 port succeeded!… Connection to 10.10.8.8 80 port succeeded!
nc -z -v 10.10.8.8 20-80 2>&1 | grep succeeded
Connection to 10.10.8.8 22 port succeeded! Connection to 10.10.8.8 80 port succeeded!
UDP bağlantı noktalarını taramak için
-u
seçeneğini
nc
komutuna
nc
:
nc -z -v -u 10.10.8.8 20-80 2>&1 | grep succeeded
Bash Pseudo Device kullanarak Açık Portları Kontrol Et
Belirli bir bağlantı noktasının açık veya kapalı olup olmadığını kontrol etmenin başka bir yolu da Bash kabuğu
/dev/tcp/..
veya
/dev/udp/..
sözde aygıtı kullanmaktır.
/dev/$PROTOCOL/$HOST/$IP
sahte aygıtında bir komut yürütülürken Bash, belirtilen bağlantı noktasında belirtilen ana bilgisayara TCP veya UDP bağlantısı açar.
Aşağıdaki if..else ifadesi
kernel.org
443
numaralı bağlantı noktasının açık olup olmadığını kontrol eder:
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
Port is open
Yukarıdaki kod nasıl çalışır?
Bir sözde aygıt kullanarak bir bağlantı noktasına bağlanırken varsayılan zaman aşımı çok büyük olduğundan, 5 saniye sonra test komutunu öldürmek için
timeout
komutunu kullanıyoruz. Eğer bağlantı
kernel.org
443
bağlantı noktasına
443
, test komutu true değerini döndürecektir.
Bir bağlantı noktası aralığını denetlemek için for döngüsünü de kullanabilirsiniz:
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
Çıktı şöyle görünecektir:
port 22 is open port 80 is open
Sonuç
Açık portları taramak için kullanabileceğiniz birkaç araç gösterdik. Açık portları kontrol etmek için başka yardımcı programlar ve yöntemler de vardır, örneğin Python
socket
modülünü,
curl
,
telnet
veya
wget
.
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 dinleme bağlantı noktaları nasıl kontrol edilir (kullanımdaki bağlantı noktaları)

Bu makalede, kullanılan bağlantı noktalarının nasıl bulunacağı ve hangi hizmetlerin netstat, ss ve lsof komutlarını kullanarak hangi bağlantı noktalarını dinlediğini açıklar. Talimatlar, macOS gibi tüm Linux ve Unix tabanlı işletim sistemleri için geçerlidir.
Linux sürümü nasıl kontrol edilir

Bu öğreticide, komut satırını kullanarak sisteminizde hangi Linux dağıtımının ve sürümünün yüklü olduğunu nasıl kontrol edeceğinizi göstereceğiz.