Nightwalker Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 (edytowane) Witam Dostosowalem sie do opisu ze strony http://linuxweb.linuxindex.pl/?q=node/view/29 i wszystko dziala ale chce zeby to wszystko uruchamialo sie automatycznie przy starcie systemu (slackware) i dlatego zrobilem skrypt (pierwszy w moim zyciu ;-) ) a wyglada on tak: # Zmiana adresu i maski interfejsu eth1ifconfig eth1 192.168.1.1 netmask 255.255.255.0# Obsluga ip forwardingecho 1 > /proc/sys/net/ipv4/ip_forward# Moduly iptables/sbin/modprobe iptable_filter/sbin/modprobe ip_conntrack/sbin/modprobe iptable_nat/sbin/modprobe ipt_MASQUERADE/sbin/modprobe ipt_REDIRECT/sbin/modprobe ip_nat_ftp/sbin/modprobe ip_nat_irc/sbin/modprobe ip_conntrack_ftp/sbin/modprobe ip_conntrack_irc# Usuwanie istniejacych lancuchowiptables -F -t natiptables -X -t natiptables -F -t filteriptables -X -t filter# Polityka filtrowiptables -t filter -P FORWARD DROPiptables -t filter -P OUTPUT ACCEPTiptables -t filter -P INPUT DROP# Ruchiptables -t filter -A FORWARD -s 192.168.1.0/24 -d 0/0 -j ACCEPTiptables -t filter -A FORWARD -d 192.168.1.0/24 -s 0/0 -j ACCEPTiptables -t filter -A INPUT -j ACCEPT# Wlasciwy NATiptables -t nat -A POSTROUTING -s 192.168.1.2 -d 0/0 -j MASQUERADEi tu moje pytania: - jest on dobrze napisany? - gdzie mam go umiescić - gdzie go mam dopisać żeby działał przy starcie - jak mam go nazwać? Dzięki wielkie :) Edytowane 28 Marca 2005 przez danioX4 Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
sayetan Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 1. skrypt nie jest za dobrze napisany, nie ma tu paru regulek poczytaj tutaj http://lukasz.bromirski.net/docs/translati...linux24-pf.html 2. gdzie chcesz, najlepiej gdzies w /etc/rc.d/ 3. jezeli nazwiez ten skrypt rc.firewall i skopiujesz do /etc/rc.d/ to nic nie bedziesz ,usial wiecej robic Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Nightwalker Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 (edytowane) ale script działa :D ok dzięki za pomoc... mam jeszcze jeden problem chciałem uruchomić serwer dhcp i wyedytowałem plik /etc/dhcpd.conf tak: # sieć 192.168.1.0/255.255.255.0subnet 192.168.50.0 netmask 255.255.255.0 { # domyślnie przydzielamy adresy 192.168.1.100-199: range 192.168.50.2 192.168.50.199; # na jeden dzień default-lease-time 86400; # poinformujmy że hosty będą korzystać z domeny option domain-name "danonek.uk.pl"; # niech używają naszego routera jako serwera DNS: option domain-name-servers 194.204.159.1; option routers 192.168.50.1; # i dodatkowe info: option subnet-mask 255.255.255.0; option broadcast-address 192.168.50.255;} i po wpisaniu dhcpd pokazuje taki błąd: Internet Software Consortium DHCP Server V3.0pl2Copyright 1995-2003 Internet Software Consortium.All rights reserved.For info, please visit http://www.isc.org/products/DHCP** You must add a ddns-update-style statement to /etc/dhcpd.conf. To get the same behaviour as in 3.0b2pl11 and previous versions, add a line that says "ddns-update-style ad-hoc;" Please read the dhcpd.conf manual page for more information. **If you did not get this software from ftp.isc.org, pleaseget the latest from ftp.isc.org and install that beforerequesting help.If you did get this software from ftp.isc.org and have notyet read the README, please read it before requesting help.If you intend to request help from the dhcp-server@isc.orgmailing list, please read the section on the README aboutsubmitting bug reports and requests for help.Please do not under any circumstances send requests forhelp directly to the authors of this software - pleasesend them to the appropriate mailing list as described inthe README file.exiting. co ja mam z tym zrobić? Edytowane 28 Marca 2005 przez danioX4 Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ParanoiK Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 Skrypt jest źle napisany. Pierwszym podstawowym błędem jest brak oznaczenia interpretera na początku - na przykład #!/bin/bash Wypadałoby także na przykład sprawdzić istnienie programów które wykonujesz, ale w tym momencie jest to mniej istotne. Co do obsługi samego interfejsu to konfigurację masz zawartą w /etc/rc.d/rc.inet1 Jeśli chodzi o odpalanie to najlepiej stworzyć plik /etc/rc.d/rc.<cośtam> i odpalać go z rc.local. Co do dhcp to w konfigu dodaj 'ddns-update-style ad-hoc;', zresztą może przeczytaj komunikat który dostałeś. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Nightwalker Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 nie znam sie na pisaniu skryptów... ale skrypt działa bez zażutów, co do dhcpd to sobie poradziłem to samo z rc.local :D. wracając do tego skryptu to jak on powinien wyglądać poprawnie? dzięki :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Nightwalker Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 no dobra dodałem te #! :) wygląda teraz wygląda to tak: # Zmiana adresu i maski interfejsu eth1ifconfig eth1 192.168.50.1 netmask 255.255.255.0# Obsluga ip forwardingecho 1 > /proc/sys/net/ipv4/ip_forward# Moduly iptables#!/sbin/modprobe iptable_filter#!/sbin/modprobe ip_conntrack#!/sbin/modprobe iptable_nat#!/sbin/modprobe ipt_MASQUERADE#!/sbin/modprobe ipt_REDIRECT#!/sbin/modprobe ip_nat_ftp#!/sbin/modprobe ip_nat_irc#!/sbin/modprobe ip_conntrack_ftp#!/sbin/modprobe ip_conntrack_irc# Usuwanie istniejacych lancuchowiptables -F -t natiptables -X -t natiptables -F -t filteriptables -X -t filter# Polityka filtrowiptables -t filter -P FORWARD DROPiptables -t filter -P OUTPUT ACCEPTiptables -t filter -P INPUT DROP# Ruchiptables -t filter -A FORWARD -s 192.168.50.0/24 -d 0/0 -j ACCEPTiptables -t filter -A FORWARD -d 192.168.50.0/24 -s 0/0 -j ACCEPTiptables -t filter -A INPUT -j ACCEPT# Wlasciwy NATiptables -t nat -A POSTROUTING -s 192.168.50.2 -d 0/0 -j MASQUERADE# Uruchamianie DHCPDdhcpd eth1 Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ParanoiK Opublikowano 28 Marca 2005 Zgłoś Opublikowano 28 Marca 2005 Nie tak ;] #!/bin/bash<skrypt> Pierwsza linijka mówi systemowi spod czego ma ten kod wykonać ;] Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
sayetan Opublikowano 29 Marca 2005 Zgłoś Opublikowano 29 Marca 2005 poza tym, jest tutaj jeszcze pare niescislosci: 1. ifconfig.... - to sie konfiguruje w pliku /etc/rc.d/rc.inet1.conf a nie w skrypcie dhcpd tez moglbys uruchamiac innymi skryptami 2. # to znaczek komentarza, wszystko co jest po tym znaku, czyli: /sbin/costam # to jest komentarz# to tez jest komentarz/sbin/costam 3. te iptables w kolko, mozesz zastpaic takim czyms: IPT=`which iptables`$IPT -F -t nat$IPT -X -t nat$IPT -F -t filter$IPT -X -t filter itd... jezeli chcesz miec napisany dobrze skrypt, to poczytaj Advanced Bash Scripting lub jakies kursy po polsku no i troche o filtrowaniu pakietow... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ParanoiK Opublikowano 29 Marca 2005 Zgłoś Opublikowano 29 Marca 2005 poza tym, jest tutaj jeszcze pare niescislosci: 1. ifconfig.... - to sie konfiguruje w pliku /etc/rc.d/rc.inet1.conf a nie w skrypcie dhcpd tez moglbys uruchamiac innymi skryptami W nowych slackach chyba faktycznie. Ja się zatrzymałem na 8.1 ;] 2. # to znaczek komentarza, wszystko co jest po tym znaku, czyli: /sbin/costam # to jest komentarz# to tez jest komentarz/sbin/costam 3. te iptables w kolko, mozesz zastpaic takim czyms: IPT=`which iptables`$IPT -F -t nat[...]itd... A co to zmieni? Uzyska to samo co przy wpisaniu w skrypcie iptables <cośtam> Polecam opis polecenia which DESCRIPTION Which takes one or more arguments. For each of its arguments it prints to stdout the full path of the executables that would have been executed when this argument had been entered at the shell prompt. It does this by searching for an executable or script in the directories listed in the environment variable PATH using the same algo- rithm as bash(1). Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Nightwalker Opublikowano 29 Marca 2005 Zgłoś Opublikowano 29 Marca 2005 może i jest źle napisany ale działa bez problemu, skonfigurowałem całą sieć (squid, adres przypisany do mac itp) i po restarcie działa i nic nie musze wpisywać. Więc nie będe go ruszał puki co :) dzięki za wszelką pomoc ;-) nigdy nie myślałem że udostepnianie internetu na slackware może być takie proste :D Pozdro Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...