PDA

View Full Version : Blocken eine IP mit CL Programm



posthenn
31-10-18, 08:03
Hallo Zusammen

ich bin auf der Suche nach einer Möglichkeit eine bestimmt IP Adresse zur Blockieren.
Dies sollt mit einem CL Programm möglich sein.

Ich möchte zum Beispiel um 20 Uhr diese IP Blockieren und um 22 Uhr die Blockierung wieder entfernen . Gibt es so eine Möglichkeit ?

Konkret geht es um ein Server , der mit JDBC auf unsere Datenbank zugreift "QZDASOINIT"
dieser Blockiert einige Dateien , was dann das eigendliche Problem ist .

Oder gibt es eine bessere Möglichkeit(ausser den Server zu beenden) dies zu verhindern

OS=7.1

Vielen Dank

Fuerchau
31-10-18, 08:27
Du kannst einen IP-Paket-Filter einrichten, dazu gibt es auch passende CMD's.
Du kannst ebenso dich in die Schnittstellen (WRKREGINF) für SQL reinhängen und per Uhrzeit dann Zugriffe sperren.
Einfacher jedoch wäre es, die Java-Anwendung in dieser Zeit nicht auszuführen, denn der PC dürfte ja wohl bekannt sein.

posthenn
31-10-18, 09:05
Hallo

also mit WRKREGINF werde ich mich nicht befassen , da bin ich nicht fit genug .. ;)

Aber IP Paket Filter finde ich interessant .. hab auch schon gegoogled , aber keine passenden CMD's gefunden.

Find immer nur Doku für Navigator for i und Operations Navigator.

Könntest Du mir die CMD's nennen ?

Vielen Dank

Fuerchau
31-10-18, 09:48
Da musst du dich mal selber durchhangeln:
https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/rzajb/rzajbrzajb0ippacketsecuritysd.htm

(https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/rzajb/rzajbrzajb0ippacketsecuritysd.htm)Aber du scheinst recht zu haben, dass es keine Kommandos gibt sondern eine Konfig-Datei, die in den Tiefen des IFS versteckt ist.

BenderD
31-10-18, 10:47
ENDHOSTSVR *DATABASE

D*B

Fuerchau
31-10-18, 11:25
@Dieter:
"gibt es eine bessere Möglichkeit(ausser den Server zu beenden)..."

BenderD
31-10-18, 11:31
Konkret geht es um ein Server , der mit JDBC auf unsere Datenbank zugreift "QZDASOINIT"
dieser Blockiert einige Dateien , was dann das eigendliche Problem ist .

Oder gibt es eine bessere Möglichkeit(ausser den Server zu beenden) dies zu verhindern

OS=7.1

Vielen Dank

@Baldur: fragt sich welcher "Server" gemeint ist? Der Server, oder der Server vom Server? Der Database Server oder der Client vom Database Server?

Dieter

Fuerchau
31-10-18, 14:17
@Dieter: Ob der Frager sich diese Gedanken dazu gemacht hat?

hel400
31-10-18, 14:43
Versuchen wir's mal von der anderen Richtung.

@posthenn
Du schreibst
Konkret geht es um ein Server , der mit JDBC auf unsere Datenbank zugreift "QZDASOINIT"
dieser Blockiert einige Dateien , was dann das eigendliche Problem ist .

Was genau ist mit "blockiert einige Dateien" gemeint?
Ist das ein Problem zB für die Sicherung?
Da gäbe es ja noch andere Möglichkeiten etc..

andreaspr@aon.at
02-11-18, 07:56
Hallo,

das geht am einfachsten indem du die JDBC Zugriffe von dieser IP auf ein eigenes Subsystem umleitest.
1. Subsystem erstellen


CRTSBSD SBSD(PROUZALIB/JDBCJOBS) POOLS((1 *BASE)) TEXT('eXite JDBC Jobs')
CRTDUPOBJ OBJ(QPWFSERVER) FROMLIB(QSYS) OBJTYPE(*CLS) TOLIB(PROUZALIB) NEWOBJ(JDBCCLS)
CHGCLS CLS(PROUZALIB/JDBCCLS) RUNPTY(29)
ADDRTGE SBSD(PROUZALIB/JDBCJOBS) SEQNBR(1) CMPVAL(*ANY) PGM(QCMD) CLS(PROUZALIB/JDBCCLS) POOLID(1)
ADDPJE SBSD(PROUZALIB/JDBCJOBS) PGM(QZDASOINIT) INLJOBS(20) THRESHOLD(20) ADLJOBS(5) CLS(PROUZALIB/JDBCCLS)

2. Alle eingehenden Requests von einer bestimmten IP (oder IP Range) auf dieses Subsystem umleiten.
IBM Navigator for i: Network --> Server --> System i Access --> Database properties
Hier kannst du dann einstellen, dass wenn das Subsystem nicht gestartet ist, die Verbindungen zurückgewiesen werden sollen.

Ab jetzt, werden Verbindungen von dieser IP nur dann erlaubt, wenn Subsystem gestartet ist.
Das ganze kannst du dann simple via CMD (STRSBS und ENDSBS) kontrollieren.

lg Andreas