CAO 4er DB-Server, für 0,93 Euro pro Monat

Probleme oder Fragen zur Installation, Update und Netzwerkanbindung

CAO 4er DB-Server, für 0,93 Euro pro Monat

Hi Foriker,

ich hab im SQL Bereich berichtet, das ich an einem günstigen 4er SQL Server gebastelt habe.

Nun, zwischenzeitlich kann ich was Berichten.

Wir hatten auf einem Pi2 ein Image von www.raspberry-asterisk.org mit dem RasPBX auf basis von Debian Jessy und FreePBX aufgespielt. Das ganze für unsere 22 Trunks ( 10 ISDN und 14 Voip Leitungen) und 20 Endgeräte konfiguriert, allerdings war ich zu faul auch die ganzen time-conditions, Warteschleifen, Musik usw einzurichten, nun ja, telefonate rauszus gingen schonmal, reizus liefen anrufe noch ins leere, was für den Test aber auch nicht wichtig war.

Dann haben wir, bzw. besser gesagt unser Linux Crack der hier bei uns der Admin is, unter fluchen und schwitzen wegen dem neuen Paketverwaltungssystem von Jessy das MySQL 4.1 kompailiert.

Jippie, es geht, MySQL 4.21 oder so, die neuste 4er halt, läuft unter dem aktuellen Debian Jessy. Man muss nur höllisch aufpassen, das man sich die MySQL 5 DB die ja auf dem RasPBX schon läuft, nicht abschießt, bzw das Rechtesystem vom RasPBX zerbommt.

Nun was soll ich sagen, der Raspberry Pi 2 hat 3 CAO User in der Volltextsuche mit jeweils 15% Auslastung eines Kerns pro User bedient, und dank Kühlkörpern ging das bei 32°C Ras-Temp auswertung, und das mal eben ca 30% schneller als die CT (teilvirtualisierte) Debian Wheezy Maschine auf meinem Dickschiff von HP ProLiant DL380 G5 mit 64GB Ram und 15.000 SAS Platten und den größten DL380er Prozessoren. (Der stemmt mal eben locker 4 aktiv benutzte Win7 x64 Virtualisierungen wovon eine mit 3D Arbeiten genutzt wird.)

Auch wenn telefonate nebenher liefen, war weder bei den Telefonaten noch bei der CAO DB ein performance verlust zu spüren.

Die DB lag bei dem Test mangels SATA anschluss des Raspberry Pi2 noch auf der SD Karte, was natürlich die SD je nach nutzung binnen Tagen bis Monaten himmelt.

Daher die Idee das ganze auf einen Banana Pi Pro umzubauen. Dieser Test steht mangels Hardware noch aus. Bestellt ist sie jedoch schon.

Wichtig war mir, das dieser DB-Server kaum Strom braucht (weniger als 1 Euro pro Monat) und immer (24/7/365) verfügbar ist. Es geht nicht, das ich und meine LINUX unerfahrenen Mitarbeiter Linux CLI Befehle lernen müssen um Arbeiten zu können. Außerdem wollte ich eine Version, wo ich mir den Server 2x als Hardware hinlegen kann, und im Ausfallsfalle schlicht per Ethernet kontrolierter Steckdose die 2. Maschine starte, diese Maschine sich automatisch das letzte Backup von vor 5 minuten einspielt und danach betriebsbereit ist. Idioten-Sicher sozusagen.

Zurück zur Performance:

Im Vergleich zu meinem XP auf einer VBox Virtualisierung auf einer QNAP mit Antom Prozessor, war es gefühlt 500 Aufträg vs 1 Auftrag in der Volltext suche. Naja ehrlicherweise wohl eher 200 zu 5. Aber trozdem enorm viel schneller. Um das zu testen hab ich extra meinen seit 2 Jahren nicht mehr genutzten virtualisierten XP Server auf der NAS nochmal gestartet. Wow, XP, unglaublich, gabs das wirklich?

Gleiches gilt für alle Online-Versionen des Datenbank-Servers.

Wenn ich von Remote Arbeite, dann bekomm ich spätestens nach dem 2. Auftrag nen dicken Hals.

Da eine meiner SEEEEEHR geduligen Mitarbeiterinnen aber von Remote 500km entfernt an einem Unitiy Media Kabelanschluss mit gefühlten 10 Minuten Pingzeit arbeitet, will ich hier noch was bauen. Nämlich einen SPLIT für den MySQL Server. Sprich Sie hat lokal einen Raspi stehen, der sich mit dem Raspi bei uns im Büro synct. Sie lokal schnell, der MySQL übernimmt die Sync Arbeit.

