Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2007-04-29 16:48:27

  Semerchet - Amator

Semerchet
Amator
Skąd: Koszalin
Zarejestrowany: 2007-04-14

Porty w iptables

Aby dodać porty w iptables to muszę użyć tych poleceń w konsoli??

iptables -A INPUT -p tcp –dport XXX -m state –state NEW -j ACCEPT

iptables -A INPUT -p udp –dport XXX -m state –state NEW -j ACCEPT

XXX-numer portu

Aby je zablokować to muszę zmienić INPUT na OUTPUT??
Jak można sprawdzić czy porty są otwarte??

Offline

 

#2  2007-04-29 18:52:34

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: Porty w iptables

Aby zablokować zmieniasz ACCEPT na DROP. Sprawdzić otwarte porty możesz nmapem. Radze cokolwiek poczytać na temat iptables. Jaka przyjemność robić coś po omacku.

Offline

 

#3  2007-04-29 19:17:34

  Semerchet - Amator

Semerchet
Amator
Skąd: Koszalin
Zarejestrowany: 2007-04-14

Re: Porty w iptables

Właśnie znalazłem te dwa polecenia i chciałem się upewnić. Iptables nie należy do łatwych w konfiguracji.  Raczej też iptables nie mogę się pozbyć chociaż jestem za ruterem. Czy jak użyje nakładki Firestarter to w niej udostępnie porty dla Azureusa i aMule?

Offline

 

#4  2007-05-01 15:16:47

  marcin78 - Użytkownik

marcin78
Użytkownik
Zarejestrowany: 2006-11-15

Re: Porty w iptables

Właśnie znalazłem te dwa polecenia i chciałem się upewnić. Iptables nie należy do łatwych w konfiguracji.  Raczej też iptables nie mogę się pozbyć chociaż jestem za ruterem. Czy jak użyje nakładki Firestarter to w niej udostępnie porty dla Azureusa i aMule?

to polecam takie rozwiazanie i jest ono łatwe , lżejsze i nie wymaga nakładki typu firesarter

wiec mam takie plik w /etc/ipwall.conf ipwall.conf
skopiuj ten tekst i wklej go w nowy utworzony plik tex'owy i nazwij go ipwall (bez znaczników i typów txt i etc )  umiescisz go w /etc/
iface="eth0"= zależy jaki masz interfaces internetu eth1 i inne zamien na własciwy , i dodaj własciwy adres ip w "0.0.0.0"

## Użycie iptables lub ip6tables
app="/sbin/iptables"

## Interfejs
iface="eth0"

## Moje IP
my_IP="0.0.0.0"

## Dostęp do SSH:
## Port
ssh="22"
## i dopuszczone adresy IP (oddzielone spacją)
ssh_allow=""

## Otwarte porty TCP dla serwerów (oddzielone spacją)
serv_tcp=" 4661 4662 6881 "

## Otwarte porty UDP dla serwerów (oddzielone spacją)
serv_udp=" 4665 4672 6882 "

## Otwarte porty dla dodatkowych usług (oddzielone spacją)
services=""

## Zabezpieczenie czasowe - porty :
lock_this=""

## Blokada zapytań broadcast dla innych IP niż moje
## (true: blokuje - false:zezwala)
only_me="true

oraz cudo które spisuje sie całkiem nie zle

