Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Anleitungen
- KB2984972
- Ubuntu Server sicher einrichten
- Ubuntu Server 16.04 sicher einrichten
- Synergy Linux Client keine Umlaute im Terminal
setxkbmap de
- Danach nochmals das Synergy Fenster aufrufen und darn Button Anwenden klicken
- VBoxNetFlt Fehlermeldung Failed to allocate packet buffer, dropping the packet
- Dann folgende Befehl ausführen, danach wars weg:
sudo sysctl -w vm.min_free_kbytes=1048576 sysctl vm.min_free_kbytes
- Alle IP-Adressen im lokalen Netzwerk anzeigen lassen.
- DOS-Box:
(for /l %i in (1,1,255) DO start /min ping 192.168.0.%i -n 1) && timeout 10 && arp -a
- Linux:
sudo netdiscover -p -c 10 -r 192.168.8.0/24 -i bond0
- eth0 anstatt den kryptischen Netzwerk Device Namen, siehe hier mit Änderung von Grub und biosdevname Parameter !!!
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
sudo update-grub
- Apache 2.4 kann Seite nicht mehr aufrufen, mit folgender Fehlermeldung
client denied by server configuration
- Konfiguration ist noch für apache2.2 uns jetzt läuft 2.4, siehe Upgrade 2.4 Access Control
- Apache2 ssl aktivieren
- SSL Modul:
sudo a2enmod ssl
- Proxy Modul:
sudo a2enmod proxy proxy_http
- Rewite Modul:
sudo a2enmod rewrite
- Apache 2.4 phpinfo() zeigt nur leere Seite an.
- PHP muss aktiviert werden:
sudo a2enmod php5
- Benutzerspezifisch ~ kein PHP vorhanden, dann kommentar eintragen in der Zeile
# php_admin_value engine Off
in der Datei /etc/apache2/mods-enabled/php5.conf
- Windows-8 in Virtualbox installieren. Beim booten Error ** 0x000000C4<code>vboxmanage setextradata Windows-8 VBoxInternal/CPUM/CMPXCHG16B 1</code> * Windows 8.1 Professional Generischer Key, nur für Installation<code>XHQ8N-C3MCJ-RQXB6-WCHYG-C9WKB</code> * Ubuntu hängt beim rutnerfahren (backup-Server) beim **speech-dispatcher, dann Dienst ausschalten:
sudo update-rc.d -f speech-dispatcher remove
- Ein Verzeichnis komplett mit sed bearbeiten, Ausgabe mit gleichem Dateinamen
LISTE=`find ../_Auftragsverwaltung -name "*.oft" -printf "%f\n"`; for i in $LISTE; do sed 's/@koeag.de/@koenigsteiner.com/g' ../_Auftragsverwaltung/$i > $i;done
- Linux Shell Text commands z.b. zählen wie oft doppelte Dateien mit gleiche Belegnummer vorkommen
ls B-* | cut -c 3-7 | sort | uniq -c | grep -i " 2 " | sort | more
- Befehle auf der Linux Shell wiederholen
watch "sudo cat * | grep NT_STATUS | wc"
- ntpd ohne ipv6 laufen lassen und auf ein Netzerk Device begrenzen
- Editieren von /etc/default/ntp, folgende Zeile muss eingetragen sein
NTPD_OPTS='-4 -g -I eth0'
- Prüfen mit folgendem Befehl, sollte keine ipv6 Adressen mehr anzeigen!!
netstat -anp | grep :123
- Kernel Update der Virtualisierungs-Server, Virtualbox Setup der virtualisierten Rechner.
- Komprimieren beim kopieren von Dateien unter Windows-7 ausschalten
- Sichern und Zurückspielen mit tar
- file:/ / ** im HTML-Code für den **firefox erlauben
- Grub2 grafisch verwalten.
- Ubuntu Server 10.04 LTS Netzwerk
- Netzwerk Device manuell /dev/eth?? zuordnen in Datei /etc/udev/rules/70-persistent-net.rules
- udev Dient neu starten
sudo udevadm trigger sudo reload udev
und system neu starten. Weiter Info hier
- Netzwerk Monitoring mit iptraf und nload.
- Ubuntu grafischer Startbildschirm ausschalten
- 60 Sekunden auf das Netzwerk warten, liegt irgendwie an Plymouth, manuell im script /etc/init/failsafe.conf die Wartezeiten abändern.
- grub2 timeout Probleme beim Starten, setzen des GRUB_RECORDFAIL_TIMEOUT Paramteter's in /etc/default/grub.
- Proxy - Server ( squid ) nach folgender Anleitung installieren
- Linux Rechner zu einer bestimmten Uhrzeit neu starten:
sudo /sbin/shutdown -r 21:00
läuft allerdings nur auf der GUI in einem Terminal, das offen bleiben muß.
- Orndergrößen unter Linux anzeigen lassen
sudo du /. -h -x --max-depth=1
- Linux - Server Benchmark Test. Hier die Orginaldoku. Der Universale Allgemeine Test wird folgendermasen gestartet:
phoronix-test-suite benchmark universe
, dauert einige Zeit und dass laden aller Einzelprogramme muss mit Auswahl 3 erstmal gestartet werden.
- bind9 Fehler : (unexpected RCODE REFUSED
forwarders { 8.8.8.8; 8.8.4.4; };in named.conf.options eintragen.
- VMDK Datei verkleinern, mit sdelete -z C: (Windows) oder zerofreee (Linux - ohne vboxmanage !!) siehe Oracle Anleitung. Nicht vergessen
VBoxManage clonehd alte.vmdk neue.vmdk
- VMDK verkleinern, VMDK abhängen von VirtualBox
vboxmanage storageattach VM --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium none vboxmanage showvminfo VM | grep SATA $ vboxmanage clonehd --format vdi ~/VMs/VM-disk1.vmdk /tmp/VM-disk1.vdi $ vboxmanage closemedium disk ~/VMs/VM-disk1.vmdk --delete $ vboxmanage modifyhd /tmp/VM-disk1.vdi --compact $ vboxmanage modifyhd /tmp/VM-disk1.vdi --resize 81920 = 80 GB!!! $ vboxmanage clonehd --format vmdk /tmp/VM-disk1.vdi ~/VMs/VM-disk1.vmdk $ vboxmanage closemedium disk /tmp/VM-disk1.vdi --delete $ vboxmanage storageattach VM --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium 4/VMs/VM-disk1.vmdk
Chrome und Schriften
Falls im Chrome Browser die Schriften falsch angezeigt werden folgeneds im Chrome eingeben:
chrome://flags
und anschliesend den Schalter
DirectWrite deaktivieren
ein und ausschalten. Danach funtionierte es wieder bei Kevin.
PHP & LDAP
Damit von PHP aus die ldap_url
"ldaps://82.197.134.171"
muss in der Datei /etc/ldap/ldap.conf folgendes eingefügt werden:
TLS_REQCERT allow
NetBeans und PHP debuggen mit XDEBUG
Nur lauffähig bekommen mit folgender Konfiguration in der Datei /etc/php5/apache2/conf.d/xdebug.ini
zend_extension=/usr/lib/php5/20090626/xdebug.so xdebug.remote_enable=1 xdebug.remote_host=192.168.8.46 xdebug.remote_port=9000 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.idekey=xdebug
Geschwindigkeits Tests
- Netzwerkkarten
- Auf dem einen Server
iperf -s
- Auf dem anderen Server
iperf -c ip-Adresse
Da sollte bei einer gigabit Netzerkkarte etwa 950 Mbits/sec (bits) raus kommen, was etwa 100MBit/sec entspricht.
- Festplatten / Netzwerk Laufwerke
- Mit hdparm
sudo hdparm -tT --direct /dev/sdg
- Bei lokalen Platten, zuerst den Caceh löschen als root
sudo su - echo 3 > /proc/sys/vm/drop_caches exit
- Leere datei erstellen mit
dd bs=1M count=1000 if=/dev/zero of =/mnt/....
- Hierzu gibt es folgende Tabelle
| Plattentyp | Dateisystem | MBits/sec |
|---|---|---|
| SSD | ext4 | 660 |
| SATA-3 | ext4 | 236 |
| SSD | drbd | 178 |
| SATA-2 | ext4 | 124 |
| SATA-2 | btrfs | 95 |
| SATA-3 | drbd | 34.5 |
| SATA-2 | Gluster-fs | 28.7 |
PHP / Pear / Spreadsheet_Excel_Writer
- Folgende Pakete sollten installiert sein, neben pear:
- php5-mysql
- php5-adodb
- Diese Erweiterung wird gebraucht um bei den Statistik Masken im Intanet den Excel Button bedienen zu können. Zum installieren folgende Befehle ausführen:
sudo apt-get install php-pear sudo pear install OLE-1.0.0RC2 sudo pear install Spreadsheet_excel_Writer-0.9.2
eine Konfiguration ist nicht nötig. Allerdings hat diese Version einen gravierenden Fehler egal in welchem System (Linux oder Windows). Durch Änderung der Zeile 623 in der Datei /usr/share/php/OLE/PPS/Root.php (Pfad von Ubuntu) von:
fwrite($FILE, pack("V", 1));nach
fwrite($FILE, pack("V", $num_sb_blocks));kann auch Excel 2010 die übergenen Dateien gleich öffnen.
- Eine andere Lösung schein zu sein, wenn man statt RC2 den RC1 installiert
sudo pear install OLE-1.0.0RC1
Mysql flush-hosts
- geblockte Hosts freigeben mit
mysqladmin flush-hosts
- bzw. seit neustem so:
mysqladmin -u root -p flush-hosts
- oder die Werte höher setzen (leider nur temporär, bis reboot ?)
- setzen
SET GLOBAL max_connect_errors=10000; set global max_connections = 200;
- abfagen
show variables like "max_connections"; show variables like "max_connect_errors";
Mysql Windows - Linux Probleme
Unter Windows werden die Tabellenname, Spaltenname und View's nicht in Groß und Klein Schreibung unterschieden. Sobald Datenbanken von Windows nach Linux übernommen werden, kann es somit zu nicht mehr funktionsfähigen Anwendungen kommen, da unter Linux immer Case Sensitiv gearbeitet wird. Unter Linux ist somit in der Datei /etc/mysql/mysqld.conf/mysqld.cnf folgender Parameter einzutragen:
lower_case_table_names = 1
damit sich Linux geanu so wie Windows verhält, also keine Unterscheidung zwischen Groß.- und Kleinschreibung.
Mysql neue User Anlegen
- Schön erklärt ist es hier
- Verbinden mit der Datenbank:
mysql -u root -p
- für 18.04
CREATE USER 'sammy'@'localhost' IDENTIFIED BY 'password';
- für älter
- Einen neuen User anlegen:
create user 'hs';
- Bzw. richtig mit PC Angabe (auf die ' achten):
create user 'hs'@'%';
- Das Passwort für den User setzen:
SET PASSWORD for 'hs'@'%' = PASSWORD('???????');Für User, die ohne Passwort angelegt werden müssen wie z.b.: 'koeag'@'localhost' oder winkiss_'standard'@'%', darf dieser Befehl nicht ausgeführt werden. Ein Anlegen über die MySQL Workbench ohne Passwort ist nicht das gleiche, es wird dann immer noch ein Passworteingabe verlangt. Deshalb müssen diese zwei User über den mysql Aufruf im Terminalfenster angelegt werden!!
- Zugriff auf alles geben ('koeag'@'localhost'):
GRANT ALL ON *.* TO 'hs' IDENTIFIED by '???????' WITH GRANT OPTION;
Zugriff für winkiss_'standard'@'%' muss über die GUI erfolgen im Reiter Schema Privileges
Samba testparm rlimit_max
Bei testen der Samba config erscheint die Fehlermeldung rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384). Dann in der Datei /etc/security/limits.conf folgende
#<domain> <type> <item> <value> # * - nofile 16384 #
machen. Siehe auch zugehörige Anleitung
PDF aus SNP Dateien erstellen
Die Umwandlung der snp Dateien in PDF erfolgt mit dem Windows Programm snp2pdf. Sieht jedoch inzwischen so aus als ob es dafür keinen Support mehr gibt. Erzeugt werden die PDF Dateien für Netkis im Script koeag-upload.sh, nicht im netkis-upload.sh !!. Sollte das Script keine PDF Dateien erzeugen muss als aller erstes auf einem neu eingesetzten System EINMAL das snp2pdf.exe auf der grafischen Oberfläche unter wine ausgeführt werden. Warum, keine Ahnung, aber danach funktioniert es auf der Shell mit xvfb-run.
— Hartmut Schindler 2013/06/06 18:08
Ab sofort wird das Scipt koeag-upload.sh nicht mehr über cron gestart, sondern auf der GUI beim starten des Rechner (server1.local.koeag) folgendes Startprogramm eingetgragen:
gnome-terminal -t koeag-upload --geometry=140x10 -e "/usr/local/bin/at.sh 22:00 /usr/local/bin/koeag-upload.sh"
Apache Logfiles auswerten
- IP-Adressen mit Häufigkeit der Zugriffe auf Intranet ohne Benutzeranmeldung im April (mit awk)
gunzip -c koeag-access-log.*.gz | grep intranet | grep \ \-\ \- | grep Apr | awk '{print $1}' | sort | uniq -c | sort -nr | more - Eine bestimme IP-Adresse im Monat April (mit sed)
gunzip -c koeag-access-log.*.gz | grep intranet | grep 123.123.123.123 | sed 's/ .*$//' | sort | uniq -c | sort -nr | more
Überflüssige Kernel Versionen entfernen
Zum entfernen der überflüssigen Linux Kernel Versionen folgende Schritte durchführen:
- feststellen welche Versionen vorhanden sind:
sudo dpkg -l | grep linux | grep headers
- Alte Kernel löschen:
sudo apt-get remove --purge linux-headers-3.2.0-25-generic linux-image-3.2.0-25-generic
Grub wird automatisch gestartet und somit auch die alten Kernel aus dem Boot Menü entfernt.
MySQL sichern, restore, sql
- Restore mit dem User der Zugriff auf die DB hat
mysql -u xyz -f DB_Name -p < backup.sql
- Backup
mysqldump -u xyz -c --add-drop-table -p DB_Name > backup.sql
- Bearbeiten aus CLI
echo "select count(*) from table" | mysql --database DB_Name -u xyz -p
MySQL Passwort für User ändern
- Als root anmelden
sudo mysql -u root -p
- Datenbank auswählen
use mysql;
- Passwort ändern
update user set password=PASSWORD('dein-neues-passwort') where User='dein-user'; - Passwort User root ändern
update user set password=PASSWORD('dein-neues-passwort') where User='root'; - Änderung abschliesen
flush privileges; quit
MySQL root Passwort vergessen
- Über die Konfigurationsdatei (der einzige der unter Ubuntu 14.04.1 funktioniert hat)
- In der Datei /etc/mysql/my.cnf folgendes nach [mysqld]-Section einfügen:
[mysqld] skip-grant-tables
- MySql neu starten
sudo /etc/init.d/mysql restart
- Mysql Client als root ohne Passwort starten
mysql -u root
- Passwort setzen wie man es braucht
UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root'; quit - Eintrag skip-grant-tables wieder entfernen und mysql neu starten.
MySQL Datenpfad verschieben
Nach der Installation von MySQL werden die Datenbanken in /var/lib/mysql/ abgespeichert. Um den Datenpfad neu zu vergeben folgende Aktionen durchführen oder hier UbuntuWiki nochmals direkt nachlesen was zu tun ist:
- MySQL stoppen:
sudo stop mysql
- Vorhandene Dateien im Datenpfad auf den neuen kopieren (hier /dbdata/mysql/)
sudo cp -r -p /var/lib/mysql /dbdata/mysql
- alternativ kann auch MC als root verwendet werden.
- Orginalverzeichnis danach bitte erstmal umkopieren.
- MySQL config (/etc/mysql/my.cfg editieren
#datadir = /var/lib/mysql datadir = /dbdata/mysql
- Editieren der Datei /etc/apparmor.d/usr.sbin.mysqld
- VORHER:
/usr/lib/mysql/plugin/ r, /usr/lib/mysql/plugin/*.so* mr, /usr/sbin/mysqld mr, /usr/share/mysql/** r, /var/log/mysql.log rw, /var/log/mysql.err rw, /var/lib/mysql/ r, /var/lib/mysql/** rwk,
- NACHHER:
/usr/lib/mysql/plugin/ r, /usr/lib/mysql/plugin/*.so* mr, /usr/sbin/mysqld mr, /usr/share/mysql/** r, /var/log/mysql.log rw, /var/log/mysql.err rw, # /var/lib/mysql/ r, # /var/lib/mysql/** rwk, /dbdata/mysql/ r, /dbdata/mysql/** rwk,
- ACHUTNG. In den ersten Installationen (KA,F) wurde auch das Verzeichnis plugin das jedoch unter /usr/lib/mysql liegt in AppArmor auf dbdata verschoben. Das ist Unsinn.
- Jetzt die MySQL Datenbank wieder starten.
sudo start mysql
HTTP / FTP User für www.koeag.de
- freie User-id im 2000-2999 Bereich mit cat /etc/passwd herausfinden.
- User anlegen mit
sudo useradd -u xxxx -g 1001 -m -d /home/httpd/koeag/httpdocs/?????? -s /bin/false ??????
- in /etc/apache2/sites-available entsprechenden domain z.b. koeag - datei einen neuen Directory Eintrag anlegen. z.B:
<Directory "/home/httpd/koeag/httpdocs/stepstone_30"> Options +Indexes AuthType Basic AuthName "Login Serverabgleich" AuthUserFile /home/httpd/koeag/pd/htusers require user stepstone_30 </Directory> - und für die ganz „harten“ mit Beschränkung auf IP-Adressen
<Directory "/home/httpd/koeag/httpdocs/careerbuilder_rahmenvertrag"> Options +Indexes order deny,allow deny from all allow from 208.82.4.0/22 208.88.80.0/22 208.49.187.224/27 62.172.130.136 80.69.132.46 </Directory> - Für den http Zugriff muss noch das Passwort in htusers (siehe AuthUserFile Parameter) folgendwermaßen eingetragen werden:
sudo htpasswd /home/httpd/koeag/pd/htusers USERNAME
- Falls htpasswd nicht gefunden wurde, dann die apache2 utils installieren
sudo apt-get install apache2-utils
Danach funktioniert auch der ftp Zugriff warum auch immer ???
Für einen funktionierenden FTP Zugang muss dem vorhin angelegte User auch noch dass Passwort auf Systemebene vergeben werden:
sudo passwd ????? XXXXX XXXXX
In /etc/passwd/ den Pfad um /./ erweitern und aus /bin/false die /bin/bash machen.
Nur FTP User ohne http
Für den user transfer ist es nötig, nur einen ftp User, ohne http Zugriff und home Directory in http zur Verfügung zu haben. Das funktioniert mit der o.g. Anleitung nicht wirklich. Hierzu ist direkt im ftp program. (pure-ftp) ein User mit Passwort anzulegen:
sudo pure-pw useradd transfer -u transfer -d /home/virftp/transfer
Das neuen home Verzeichnis muss manuell angelegt werden, mit den Rechten des angegebenen Systemusers (transfer).
Danach die Änderungen der pure-ftp datenbank bekannt machen mit:
sudo pure-pw mkdb
Info über einen einzelnen User (max files, max size, erlaubte und verbotene IP…) mit:
sudo pure-pw show USER
Ein Passwort eine vorhandenen Users ändern mit:
sudo pure-pw passwd USER
Informationen über die letzen Zugriff, Logindaten und IP - Adressen können mit
sudo pure-ftpwho
angezeigt werden. Hier werden beim Server www.koeag.de auch alle User angezeigt, die auch HTTP Zugang haben.
PureFTP installieren
Hier gibts noch ein paar Links falls mal wieder ein pureftp installiert werden muss:
ProFTPD installieren
Auf dem Ubuntu wiki gibt es eine Anleitung für proftp, weshalb diese Software dann auf dem mfa eingesetzt wurde, für den ftp Zugriff auf das Intarnet
Bei Ubuntu 12.04 wird Version 1.3.4a von ProFTPD mitgeliefert. Diese enthält einen bekannten Bug, der bei Verwendung von „DirFakeUser off“ oder „DirFakeGroup off“ in der proftpd.conf die Verbindung trennt, sobald das Kommando „MLSD“ oder „MLST“ aufgerufen wird (was z.B. FileZilla macht). Als Workaround sollte man die beiden „Fake“-Anweisungen auskommentieren.