Einzig wie wir die Zugirffe getrennt halten, müssen wir noch geklärt bekommen, nicht das es datendopplungen gibt.

Das wäre auch ne super Lösung für Unterwegs. z.B. ein DB Server auf basis eines Banana Py. Strom per USB Kabel vom Laptop. Verbunden per Ethernet mit dem Banana. Und dieser per W-Lan mit dem accespoint des Hotels.

Gibts hier interesse für so ne Lösung?

Ich würd die zum Hardware-Preis duplizieren. Sprich kauf dir die Hardware selbst, und von mir gibts nen image auf ner SD Karte zum Preis der SD Karte + Porto.

Ich bitte um Wortmeldungen.

Und wenn ja, was für eine Anwendung braucht ihr?

Grüßle
Manne
Gruß Manne
------------------------------------
CAO: 1.4.4.265 F (ich werde die 1.5er an dem Tag kaufen an dem sie kaufbar wird :D)
Modified Shop (Version geheim*lach*)
Shop-Interface Version 1.56, gepimt und fehler gefixt.
MySQL: 4.1.22 auf Debian6 VM

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Habe mir selbst schon soetwas gebaut.
Mit Autobackup, Autoupdate, Firewall,...
Auch auf einem Raspi 2.

Tempo. Naja. Geht.

Bei Interesse kann ich mal die Anleitung hochladen.

PS.: Meidet den Rapy 3 !!!! Der wird zu heiss und taktet dann runter :-(

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Also ich hätte enormes Interesse.


Fände es nur noch besser,
wenn es was "offizielles" von CAO geben würde.
Vielleicht könnt ihr euch ja mal "zusammen setzten"?!?

Einfach so ein Pi2 (oder andere sinnige Hardware) ans Netzwerk und man kann loslegen,
das wäre echt genial.
Derzeit, ist ja wirklich noch Handarbeit angesagt.

Ich habe eigentlich jeden Tag die Angst, das mein Server aufhört zu arbeiten.

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Könnte euch ein Image hochladen.
Hat im Momment 1,1GB.
Mit WinImae auf die Karte gezogen, rein in den RPI2
und funktioniert schon.

Leider legt das CAO team mehr wert auf die Erweiterungen eines uralten Kernels als auf die
neue Strukturierung des kompletten Programmes.
Irgendjemand hat mal hier im Forum eine "CAO App" geschrieben.
Uuuui. Der wurde in der Luft zerlegt :-)

Das Grundlegende Problem bleibt, das MySQL4 Problem.

Spätestens nach Windows 10, wird das Service irgendwan nicht mehr laufen.

Wenn man auf Linux umstellt, wird CAO wieder nicht nativ unterstützt.

Alles im Allen ist das derzeitige CAO eine Fehlentwicklung (Nur im Bezug Datenbank versteht sich).

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Seek51 hat geschrieben: Leider legt das CAO team mehr wert auf die Erweiterungen eines uralten Kernels als auf die
neue Strukturierung des kompletten Programmes.
Geht das schon wieder los?
Wie oft denn noch?
Irgendjemand hat mal hier im Forum eine "CAO App" geschrieben.
Uuuui. Der wurde in der Luft zerlegt :-)
Ich habe eine Android App für CAO geschrieben.
Ich wurde weder in der Luft zerlegt noch sonst was.

Gibt es sonst noch irgendwelche Themen über die du dich auskotzen möchtest?
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Leider ist es eben ein riesiges Problem, das MySql4 weder sicher, noch zukunftssicher ist.
Jeder der eine Firma hat, betreibt meist eine Homepage, welche auf irgendeinem Server liegt.
Also Server wäre vorhanden. Nur wird eben kein MySQL4 mehr unterstützt.
Jetzt dafür einen zweiten Server anzumieten,ist rasugeschmissenes Geld.
In unserem Betrieb ist mit Mitte Mai Schluss mit CAO, wegen genau dem besagten Problem.
Der Admin untersagt es eben, einen VPN Tunnel, o.ä. Tricks anzuwenden, um ein marodes System weiter
am lauffen zu halten.

