Probleme mit Portfilter Skript (sh)

Hallo zusammen,

ich verwende folgenden Codeschnipsel (aus einem Buch) in einem Portfilter Skript (mittels sh):

INT=eth0
EXT=eth1
IF={$INT $EXT}

um dann später mit

foreach if {$IF}
echo „1“ > /proc/sys/net/ipv4/conf/$if/rp_filter
end

z.B. den Spoofing Schutz einzuschalten.

Leider funktioniert das nicht wie gewünscht. Da ich allerdings
(fast) keine Ahnung von Shellskripten habe hoffe ich, dass mir hier jemand helfen kann.
Ausserdem würde ich gerne wissen, wie ich einen Befehl, der zu lange für eine Zeile ist in der nächsten Zeile fortsetzen kann. Geht das mit dem /?

Schonmal vielen Dank und viele Grüsse,
Andreas

Mal zur ausnahme ein Kochrezept

if [-e /proc/sys/net/ipv4/conf/all/rp_filter]; then
echo -n „Setting up IP spoofing protection:“
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $f
done
fi

Versuchs damit. Dann erwischt du wenigstens alle Interfaces und nicht nur die du in deinen Script konfiguriert hast.

Ausserdem würde ich gerne wissen, wie ich einen Befehl, der zu
lange für eine Zeile ist in der nächsten Zeile fortsetzen
kann. Geht das mit dem /?

Mit „“.

Versuchs damit. Dann erwischt du wenigstens alle Interfaces
und nicht nur die du in deinen Script konfiguriert hast.

Vielen Dank für den Tipp, ich würde es aber trotzdem gerne so mit den beiden Variablen machen.
Könntest du da für mich noch ein zweites Mal kochen und sagen, wie ich das anstellen muss?

Viele Grüsse,
Andreas

Hallo Andreas,

ich weiß auch nicht warum ich das jetzt mache und noch nen Rezept braue. Aber ich tue es noch einmal.

Vorab aber erst mal zu deinem ursprungsposting
----snip

INT=eth0
EXT=eth1
IF={$INT $EXT}

um dann später mit

foreach if {$IF}
echo „1“ > /proc/sys/net/ipv4/conf/$if/rp_filter
end

z.B. den Spoofing Schutz einzuschalten

----snap
Für welche Shell soll dieses Script eigentlich sein.

Es ist nicht der BASH Syntax und auch nicht der TCSH Syntax.
Es sieht eher nach einem Misch von beidem aus.

Die Anweisung foreach gibt es zum Beispiel in der Bash nicht und in der Tcsh werde die Variabel AFAIK anders gesetzt.

So nun zu deinem Problem. Ich gibt dir aber nur ein Basis Kochrezept. Die Zutaten mußt du schon selber reinpacken:smile:

#!/bin/bash
INT=eth0
EXT=eth1
IF="$INT $EXT"

for if in $IF; do
 echo "IF=$IF"
 echo "if=$if"
done

Bis dann

Markus

Überlegungen… zu diesem Forum
Hallo Markus,

danke auch für deinen zweiten Tipp, funktioniert jetzt alles tadellos :wink:

Auch wenn ich nicht verstehe, warum sich in diesem Forum viele „Nutzer“ so vehement gegen diese „Kochrezepte“ stemmen.
Ist doch sinnvoller (nach eigener Recherche) eine mehr oder weniger fertige Lösung zu erhalten, als unter Umständen noch weitere Tage an dem Problem zu sitzen, überall rumzufragen und zu lesen, nur um dann unter Umständen doch keine Lösung zu rauszubekommen.

Aber naja, ich frage mich manchmal halt nur was in diesem Forum überhaupt noch gepostet werden soll, wenn einfache Newbiefragen dermaßen harsch und zum Teil schon unfreundlich abgeschmettert werden oder mit blöden Kommentaren belegt werden. Ist mir jetzt schon mehrmals aufgefallen.
Für solche Fragen ist dieses Forum doch gerade da und wenn einigen Leuten die Fragen zu blöd sind brauchen Sie ja nicht drauf zu antworten, oder? Besser auf jeden Fall so als eine nichtssagende Antwort ala „Lies und komm dann gegebenenfalls nochmal hierher“.

Würde mich über andere Meinungen zu diesem Thema freuen.

In diesem Sinne, viele Grüsse,
Andreas

Aber naja, ich frage mich manchmal halt nur was in diesem
Forum überhaupt noch gepostet werden soll, wenn einfache
Newbiefragen dermaßen harsch und zum Teil schon unfreundlich
abgeschmettert werden oder mit blöden Kommentaren belegt
werden. Ist mir jetzt schon mehrmals aufgefallen.
Für solche Fragen ist dieses Forum doch gerade da und wenn
einigen Leuten die Fragen zu blöd sind brauchen Sie ja nicht
drauf zu antworten, oder? Besser auf jeden Fall so als eine
nichtssagende Antwort ala „Lies und komm dann gegebenenfalls
nochmal hierher“.

Die Kriterien für ein „Motzt mich an, ich bin ein williges Opfer“

· FAQ nicht gelesen.

· Keine eigene Gehrinzelle investiert

· Keine Fehler- oder Motivationsbeschreibung

· Keinen Rechercheversuch gemacht.

· Erkennbare Alexie

