Skocz do zawartości
Nightwalker

Udostepnianie - Slackware - Skrypt

Rekomendowane odpowiedzi

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 MASQUERADE
i 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 przez danioX4

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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 przez danioX4

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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ś.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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).

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...