ERLEDIGT
NEIN
NEIN
ANTWORTEN
10
10
ZUGRIFFE
1030
1030
EMPFEHLEN
-
Hi Leute,
ich hätte da ein paar Grundlegende Fragen zum Thema Webserver unter Linux. Und zwar habe ich vor, einen eigenen Webserver mit Apache und Linux einzurichten, der auch über das Internet erreichbar sein soll. Natürlich, mir ist bekannt, dass das mit einem Homeserver und normalen DSL nix besonderes werden kann, aber es solle ja auch nur dem Zeck des Lernens, Übens und Probierens dienen. Ich möchte einfach mehr über Linux in Verbindung mit Server-Diensten Lernen und dazu wäre mir ein Professioneller Root-Server zu teuer und zu riskant. Ich habe in Linux schon ein paar Jahre Erfahrung, in Bezug auf Webserver Installation & Konfiguration bin ich allerdings noch Anfänger.
So, noch ein paar Grundlegende Infos zum Server:
Prozessor: Intel Centrino 1,7GHZ
Arbeitsspeicher: 384MB DDRAM
Festplatte: 40GB
Betriebssystem: Debian GNU/Linux 3.1 "sarge" mit Kernel 2.6.8
Internet: XDSL mit 2Mbit/sec. Download und 384kbit/sec. Upload
(für Testzwecke dürfte das meiner Meinung nach reichen)
Meine Fragen, zu denen ich trotz langem Suchens keine wirklich brauchbaren Antworten finden konnte:
1.) Ist ein LAMPP-Server von Apachefriends.org ausreichend was Performance und Sicherheit betrifft oder gilt so ein "Fix-und-Fertig-Sorglos-Paket" eher als Unprofessionell bzw. Unsicher?
2.) In welches Verzeichnis Installiere ich den Server bzw. wo ist der Ordner am besten aufgehoben, in welchen die ganzen Websites kommen (im Fall von Apache "htdocs")? Standardmässig wird ja das LAMPP-Paket in /opt/lampp installiert und die Websites befinden sich dann in /opt/lampp/htdocs
Kann man diese Konfiguration übernehmen oder wo speichert ein Professioneller Hoster seine Kunden-Websites?
3.) Damit der Server inkl. den Diensten und Programmen läuft, muss man ja unter einem Benutzer-Account ständig eingeloggt sein - denke ich zumindest mal. Mit was für einem Account ist ein Webserver eines typischen Webhosters denn Online? Als root? Als eingeschränkter Benutzer?
4.) Benötigt ein Webserver eine Firewall?
OK, das war's vorerst. Entschuldigt bitte, falls die Fragen schon mal wo gestellt wurden, aber ich konnte auch mit SuFu nichts wirklich hilfreiches finden...
Würde mich sehr über ein paar Antworten freuen, Vielen Dank im Voraus
Mfg
tmarsel
-
08.03.05 06:03 #2
- Registriert seit
- Dec 2001
- Ort
- Hannover
- Beiträge
- 4.225
Hi tmarsel!
Schön das Du erst mal auf einem lokalen System herumprobierst. Ich versuche mich mal an Deine Fragen heranzutasten:
1.) Da spalten sich die Meinungen. Theoretisch sollte ein LAMPP relativ sicher sein. Der Apachefriends LAMPP ist - wenn die letzten Versionen nicht viel an der Konfiguration geändert wurde - so konfiguriert, das man so viele Funktionen wie möglich hat. Das könnte ein Punkt sein, der dagegen spricht. Ein Purist wie ich bastelt sich dann lieber alles zusammen und benötigt dann auch höchstens ein Viertel des LAMPP-Speicherplatzes
Im Grunde genommen kann man sich mit Debian aber ein eigenes LAMPP mit apt-get einrichten. Auch hier ist natürlich nachbessern angesagt, was die Konfiguration angeht. Ich empfehle immer www.debianhowto.de - hier wird so ziemlich alles geschildert, was man für einen (relativ sicheren) Webserver braucht und wie man das erreicht.
2.) Wo das htdocs-Verzeichnis sich befindet ist Jacke-wie-Hose. Du wirst wohl bei den meisten Webhostern eine eigene Verzeichnisstruktur finden. Als praktisch hat sich eine eigene Partition erwiesen, die man sehr einfach sichern kann.
3.) Das ist absoluter Schmarrn. Die Dienste besitzen entweder a) einen eigenen Besitzer, werden b) über die init.d (& Co. oder auch gerne über die daemontools) gestartet (also muss man sich nicht einloggen) und laufen c) am besten nie über root. Bis auf seltene Programme sollte immer ein Benutzer mit eingeschränkten Rechten den Dienst besitzen. Sollte man einen Dienst per Hand starten müssen, kann man mit dem Linux Befehl nohup dessen Priorität so erhöhen, das der Prozess nach dem ausloggen weiterläuft!
4.) Kommt darauf an. Theoretisch sollte jeder Server, der mit einem größeren Netzwerk (Internet z. B.) verbunden ist eine Firewall mit bestimmten Regeln haben. Das gilt dem Selbstschutz, wie auch dem Schutz für andere. Es ist nicht unbedingt notwendig, aber sehr, sehr zu empfehlen (und auch für Anfänger - leider - sehr schwer einzurichten).
Ich denke mal das wirft vielleicht weitere Fragen auf
Also Petri Heil!
ISARA - PHP Dateimanager (mach mit!)
Copy for free
Z B A L E F U L G J G O K L B K H N E U R O V U T
N D F F X Z Q C P R E T E N D E R P Z W K ß G X T
H U B R I S T I C A O Ö T G X I M E Ä G R U D G E
-
Ich sag mal was zu Punkt 3 und 4.
3. Unter Linux werden Server-Prozesse in der Regel als Daemon gestartet, normalerweile beim Booten. Selbst wenn ein solcher Daemon manuell gestartet wird laeuft er in der Regel im Hintergrund und es muss nichts weiter unternommen werden damit er auch nach dem Logout des Users der den Dienst gestartet hat weiterhin laeuft.
4. Wie mein Vorredner schon sagte sollte jeder direkt mit dem Internet verbundene Server eine Firewall haben. Denn in der Regel laeuft mehr als nur der Webserver. Weiterhin ist es nicht allzu schwer eine Firewall einigermassen sicher zu konfigurieren, auch nicht fuer Anfaenger. Mit nur 4 Befehlen kannst Du alles bis auf den Zugriff auf den Webserver dicht machen. Wenn das nicht mal einfach ist.
Nachtrag: Man kann es auch auf 2 Befehle reduzieren. Also noch einfacher.
Geändert von Dennis Wronka (08.03.05 um 06:55 Uhr)
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Vielen Dank für die Umfangreichen Erklärungen - haben sehr geholfen