Es wäre besser, die Freewareversion weiter einzuschränken und dafür die Kaufversion auf ein
moderneres DB System zu portieren.
Softwareentwicklung kostet nun mal Zeit und damit verbunden Geld.
Das ist jedem klar.
Aber wenn sich nichts tut (seit 8 Jahren !!!) ist das Verständniss dafür mal zu Ende.

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Der Admin untersagt es eben, einen VPN Tunnel, o.ä. Tricks anzuwenden, um ein marodes System weiter
am lauffen zu halten.
Aber eine OpenSource Hardware mit USB Raid als Server einsetzen ? Ich weiss gerade nicht ob ich lachen oder weinen soll.

Einen CAO Mandanten bei einem Web-Hoster laufen zu lassen (Sei es MySQL 3 oder 6) ist ein Sicherheitsrisiko. Da spielt die Version gar keine
Rolle. MySQL 4 ist ein alter Knochen, bestreitet ja auch keiner. Aber woher kommt das ständige "UNSICHER" ??
..die Kaufversion auf ein
moderneres DB System zu portieren.
Schon längst geschehen. Ebenso die Free Version. Die CAO 1.5 läuft ab MySQL/MariaDB 5/6.
Derzeit arbeiten wir an den neuen Kassenrichtlinien, daher muss die CAO warten. Das wurde aber hier im Forum schon mehrfach behandelt.

Trotzdem wünsche ich euch viel Glück mit eurer neuen Software. Sollten Fragen zum Ex-/Import aufkommen könnt ihr gerne fragen.
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Schon längst geschehen. Ebenso die Free Version. Die CAO 1.5 läuft ab MySQL/MariaDB 5/6.
Derzeit arbeiten wir an den neuen Kassenrichtlinien, daher muss die CAO warten. Das wurde aber hier im Forum schon mehrfach behandelt.
Endlich mal eine klare Stellungnahme zu diesem Thema !

Leider verläuft die Entwicklung von CAO sehr "undurchsichtig".
Es gibt keine "Roadmap".

Hätte ich z.Bsp. meinen Chefs erzählt, das es eine DB Umstellun gzum Datum XYZ gibt,
dann wäre das weit besser gewesen.
(Neben andere Argumenten, wie neue Einschulung der Mitarbeiter)

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Dann will ich mal meinen Senf dazu geben!

Wir sind zur Zeit 2 Programmierer, die aber auch nicht ständig an CAO programmieren können. Keine große Organisation wie es andere sind, die mal eben mehrere Programmierer auf ein Projekt ansetzten.
Ich habe das CAO-Faktura 2011 mit sehr vielen Ungewissheiten übernommen und dafür gesorgt, das CAO-Faktura überlebt!
Mittlerweile hat sich viel getan, aber um alles sauber auf MySQL5/6, MariaDB zu portieren, braucht es Zeit und auch Geld.
Vielleicht versteht der ein oder andere unsere Situation, ohne sich über immer noch nicht unterstützte Datenbanken aufzuregen.
Leider verläuft die Entwicklung von CAO sehr "undurchsichtig".
Es gibt keine "Roadmap".
Andere Softwarhersteller lassen sich bestimmt in die Karten schauen, nur bei CAO nicht, da gibts ja keine Informationen!


So genug der Worte, es ging hier um etwas anderes als um sich um unsere Unfähigkeit aufzuregen :twisted:
bis dahin
Thoren
______________________________________________
Alles wird gut....:)
______________________________________________
Shopsysteme
Oxid CE mit COI-Modul

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

@Seek

Ich versteh die ganze Show von dir hier nicht,
wenn eh Mitte Mai mit CAO Schluss ist...

Was für ein blöder AUfriss hier.

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Ok, also, das Fazit, 1.5 wird irgendwann kommen, das ist nix neues. Und das ein Projekt mit 2 Teilzeit Programierern nicht mit den sprichwörtlichen 7Meilen Stiefeln vorran kommt, das is doch klar.

Meine Aussage, das ich am Tag der Veröffentlichung von 1.5 3 Lizenzen kaufe, inkl. div. Zusatzmodule steht, und ich steh auch weiterhin dazu und zu CAO!

Eines will ich hier mal klipp und klar sagen, ich hab mit vielen WaWis gearbeitet, aber so intuitiv wie CAO war keines. Und da waren richtig richtig richtig teure Systeme wie SAP R2 und R3 dabei. Und mit SAGE kann man mich z.B. jagen. Gleiches gilt für Lexware, das nicht mal nen Linux tauglichen Server stellt.

