Debian Minimalsystem

KRiusd

KRiusd

Jungspund
Hallo susammen,

ich betreibe bisher einen kleinen Webserver auf Windows in einer VM.
Da Windows bekanntlich nicht gerade sparsam mit den Resourcen umgeht,
würde ich den Webserver gerne in ein Debian Minimalsystem umziehen.

Leider haben meine bisherigen Versuche, meinem Empfinden nach,
nicht gerade zu einem Minimalsystem geführt.

Folgende Komponenten sollten enthalten sein:
+ Alles für die sinnvolle Administration
+ LAMP
+ SSH
+ SMB
+ (Optional Mailserver)

Wie gehe ich bei der Debian-Installation vor um ein sinnvolles Minimalsystem zu bekommen? (Debian 5.0.3)

Ist es sinnvoll SMB und Storage auf ein separates System zu legen?
DB zur Sicherheit ebenfalls auf ein separates System?


Ich habe bisher schon einiges unter Linux gemacht.
Kann mich wunderbar im System (ohne GUI) bewegen und bin mit den Grundbefehlen vertraut.
Allerdings würde ich mich was Linux-Installationen angeht noch zu den Anfängern zählen ;)

Würde mich freuen wenn jemand so nett wäre mich zu führen :)

Vielen Dank!
 
SMB sollte auf jeden Fall auf einem separaten Rechner liegen und vor allem nicht über's Internet verfügbar sein. Für Uploads auf den Webserver nutze besser SFTP über SSH o.ä., was verschlüsselt wird und nicht so unsicher ist wie SMB.
 
und vergiss lamp
da installiert man mysql und apache .... die sind dann auch wartbar über die repos.
lamp ist ein gefrickel das aus der windowswelt kommt

der Rest wurde schon gesagt.
Allerdings würde ich an deiner stelle nicht meinen Webserver mit linux betreiben ohne Linux Basics zu haben, denn schließlich bist du dafür haftbar wenn was passieren sollte.

Also Empfehlung erst mal daheim am lokalen Server testen und absichern und dann erst den Webserver konfigurieren.
 
Erst einmal vielen Dank!

Wenn ich das richtig sehe lohnt es sich eine komplette Linux Umgebung zu bauen...

Wieviele Server mit welchen Services sind hier sinnvoll?
Macht hier eine Userverwaltung auf einem Server sinn? LDAP?

Server 1 (Fileserver):
+ Storage
+ SMB
+ SSH

Server 2 (Webserver):
+ LAMP (MySQL auf Server 1? Extra Server?)
+ SSH

Server X ?


Were nun erst einmal einen Minimalserver nach Anleitung bauen ...
 
Es kommt auf die Anforderung an.
Zum einen vergiss mal smb, da das Protokoll schei*** ist und wie schon erwähnt sehr unsicher.
Ich würde ein 2 -Server setup so machen

Server1 Webserver:
- Mysql-Server
- sshd
- Apache2
- php /rails whatever

Server2 Fileserver
- Storage(nfs) oder wenn vorhanden iscsi
- sshd

Es kommt drauf an in wie weit du eine Userverwaltung benötigst, wenn du z.b. (was man auch normal macht) einen anderen user nehmen willst unter denen in /var/www/my_project läuft, machst du das über die systemuser.

Wenn du eine Userverwaltung willst, die übergreifend sein soll (verschiedene Dienste) macht man das mit LDAP.
LDAP ist aber ein wirklicher klotz am Bein und würde das dringend abraten.

Wenn du deine Anwendung ausfallsicher machen willst würde ich eher das so machen.

Server 1 -> LoadBalancer (Layer3 oder mod_proxy_balancer)
Server 2+3 -> AppServer
Server 4 DB-Server + NFS-Shares

oder
Server 1 -> LoadBalancer (Layer3 oder mod_proxy_balancer)
Server 2+3 -> AppServer
Server 4 DB-Server
Server 5 NFS-Shares

Wobei das keine physikalischen Server sein müssen, das können auch Xen oder KVM-Slices sein. Da muss man nur schaun wo das sinn macht (vorallem I/O auslastung)
 
Das Ganze ist mehr oder weniger eine private Spielwiese für mich als IT-"Spielkind" ;)

Ich würde alle Server in VMware laufen lassen...
... daher alles Virtuelle Festplatten - ist das ein Problem?

Komme ich an die NFS Shares auch mit Windows rann?


Nach deinen Beispielen würde ich folgendes machen:
(LoadBalance ist erst einmal nicht notwenig)

Server1 Webserver (Entspricht AppServer?):
- sshd
- Apache2
- php

Server2 DB-Server:
- sshd
- Mysql-Server (DB-Storage auch von Server3 mounten oder lokal?)

Server3 Fileserver
- sshd
- Storage(nfs?)

Lege ich dann auf jedem Server einen bzw. den gleichen User zur Administration an?
Mit root zu Arbeiten ist ja nicht unbedingt sinnvoll...
 
nein nfs kannst du nicht unter windows mounten aber warum willst du das denn ?

wenn du was von dem server brauchst, einfach per sFTP connecten und runter/hoch laden.

DB ist kein Storage, du musst nur einen DB-User anlegen, der von dem Web bzw App-Server connectieren darf. Dabei muss natürlich der mysqld auch auf dem Interface lauschen, wo die anfrage ankommt.

Bei NFS ist es so, das du den gleichen User auf den Systemen (NFS-Server und Clients) benötigst. Dieser muss auch die gleiche uid haben !

Soweit ich weiß, ist VMWare (bitte korrigiert mich) eine voll Virtualisierung, was natürlich von der Dom0 ne Menge Ressourcen abzweigt, aus diesem Grund habe ich extra Xen oder KVM (meinetwegen noch openvz) vorgeschlagen, da man dort eine paravirtualisierung fahren kann.
 
Server

Hallo

Komme ich an die NFS Shares auch mit Windows rann?

Ja, bei nfsv3 sogar mir einem MSClient, bei nfsv4 nur mit einem propietären Client (kostet afaik 120€), ein kostenloser nfsv4 Cleint für win ist in Arbeit.

mfg
schwedenmann
 
DB ist kein Storage, du musst nur einen DB-User anlegen, der von dem Web bzw App-Server connectieren darf.

MySQL scheibt die DB ja als File auf die Platte.
Die Frage ist ob ich den Platz für die DB-Files auch vom nfs mounte
oder die Files lieber lokal auf dem Webserver liegen lasse.

Soweit ich weiß, ist VMWare (bitte korrigiert mich) eine voll Virtualisierung, was natürlich von der Dom0 ne Menge Ressourcen abzweigt, aus diesem Grund habe ich extra Xen oder KVM (meinetwegen noch openvz) vorgeschlagen, da man dort eine paravirtualisierung fahren kann.

Wenn ich das richtig verstehe funktioniert Xen so ähnlich wie Zonen unter Solaris? In diesem Fall hätte ich aber nur noch einen "Server" (Dom0) in dem ich dann die restlichen Server also Domänen einhänge, oder?
Ist hier trotzdem auf jeder Domäne ein eigenes Betriebsystem drauf?
 
Das nennt man dann domU :>
Jain, openvz ist eher vergleichbar mit Jails bzw Zonen. Bei Xen installierst du für jede DomU ein eigenes System (kanst du dir aussuchen)
Allerdings wenn du erst anfängst mit Virtualisierung würde ihc zu KVM greifen, da dann das gefrickel mit der Kernelbauerei wegfällt.

Wieso willst du denn die DB-Files (und ja das macht MySQL) sharen ? Das hat eigentlich keinen Sinn, ausser wenn du ein Failover mit heartbeat oder ähnliches realisieren willst.
Bei allen anderen Dingen connectest du einfach zu deinem DB-Server mit deiner Anwendung und fertig. Der DB-Server muss ja nicht mit localhost angesprochen werden, der kann ja auch irgendwo im netz sein.

Wobei ich immer darauf achten würde, dass der DB-Server nur über ein Backnet angesprochen werden kann und nicht über die externe Schnittstelle

@T-One ah ok ... wusst ich nicht, da ich davon ausgegangen bin das MS nicht auf andere Dateisysteme schreiben bzw lesen kann
 
Das nennt man dann domU :>
Jain, openvz ist eher vergleichbar mit Jails bzw Zonen. Bei Xen installierst du für jede DomU ein eigenes System (kanst du dir aussuchen)

Wäre dann VMware nicht ähnlich?
Da habe ich ja auch ein Host System (z.B. Debian) auf dem der VMware Server läuft in dem dann n Gast Systeme (z.B. auch Debian) laufen.
Die Resourcen des Host Systems werden je nach eingestellter Maximalgrenze mit den Gast Systemen geshared...


Wieso willst du denn die DB-Files (und ja das macht MySQL) sharen ? Das hat eigentlich keinen Sinn, ausser wenn du ein Failover mit heartbeat oder ähnliches realisieren willst.

Will die Daten ja nicht sharen. Dachte nur, vielleicht alle Daten auf einem zentralen Server abzulegen. Ob das sinn machen würde kann ich nicht beurteilen. ?(

Wobei ich immer darauf achten würde, dass der DB-Server nur über ein Backnet angesprochen werden kann und nicht über die externe Schnittstelle

Meinst du mit Backnet, dass der MySQL Server nur Anfragen aus dem lokalen Netz beantwortet?
 
Meinst du mit Backnet, dass der MySQL Server nur Anfragen aus dem lokalen Netz beantwortet?

Er nimmt dann nur diese Verbindungen an.

Datenbanken shared man nicht so einfach, das kannst du nur über iSCSI oder DRBD regeln.
Das macht für dich aber keinen Sinn.
 
Gut, dann werde ich erst einmal diese Variante versuchen:

Server1 Webserver
- sshd
- Apache2
- php

Server2 DB-Server:
- sshd
- Mysql-Server

Server3 Fileserver
- sshd
- Storage (NFS)

Überall lokaler Adminuser mit gleicher ID.

Vielen Dank für die Hilfe! :D
 
Wenn du jetzt noch Webmin als Verwaltungsoberfläche nimmst dann kannst du alle Server über EIN Web-Interface verwalten ohne ständig zwischen den Servern per ssh hin und her zu switchen ;)
 
Debian-server

Hallo


Wenn du jetzt noch Webmin als Verwaltungsoberfläche nimmst

Nur das in debian Webmin rausgeflogen ist, ich weiß gar nicht, obs nicht noch irgendwo debs gibt (ev. von Ubuntu).

Für die Administrierung braucht man keine GUI, lesen der doku und arbeiten mit einem Editor seiner Wahl reicht völlig.

mfg
schwedenmann
 
Hallo

Nur das in debian Webmin rausgeflogen ist, ich weiß gar nicht, obs nicht noch irgendwo debs gibt (ev. von Ubuntu).

Für die Administrierung braucht man keine GUI, lesen der doku und arbeiten mit einem Editor seiner Wahl reicht völlig.

mfg
schwedenmann

Brauchen tut man die selbstverständlich nicht aber es machts um einiges einfacher wenn ich 3 Server über eine Oberfläche verwalten kann. Außerdem kann man sich Webmin direkt von der Website runterladen. Da gibt es das als .deb-Paket oder man fügt es als Quelle ins Repo ein! Steht alles auf der Webminseite ;)
 
Es wird nicht unbedingt empfohlen Webmin über das Internet zu verwenden, da die Sicherheit dieses Tools recht lau ist.
 

Ähnliche Themen

Empfehlung für Server Distribution

Windows clients können nicht mehr auf lange laufendes System zugreifen

Debian squeeze, Webmin, Samba Freigaben

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

Debian auf Maxdata Platinum Server

Zurück
Oben