zum Apache bzw. LAMPP-Server: Ich konnte bereits Erfahren, dass man als Professioneller Hoster eigentlich nur den Originalen Apache verwendet und kein "Fertig"-Paket. Naja, irgendwie auch logisch, da diese Pakete eigentlich nur für den Home-User gedacht sind um schnell mal was Probieren zu können.
Wie du schon sagtest, sind beim LAMPP von apachefriends sehr viele Funktionen Standardmässig aktiviert, die nicht gerade als sicher gelten - Beispiel mod_rewrite.
Ich habe jetzt aber trotzdem vorerst mal den LAMPP-Server installiert, aus folgendem Grund:
Ich möchte mich langsam und behutsam vorantasten - die Erste Hürde die ich zu meistern habe ist erstmal, dass der Server überhaupt aus dem Internet erreichbar ist, weil das in meinem Fall noch die schwierigste Aufgabe ist (kann sich glaube ich jeder vorstellen, der die Nachteile von DSL mit dynamischer IP kennt
).
Um das Testen zu können, brauche ich erstmal einen Test-Server, an dem ich sehen kann, ob er von Aussen erreichbar ist oder nicht.
Wenn das mal geschafft ist, dann kann ich mich in die Feinheiten der Server-Konfiguration und Sicherheits-Einstellungen wagen.
So, also LAMPP-Server mit PHP4 und MySQL funktioniert, zumindest im Lokalen Netzwerk. Ich konnte auch bereits die ganze Geschichte mit der Dynamischen IP und dem Automatischen Update meiner IP regeln (ich sage da jetzt nur no-ip.com), soweit scheint alles ohne Probleme zu funktionieren.
Jetzt muss ich mich nur noch irgendwie vergewissern können, ob mein Server auch wirklich von aussen erreichbar ist - aber ohne, dass ich dauernd einen Kumpel um Hilfe bitten muss.
Deswegen noch eine Frage von mir: Wie stelle ich das am besten an?
Ich habe ein bisschen herumgetüftelt und probiert: Ich habe eine kleine Test-Website erstellt und hoste diese auf meinem Server. Jetzt habe ich mit einem Ladezeit-Check diese Website überprüfen lassen, mit der Domain die ich mir auf no-ip.com registriert habe. Er konnte die Website ohne Probleme auf die Ladezeit überprüfen.
Hat das jetzt irgendwie eine Aussagekraft über die Erreichbarkeit meines Servers?
Noch mal Danke für die Hilfe
Mfg
tmarsel
-
08.03.05 19:38 #5
- Registriert seit
- Dec 2001
- Ort
- Hannover
- Beiträge
- 4.225
@reptiler: Ich kenne User, die haben sich mit nur einem Befehl ausgesperrt

@tmarsel: Deine Idee mit dem Ladezeitencheck ist schon mal sehr gut. Wenn Du bereits Webspace hast, z. B. mit Perl/PHP unterstützung, kannst Du eine Abfrage schreiben, die für Dich überprüft ob man den Server erreichen kann (dazu gibt es mehrere Beiträge - mit fertigen Scripten - im PHP-Forum). Sofern Du von einem anderem System als Deinem die Verbindung zu Deinem Webserver überprüfst, hat es definitiv Aussagekraft über die Erreichbarkeit von aussen =)ISARA - PHP Dateimanager (mach mit!)
Copy for free
Z B A L E F U L G J G O K L B K H N E U R O V U T
N D F F X Z Q C P R E T E N D E R P Z W K ß G X T
H U B R I S T I C A O Ö T G X I M E Ä G R U D G E
-
Danke für den Tip mit den PHP-Skripten, aber ich habe es mir dann doch etwas einfacher gemacht:
Ich habe einfach einen Proxy benutzt. Wenn ich über einen Proxyserver auch auf meine Webseite gelange, die auf meinem Homeserver liegt, dann MUSS es ja funktionieren - und es hat funktioniert
Ich konnte ohne Probleme die Website aufrufen, sogar relativ schnell, wenn man bedenkt, dass es ein Homeserver ist und ich einen Proxy verwendet habe. Ohne Proxy geht es noch schneller
OK, dann Vielen Dank noch mal an euch, es hat alles wunderbar geklappt - dank eurer Hilfe
Mfg
tmarsel
-
Natuerlich:
Zitat von Neurodeamon
Code :1
iptables -A INPUT -j DROP

Aber mit einer Zeile mehr, also:
kann man alles bis auf den Webserver blocken.Code :1 2
iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -j DROP
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
09.03.05 02:23 #8
- Registriert seit
- Dec 2001
- Ort
- Hannover
- Beiträge
- 4.225
Mit Deinen zwei Zeilen hättest Du aber auch jeglichen Zugriff über SSH ausgeschlossen

