Logo Oracle Deutschland   DBA Community  -  Juni 2011
Arbeiten mit dem Enterprise Manager Command Line Interface (EMCLI) - Teil 4

EMCLI soll nicht mehr remote arbeiten dürfen, wie kann man das einstellen?
von Ralf Durben, ORACLE Deutschland B.V. & Co. KG

Die obige Frage wurde mir kürzlich von einem Kunden gestellt. Aus Sicherheitsgründen möchte dieser Kunde, dass die Utility EMCLI (Enterprise Manager Command Line Interface) nur auf dem OMS Server selbst funktioniert, jedoch nicht von weiteren Clients.

EMCLI kommuniziert mit dem OMS über https-Zugriffe. Wenn Sie EMCLI auf einem Nicht-OMS-Rechner verwenden, können Sie das sehr leicht an der Syntax erkennen, mit der Sie EMCLI mit dem OMS verbinden:

./emcli setup -url=http://oms-servername:em_port/em  -username=em_user

Beispiel:

./emcli setup -url=http://radu.de.oracle.com:7799/em  -username=sysman
EMCLI kommuniziert also mit dem HTTP-Server des OMS. Diesen können Sie nun so konfigurieren, dass nur lokale Verbindungen erlaubt sind. Dazu editieren Sie die Datei ssl.conf.

Konfiguration des HTTP-Servers

Öffnen Sie die Datei ssl.conf
cd $ORACLE_BASE
vi ./gc_inst/WebTierIH1/config/OHS/ohs1/ssl.conf
uns suchen die Passage
SSLProtocol all -SSLv2
  <Location /em/console>
      Order allow,deny
      Allow from all
  </Location>
EMCLI greift auf die Verzeichnisstruktur /em/console/cli zu. Und genau dafür erstellen Sie nun eine Zugriffsregel:
SSLProtocol all -SSLv2
  <Location /em/console>
      Order allow,deny
      Allow from all
  </Location>
  <Location /em/console/cli>
     Order allow,deny
     Allow from localhost
     Allow from radu.de.oracle.com
  </Location>
Hier wird der Zugriff vom lokalen Host und dem Server radu.de.oracle.com, welches auch der Name des OMS Servers ist, erlaubt. Sonst ist der Zugiff nicht erlaubt. Sollten Sie eine Grid Control Umgebung mit mehreren OMS haben, setzen Sie hier alle OMS-Server ein und editieren natürlich die Datei ssl.conf auf allen OMS-Servern.

Jetzt starten Sie den OMS durch mit
emctl stop oms
emctl start oms

Prüfen Sie das Ergebnis

Sie prüfen das Ergebnis. Führen Sie ein Setup in EMCLI durch. Auf dem OMS Server sollte dieses so aussehen:
./emcli setup -url=https://radu.de.oracle.com:7799/em -username=sysman
:
Emcli setup successful
Auf dem OMS Server funktioniert EMCLI also normal. Führen Sie nun das Gleiche auf einem anderen Rechner aus, auf dem EMCLI installiert ist:
./emcli setup -url=https://radu.de.oracle.com:7799/em -username=sysman
:
Error: Connection to the current OMS could not be established. Check the log files for further details
Die Passworteingabe funktioniert noch, aber dann erfolgt die obige Fehlermeldung. Der Zugriff mit EMCLI von einem Nicht-OMS-Server ist also unterbunden.

Hinweis

Dieser Tipp zu EMCLI ist Teil einer Reihe, zu der es drei weitere Teile gibt (Teil1, Teil2, Teil3). Zum Enterprise Manager Command Line Interface gibt es auch ein Handbuch, in dem Sie weitere Funktionalitäten finden.

Zurück zur Community-Seite