kaktus250 Napisano Listopad 24, 2008 Zgłoszenie Share Napisano Listopad 24, 2008 Wynik iptables -V : iptables v.1.3.8 Wynik uname -r : 2.6.23.1-42.fc8 Mam skrypt który uruchamiam ręcznie z katalogu /root zawierajace regułki na iptables . W Aurox 9.2 pisałem w konsoli # /root/skrypt.sh i wszystko co było w skrypcie działało. Na Fedorze wyrzuca komunikat iptables: No chain/target/match by that name iptables: Bad policy name i pod spodem do każdej regułki dodatkowo: Try 'iptables -h' or 'iptables --help' for more information. 'iptables v.1.3.8: Invalid terget name ' ACCEPT Regułki które są w skrypcie pisane w konsoli działają. Próbowałem dopisać ścieżkę do iptables w skrypcie. Więc w skrypcie, takim zrobionym dla ćwiczeniowych (bo myślę że jak jedna linia zadziała to dostosuję pozostałe) zostawiłem tylko: IPTABLES=/sbin/iptables $IPTABLES -F Dostałem komunikat: iptables: No chain/target/match by that name Dlaczego nie mogę uruchomić skryptu ? proszę o pomoc Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Listopad 24, 2008 Zgłoszenie Share Napisano Listopad 24, 2008 Po pierwsze sprawdź czy poszczególne regułki są poprawne. Może zabrakło definicji jakiegoś niestandardowego łańcucha? Wpisuj po kolei w konsoli jako root poszczególne linijki skryptu. Powinieneś wykryć błąd. Uwaga ogólna: zamiast pisać skrypt bezpieczniej jest skorzystać z wpisów do /etc/sysconfig/iptables, bo reguły wczytywane są wcześniej niż z takiego skryptu. Jak już będziesz miał wszystkie potrzebne regułki wpisane (czyli polecenie "iptables -L" wypisze co trzeba), to skorzystaj z polecenia iptables-save > /etc/sysconfig/iptables Wcześniej oczywiście zrób backup oryginalnego pliku /etc/sysconfig/iptables (o ile istnieje). Zakładam, że usługa iptables jest uruchomiona co najmniej na poziomach współpracujących z siecią, czyli 2, 3 i 5. Polecam "man iptables", "man iptables-save", "man iptables-restore" i pokrewne wymienione w manualach w sekcji "SEE ALSO". Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaktus250 Napisano Listopad 25, 2008 Autor Zgłoszenie Share Napisano Listopad 25, 2008 Po pierwsze sprawdź czy poszczególne regułki są poprawne. Może zabrakło definicji jakiegoś niestandardowego łańcucha? Wpisuj po kolei w konsoli jako root poszczególne linijki skryptu. Powinieneś wykryć błąd. Uwaga ogólna: zamiast pisać skrypt bezpieczniej jest skorzystać z wpisów do /etc/sysconfig/iptables, bo reguły wczytywane są wcześniej niż z takiego skryptu. Jak już będziesz miał wszystkie potrzebne regułki wpisane (czyli polecenie "iptables -L" wypisze co trzeba), to skorzystaj z polecenia iptables-save > /etc/sysconfig/iptables Wcześniej oczywiście zrób backup oryginalnego pliku /etc/sysconfig/iptables (o ile istnieje). Zakładam, że usługa iptables jest uruchomiona co najmniej na poziomach współpracujących z siecią, czyli 2, 3 i 5. Polecam "man iptables", "man iptables-save", "man iptables-restore" i pokrewne wymienione w manualach w sekcji "SEE ALSO". Regułki działają jak je uruchamiam z konsoli, a te same ze skryptu nie. Ja mam 2 skrypty: jeden blokuje, drugi udostępnia Internet dla grupy userów z sieci LAN. Używam ich kilka razy dziennie, więc nie mogę regułek które w nich są wpisywać "w system na sztywno" - bo chyba tak sugerujesz. MOże Twoja podpowiedź co do poziomów jest dobra, ale ja nie znam się na tym za bardzo i jakbyś mógł podpowiedzieć ?....to ja poprosze. Skrypty uruchamiam jako root z katalogu /root - na Aurox 9.2 szło bez problemu, ale przesiadam się na Fedorę bo jest lepsza. Łańcuchy są typowe: INPUT, OUTPUT Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Listopad 25, 2008 Zgłoszenie Share Napisano Listopad 25, 2008 Co do poziomow uruchamiania usług - man chkconfig. Jest też jakieś narzędzie graficzne chyba, ale nie korzystam. Jeśli regułki wpisywane z ręki działają, tzn. że usługa iptables też działa i nie ma chyba co sprawdzać. zostawiłem tylko: IPTABLES=/sbin/iptables $IPTABLES -F Dostałem komunikat: iptables: No chain/target/match by that name Musisz mieć coś w systemie rozwalone, bo flush powinien pójść. Sprawdziłbym dokładnie czy nie ma jakiejś literówki. Czy na polecenie iptables -L też wypisuje takie rzeczy? [EDIT]Zapomniałem napisać, że w pierwszym poście pokręciły mi się łańcuchy z targetami Nie chodzilo mi o INPUT, OUTPUT tylko raczej o to co wystepuje po opcji -j Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaktus250 Napisano Listopad 25, 2008 Autor Zgłoszenie Share Napisano Listopad 25, 2008 Co do poziomow uruchamiania usług - man chkconfig. Jest też jakieś narzędzie graficzne chyba, ale nie korzystam. Jeśli regułki wpisywane z ręki działają, tzn. że usługa iptables też działa i nie ma chyba co sprawdzać. Musisz mieć coś w systemie rozwalone, bo flush powinien pójść. Sprawdziłbym dokładnie czy nie ma jakiejś literówki. Czy na polecenie iptables -L też wypisuje takie rzeczy? [EDIT]Zapomniałem napisać, że w pierwszym poście pokręciły mi się łańcuchy z targetami Nie chodzilo mi o INPUT, OUTPUT tylko raczej o to co wystepuje po opcji -j Może ja napiszę. Zrobiłem teraz dla cwiczeń 2 skrypty. cwicz1.sh (755 root root) o treści: #usunięcie reguł filtra iptables -F # zablokowanie wszystkiego iptables -P INPUT DROP # przepuszczam wszysto co idzie z sieci LAN iptables -A INPUT -i ! ppp0 -j ACCEPT # przepuszczam polaczenia juz zestawione iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT i tu po uruchomieniu z konsoli /root/cwicz1.sh mam monit: iptables: No chain/target/match by that name iptables: Bad policy name 'iptables v.1.3.8: Invalid terget name ' ACCEPT Try 'iptables -h' or 'iptables --help' for more information 'iptables v.1.3.8: Invalid terget name ' ACCEPT Try 'iptables -h' or 'iptables --help' for more information drugi skrypt o nazwie cwicz.sh (755 root root) i treści: # odrzucam pakiety od kompa o IP 192.168.10.101** iptables -I INPUT -s 192.168.10.0/24 -m mac --mac-source 00:13:D3:B0:82:CE -j DROP i tu po uruchomieniu z konsoli /root/cwicz1.sh mam monit: iptables v.1.3.8: Invalid terget name ' ACCEPT Try 'iptables -h' or 'iptables --help' for more information Wszystkie komendy które mam w skrypcie działają jak je uruchamiam z konsoli. I jeszcze to o co pytałeś.......zrobiłem trzeci skrypt o nazwie cwicz2.sh o treści: iptables -L i tu po uruchomieniu z konsoli /root/cwicz2.sh mam monit inny: Chain INPUT (policy DROP) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination ------------------------------------------------------ Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Listopad 25, 2008 Zgłoszenie Share Napisano Listopad 25, 2008 iptables: No chain/target/match by that name iptables: Bad policy name 'iptables v.1.3.8: Invalid terget name ' ACCEPT Przepisywałeś czy kopiowałeś? Naprawdę masz napisane "Invalid terget name" a nie "target"? Jeśli to nie jest jakaś literówka z iptables v.1.3.8 albo Twoja ręczna pisanina, to zacząłbym się zastanawiać kto mi podmienił pakiet. Dość ważny pakiet Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaktus250 Napisano Listopad 25, 2008 Autor Zgłoszenie Share Napisano Listopad 25, 2008 Przepisywałeś czy kopiowałeś? Naprawdę masz napisane "Invalid terget name" a nie "target"? Jeśli to nie jest jakaś literówka z iptables v.1.3.8 albo Twoja ręczna pisanina, to zacząłbym się zastanawiać kto mi podmienił pakiet. Dość ważny pakiet Komunikaty konsoli pisałem ręcznie i zawartość skryptów kopiowałem. Te skrypty działają mi w tej chwili na Aurox 9.2. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Listopad 25, 2008 Zgłoszenie Share Napisano Listopad 25, 2008 Jeśli tak, to jeszcze sprawdziłbym końce linii za słowem "ACCEPT" - może masz końcówki linii DOSowe (0x0D 0x0A) zamiast linuksowych (0x0A). Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaktus250 Napisano Listopad 26, 2008 Autor Zgłoszenie Share Napisano Listopad 26, 2008 Jeśli tak, to jeszcze sprawdziłbym końce linii za słowem "ACCEPT" - może masz końcówki linii DOSowe (0x0D 0x0A) zamiast linuksowych (0x0A). To rozwiązało sprawę. Ja te pliki kopiowałem z Auroxa za pomocą Winscp na Pendrive'a, a potem pendrive'a montowałem na Fedorze i takie końce lini się zrobiły (a nie wiedziałem że to ma znaczenie). Teraz te pliki- skrypty kopiowałem z Auroxa na pendrive'a i z pendrive'a na Fedorę za pomocą Winscp i znaczniki niewłaściwe nie powstały. Dziękuję bardzo sprawa zamknięta Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się