Sol Banner
Sağ Banner
  • Ekip Arkadaşları Arıyoruz!

    MinecraftTR topluluğunu birlikte büyütmek istiyoruz!
    Aktif ve gönüllü olarak katkı sağlayabilecek Editör, Yazar, Yazar Ekip Lideri, Minecraft Uzmanı, XenForo Developer ve Yönetici rollerinde ekip arkadaşları arıyoruz.

    Yeteneğine güveniyor ve topluluğa katkı sağlamak istiyorsan başvurunu bekliyoruz:

    ✅ Ekip Başvuru Formunu Doldur

Paylaşım MINECRAFT | Linux sunucular için "FIREWALL"

Y3ko

Yeni bir Steve doğdu!
Katılım
20 Temmuz 2018
Mesajlar
1
Tepki puanı
2
Puanları
0
Web Sitesi
www.gevezeoyuncu.com
Merhaba herkese ilk konumu böyle açmak nasip oldu. Erkan Abi'nin ricası üzerine, işinizi görebilecek bir "FIREWALL"ı sizlerle paylaşıyorum.
Lütfen açıklamaları iyi okuyun. İyi forumlar.




Kod:
# DIKKAT! %100 koruma vaat etmesemde, sunucunuza gelen ufak çaplı saldırıları engelleyeceğini düşünüyorum
# Lütfen benden destek vs. beklemeyin çünkü veremeyecek kadar yoğunum. Kendi başınızın çaresine bakın.
# Sağdan soldan araştıra araştıra, bata çıka, biriktirdiğim tecrübelerle bu firewall'ı oluşturdum.
# Evet bazı yerleri hatta belki çoğu yeri alıntı olabilir. Sonuç olarak iş görüyor.
# Kötü yorumlarınızı kendinize saklayın.
# Sevgiler. <3


ipset=/sbin/ipset
iptables=/sbin/iptables
route=/etc/acl
zone=zones

wgetd="wget -q -c --retry-connrefused -t 0"

if [ ! -d $zone ]; then mkdir -p $zone; fi
        echo "Ülke IP Adresleri indiriliyor."
        $wgetd http://www.ipdeny.com/ipblocks/data/countries/all-zones.tar.gz && tar -C $zone -zxvf all-zones.tar.gz >/dev/null 2>&1 && rm -f all-zones.tar.gz >/dev/null 2>&1


# Lütfen sunucu portunuzu girin.
port=25565


# Linux (SSH) saldırıları engellensin mi? Bir çok saldırıyı engelleyebilir.
block_linux_connections=true

limit_global_connections=true
limit_global_connections_max=300
burstconns=15
timeout=900

# Beyaz listeye alınan ülkeler her zaman bağlanabilecek.
# Beyaz listede olmayanlar ise bazen sorun yaşabilir.
# Yararlı Komutlar:
# sudo ipset flush whitelist
# sudo ipset flush proxies
#
echo "IPSet hazırlanıyor."
$ipset -F
$ipset -N -! proxies hash:net maxelem 150000 timeout $timeout
$ipset -N -! whitelist hash:net maxelem 1000000
# Beyaz listeye alınan ülkeler.
for ip in $(cat $zone/{tr,az,cy,gb}.zone); do
  $ipset -A whitelist $ip
done

# Bot Önlemi İçin Kurallar:

# Tablo Oluşturma:
$iptables -N BotKoruma
$iptables -F BotKoruma

# Maximum Bağlantı Sayısı Kontrol Etme:
$iptables -A BotKoruma -p tcp --dport $port -m set --match-set proxies src -j DROP
$iptables -A BotKoruma -p tcp --dport $port -m set --match-set whitelist src -j ACCEPT
$iptables -A BotKoruma -p tcp --dport $port --syn -m limit --limit $burstconns/s -j ACCEPT
$iptables -A BotKoruma -p tcp --dport $port --syn -j DROP

# Kendi eklediğim ve önemli gördüğüm kurallar.
# Lütfen kendi sunucu IP adresinizide aşşağıya eklemeyi unutmayın.
# $iptables -I OUTPUT -p tcp -d SUNUCUIPADRESI -j ACCEPT
# Toksik olan ülkeler aşşağıda engellenmiştir. Kendinize göre düzenleyebilirsiniz.
$iptables -D INPUT -p tcp -j BotKoruma
$iptables -A INPUT -p tcp -j BotKoruma
$iptables -A INPUT -p tcp -m tcp --syn --tcp-option 8 --dport 25565 -j REJECT
$iptables -I INPUT -p tcp -s 149.202.74.183 -j ACCEPT
$iptables -I OUTPUT -p tcp -d 149.202.74.183 -j ACCEPT
$iptables -I INPUT -p tcp -s 178.32.62.55 -j ACCEPT
$iptables -I OUTPUT -p tcp -d 178.32.62.55 -j ACCEPT
$iptables -I INPUT -p tcp -s 37.187.63.146 -j ACCEPT
$iptables -I OUTPUT -p tcp -d 37.187.63.146 -j ACCEPT
$iptables -I INPUT -p tcp -s 92.222.160.58 -j ACCEPT
$iptables -I INPUT -p tcp -s 5.196.10.200 -j ACCEPT
$iptables -I OUTPUT -p tcp -d 5.196.10.200 -j ACCEPT
$iptables -I OUTPUT -p tcp -d 92.222.160.58 -j ACCEPT
$iptables -A INPUT -p tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
$iptables -A INPUT -p tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN -j DROP
$iptables -A INPUT -p tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
$iptables -A INPUT -p tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP
$iptables -A INPUT -p tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
$iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
$iptables -A OUTPUT -p udp -j DROP
$ip6tables -A OUTPUT -p udp -j DROP
$iptables -A INPUT -p tcp --destination-port 8080 -j DROP
$iptables -t mangle -A PREROUTING -p tcp ! --syn -m conntrack --ctstate NEW -j DROP
$iptables -A INPUT -p tcp --tcp-flags SYN,ECN,CWR -j DROP
if $block_linux_connections ; then
    $$iptables -A INPUT -p tcp -m tcp --syn --tcp-option 8 --dport $port -j REJECT
    echo 'Linux bağlantıları engellendi!'
fi

if $limit_global_connections ; then
    $iptables -I INPUT -p tcp --dport $port -m state --state NEW -m limit --limit $limit_global_connections_max/s -j ACCEPT
    echo 'Global bağlantılar limitlendi!'
fi

echo "Firewall kurulumu tammalandı."
 

Üst Alt