![]() | ![]() |
| FACET Projekte Lehre Service Neuigkeiten Forum Glossar Kontakt | ![]() |
| Übersicht Basissystem Zusatzmodule Produktneuheiten |
Ab Version 5.0.0.17 kann man die Serverkomponenten von InfoCABLE hinter einer Firewall betreiben.
Wenn Sie Ihre Serverkomponenten (Datenbank, FlexLM, InfoCABLE-Server) auf einen Rechner installieren auf dem ein Firewall installiert ist, müssen verschiedene Einstellungen der Komponenten und des Firewalls getroffen werden.
In unserem Beispiel verwenden wir Windows XP Professionell mit SP2 und den standardmäßig installierten und aktivierten Firewall.
Um von Clientseite auf das Lizenzsystem FlexLM zugreifen zu können, muß der Port auf dem FlexLM lauscht für eingehende Verbindungen geöffnet werden. Normalerweise ist dies der Port 1700. Außerdem muß dem Daemon ifcad.exe erlaubt werden, Verbindungen nach draußen aufzubauen.
Öffnen Sie in der Systemsteuerung das Firewall-Panel. Auf der Registerkarte ‚Allgemein‘ ist der Firewall aktiv.
Gehen Sie zur Registerkarte ‚Ausnahmen‘.
Hier klicken Sie auf die Schaltfläche ‚Port‘ um den Port 1700 zu öffnen. Geben Sie bei Name eine kurze Beschreibung Ihrer Freigabe an, z.B. „FlexLM 1700“ und als Portnummer geben Sie 1700, bzw. den bei FlexLM konfigurierten Port, ein. Der Port wird nur für TCP-Verbindungen freigegeben. Unter ‚Bereich ändern...‘ können Sie einstellen, welche Computer den freigegebenen Port passieren dürfen. Im Normalfall wählen Sie hier Ihr Subnetz oder geben die autorisierten Rechner an.
Im zweiten Schritt wird dem Daemon ifcad.exe Verbindungen nach draußen erlaubt. Klicken Sie auf die Schaltfläche ‚Programm...‘ und gehen auf ‚Durchsuchen...‘ und wählen dort in Ihrem FlexLM-Installationsverzeichniss die Datei ifcad.exe. Ändern Sie gegebenenfalls noch den Bereich.
Beim Start des InfoCABLE-Servers geben Sie einen Port an, an dem der Server auf ankommende Clientverbindungen lauscht und bei einer Anfrage dem Client ein Port mitteilt, an welchen sie untereinander kommunizieren. Diese beiden Ports müssen bekannt sein und am Firewall, ähnlich wie bei FlexLM, angegeben werden. Die beiden Ports werden beim starten des Servers angegeben. Die Option -p gibt den Port an, an welchem der Server lauscht. Die Option -pp gibt den Port für die Kommunikation zwischen Server und Client an. Wird die Option -p weggelassen, wird standardmäßig der Port 1099 verwendet. Wird die Option -pp weggelassen wird ein willkürlich ausgewählter Port ausgewählt.
Außerdem muß dem Service ifcasrvc.exe erlaubt werden, Verbindungen nach draußen aufzubauen.
In Ihrer InfoCABLE-Installation im Verzeichniss java, existiert eine Datei install.bat. Fügen Sie in der Zeile wo ifcasrvc aufgerufen wird den Parameter -pp
ifcasrvc -i -Djava.class.path="%JAVA_PATH%\infocable.jar" -nogui -m 20 -pp 4711 wrkdir="%JAVA_PATH%" jvmdir="%JAVA_PATH%\jre\bin\server"
Aus unserem Beispiel geben Sie nun den Port 1099 und den Port 4711 an der Firewall frei.
Im zweiten Schritt wird dem Service ifcasrvc.exe Verbindungen nach draußen erlaubt. Klicken Sie auf die Schaltfläche ‚Programm...‘ und gehen auf ‚Durchsuchen...‘ und wählen dort in Ihrem Java-Installationsverzeichniss die Datei ifcasrvc.exe. Ändern Sie gegebenenfalls noch den Bereich.
Befindet sich der InfoCABLE-Server nicht auf dem selben Rechner wie die Datenbank, muß man in der Datei dbalias.properties zwei Ports, getrennt mit dem Schrägstrich, angeben.
Z.B.:
ifca Rechnername ifca 1630/1521
Die Kommunikation bei Oracle funktioniert ähnlich wie beim InfoCABLE-Server. Der Listener horcht auf einem Port (meist 1521) und weist dem Client einen willkürlichen Port bei der Verbindung zu. Um diese willkürliche Portzuweisung (scheinbar) zu unterbinden benötigen wir den Connection Manager. Der Client kann nun eine Verbindung an einen fixen Port mit dem Connection Manager aufbauen. Dieser Port muß auf der Firewall freigegeben werden. Der Connection Manager verbindet jetzt über dynamisch vergebene Ports zur Datenbank, was aber nun kein Problem mehr darstellt, da sich der Connection Manager und die Datenbank hinter der Firewall befinden. Der Connection Manager wird wie folgt eingerichtet:
Im %ORACLE_HOME%/network/admin muß die Datei cman.ora angelegt und konfiguriert werden.
CMAN=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1630))
)
CMAN_PROFILE=
(PARAMETER_LIST=(MAXIMUM_RELAYS=64)
(LOG_LEVEL=0)
(TRACING=YES)
(RELAY_STATISTICS=YES)
(SHOW_TNS_INFO=NO)
(USE_ASYNC_CALL=YES)
(AUTHENTICATION_LEVEL=0)
)
Danach werden die Dienste „Oracle...CMan“ und „Oracle...CMAdmin“ gestartet. Falls sie in der Liste der Dienste nicht zu sehen sind, ist der Connection Manager noch nicht installiert. Dies kann über die Oracle-Installations-CDs nachgeholt werden.
Clientseitig, außer auf dem Serverrechner (dort sieht die tnsnames.ora wie immer aus), muß der Eintrag in der TNSNames.ora wie folgt angepaßt werden:
IFCA =
(DESCRIPTION =
(SOURCE_ROUTE=YES)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Rechnername)(PORT = 1630))
(ADDRESS = (PROTOCOL = TCP)(HOST = Rechnername)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ifca)
)
)