Ein Danke dafür, hoffentlich bleibt die usabillity in 1.5 auf diesem Level oder wird sogar noch etwas besser. :-D

So und nun zurück zum DB Thema.

Es gibt offensichtlich Bedarf an einem "kleinen" und "günstigen" sowie "unterhaltsgünstigen" Server der plug n play rennt.

Ganz ohne schnick schnack und schicki miki.

Ok, DAS ist etwas, das man lösen kann. Inkl. Supportmöglichkeit, falls da Bedarf besteht, was vermutlich der Fall ist.

Frage wäre noch, wohin mit den DB backups, die der Server regelmäßig schießt, wäre ja blöd wenn die auf dem Server leigen und der dann platt ist. Ich denk nen SMB Share (ne QNAP oder Synology NAS oder sowas in der Art) hat jeder irgendwo im Netz 24/7 laufen, zur Not täte es sogar nen USB-Stick an ner 7390 oder 7490 Fritzbox oder ähnliches. Da wären dann halt individuelle configs nötig oder man ist selbst Linuxer und editiert sich kurz die entsprechende conf datei. Das ist mit Anleitung nicht wirklich kompliziert, das bekommt sicher jeder hin, der schon mal mit einer Tastatur und notepad gearbeietet hat.

In 2-3 Wochen werd ich ne Hardwareliste und ein Image vorbereitet haben.

Hardware kaufen, image ziehen, auf SD karte aufspielen, einstecken, ins Netz einhängen, im CAO-Admin Sicherung vom alten Server ziehen, neuen Server im CAO-Admin mit IP oder Namen einrichten, Sicherung zurück spielen, fertig. (und wenn gewünscht, dann noch die Backupfunktion aktivieren und konfigurieren)

Der Server is dann nur von Intern (nicht vom Internet aus) erreichbar, wenn man das von Extern (reisetätigkeit) brauch, kann man über z.B. Fritzbox tunneln.

Mit ner Kopie der Hardware inkl der SD Karte und SATA SSD kann man dann direkt sein SERVER Hardware Backup realisiert haben.

Backup Bananapi anstecken, starten lassen, der zieht das backup vom share, und ist betriebsbereit.

Und zum "Heiß" werden vom Pi3, mit kühlkörpern kein ding. und an nem embedded Rechner mit
Strom für 1 Euro im Monat noch nen usb Ventilator zu hängen, ist nun auch nicht wirklich nen Geldproblem. Das Netzteil läuft sowieso, ob das den Ventilator treibt, fällt dem Zähler ja quasi nicht auf. Und meine Pis hängen alle an der Wand, dann bewegt sich die Luft schwerkraft bedingt im Gehäuse (warme Luft steigt auf) und nimmt dabie die Wärme mit aus dem Case.

Abgesehen davon fällt der Rasperry für mich raus, alle Schnittstellen laufen über den einen USB Chip. Single point of failure. Ich hab den Raspi blos, weil ich meine Haustürklingel mit dem DoorPi Projekt machen wollte... Beim Banana Pi Pro hast nen W-Lan Modul, nen Gigabit Ethernet, Sata und USB, alle unabhängig voneinander.

Und dafür das der Server in zukunft nur noch 2 Euro Strom (mit ventilator) im Monat frist, kann man gern auch mal 150 Euro in einen "Server" investieren.

Für mich ist diese Umstellung auf den Banana Pi Pro ein return of Invest nur durch Stromkosten in 6 Monaten. Und es wird schneller. Also?

Gruß Manne
Gruß Manne
------------------------------------
CAO: 1.4.4.265 F (ich werde die 1.5er an dem Tag kaufen an dem sie kaufbar wird :D)
Modified Shop (Version geheim*lach*)
Shop-Interface Version 1.56, gepimt und fehler gefixt.
MySQL: 4.1.22 auf Debian6 VM

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

PS.: die Android App würd ich echt gern mal sehen/probieren!
edit: ich sollte mal meine Sig in ordnung bringen *lach* DIE is ja schon 2 jahre überaltert.
Gruß Manne
------------------------------------
CAO: 1.4.4.265 F (ich werde die 1.5er an dem Tag kaufen an dem sie kaufbar wird :D)
Modified Shop (Version geheim*lach*)
Shop-Interface Version 1.56, gepimt und fehler gefixt.
MySQL: 4.1.22 auf Debian6 VM

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Sodala. Damit ich nicht nur der Puhmann bin, habe ich euch mal eine Anleitung zusammengestellt für einen Raspy 2.
Wenn mir wer eine Serverspeicher zur Verfügung stellt, dann kann ich das fertige SD Card Image hochladen.#
Kann dann jeder verwenden.

