Anzeige:
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 16 bis 30 von 35

Thema: kleines Problem

  1. #16
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Falls du

    noch keine Loesung gefunden hast, schau mal ins "Scriptsprachen FAQ"
    Muss mich leider Entschuldigen, bin nicht der "Super" Shell Scripter,
    deshalb hab ich mal ein kleines Perl-Script zusammen gebastelt.
    Bei mir *funct* es.

    T;o)Mes

    P.S.: ein kleines Perl Beispiel, wird noch verschoben
    Geändert von tomes (07-01-2003 um 21:40 Uhr)
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  2. #17
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    na und ich erst ;-)
    Verstanden vom Prinzip her hab ich dein Script aber es scheitert an Syntaxfehlern, die ich nicht weg kriege deshal bin sehr gespannt auf die Lösung in Perl.

    Viele Grüße
    Frank

  3. #18
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    ;-)

    Ich weiss leider auch nicht wie die IP im Shell-Script zu schuetzen ist, deshalb lieber Perl.
    Solange es noch nicht verschoben ist, hier der Link --> http://www.mrunix.de/forums/showthre...threadid=30864

    T;o)Mes
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  4. #19
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    Also ich hab perl 5.8.0 und die benötigten Module ganz sicher drauf. Dennoch krieg ich wieder Fehlermeldungen. Ich hab nur das geändert:

    $path = "/tmp";
    $host = "gnu.org";
    $firewall = "/root/firewall.sh";

    und es kommt beim ersten UND exact auch nach zig wiederholten Aufrufen:

    # ./test
    neue Hilfsfile wird angelegt
    IP ist die selbe
    mv: Aufruf von stat für »/tmp/firewall« nicht möglich: Datei oder Verzeichnis nicht gefunden
    /root/firewall.sh: -t: command not found
    /root/firewall.sh: -t: command not found
    /root/firewall.sh: -t: command not found
    /root/firewall.sh: -t: command not found
    /root/firewall.sh: -t: command not found

    Das hilfsfile legt er aber prima mit der IP an.
    ich weis das die Fehlermeldung nicht von dem script kommt, es ist absicht von mir. Sagen tut mir das eigentlich das er trotz derselben IP das firewall.sh ausführen möchte

    und wenn ich mal weiter teste ob er merkt das die Ip sich geändert hat (hierfür ändere ich einfach den host nach kernel.org) und ob er dann das Script startet kommt _haargenau_ der selbe Output wie weiter oben.

    Ich hoffe der Bugreport war ausführlich


    Viele Grüße
    Frank

  5. #20
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Schon geandert ;-)

    Die beiden letzten Zeilen --> mv ... und sh ... muessen natuerlich noch in den else Teil der Abfrage.
    Hoffe mal das es das war.

    T;o)Mes
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  6. #21
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    ein "updated" Script wäre noch idealer
    weil ich als Laie würde mich da schwer tuen

    Viele Grüße
    Frank

  7. #22
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    Ich habe eben grad die letzte Version http://www.mrunix.de/forums/showthre...threadid=30232 ausprobiert. Vielen Dank dafür. Leider geht garnix.
    Ich ruf es auf und es kommt jetzt

    ./test
    neue Hilfsfile wird angelegt
    IP ist die selbe

    ich ruf es direkt nochmal auf und es kommt

    ./test
    neue Hilfsfile wird angelegt
    IP ist die selbe

    dann ändre ich den host im Script um zu schauen ob er eine Änderung der IP registriert und es kommt

    ./test
    neue Hilfsfile wird angelegt
    IP ist die selbe


    sprich, er legt jedesmal ein neues Hilfsfile an obwohl es schon eines gibt und er registriert keine Änderung der IP und führt die richtige Action dementsprechen aus.

    Ich hoffe ich kann mit meinem Bugreport zur Fehlerbereinigung beitragen.


    Viele Grüße
    Frank

  8. #23
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Habe noch eine kleine Aenderung

    vorgenommen
    Also bei mir *funct* es wunderbar.

    T;o)Mes
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  9. #24
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    >Also bei mir *funct* es wunderbar.

    das glaube ich dir nicht
    denn:

    line 53 fehlt ein $ vor kernelip
    und line 69 ein i vor dem f

    und ansonsten legt er immer noch jedesmal eine hilffile and egal was ist und bei geänderter IP meint er immer noch "IP ist die selbe"


    Vieleicht würde es helfen wenn du noch postest wie deine frewall.sh aussieht. Und um den Testfall zu simulieren DAS sich die IP geändert hat, ändere ich einfach den HOST und führe das Script erneut aus.


    Viele Grüße
    Frank

  10. #25
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Mit i

    da hast du wohl recht, ist wohl beim STRG-C STRG-V passiert
    Tschuldigung
    In Shell-Scripten, was das Firewall Sript ja ist, wird eine Variable ohne vorangestelltes $ inizialisiert, bzw. gefuellt.
    Deshalb, kein $ Zeichen vor Kernelip.

    In meinem Firewall Script gibt es soetwas in der Art garn nicht, deshalb wuerde es dir nichts nuetzen
    Ich habe einfach eine File angelegt, die so heist und wo die Kernelip getauscht wird.

    T;o)Mes
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  11. #26
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    Das Problem ist nur:

    root]# ./test
    Unrecognized escape \K passed through at ./test line 53.
    neue Hilfsfile wird angelegt

    mit $ ist die Fehlermeldung jedenfalls wech

    und andererseits, erkennt das Script immer noch nicht wenn sich die IP geändert hat.
    Es sagt _JEDESMAL_

    neue Hilfsfile wird angelegt
    IP ist die selbe


    Viele Grüße
    Frank

  12. #27
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Hm der Backslash

    ist noch uebrig geblieben, da ich erst auch $Kernelip geschrieben hatte.
    Mit dem Backslash schuetz man Metazeichen.
    Ich haeng dir mal mein fertiges Script mit der Konsolen-Ausgabe hier an.
    Die Zeilen 38 (print neue - alte .....) und Zeile 63 (system("more.... ) kannst du loeschen,
    sie dienen nur der Ueberprufung.
    Mein "firewall-Script" sieht so aus -->
    /bin/sh
    #
    Kernelip="62.180.126.148"

    iptabls -A input -d $Kernelip -j deny
    exit

    T;o)Mes

    P.S.: Irgendwie hat das mit dem anhaengen nicht *gefunct*
    Hier die Download-Adresse --> http://www.sandtom.net/pub/host.tar.gz
    Geändert von tomes (12-01-2003 um 15:01 Uhr)
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  13. #28
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    Hallo,

    Ich hab die 2 Zeilen mal drin gelassen, weil sie doch sehr aufschlussreich sind denn:

    ER legt jedesmal egal was ist -> ein neues Hilfsfile an
    und jetzt läuft es genau umgekehrt, denn diesmal führt er das firewall Sript aus egal ob sich die IP geändert hat oder nicht. Also quasi genau umgekehrt zu vorher.

    Aufrufen tue ich das script mit ./host.pl kernel.org

    bei ./host.pl kernel.org kommt :

    ./host.pl kernel.org
    neue Hilfsfile wird angelegt
    neue - alte 204.152.189.116 204.152.189.116
    IP ist die selbe
    /bin/sh
    #
    Kernelip="217.225.203.xxx"
    Action des Scripts
    exit



    und direkt dannach mit ./host.pl gnu.org


    ./host.pl gnu.org
    neue Hilfsfile wird angelegt
    neue - alte 199.232.76.164 199.232.76.164
    IP ist die selbe
    /bin/sh
    #
    Kernelip="217.225.203.xxx"
    Action des Scripts
    exit



    die IP 217.225.203.xxx ist die, die Ich zu allererst ausprobiert hatte.


    Meinst du wir kriegen das noch hin ?



    Viele Grüße
    Frank

  14. #29
    Registrierter Benutzer
    Registriert seit
    29.12.2001
    Ort
    Berlin
    Beiträge
    231

    Also ausfgeuehrt

    wird das Script nicht
    system("more f$firewall"); <-- gibt nur den Inhalt des Scripts wieder.

    Warum sich die IP nicht aendert ? Kein Ahnung, bei mir macht er es.
    Wie sind die Rechte an deinem $firewall ? Darf der jenige der das Script auffuerhrt, darin schreiben ?

    T;o)Mes
    ************************************************
    Man(n oder Frau) muss nicht alles wissen,
    Man(n oder Frau) muss nur wissen wo es steht !
    ************************************************
    http://www.sandtom.net
    ICQ 176436259

  15. #30
    Registrierter Benutzer
    Registriert seit
    11.10.2002
    Beiträge
    32
    Hallo tomes

    ich führe es als root mit den perms root:root 700 ./host.pl so aus
    die perms des firewall.sh sehen so aus: 700 root:root
    sollte also wirklich nicht an den Rechten liegen ...

    >Warum sich die IP nicht aendert ?

    Moment, die änderst sich ja. Denn wenn ich das Script mit dem anderen Host ausführe als Parameter im Script oder per Commandline, ist SIE ja anders ( das Hilfsfile bestätigt dies auch durch die actuallisierte neue IP), aber dein Script führt dementsprechend nicht die Action aus die im Script steht.

    Vor deiner Änderung meinte er immer ein neues Hilfsfile anlegen zu müssen (der Check funktioniert also auch nicht) UND tat so als ob sich die IP _nicht_ geändert hat.

    Nun nach deiner Änderung, führt er das firewall Script IMMER aus obwohl sich die IP _NICHT_ geändert hat. Und das Hilffile legt er nachwievor immer noch JEDSMAL an.

    Irgenwas läuft mächtig schief mit dem Script, schade eigentlich, denn wenn man es so liest klingt es sehr vernünftig

    Viele Grüße
    Frank

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •