FHEM-Hacker mit fail2ban blocken

Begonnen von JensS, 18 Februar 2018, 14:41:05

Vorheriges Thema - Nächstes Thema

Tom111

Zitat von: CoolTux am 18 Februar 2018, 20:46:39
Nimm mal den Unsinn hier raus

%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp]


HA,... jetzt scheint es zu funktionieren. Dann werde ich jetzt mal weiter tüfteln,... danke für deine Hilfe!  :D
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

CoolTux

#16
Weil er nur das UDP Protokoll für die IP und den Port 8083 blockt. FHEM aber über das TCP Protokoll an kommt, HTTP/S halt.

Meinst Du nicht das wenn Du sowas verwenden möchtest Du Dich auch damit erstmal auseinander setzen musst? Was machst Du wenn Du Dich komplett ausgesperrt hast, oder einzelne Ports nicht mehr klappen von Deinen Clients aus. Da kuckst wie ein Schwein ins Uhrwerk und schreist hier im Forum bestimmt rum was das wieder für ein Mist ist.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Tom111

Zitat von: CoolTux am 18 Februar 2018, 21:02:33
Weil er nur das UDP Protokoll für die IP und den Port 8083 blockt. FHEM aber über das TXP Protokoll an kommt, HTTP/S halt.

Meinst Du nicht das wenn Du sowas verwenden möchtest Du Dich auch damit erstmal auseinander setzen musst? Was machst Du wenn Du Dich komplett ausgesperrt hast, oder einzelne Ports nicht mehr klappen von Deinen Clients aus. Da kuckst wie ein Schwein ins Uhrwerk und schreist hier im Forum bestimmt rum was das wieder für ein Mist ist.

Ich setz mich ja gerade damit auseinander ..... und übrigens:
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = 127.0.0.1/8 192.168.xxx.xxx 192.168.xxx.xxx


FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

CoolTux

Zitat von: Tom111 am 18 Februar 2018, 21:07:44
Ich setz mich ja gerade damit auseinander ..... und übrigens:
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = 127.0.0.1/8 192.168.xxx.xxx 192.168.xxx.xxx


Na dann

http://dozent.maruweb.de/material/tcpip.shtml


Wenn Du das durch hast sollten ja alle Fragen geklärt sein.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

JensS

@CoolTux
Die UDP-Regel ist wirklich nicht notwendig, sollte aber den Aufruf der TCP-Regel nicht beeinflussen.

Im übrigen begrüße ich weiterhin deine sachlichen Kommentare.

@Tom111
Hast du eventuell einen Tippfehler in der TCP-Definition?

Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

CoolTux

Zitat von: dirigent am 18 Februar 2018, 21:13:39
@CoolTux
Die UDP-Regel ist wirklich nicht notwendig, sollte aber den Aufruf der TCP-Regel nicht beeinflussen.

Im übrigen begrüße ich weiterhin deine sachlichen Kommentare.

@Tom111
Hast du eventuell einen Tippfehler in der TCP-Definition?

Gruß Jens


%(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp]
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp]

(banaction) scheint eine Art Variable zu sein und wenn man eine weitere Zuweisung macht so wird die erste überschieben. Daher gilt die UDP Regel wenn er zu schlägt. Da die TCP Regel von der UDP Regel überschrieben wird.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Tom111

Zitat von: dirigent am 18 Februar 2018, 21:13:39
@Tom111
Hast du eventuell einen Tippfehler in der TCP-Definition?

Gruß Jens

Ich habe das genauso von dir übernommen wie du es im ersten Post geschrieben hast:
[fhem]
enabled  = true
port     = 8083
action   = %(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%(banaction)s-tcp]
           %(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp]
           %(mta)s-whois[name=%(__name__)s, dest="%(destemail)s"]
filter   = fhem
logpath  = /opt/fhem/log/fhem-20*
maxretry = 10
bantime = 86400


Oder meinst du was anderes?  ???
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

JensS

#22
Eventuell gibt es ein Problem mit dem Multiport auf TCP.
Füge mal unter "port = 8083" eine Zeile mit "banaction = iptables" ein.

@CoolTux
banaction ist in der Tat eine Variable und bezeichnet den Namen des Actionscripts in /etc/fail2ban/action.d/.
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

CoolTux

Für FHEMWEB ist UDP nicht nötig. Mal ab davon das es anscheinend trotz der zusätzlichen Regel funktionieren sollte so wie es sich an hört.
Testen kann also nicht schaden.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Tom111

Zitat von: dirigent am 18 Februar 2018, 21:38:23
Eventuell gibt es ein Problem mit dem Multiport auf TCP.
Füge mal unter "port = 8083" eine Zeile mit "banaction = iptables" ein.

Habe ich gemacht und auch wieder ...
%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp]
eingefügt.

Nach einem Restart passiert dann wieder nichts, d.h. IP-Adressen werden wieder nicht gebannt.
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Tom111

Zitat von: CoolTux am 18 Februar 2018, 21:55:27
was sagt

iptables -vnL

pi@RasPi2 ~ $ sudo iptables -vnL
Chain INPUT (policy ACCEPT 3799 packets, 450K bytes)
pkts bytes target     prot opt in     out     source               destination
2965  385K fail2ban-ip-blacklist  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0   
  170 21010 fail2ban-fhem-tcp  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 8083
1021  117K fail2ban-ssh  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 3251 packets, 418K bytes)
pkts bytes target     prot opt in     out     source               destination

Chain fail2ban-fhem-tcp (1 references)
pkts bytes target     prot opt in     out     source               destination
   14   704 DROP       all  --  *      *       81.169.xxx.xxx       0.0.0.0/0
  156 20306 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0

Chain fail2ban-ip-blacklist (1 references)
pkts bytes target     prot opt in     out     source               destination
2965  385K RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0

Chain fail2ban-ssh (1 references)
pkts bytes target     prot opt in     out     source               destination
1021  117K RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

JensS

Zitat von: Tom111 am 18 Februar 2018, 21:07:44
Ich setz mich ja gerade damit auseinander ..... und übrigens:
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = 127.0.0.1/8 192.168.xxx.xxx 192.168.xxx.xxx


ignoreip = 127.0.0.1/8 192.168.1.2/32 192.168.1.3/32

oder

ignoreip = 127.0.0.1/8 192.168.1.0/24

Auf jeden Fall muss die Netzmaske (/24 - kompltettes Netzwerk, /32 - einzelner PC) mit angegeben werden.

Gruß Jens

PS: Heute ist für mich Feierabend.
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

Tom111

Zitat von: dirigent am 18 Februar 2018, 22:02:06
Auf jeden Fall muss die Netzmaske (/24 - kompltettes Netzwerk, /32 - einzelner PC) mit angegeben werden.
Danke, werde ich ändern, gute Nacht, ich geh auch gleich schlafen. :)
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

CoolTux

Das blocking sollte eigentlich nun gehen. Blockt er immer noch nicht?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net