Ziel:
Es soll Mysql4 auf dem Raspi laufen um CAO zu ermöglichen.
Der Raspi soll möglichst stabil laufen und sicher sein.
Es soll soweit wie möglich alles automatisch erfolgen.
Optional: Es sollen automatisch immer Backups auf angeschlossene USB Geräte gemacht werden.

Gesamtdaten des Systems:
Hostname: caodb
IP Adresse: 192.168.1.236
Subnetz: 255.255.255.0
DNS1: 192.168.1.1
DNS2: 8.8.8.8

Benutzer: CAOAdmin
Passwort: Counterfeig1942
SSH Port: 5020

MySQL4:
Benutzer: root
Passwort: ?!WERZSADJ??KAERI
Datenbank: CAO14
Port:3307
Adresse: 192.168.1.236
Benutzer: Adminstrator
Passwort:sysdba

Anleitungen:
RASPI einrichten: http://raspberry.tips/raspberrypi-einst ... en-teil-3/
RASPI absichern: http://raspberry.tips/raspberrypi-einst ... -rechners/
Mysql4 aufsetzen: http://forum.cao-faktura.de/viewtopic.php?f=5&t=2086
MySql4 konfigurieren: http://www.synology-forum.de/showthread ... tion/page6

Es wird in mehreren Schritten vorgegangen:
Schritt 1: Raspi Grundkonfiguration
Schritt 2: Raspi SSH Absichern
Schritt 3: Firewall einrichten
Schritt 4: MySql4 aufsetzen
Schritt 5: MySql4 konfigurieren

Schritt 1: Raspi Grundkonfiguration
Minimal Image mit Win32Imager auf SD Karte kopieren.
An HDMI Anschliessen und unter
9 Advanced Options -> "SSH" -> auf "Enable" ändern
Auf Finish gehen und Rebooten
Raspi ans Netzwerk hängen
HDMI wird nicht mehr benötigt.
Booten und mit Putty verbinden. Port:22
Benutzer: Passwort:

Code: Alles auswählen

raspberry
Mit"

Code: Alles auswählen

sudo raspi-config
" die Basiskonfiguration vornehmen.
Folgende Einstellungen machen:
1.Dateisystem expandieren -> Ausführen
3.Boot Options -> auf "B1 Console" ändern
4. Wait for Network at Boot -> auf "Fast Boot without waiting for network connection" ändern
5. Internationalisation Options -> "I1 Change Locale" ->"de_DE.UTF-8 UTF-8" ->"de_DE.UTF-8" einstellen
5. Internationalisation Options -> "I2 Change Timezone" -> "Europa" -> "Berlin" einstellen
8. Overclock -> "OK" -> Auf "High" ändern
9. Advanced Options -> "A2 Hostname" -> auf "caodb" ändern
9. Advanced Options -> "A3 Memory Split"" -> auf "16" ändern
Auf Finish gehen und Rebooten

Neue SSH-Schlüssel erstellen (Wenn der Hostname geändert wurde)

Code: Alles auswählen

sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server
sudo service ssh restart
Minimal-Raspbian erstellen:

Code: Alles auswählen

df -h 
sudo apt-get update
sudo apt-get remove lxde*
sudo apt-get remove gnome*
sudo apt-get remove xfce*
sudo apt-get remove midori omxplayer scratch wolfram-engine sonic-pi dillo netsurf-common netsurf-gtk
sudo apt-get autoremove
sudo apt-get clean
sudo dpkg -P `dpkg -l | grep "^rc" | awk -F" " '{ print $2 }'`
sudo reboot
Log Dateien in Ramdisk legen:

Code: Alles auswählen

sudo nano /etc/fstab
tmpfs   /var/log    tmpfs    defaults,noatime,nosuid,mode=0755,size=5m    0 0
Mit Strg+X,J,Enter speichern

Fixe IP zuweisen:

Code: Alles auswählen

sudo nano /etc/dhcpcd.conf
Folgendes einfügen:
interface eth0
static ip_address=192.168.1.236/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
Mit Strg+X,J,Enter speichern