Wie man auch als Newbie eine einfache Frage beantwortet bekommt (HOWTO)

· Was man will
· Was klappt
· was nicht klappt
· was stattdessen passiert.
· Welche Software eingesetzt wird
· Welcher Teil der Dokumentation unklar blieb.
· [Relevante Hardware?]
· Fehlermeldungen und Logauszüge im Original.
· Was man bisher unternommen hat, um das Problem zu lösen
· …
· Lesbare, verständliche Sprache. Tipppfeler seinen relaubt .

Ja. Eine vernünftige Frage zu schreiben, kann verdammt viel Arbeit sein. Da ist manche Antwort glatt leichter.

Sebastian

Auch wenn ich nicht verstehe, warum sich in diesem Forum viele
„Nutzer“ so vehement gegen diese „Kochrezepte“ stemmen.

weil man dabei nix lernt. und immer wieder auf die hilfe anderer angewiesen sein wird.

joachim

weil man dabei nix lernt. und immer wieder auf die hilfe
anderer angewiesen sein wird.

Gib einem Hiungernden einen Fisch und er ist satt für den Tag. Gib’ ihme eine Angel und er wird Dich ungläubig ansehen, was er mit dem Stock soll…

Sebastian

weil man dabei nix lernt. und immer wieder auf die hilfe
anderer angewiesen sein wird.

Gib einem Hiungernden einen Fisch und er ist satt für den Tag.
Gib’ ihme eine Angel und er wird Dich ungläubig ansehen, was
er mit dem Stock soll…

daher pflege ich den fisch vor den augen des hungernden zu fangen :wink:

joachim

Hallo Markus,

danke auch für deinen zweiten Tipp, funktioniert jetzt alles
tadellos :wink:

Nutze es um zu verstehen, warum es so funktioniert und lerne lerne lerne.

Auch wenn ich nicht verstehe, warum sich in diesem Forum viele

Ich bin auch dagegen, die Gründe dafür haben die anderen schon perfekt dagelegt.

Ich hoffe du wirst die Gründe und Wege die dir genannt worden sind verinnerlichen, auf das du nicht einer von den typischen neuen User wirst.

Bis dann

Markus

weil man dabei nix lernt. und immer wieder auf die hilfe
anderer angewiesen sein wird.

Nein, das bezweifele ich stark. Wie lange soll denn einer herumsitzen und sendmail, imapd, pop3d, dhcpd, named, smbd, sshd, httpd, mysql, firewalling, scripts, php, perl, HTML, XML und sonstwas lernen, und das am besten noch auf Linux und Solaris? Dazu noch Networking, am besten Erfahrung in TCP/IP, IPX und Netbios, vielleicht hier und da noch ein bisschen AppleTalk?

Ich hab dazu 10 Jahre gebraucht, und könnte immer noch den ganzen Tag Fragen stellen. Warum soll ich mein Wissen nicht in Rezeptform zum Nachkochen darstellen? Meiner Erfahrung nach lernen die Leute dadurch am schnellsten.

Ich brauch in diesem Netz keine verdammten Windows-Fuzzis, sondern Cracks, und das beste ist, das ich/wir sie ausbilden. RTFM ist meiner Meinung nach zu wenig - es gehört zwar dazu, aber die meisten Manuals im Netz sind doch wirklich von Idioten geschrieben und völlig unverständlich.

Stefan

weil man dabei nix lernt. und immer wieder auf die hilfe
anderer angewiesen sein wird.

Nein, das bezweifele ich stark. Wie lange soll denn einer
herumsitzen und sendmail, imapd, pop3d, dhcpd, named, smbd,
sshd, httpd, mysql, firewalling, scripts, php, perl, HTML, XML
und sonstwas lernen, und das am besten noch auf Linux und
Solaris? Dazu noch Networking, am besten Erfahrung in TCP/IP,
IPX und Netbios, vielleicht hier und da noch ein bisschen
AppleTalk?

ich gebe zu, dass es seine zeit dauert, solide grundkenntnisse zu erwerben…

Ich hab dazu 10 Jahre gebraucht, und könnte immer noch den
ganzen Tag Fragen stellen. Warum soll ich mein Wissen nicht in
Rezeptform zum Nachkochen darstellen? Meiner Erfahrung nach
lernen die Leute dadurch am schnellsten.

ich glaube immer noch, dass eine vollstaendige loesung auf eine konkrete frage immer dazu verfuehrt, die loesung einfach zu verwenden und gut. damit ist man zwar erstmal geholfen, hat aber
noch nix gelernt. ein verweiss auf die richtige literatur hilft den allermeisten auch und sie haben noch den erfolg, das problem selbst geschafft zu haben…

joachim

aber die meisten Manuals im Netz sind doch wirklich von
Idioten geschrieben und völlig unverständlich.

Geil. Ein Freiwilliger.

Du weisst, wie Open Source läuft?

Se „Contribute nothing - expect nothing“ bastian

Geil. Ein Freiwilliger.

Yep. Sonst hätte ich einen anständigen Beruf :smile:

Du weisst, wie Open Source läuft?

Mann, wie oft ich schon meine Hilfe nur fürs Manual-Schreiben angeboten habe - von Übersetzungen bis zur Erstellung von Hilfe-Files: Keine Antwort bislang.

Ich will ja. Ich darf nicht :wink:

Stefan