Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:apc [08.01.2017 22:28. ] – [Installation] django | centos:apc [22.07.2019 14:52. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
{{: | {{: | ||
- | Beim Betrieb eines Servers ist der Einsatz einer gesicherten Energieversorgung natürlich obligatorisch. Im RZ((Rechen Zentrum)) stehen dazu meist unterbrechungsfreie Stromversorgungen, | + | Beim Betrieb eines Servers ist der Einsatz einer gesicherten Energieversorgung natürlich obligatorisch. Im **RZ**((**R**echen **Z**entrum)) stehen dazu meist unterbrechungsfreie Stromversorgungen, |
{{: | {{: | ||
Zeile 815: | Zeile 815: | ||
===== apcupsd-gui ===== | ===== apcupsd-gui ===== | ||
- | Hat man auf dem Server einen X-server am laufen, muss man sich nicht auf die textbasierten Informationen zurückgreifen. Hier kann man auch auf das **GUI**((**Graphical | + | Hat man auf dem Server einen X-server am laufen, muss man sich nicht auf die textbasierten Informationen zurückgreifen. Hier kann man auch auf das **GUI**((**G**raphical |
# yum install -y apcupsd-gui | # yum install -y apcupsd-gui | ||
Zeile 853: | Zeile 853: | ||
- | ==== apcupsd-cgi ==== | + | ===== apcupsd-cgi ===== |
+ | Eine weitere Möglichkeit zur Visualisierung der Stati unseres APCUPS-Daemon ist die Verwendung einer WEB-GUI, so dass von berechtigten Hosts, Netzen und/oder Nutzern eine Statusabfrage im Intra- oder auch Internet erfolgen kann. Die notwendigen Programmteile und Konfigurationsbeispiele sind in dem RPm-Paket **apcupsd-cgi** enthalten. | ||
+ | ==== Installation ==== | ||
+ | Dieses Paket installieren wir nun mit Unterstützung des Befehls **yum**. | ||
# yum install apcupsd-cgi | # yum install apcupsd-cgi | ||
- | < | + | Den Inhalt des Paketes und auch den Speicherort ermitteln wir wie gewohnt mittels **rpm** und der Option //-qil//. |
- | Name : apcupsd-cgi | + | # rpm -qil apcupsd-cgi |
+ | |||
+ | < | ||
Version | Version | ||
Release | Release | ||
Zeile 887: | Zeile 892: | ||
/ | / | ||
- | ===== old stuff ===== | + | ==== Konfiguration |
- | < | + | Da wir die WEB-GUI über einen separaten Apache vHOST ansprechen wollen deaktivieren wir als erstes die mitgelieferte Apache Konfigurationsdatei |
- | DATE : 2012-07-28 16:28:45 +0200 | + | |
- | HOSTNAME : vml000020.dmz.nausch.org | + | |
- | VERSION | + | |
- | UPSNAME | + | |
- | CABLE : Custom Cable Smart | + | |
- | DRIVER | + | |
- | UPSMODE | + | |
- | STARTTIME: 2012-07-28 16:28:33 +0200 | + | |
- | MODEL : SMART-UPS 1400 RM | + | |
- | STATUS | + | |
- | LINEV : 226.2 Volts | + | |
- | LOADPCT | + | |
- | BCHARGE | + | |
- | TIMELEFT : 9.0 Minutes | + | |
- | MBATTCHG : 5 Percent | + | |
- | MINTIMEL : 3 Minutes | + | |
- | MAXTIME | + | |
- | MAXLINEV : 228.8 Volts | + | |
- | MINLINEV : 226.2 Volts | + | |
- | OUTPUTV | + | |
- | SENSE : High | + | |
- | DWAKE : 000 Seconds | + | |
- | DSHUTD | + | |
- | DLOWBATT : 02 Minutes | + | |
- | LOTRANS | + | |
- | HITRANS | + | |
- | RETPCT | + | |
- | ITEMP : 34.2 C Internal | + | |
- | ALARMDEL : 5 seconds | + | |
- | BATTV : 27.6 Volts | + | |
- | LINEFREQ : 50.0 Hz | + | |
- | LASTXFER : Automatic or explicit self test | + | |
- | NUMXFERS : 0 | + | |
- | TONBATT | + | |
- | CUMONBATT: 0 seconds | + | |
- | XOFFBATT : N/A | + | |
- | SELFTEST : NO | + | |
- | STESTI | + | |
- | STATFLAG : 0x07000008 Status Flag | + | |
- | DIPSW : 0x00 Dip Switch | + | |
- | REG1 : 0x00 Register 1 | + | |
- | REG2 : 0x00 Register 2 | + | |
- | REG3 : 0x00 Register 3 | + | |
- | MANDATE | + | |
- | SERIALNO : GS9939006549 | + | |
- | BATTDATE : 09/23/11 | + | |
- | NOMOUTV | + | |
- | NOMBATTV : 24.0 Volts | + | |
- | EXTBATTS : 0 | + | |
- | FIRMWARE : 72.11.I | + | |
- | END APC : 2012-07-28 16:28:50 +0200 | + | |
- | </ | + | |
- | # vim / | + | Die Installation und Konfiguration des **// |
+ | # vim / | ||
+ | <file apache / | ||
+ | ## apcupsd configuration file for Apache Web server | ||
+ | ## | ||
+ | # | ||
+ | ## files are off the documentroot of Web server | ||
+ | #Alias /apcupsd / | ||
+ | #< | ||
+ | # AddHandler cgi-script cgi pl | ||
+ | # Options ExecCGI | ||
+ | #</ | ||
+ | # | ||
+ | ## | ||
+ | ## Allow only local access at default | ||
+ | ## Change the " | ||
+ | ## access rights to your needs to enable remote access also. | ||
+ | ## | ||
+ | #< | ||
+ | # DirectoryIndex upsstats.cgi | ||
+ | # AllowOverride None | ||
+ | # Options ExecCGI Indexes | ||
+ | # < | ||
+ | # # Apache 2.4 | ||
+ | # Require local | ||
+ | # </ | ||
+ | # < | ||
+ | # # Apache 2.2 | ||
+ | # Order deny, | ||
+ | # Deny from all | ||
+ | # Allow from 127.0.0.1 | ||
+ | # Allow from ::1 | ||
+ | # </ | ||
+ | #</ | ||
- | <file apache | + | Die Konfiguration unseres Apache vHOST erledigen wir mit Hilfe einer eigenen Konfigurationsdatei //**/ |
- | # | + | <file bash / |
# power.nausch.org | # power.nausch.org | ||
# | # | ||
Zeile 952: | Zeile 938: | ||
ServerAdmin webmaster@nausch.org | ServerAdmin webmaster@nausch.org | ||
ServerName power.nausch.org | ServerName power.nausch.org | ||
- | ServerAlias www.power.nausch.org | ||
ServerPath / | ServerPath / | ||
DocumentRoot "/ | DocumentRoot "/ | ||
AddHandler cgi-script .cgi | AddHandler cgi-script .cgi | ||
- | | + | DirectoryIndex multimon.cgi |
- | | + | |
- | AllowOverride | + | < |
- | Order Allow,Deny | + | |
- | Allow from all | + | |
- | | + | Options ExecCGI |
- | </ | + | </ |
AddType application/ | AddType application/ | ||
- | DirectoryIndex multimon.cgi | ||
ErrorLog logs/ | ErrorLog logs/ | ||
CustomLog logs/ | CustomLog logs/ | ||
</ | </ | ||
+ | </ | ||
+ | |||
+ | Den Zugriff werden wir natürlich entsprechend beschneiden und den Transportweg absichern. Auf unserem HTTP-Proxy-Host legen wir hierzu eine passende vHOST-Konfigurationsdatei an. | ||
+ | # vim / | ||
+ | <file apache / | ||
+ | # Django : 2015-10-29 | ||
+ | # vHost power | ||
+ | # | ||
- | ... | + | # Variablen der Hostvariablen |
- | </ | + | Define vhost power |
+ | Define errors_log logs/ | ||
+ | Define access_log logs/ | ||
+ | Define ssl_log logs/ | ||
+ | |||
+ | < | ||
+ | ServerAdmin webmaster@nausch.org | ||
+ | ServerName ${vhost}.nausch.org | ||
+ | |||
+ | RewriteEngine on | ||
+ | RewriteCond %{HTTPS} off | ||
+ | RewriteRule (.*) https:// | ||
+ | |||
+ | # Welche Logdateien sollen beschrieben werden | ||
+ | SetEnvIf Remote_Addr " | ||
+ | ErrorLog | ||
+ | CustomLog ${access_log} combined env=!dontlog | ||
+ | </ | ||
+ | < | ||
+ | ServerAdmin webmaster@nausch.org | ||
+ | ServerName ${vhost}.nausch.org | ||
+ | ServerPath / | ||
+ | |||
+ | # Wer soll Zugriff auf die Webseite(n) bekommen? | ||
+ | <Proxy *> | ||
+ | Options +FollowSymLinks +Multiviews -Indexes | ||
+ | AllowOverride None | ||
+ | AuthType Basic | ||
+ | AuthName "Fuer den Zugriff auf den Webserver bitte Anmeldedaten eingeben!" | ||
+ | AuthBasicProvider ldap | ||
+ | AuthLDAPUrl ldaps:// | ||
+ | AuthLDAPBindDN cn=TechnischerUser, | ||
+ | AuthLDAPBindPassword " | ||
+ | AuthLDAPBindAuthoritative on | ||
+ | Require ldap-user django | ||
+ | </ | ||
+ | |||
+ | # Welcher Inhalt soll angezeigt bzw. auf welchen Server sollen die HTTP-Requests weitergeleitet werden? | ||
+ | ProxyRequests Off | ||
+ | ProxyPreserveHost On | ||
+ | ProxyPass / http:// | ||
+ | ProxyPassReverse / http:// | ||
+ | |||
+ | # Welche Logdateien sollen beschrieben werden | ||
+ | SetEnvIf Remote_Addr " | ||
+ | ErrorLog | ||
+ | CustomLog ${access_log} combined env=!dontlog | ||
+ | CustomLog ${ssl_log} "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \" | ||
+ | |||
+ | # Absicherung der Übertragung mit Hilfe von TLS | ||
+ | # Django : 2015-10-04 - TLS-Verschlüsselung mit Hilfe von mod_ssl | ||
+ | SSLEngine on | ||
+ | # Definition der anzubietenden Protokolle | ||
+ | SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 | ||
+ | # Definition der Cipher | ||
+ | SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384: | ||
+ | # Schlüsseldatei, | ||
+ | SSLCertificateKeyFile / | ||
+ | # Zertifikatsdatei, | ||
+ | SSLCertificateFile / | ||
+ | # Zertifikatsdatei des bzw. der Intermediate-Zertifikate(s) | ||
+ | SSLCertificateChainFile / | ||
+ | # Änderung der Cipherorder der Clients verneinen | ||
+ | SSLHonorCipherOrder on | ||
+ | # TLS 1.0 Kompremmierung deaktivieren (CRIME attacks) | ||
+ | SSLCompression off | ||
+ | # Online Certificate Status Protocol stapling zum Prüfen des Gültigkeitsstatus des Serverzertifikats. | ||
+ | SSLUseStapling on | ||
+ | SSLStaplingResponderTimeout 5 | ||
+ | SSLStaplingReturnResponderErrors off | ||
+ | |||
+ | # HTTP Strict Transport Security (HSTS), bei dem der Server dem Client im HTTP-Header mitteilt, | ||
+ | # dass dieser nur noch verschlüsselt mit dem Server kommunizieren soll. | ||
+ | Header always set Strict-Transport-Security " | ||
+ | |||
+ | # This header enables the Cross-site scripting (XSS) filter built into most recent web browsers. | ||
+ | # It's usually enabled by default anyway, so the role of this header is to re-enable the filter for | ||
+ | # this particular website if it was disabled by the user. | ||
+ | # https:// | ||
+ | #Header set X-XSS-Protection "1; mode=block" | ||
+ | Header always set X-Xss-Protection "1; mode=block" | ||
+ | |||
+ | # when serving user-supplied content, include a X-Content-Type-Options: | ||
+ | # to disable content-type sniffing on some browsers. | ||
+ | # https:// | ||
+ | # currently suppoorted in IE > 8 http:// | ||
+ | # http:// | ||
+ | # ' | ||
+ | # Sofern die Datei auch den entsprechenden MIME-Typ " | ||
+ | # CSS-Dateien nur als CSS interprätieren. | ||
+ | Header always set X-Content-Type-Options nosniff | ||
+ | |||
+ | # config to don't allow the browser to render the page inside an frame or iframe | ||
+ | # and avoid clickjacking http:// | ||
+ | # if you need to allow [i]frames, you can use SAMEORIGIN or even set an uri with ALLOW-FROM uri | ||
+ | # https:// | ||
+ | ###header set X-Frame-Options SAMEORIGIN | ||
+ | header always set X-Frame-Options DENY | ||
+ | |||
+ | # hide server header (apache and php version) | ||
+ | Header always unset Server | ||
+ | |||
+ | # Only allow JavaScript from the same domain to be run. | ||
+ | # don't allow inline JavaScript to run. | ||
+ | Header always set X-Content-Security-Policy "allow ' | ||
+ | |||
+ | # Add Secure and HTTP only attributes to cookies | ||
+ | Header edit Set-Cookie ^(.*)$ $1; | ||
+ | |||
+ | # prevent Clickjacking Attack | ||
+ | #Header always append X-Frame-Options SAMEORIGIN | ||
+ | Header always set X-Frame-Options " | ||
+ | |||
+ | # hkpk-stuff | ||
+ | Header always set Public-Key-Pins " | ||
+ | </ | ||
+ | |||
+ | Bevor wir zur Aktivierung unserer Konfigurationsänderungen den bzw. die HTTP-Daemon einmal durchstarten überprüfen wir unsere Apache-Konfigurationsdateien auf syntaktische Fehler. | ||
+ | # apachectl -t | ||
+ | |||
+ | Syntax OK | ||
+ | |||
+ | Ist alles O.K. starten wir den/die Daemon nun einmal neu. | ||
+ | # systemctl restart httpd.service | ||
+ | |||
+ | < | ||
+ | <font style=" | ||
+ | | ||
+ | | ||
+ | Docs: man: | ||
+ | | ||
+ | Process: 11642 ExecStop=/ | ||
+ | Main PID: 11647 (httpd) | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Jan 09 11:03:23 vml000127.dmz.nausch.org systemd[1]: Starting The Apache HTTP Server... | ||
+ | Jan 09 11:03:23 vml000127.dmz.nausch.org systemd[1]: Started The Apache HTTP Server.</ | ||
+ | </ | ||
+ | |||
+ | Nun starten wir einen Browser und öffnen die zugehörige URL. | ||
+ | $ konqueror http:// | ||
+ | |||
+ | Im ersten Bild sehen wir die Startseite der WEB-GUI. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Das zweite Bild zeigt die Übersicht zu den aktuellen Stati unserer USV. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Eine Ansicht aller Detailangaben zeigt das dritte Bild. | ||
- | {{ : | + | {{ : |
+ | ====== Links ====== | ||
+ | * **[[wiki: | ||
+ | * **[[http:// | ||