tyle ze wykonujemy te same czynnosci co do ipwall ( tworzymy nowy plik txt i dajemy mu nazwe iptables i umiec skrypt iptables w /etc/init.d/

#!/bin/bash

ipwall_conf="/etc/ipwall.conf"

if [ -e ${ipwall_conf} ]; then
. ${ipwall_conf}
else
echo "Brak pliku konfiguracyjnego."
exit 1
fi

if [ -e /proc/sys/net/ipv4/tcp_ecn ]; then
echo "0" > /proc/sys/net/ipv4/tcp_ecn
fi

echo "0" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
echo "0" > /proc/sys/net/ipv4/conf/all/secure_redirects
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

${app} -P INPUT ACCEPT
${app} -P FORWARD ACCEPT
${app} -P OUTPUT ACCEPT
${app} -F
${app} -X

${app} -P INPUT DROP
${app} -P OUTPUT DROP
${app} -P FORWARD DROP

${app} -N bad_packets
${app} -N bad_tcp
${app} -N icmp_packets
${app} -N syn-flood
${app} -N udp_in
${app} -N udp_out
${app} -N tcp_in
${app} -N tcp_out
### - syn-flood chain - ###
${app} -A syn-flood -j DROP
${app} -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
### - bad_packets chain - ###
${app} -A bad_packets -p all -m state --state INVALID -j DROP
${app} -A bad_packets -p tcp -j bad_tcp
${app} -A bad_packets -p all -j RETURN
### - bad_tcp chain - ###
${app} -A bad_tcp -p tcp ! --syn -m state --state NEW -j DROP
${app} -A bad_tcp -p tcp --tcp-flags ALL NONE -j DROP
${app} -A bad_tcp -p tcp --tcp-flags ALL ALL -j DROP
${app} -A bad_tcp -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
${app} -A bad_tcp -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
${app} -A bad_tcp -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
${app} -A bad_tcp -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
${app} -A bad_tcp -p tcp -j RETURN
### - icmp_packets chain - ###
${app} -A icmp_packets --fragment -p icmp -j DROP
${app} -A icmp_packets -p icmp --icmp-type 8 -j DROP
${app} -A icmp_packets -p icmp --icmp-type 11 -m state --state ESTABLISHED -j ACCEPT
${app} -A icmp_packets -p icmp -j RETURN
### - udp_in chain - ###
${app} -A udp_in -p udp --destination-port 137 -j DROP
${app} -A udp_in -p udp --destination-port 138 -j DROP
for x in ${serv_udp}; do
${app} -A udp_in -p udp --destination-port ${x} -j ACCEPT
done
${app} -A udp_in -p udp -m state --state ESTABLISHED -j ACCEPT
${app} -A udp_in -p udp -i ${iface} -j REJECT --reject-with icmp-host-unreachable
${app} -A udp_in -p udp -j RETURN
### - udp_out chain - ###
${app} -A udp_out -p udp -j ACCEPT
### - tcp_in chain - ###
for x in ${serv_tcp}; do
${app} -A tcp_in -p tcp --destination-port ${x} -j ACCEPT
done
for x in ${ssh_allow}; do
${app} -A tcp_in -p tcp -s ${x} --destination-port ${ssh} -j ACCEPT
done
for x in ${services}; do
${app} -A tcp_in -p tcp --destination-port ${x} -j ACCEPT
done
${app} -A tcp_in -p tcp -j RETURN
### - tcp_out chain - ###
${app} -A tcp_out -p tcp -j ACCEPT
### - INPUT Chain - ###
${app} -A INPUT -p all -i lo -j ACCEPT
${app} -A INPUT -p all -j bad_packets
${app} -A INPUT -p all -d 224.0.0.1 -j DROP
${app} -A INPUT -p all -s 224.0.0.1 -j DROP
if "${only_me}"; then
${app} -A INPUT -p all -i ${iface} -d ! ${my_IP} -j DROP
fi
${app} -A INPUT -p all -i ${iface} -m state --state ESTABLISHED,RELATED -j ACCEPT
${app} -A INPUT -p tcp -i ${iface} -j tcp_in
${app} -A INPUT -p udp -i ${iface} -j udp_in
${app} -A INPUT -p icmp -i ${iface} -j icmp_packets
${app} -A INPUT -m pkttype --pkt-type broadcast -j DROP
${app} -A INPUT -p all -j syn-flood
for x in ${lock_this}; do
${app} -I INPUT -p tcp --dport ${x} -i ${iface} -m state --state NEW -m recent --set
${app} -I INPUT -p tcp --dport ${x} -i ${iface} -m state --state NEW -m recent
--update --seconds 300 --hitcount 3 -j DROP
done
### - FORWARD Chain - ###

### - OUTPUT Chain - ###
${app} -A OUTPUT -m state -p icmp --state INVALID -j DROP
${app} -A OUTPUT -p all -s 127.0.0.1 -j ACCEPT
${app} -A OUTPUT -p all -o lo -j ACCEPT
${app} -A OUTPUT -p all -o ${iface} -j ACCEPT

nadaj tym plikom osobno prawa na iptables i ipwall
# chmod 700 ipwall.conf
# chmod 700 iptables

oraz jako root do skryptu iptables w /etc/init.d/ dajesz takie polecenie

# /etc/init.d/iptables save active

[zapisuje skrypt iptables]

[Teraz masz zapisane ustawienie dla iptables. Trzeba tylko
zrobic linki w skryptach startowych.]
oto kolejne polecenie :

# update-rc.d iptables defaults

polecenie ma na celu uruchomienie po każdym starcie sytemu bez wpisywania w konsoli komend
te skrypty działają i sa w 100% efektywne , można edytować i dodawać dodatkowe porty w ipwall

mnie udało sie a tu wynik portów http://img398.imageshack.us/my.php?image=testiptablesportsdq7.jpg

efekt tych skryptów można sprawdzić tu https://www.grc.com/x/ne.dll?bh0bkyd2
pozdrawiam

Offline

 

#5  2007-06-07 13:47:09

  yakubek - Użytkownik

yakubek
Użytkownik
Skąd: Łasin
Zarejestrowany: 2007-05-14
Serwis

Re: Porty w iptables

W niedlugim czasie przetestuje ten skrypt i podziele sie opinia.
Mam pytanie, jad dopisac do tego skryptu inne funkcje np. przekierowanie portow, ilosc nawiazywanych polaczen dlaposzczegolnych uzytkownikow itd.

jesli skrypt sprawdzi sie warto rozbudowac go o nowe rozwiazania to ulatwi administrowanie w trybie tekstowym np. na serwerach na ktorych nie instaluje sie grafiki.

Offline

 

#6  2007-06-09 19:26:57

  yakubek - Użytkownik

yakubek
Użytkownik
Skąd: Łasin
Zarejestrowany: 2007-05-14
Serwis

Re: Porty w iptables

Test nie udał się, po skonfigurowaniu i odpaleniu pojawialy sie bledy podczas uruchamiania skryptu - blad w liniach 30 i 31 ipwall.conf

Offline

 

#7  2007-06-09 20:35:06

  BaB - Członek DUG

BaB
Członek DUG
Skąd: Krapkowice
Zarejestrowany: 2004-09-09

Re: Porty w iptables

tak to już bywa jaki się używa, gotowca, proponuje powrót do rady kolegi kamikaze


Zarejestrowany użytkownik Linuksa #361563

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)