Hier sollte man mit iptables ssh noch über port 22 (je nach konfiguration) freistellen (am besten mit 30 - 60 Sekunden delay nach 3 Fehlerhaften Loginversuchen gegen Bruterforceangriffe)
Code :1 2 3 4 5 6
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set \ --name SSH -j ACCEPT iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 4 --rttl \ --name SSH -j LOG --log-prefix "SSH_brute_force " iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 \ --hitcount 4 --rttl --name SSH -j DROP
Geändert von Neurodeamon (09.03.05 um 02:25 Uhr)
ISARA - PHP Dateimanager (mach mit!)
Copy for free
Z B A L E F U L G J G O K L B K H N E U R O V U T
N D F F X Z Q C P R E T E N D E R P Z W K ß G X T
H U B R I S T I C A O Ö T G X I M E Ä G R U D G E
-
Ja gut, hast recht. Aber nicht jeder braucht unbedingt SSH. Wenn die Box direkt vor Dir steht brauchst Du's nicht zwingend.
Wir koennten natuerlich mit:
auch noch den Mail- und FTP-Server zugaenglich machen.Code :1 2
iptables -A INPUT -p tcp --dport smtp iptables -A INPUT -p tcp --dport ftp
Ich denke mittlerweile haben wir auf jeden Fall genug Beispiele geliefert wie einfach es doch ist einen Paketfilter zu bauen.
Ich moechte zu unseren Beispielen mal anmerken, dass ich eigentlich kein Freund davon bin die Regeln direkt in die INPUT (etc.) Chain zu packen sondern lieber eigene Chains erstelle und die in den entsprechenden Chains verlinke.PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
09.03.05 03:00 #10
- Registriert seit
- Dec 2001
- Ort
- Hannover
- Beiträge
- 4.225
Ich möcht eigentlich auch keine große Diskussion starten, sondern nur darauf hinweisen, das jemand als Anfänger mit iptables eine Menge Schwachfug machen kann und es sehr einfach ist sich anhand eines Missverständnisses vom System auszuschließen. Deshalb hielt ich es für wichtig Dein Beispiel ein wenig zu erweitern um den wagemutigeren Lesern Fun mit dem Kundenservice einer Firma für Rootserver zu ersparen
Zitat von reptiler
ISARA - PHP Dateimanager (mach mit!)
Copy for free
Z B A L E F U L G J G O K L B K H N E U R O V U T
N D F F X Z Q C P R E T E N D E R P Z W K ß G X T
H U B R I S T I C A O Ö T G X I M E Ä G R U D G E
-
Ja okay.
Aber wir sind ja sowieso schon ueber's Ziel hinaus geschossen, er wollte ja nur wissen ob es schwer ist.
Und nicht wie man es macht.
Naja, jetzt hat er wenigstens ein paar kleine Beispiele wie es ungefaehr aussieht.
Bei weiteren Fragen kann er dann ja wieder um Hilfe rufen.
Bei den meisten Firewall-bezogenen Fragen kann ich glaub ich mittlerweile auf andere Threads verweisen, da ich hier, besonder in der letzten Zeit, soviel zu dem Thema gesagt hab wie wohl nie zuvor. Aber, ich liebe es (TM).
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
Ähnliche Themen
-
[Brainfuck] Grundlegende Fragen
Von Irgendjemand_1 im Forum Sonstige SprachenAntworten: 4Letzter Beitrag: 01.06.08, 02:24 -
Grundlegende Fragen zu Formular mit Session
Von Luke85 im Forum PHPAntworten: 5Letzter Beitrag: 19.12.07, 19:10 -
Grundlegende Fragen zu asp.Net (v2)
Von Suchfunktion im Forum ASPAntworten: 2Letzter Beitrag: 26.01.06, 23:02 -
Ein paar Grundlegende Fragen
Von KooF im Forum 3D Studio MaxAntworten: 4Letzter Beitrag: 15.03.05, 08:24 -
Grundlegende Fragen zu HTML&Webdesign
Von PAK im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 12.01.04, 19:44





Zitieren
Login




