Neler yeni
MEGAForum - Teknoloji Forumu

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı yada giriş yapmalısınız. Forum üye olmak tamamen ücretsizdir.

  • Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

Güvenlik Serisi İPTABLES'i Kullanabilme Kabiliyeti

TRWE_2012

لِيَغْفِرَ لَكَ اللّٰهُ مَا تَقَدَّمَ مِنْ ذَنْبِك
Moderatör
Konum
BERTUNA
  • Üyelik Tarihi
    2 Haz 2020
  • Mesajlar
    5,358
  • MFC Puanı
    16,420
GNU-Linux'da Güvenlik Serisi İPTABLES'i Kullanabilme Kabiliyeti

ufw-firewall-iptables-min.png


:----------------------------------:
iptables (CHAINS) ZİNCİRLER.....
:----------------------------------:

Iptables, her biri net filtrenin spesifik fonksiyonlarıyla ilişkili ve her tablonun fonksiyonelliğini belirten her biri birkaç “zincire” ayrılan 5 tablodur.


INPUT – Gelen bağlantı isteklerini kontrol etmek için kullanılır.
FORWARD – Yerel olarak teslim edilmeyen ancak derhal gönderilen bağlantıların davranışını kontrol etmek için kullanılır.
OUTPUT – Giden bağlantı isteklerini kontrol etmek için kullanılır.
YAYINLAMA : Bu zincir, herhangi bir paket göndermeden önce ( PRE ) yönlendirme ile ilgili kararları vermek için kullanılır .


Örnek olarak, 80 numaralı bağlantı noktasındaki sunucuya henüz ulaşmış herhangi bir trafiği 8080 numaralı bağlantı noktasına yönlendiriyoruz:

Kod:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

FORWARD : Adından da anlaşılacağı gibi, Tablo FORWARDzinciri FILTERpaketleri bir kaynaktan bir hedefe iletmek için kullanılır. Burada, 80 nolu bağlantı noktasında , ana bilgisayara yönelik olan arabirimde alınan FORWARDherhangi bir TCPtrafiğin kabul edilip iletileceği bir zincir örneği verilmiştir :eth0192.168.0.4192.168.0.4
Kod:
iptables -A FORWARD -i eth0 -p tcp --dport 80 -d 192.168.0.4 -j ACCEPT

NOT:


Nat’ın PREROUTING özelliğini sadece paketlerin hedef adresini değiştirmek için ve FORWARD’ın yalnızca filtreleri filtrelemek (paketleri bırakmak / kabul etmek) için kullanmanız gerekir.

iptables İşlemleri;

ACCEPT : Bağlantıya izin ver
DROP : Bağlantıyı kes (sanki hiçbir bağlantı yapılmadı; sistemin ağda görünmemek istersen kullanışlıdır)
Reddet : Bağlantıya izin verme, ancak bir hata geri gönder.

iptables Varsayılan Politika

Her linux sisteminde, zincir(chain), varsayılan politikanın ne olduğunu bilmek için, varsayılan ACTION(işlem) ile yapılandırılmıştır.

Kod:
sudo iptables -L | grep policy
Chain INPUT (policy ACCEPT)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)

Varsayılan iptables İlkesi Nasıl Değiştirilir

Sysadmins varsayılan ilke tarafından değiştirebilir

Kod:
iptables --policy <CHAIN> <ACTION>

Örneğin;

iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD DROP
iptables ana komut seçenekleri

iptables kuralları ile tanışın iptables -h, buradan başlamak iyi bir yer, bazı ipuçları:


iptables -A Sonuna kuralı ekler
iptables -I kuralı varsayılan olarak en üste ekler
iptables -D Bir kuralı silecek (bir kural numarası belirtin veya bu seçeneğin çalışması için kaldırmak istediğiniz tüm kuralı belirtin)
iptables -C bir kuralın varlığını kontrol edecek
iptables -F Zincirdeki veya tüm zincirlerdeki tüm kuralları sil

En yaygın IPtables kuralları

iptables: Tüm Trafiklerin Engellenmesi

iptables -F
iptables -A INPUT -j REJECT
iptables -A OUTPUT -j REJECT
iptables -A FORWARD -j REJECT

iptables Sadece gelen trafiği engelleme

iptables -F INPUT
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -j REJECT

iptables sadece giden trafiği engelle

iptables -F OUTPUT
iptables -A OUTPUT -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -j REJECT

iptables: Belirli gelen bağlantı noktası veya hizmeti engellemeBu işlem http hizmeti tarafından gelen ağ trafiğini engelleyecektir.

iptables -A INPUT -p tcp --dport 80 -j REJECT
iptables -A INPUT -p tcp --dport www -j REJECT

http için yalnızca yerel arabirimlere izin vermek için

iptables -A INPUT -p tcp --dport 80 -j REJECT
iptables: Belirli bir host nasıl engellenir

Bu işlem, ana bilgisayarın tüm erişimini engeller

iptables -A INPUT -s remote_ip -j REJECT

iptables: Belirli ana bilgisayarlara gidenlerin engellenmesi

iptables -A INPUT -s remote_ip -j REJECT

iptables: Sadece belirli mac adreslerine erişime izin verme

iptables -A INPUT -m mac --mac-source mac_address -j ACCEPT
iptables -A INPUT -j REJECT

iptables: Sadece SSH’ye nasıl izin verilir?

iptables -A INPUT -j REJECT
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -j REJECT

iptables: örneğin tüm telnet bağlantısı nasıl engellenir

iptables -A OUTPUT -p tcp --dport telnet -j REJECT

iptables: ping nasıl engellenir

iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

iptables -A INPUT -p icmp --icmp-type 8 -j DROP

iptables: Bağlantı beklemesini yapılandırma

