Script führt sich nicht aus

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Script führt sich nicht aus

Beitrag von MSfree » 16.02.2018 11:18:56

ren22 hat geschrieben: ↑ zum Beitrag ↑
16.02.2018 11:06:19
schreib einfach alle deine IPTables Regeln nacheinander auf der Kommandozeilde, danach einfach

Code: Alles auswählen

sudo iptables-save
was dann die entsprechenden Dateien unter /etc/iptables erzeugt.
Das würde mich sehr wundern, wenn es das täte. Laut man iptables-save und auch meiner eigenen Erfahrung macht iptables-save:
iptables-save and ip6tables-save are used to dump the contents of IP or IPv6 Table in easlly parseable format to STDOUT.
Da wird gar nichts unter /etc/iptables erzeugt. Das muß man schon selbst auf der Kommandozeile erzwingen:

Code: Alles auswählen

iptables-save > /etc/iptables/firewall.rules
Auch werden diese Regeln nicht beim Reboot wie von Geisterhand gelesen, dazu muß man dann schon

Code: Alles auswählen

iptables-restore < /etc/iptables/firewall.rules
aufrufen oder einen entsprechende systemd.service dafür schreiben.

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 11:21:51

Jetzt ist die frage, muss ich das dann bei beiden Interfaces machen ? ich will ja dass die beiden Schnittstellen miteinander kommunizieren.
nunja...der routing Experte bin ich nun auch nicht aber du müsstest schon dem jeweiligen interface sagen welchen gateway er benutzen soll. ist so als wenn Du zwei Personen hast und nur einer sagst gehe diesen weg, dann weiss die andere Person ja nicht welchen weg sie gehen soll ... also müsstest du auch der anderen person sagen welchen weg sie gehen soll = Person ist hier dann die Netzwerkkarte

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 11:41:05

@MSFRee

stimmt du hast recht... ich sagte ja, lange her das ich das gemacht hatte ... :facepalm:
ich habe nochmal geschaut und unter /etc/systemd/system/ liegt eine Datei names iptabes.service
mit folgenden Inhalt:

Code: Alles auswählen

[Unit]
Description=Packet Filtering Framework
DefaultDependencies=no
After=systemd-sysctl.service
Before=sysinit.target
[Service]
Type=oneshot
ExecStart=/sbin/iptables-restore /etc/iptables/iptables.rules
ExecReload=/sbin/iptables-restore /etc/iptables/iptables.rules
ExecStop=/etc/iptables/flush-iptables.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
und unter /etc/iptables/flush-iptables.sh
cat /etc/iptables/flush-iptables.sh

Code: Alles auswählen

#!/bin/sh
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
nicht vergessen das flush-iptables.sh ausführbar zu machen ... sudo chmod +x flush-iptables.sh

ok bedeutet das nils96 die Regeln per Hand auf der Kommandozeile festlegt und diese wie MSFree geschrieben hat nach
/etc/iptabes/iptables.rules schreibt...

Code: Alles auswählen

sudo iptables-save > /etc/iptables/firewall.rules

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 11:59:36

Hier beschreibt er ja wie es geht...
Nur bei dem Schritt "Konfiguration der neuen Routingtable" hat er eine IP mit 10.10.0.1 ist das ein Schreibfehler oder er meint die 10.10.0.10??? ich sehe sonst niegendwo die 10.10.0.1 Adresse.
auf der Seite steht:
Ausgangslage
Wir gehen davon aus, dass wir 2 Interfaces haben, eth0 und eth1. Die beiden Netze, die verwendet werden sollen sind 192.168.0.0/24 und 10.10.0.0/24, jeweils die .1 soll das Gateway des jeweiligen Netzes sein

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 12:11:06

Sind Regeln dann das gleiche wie Routen ? denn ich muss ja Routen hinzufügen:
Wenn ich folgende kerneltabelle verwenden würde es ja funktionieren:
ip route add default via 40.4.200.254 dev enp0s25
ip route add 40.4.200.0/24 via 40.4.200.252 dev enp0s25
ip route add 10.5.200.0/24 via 10.5.200.254 dev enp16s0

aber damit würde ich ja nur sagen wenn 10.5.200.14 auf 40.4.200.218 will gehe über 40.4.200.252.Das es von 10.5.200.544 auf 40.4.200.252 geleitet wird muss ich ja auch noch sagen

oder muss ich noch irgendwas mit "ip rule add" machen?

@ren22 danke, tut mir leid. das ist dann ja schlecht weil bei meinem enp16s0 ja die adresse gleichzeitig das gateway ist.
oder müsste ich das dann so machen ?

Code: Alles auswählen