Neustarten:

Code: Alles auswählen

sudo reboot
Danach alle Updates durchführen und rebooten:

Code: Alles auswählen

sudo apt-get install rpi-update
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo rpi-update
sudo reboot
Automatische Updates konfiguriern:

Code: Alles auswählen

sudo apt-get install unattended-upgrades update-notifier-common
Alles mit "Ja" bestätigen
Danach :

Code: Alles auswählen

sudo dpkg-reconfigure -plow unattended-upgrades
sudo nano /etc/apt/apt.conf.d/10periodic
Inhalt ändern auf:

Code: Alles auswählen

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
Mit Strg+X,J,Enter speichern

Nun neuen Benutzer anlegen und den alten löschen:

Code: Alles auswählen

sudo useradd -m CAOAdmin -G sudo
sudo passwd CAOAdmin
2x "

Code: Alles auswählen

Counterfeig1942
" eingeben

Code: Alles auswählen

sudo reboot
und mit CAOAdmin einloggen

Code: Alles auswählen

sudo deluser -remove-home pi
Schritt 2: Raspi SSH Absichern

Code: Alles auswählen

sudo nano /etc/ssh/sshd_config
Inhalt durchsuchen und auf folgende Einstellungen abändern:

Code: Alles auswählen

PermitRootLogin no
Port 5020
Mit Strg+X,J,Enter speichern

Automatische Sperre für falsche Kennwörter aktivieren:

Code: Alles auswählen

sudo apt-get install fail2ban
sudo nano /etc/fail2ban/jail.conf 
Inhalt durchsuchen und alle gefundenen auf folgende Einstellung ändern:

Code: Alles auswählen

maxretry = 3 
Mit Strg+X,J,Enter speichern


Schritt 3: Firewall einrichten

Code: Alles auswählen

echo "Als erstes alle Regeln zurücksetzen"
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
echo "Alle lokalen Verbindungen auf dem Loopback akzeptieren"
sudo iptables -A INPUT -i lo -j ACCEPT
echo "Komische aussehende Pakete verwefen (oft fuer Angriffe benutzt)"
sudo iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
sudo iptables -A INPUT -f -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
sudo iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
echo "Datenverkehr akzeptieren der zu einer bereits geöffneten Verbindung gehört"
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "SSH erlauben"
sudo iptables -A INPUT -p tcp --dport 5020 -j ACCEPT
echo "MySQL4 erlauben"
sudo iptables -A INPUT -p tcp --dport 3307 -j ACCEPT
echo "Alle anderen Verbindungen ablehnen"
sudo iptables -A INPUT -j REJECT
sudo sh -c "iptables-save > /etc/network/iptables"
Regeln bei jedem Neustart neu laden:

Code: Alles auswählen

sudo touch /etc/network/if-pre-up.d/iptables
sudo chmod +x /etc/network/if-pre-up.d/iptables
sudo nano /etc/network/if-pre-up.d/iptables
Inhalt ändern auf:
#!/bin/sh
/sbin/iptables-restore /etc/network/iptables
Mit Strg+X,J,Enter speichern

Code: Alles auswählen

sudo reboot	

Schritt 4: MySql4 aufsetzen
Dieser Schritt dauert seeeehr lange.

Code: Alles auswählen

sudo groupadd mysql4
sudo useradd -m -d /usr/local/mysql4 -s /bin/false -g mysql4 mysql4
sudo apt-get install build-essential libncurses5-dev
sudo wget http://sunsite.informatik.rwth-aachen.de/mysql/Downloads/MySQL-4.1/mysql-4.1.22.tar.gz
sudo tar xvfz mysql-4.1.22.tar.gz
cd mysql-4.1.22
sudo chmod 777 /usr/local/mysql4
 
./configure --prefix=/usr/local/mysql4 \
--with-unix-socket-path=/usr/local/mysql4/var/mysqld.sock \
--with-mysqld-user=mysql4 \
--with-server-suffix=mysql4 \
--with-tcp-port=3307
 
sudo make && make install
/usr/local/mysql4/bin/mysql_install_db
sudo cp /usr/local/mysql4/share/mysql/mysql.server /etc/init.d/mysql4
sudo cp  /usr/local/mysql4/share/mysql/my-medium.cnf /usr/local/mysql4/var/my.cnf
sudo chown -R mysql4:mysql4 /usr/local/mysql4