IPtable’ları, 22 numaralı bağlantı noktasındaki (SSH) aynı IP’den yeni bağlantılar arasında 15 saniye bekletir:

iptables -A INPUT -p tcp -i eth0 -m state --state NEW --dport 22 -m recent --update --seconds 15 -j DROP

iptables -A INPUT -p tcp -i eth0 -m state --state NEW --dport 22 -m recent --set -j ACCEPT

iptables: Smurf saldırıları nasıl engellenir

iptables -A INPUT -p icmp -m icmp --icmp-type address-mask-request -j DROP
iptables -A INPUT -p icmp -m icmp --icmp-type timestamp-request -j DROP
iptables -A INPUT -p icmp -m icmp -j DROP

iptables: Smurf saldırıları önlemek için aşırı RST paketleri nasıl düşürülür

iptables -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT

iptables: Port Yönlendirme nasıl yapılır

Bu kurallar, 80 numaralı bağlantı noktasından gelen tüm istekleri 8080 numaralı bağlantı noktasına iletir.

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

Bu kurallar, 80 numaralı bağlantı noktasında gelen tüm istekleri yerel ana bilgisayardan 8080 numaralı bağlantı noktalarına iletir

iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 8080

iptables Kurallar Nasıl Listelenir?

iptables -L
iptables -t nat --line-numbers -n -L

iptables: iptables’ta yapılan kural değişiklikleri nasıl kaydedilir

Ubuntu: sudo /sbin/iptables-save

RedHat / Centos: /sbin/service iptables save

Others: /etc/init.d/iptables save

Generic: iptables-save &gt; /etc/sysconfig/iptables

İptables kurallarını dosyadan geri yükleme

sudo iptables-save | sudo tee /etc/iptables.conf

sudo iptables-restore iptables.conf

Tüm iptables kurallarını temizleme

Bu komut NAT kurallarını silmez

iptables -F

NAT kuralı varsa, onu temizleyin.

iptables -t nat -F

iptables: PREROUTING NAT kuralını silme

İlk önce hangi hattın olduğunu öğrenin iptables -t nat -L --line-numbers

iptables -t nat -L --line-numbers
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- anywhere anywhere tcp dpt:8082 redir ports 8083
2 REDIRECT tcp -- anywhere anywhere tcp dpt:8084 redir ports 8083

Chain INPUT (policy ACCEPT)
num target prot opt source destination

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- anywhere localhost tcp dpt:8084 redir ports 8083
2 REDIRECT tcp -- anywhere localhost tcp dpt:8082 redir ports 8083

Ardından kural numarasını silin
iptables -t nat -D PREROUTING 2

iptables : iptables günlüğü nasıl yapılır, sırayla günlüğe giren ve açılan yeni bir kural zinciri oluşturun:

# Create a new chain called LOGGING
iptables -N LOGGING
#All the remaining incoming packets will jump to the LOGGING chain
iptables -A INPUT -j LOGGING
#Log the incoming packets to syslog (/var/log/messages)
iptables -A LOGGING -m limit --limit 3/min -j LOG --log-prefix "iptables drop packets" --log-level 4
#Finally, drop all the packets that came to the LOGGING chain
iptables -A LOGGING -j DROP

Tüm Bırakılan Giden Paketleri Günlüğe Kaydet

iptables -N LOGGING
iptables -A OUTPUT -j LOGGING
iptables -A LOGGING -m limit --limit 3/min -j LOG --log-prefix "iptables drop packets " --log-level 4
iptables -A LOGGING -j DROP

iptables: DDoS Kuralı iptables’ta nasıl oluşturulur?

# Reject spoofed packets
iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 169.254.0.0/16 -j DROP
iptables -A INPUT -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP

iptables -A INPUT -s 224.0.0.0/4 -j DROP
iptables -A INPUT -d 224.0.0.0/4 -j DROP
iptables -A INPUT -s 240.0.0.0/5 -j DROP
iptables -A INPUT -d 240.0.0.0/5 -j DROP
iptables -A INPUT -s 0.0.0.0/8 -j DROP
iptables -A INPUT -d 0.0.0.0/8 -j DROP
iptables -A INPUT -d 239.255.255.0/24 -j DROP
iptables -A INPUT -d 255.255.255.255 -j DROP

# Stop smurf attacks
iptables -A INPUT -p icmp -m icmp --icmp-type address-mask-request -j DROP
iptables -A INPUT -p icmp -m icmp --icmp-type timestamp-request -j DROP
iptables -A INPUT -p icmp -m icmp -j DROP

# Drop all invalid packets
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP

# Drop excessive RST packets to avoid smurf attacks
iptables -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT

iptables Port taramaları nasıl engellenir

# Anyone who tried to portscan us is locked out for an entire day.
iptables -A INPUT -m recent --name portscan --rcheck --seconds 86400 -j DROP
iptables -A FORWARD -m recent --name portscan --rcheck --seconds 86400 -j DROP

# Once the day has passed, remove them from the portscan list
iptables -A INPUT -m recent --name portscan --remove
iptables -A FORWARD -m recent --name portscan --remove

# These rules add scanners to the portscan list, and log the attempt.
iptables -A INPUT -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "Portscan:"
iptables -A INPUT -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP

iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "Portscan:"
iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP

Kaynak Site :
Kod:
https://anadolupanteri.net/
Düzenleyen/Sadeleştiren:TRWE_2012


TRWE_2012-GET LINUXMASTER#>_
Follow me, you won't regret it ....!
Alaydan Yetişme PC Kullanıcısı

Birşeyin doğruluğuna inanıyorsanız, sonuna kadar savunun......! Eğer savunduğunuza inanmıyorsanız, işte o zaman siz SAHTEKAR'sınız demektir.
 
Üst Alt