ip route add 10.5.200.0/24 dev enp0s25 table rt2
ip route add default via 10.5.200.254 dev enp0s25 table rt2
damit will ich ja sagen das Interface 10.5.200.254 über schnittstelle enp0s25 erreichbar ist

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 14:07:56

Vielleicht mal bei Netzwerk posten?

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 14:27:38

ein Router hat auch eine IP-Adresse was dann auch der Gateway wäre
der soll ja die Pakete durchlassen bzw. weiterreichen.

router-0 hat die IP 40.4.200.252 /gateway-0 (standard-gw: 40.4.200.254)
router-1 hat die IP 40.4.200.254 /gateway-1 (standard-gw: 40.4.200.252)

angenommen:
Server-PT hat die IP 40.4.200.10 (hier wäre der standard-gateway: 40.4.200.254)
PC-0 hat die IP 10.5.200.10 (hier wäre der standard-gateway: 10.5.200.1)
PC-1 hat die IP 10.5.200.20 (hier wäre der standard-gateway: 10.5.200.1)

dann müstest du PC-0 und PC-1 klar machen das der Gateway 10.5.200.1 ist für die beiden PC-0/1(standard-gateway)
Router-0 braucht dann einen Gateway 10.5.200.1 und einen zweiten Gateway 40.4.200.254 (standard-gateway)

sollte eigentlich so funktionieren, wenn ich jetzt keinen Denkfehler mal wieder haben sollte ...
Ich habe mir das so mit den GW's gemerk, dass es immer der nächste PC am anderen Ende ist.

Beispiel:
PC1---PC2---PC3 (jeder PC ist in einem anderem SUBnetz)
wenn PC1 mit PC3 reden will, muss er zu PC2 ansprechen und diesem mitteilen, sagmal PC3 das der Kaffee fertig ist, dann bekommt PC3 von PC2 eine Nachricht, "hallo PC3, "PC1 sagt der Kaffe ist fertig". Direkt 1 mit 3 kann so in der Konstellation nicht mit einander Kommunizieren.
Zuletzt geändert von ren22 am 16.02.2018 14:43:40, insgesamt 4-mal geändert.

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 14:32:15

meinst du 10.5.200.254 anstatt 10.5.200.254?

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 14:38:24

Nils96 hat geschrieben: ↑ zum Beitrag ↑
16.02.2018 14:32:15
meinst du 10.5.200.254 anstatt 10.5.200.254?
woot ?

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 14:45:00

meinst du 10.5.200.254 anstatt 10.5.200.1 so :D
Zuletzt geändert von Nils96 am 16.02.2018 14:49:03, insgesamt 1-mal geändert.

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 14:48:04

das ist die interfaces conf

Code: Alles auswählen

# The loopback network interface
auto lo
iface lo inet loopback
#test
#WAN
allow-hotplug enp0s25
iface enp0s25 inet static
        address 40.4.200.252
        netmask 255.255.255.0
        gateway 40.4.200.254

#LAN
allow-hotplug enp16s0
iface enp16s0 inet static
        address 10.5.200.254
        netmask 255.255.255.0
        post-up ip route change default via 40.4.200.254 dev enp0s25
        post-up ip route change 40.4.200.0/24 via 40.4.200.252 dev enp0s25
        post-up ip route change 10.5.200.0/24 via 10.5.200.254 dev enp16s0

ren22

Re: Script führt sich nicht aus

Beitrag von ren22 » 16.02.2018 14:58:15

"https://imgur.com/a/2gh6w"

bin mir jetzt aber nicht ganz sicher ob nicht router0 auch eine zweite IP (LAN Netzwerkkarte)braucht die dann wäre: 10.5.200.1 .. das müsstest du mal selber ausprobieren .. wie gesagt ich bin kein routing profi ...
Zuletzt geändert von ren22 am 16.02.2018 15:02:25, insgesamt 4-mal geändert.

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 14:59:06

dhcp.conf subnetteil

Code: Alles auswählen

subnet 10.5.200.0 netmask 255.255.255.0 {
        option domain-name-servers 10.5.200.254;
        option broadcast-address 10.5.200.255;
        option subnet-mask 255.255.255.0;
        option routers 10.5.200.254;
        range 10.5.200.100 10.5.200.200;

host ubuntu { hardware ethernet 08:00:07:26:c0:a5; fixed-address 10.5.200.10; }
}

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 15:01:47

der Router im anderen Netzwerk kann ich nichts verändern.
Wüsste jetzt auch nicht wie man 2 gateways einrichten kann.
ich mache mal ein Post bei Netzwerk aber vielen Dank für die Hilfe ren22 und MSfree

Nils96
Beiträge: 49
Registriert: 14.02.2018 12:46:36

Re: Script führt sich nicht aus

Beitrag von Nils96 » 16.02.2018 15:27:37

viewtopic.php?f=30&t=168713
hier weitergeführt

Antworten