Schritt 5: MySql4 konfigurieren

Code: Alles auswählen

sudo /etc/init.d/mysql4 start
sudo ps ax | grep mysql
sudo /usr/local/mysql4/bin/mysqladmin -P 3307 -u root password "xvz"
sudo /usr/local/mysql4/bin/mysql -p -P 3307
Passwort xvz eingeben

Neues Passwort setzen und die alte Passwortvergabe für MySQL4 wählen (von CAO benötigt)

Code: Alles auswählen

use mysql
grant all on *.* to root@'%.%.%.%' identified by 'xvz';
select user,host from user;
update user set password=PASSWORD("?!WERZSADJ??KAERI") where User='root';
UPDATE mysql.user SET Password = OLD_PASSWORD('?!WERZSADJ??KAERI') WHERE User = 'root';
sudo update-rc.d mysql4 defaults 
sudo rebootmc


FERTIG TEIL 1

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Schritt 5: USB Automount
Schritt 6: Midnight Commander installieren
Schritt 7: NoIP einrichten
Schritt 8: Automatisches Backupscript für MySQL Datenbank anlegen



Schritt 5: USB Automount (in /Media/USBX)

Code: Alles auswählen

sudo apt-get install usbmount
sudo nano /etc/usbmount/usbmount.conf
FS_MOUNTOPTIONS=""
ÄNDERN IN:

Code: Alles auswählen

FS_MOUNTOPTIONS="-fstype=vfat,gid=floppy,dmask=0007,fmask=0117"
Mit Strg+X,J,Enter speichern
Benutzer in Gruppe Floppy aufnehmen:

Code: Alles auswählen

sudo adduser CAOAdmin floppy
sudo reboot
Schritt 6: Midnight Commander installieren (OPTIONAL)

Code: Alles auswählen

apt-get install mc
Schritt 7: NoIP einrichten

Code: Alles auswählen

sudo mkdir /home/CAOAdmin/noip
cd /home/CAOAdmin/noip
sudo wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
sudo tar vzxf noip-duc-linux.tar.gz
cd noip-2.1.9-1
sudo make
sudo make install
Passwort usw eingeben

Code: Alles auswählen

sudo /usr/local/bin/noip2 -S
crontab anlegen:

Code: Alles auswählen

sudo Cronetab -e
@reboot /usr/local/bin/noip2
Schritt 8: Nicht benötigte Dateien löschen
Im /home/CAOadmin Ordner die Mysql dateien löschen
Im /home/CAOadmin Ordner die NOIP dateien löschen

Schritt 9: Automatisches Backupscript für MySQL Datenbank anlegen:
sudo nano /usr/local/sbin/MySQLBackup.sh
Foglenden Inhalt einfügen:

Code: Alles auswählen

#!/bin/bash
#This script is for backuping the CAO SQL engine.
#It always backup all databases on the MySQL Server.
#You should but it in a CroneTab and run it once a day.
#
#A USB Pendrive must be formated as FAT32/FAT16.
#A Folder with the name 'CAOBackup' has to created on the USB Pendrive.
#In this folder you will your backupfiles.
#
#
#
#
getDay=$(date "+%d")
getMonth=$(date "+%m")
getYear=$(date "+%Y")
getHour=$(date "+%H")
getMinute=$(date "+%M")
getSecond=$(date "+%S")
Date=$getYear'_'$getMonth'_'$getDay'_'$getHour'_'$getMinute
getPassword='?!WERZSADJ??KAERI'
getUser='root'
Filename='cao_backup_'
LogFileName='LogFile.txt'
Fol1='/media/usb'
Fol2='/CAOBackup/'

for ((z=0;z<=7;z++))
do
	Folder=$Fol1$z$Fol2
	if [ -d $Folder ]; then 
		echo "$Date : Found backup location: $Folder"
		echo "$Date : Found backup location: $Folder" >>$Folder$LogFileName
		if ! [ -f $Folder$LogFileName ]; then 
			echo "$Date : LogFile.txt created" > $Folder$LogFileName 
			echo "$Date : LogFile.txt created" 
		else
			echo "$Date : LogFile.txt found. No need to create a new one" 
		fi
		echo "$Date : Create MySQL dump under: $Folder$Filename$Date.gz"
		echo "$Date : Create MySQL dump under: $Folder$Filename$Date.gz" >>$Folder$LogFileName
		sudo /usr/local/mysql4/bin/mysqldump -u$getUser -p$getPassword --all-databases | gzip > $Folder$Filename$Date'.gz'
		if [ $? -ne 0 ]; then
			echo "$Date : Error creating SQL Stream" >>$Folder$LogFileName
			echo "$Date : Error creating SQL Stream"
		else
			echo "$Date : SQL Dump OK" >>$Folder$LogFileName
			echo "$Date : SQL Dump OK"
		fi
	fi	
done
Mit Strg+X,J,Enter speichern
Ablauffähig machen:

Code: Alles auswählen

sudo chmod +x /usr/local/sbin/MySQLBackup.sh
Und neuen cronetab anlegen:

Code: Alles auswählen

crontab -e
2. /bin/nano auswählen
Folgendes einfügen:

Code: Alles auswählen

0 0 * * * /usr/local/sbin/MySQLBackup.sh
Mit Strg+X,J,Enter speichern

Code: Alles auswählen

sudo reboot


FERTIG

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Ein Banana Pi M3, 2 GB ist natürlich schon eine bessere Liga.
Ausserdem würde die MySQL Database gleich von Anfang an auf die Festplatte kommen.

Habe das genze übrigends auf einer Synology auch aufgesetzt gehabt.
Leider eliminierte das Autoupdate ständig meine MySQL4.

Wird mal MariaDB oä. unterstützt, kann man alles auf einem NAS laufen lassen.

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

ja wunder bar, da kann sichs jeder selber bauen :-) mit der Anleitung schaft das wirklich jeder.

DANKE
Gruß Manne
------------------------------------
CAO: 1.4.4.265 F (ich werde die 1.5er an dem Tag kaufen an dem sie kaufbar wird :D)
Modified Shop (Version geheim*lach*)
Shop-Interface Version 1.56, gepimt und fehler gefixt.
MySQL: 4.1.22 auf Debian6 VM

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Für eine kleine Aufwandsentschädigung währe ich auch bereit fertige SD Karten mit Rechnung zu verkaufen.
Die Karten sind für folgende 2 Systeme kompatibel: Raspberry PI2 und Raspberry PI3.

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Hallo Leute,

SD Karten haben nur eine begrenzte Anzahl von Schreibzugriffen.
Ausserdem muss der Server immer heruntergefahren werden und darf nicht
einfach vom Netz getrennt werden.
Sonst kann die SD Karte unleserlich werden.

Um das zu minimieren, noch einige Tipps von mir:

Swapfile deaktivieren:

Code: Alles auswählen

sudo dphys-swapfile swapoff
sudo service dphys-swapfile stop
sudo apt-get purge dphys-swapfile

Logfiles in Ram legen:

Code: Alles auswählen

sudo nano /etc/fstab
Folgendes soll angefügt werden:

Code: Alles auswählen

none        /var/run        tmpfs   size=5M,noatime         00
none        /var/log        tmpfs   size=5M,noatime         00

Watchdog aktivieren:

Code: Alles auswählen

sudo apt-get install watchdog
sudo modprobe bcm2708_wdog
echo "bcm2708_wdog" | sudo tee -a /etc/modules

sudo nano /etc/watchdog.conf
Folgendes auskommentieren (Raute):

Code: Alles auswählen

watchdog-device        = /dev/watchdog
max-load-1             = 24

Code: Alles auswählen

sudo nano /lib/systemd/system/watchdog.service
Folgendes ergänzen:

Code: Alles auswählen

[Install]
WantedBy=multi-user.target
Danach das Service starten:

Code: Alles auswählen

sudo systemctl enable watchdog.service
sudo systemctl start watchdog.service

Re: CAO 4er DB-Server, für 0,93 Euro pro Monat

Achtung:

Fstab NICHT ändern. Läuft bei mir nicht mehr stabil :-(

Dafür könnt ihr einiges an DB Performance herausholen.
Der Raspi2 + Raspi3 haben genug Speicher, um die grössere Konfig zu vertragen :-D
Einfach:

Code: Alles auswählen

sudo cp  /usr/local/mysql4/share/mysql/my-large.cnf /usr/local/mysql4/var/my.cnf
Und dann neustarten mit:

Code: Alles auswählen

sudo reboot

Wie gesagt. Fertige und auch persönlich angepasste Karten (Passwörter,usw,...) kann ich jederzeit liefern :-)