tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
1042
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    tmarsel tmarsel ist offline Grünschnabel
    Registriert seit
    Mar 2005
    Beiträge
    3
    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
     

  2. #2
    Registriert seit
    Dec 2001
    Ort
    Hannover
    Beiträge
    4.234
    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!
     
    Copy for free - Yet another page for free software with soures:
    • BitUnlocker (Automatic unlock multiple Bitlocker secured drives - if you use the same password)
    • W7 ScrollZoom (Use Windows 7 zoom tool through your mouse wheel)
    • AppStarter (Somewhat like PortableApps launcher)
    • QuakeConsole (Show/Hide windows console with your tilde key)
    • BetterFileRenamer (Simple file renamer that adds date and version)
    .... more to come

  3. #3
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    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 Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  4. #4
    tmarsel tmarsel ist offline Grünschnabel
    Registriert seit
    Mar 2005
    Beiträge
    3
    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
     

  5. #5
    Registriert seit
    Dec 2001
    Ort
    Hannover
    Beiträge
    4.234
    @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 =)
     
    Copy for free - Yet another page for free software with soures:
    • BitUnlocker (Automatic unlock multiple Bitlocker secured drives - if you use the same password)
    • W7 ScrollZoom (Use Windows 7 zoom tool through your mouse wheel)
    • AppStarter (Somewhat like PortableApps launcher)
    • QuakeConsole (Show/Hide windows console with your tilde key)
    • BetterFileRenamer (Simple file renamer that adds date and version)
    .... more to come

  6. #6
    tmarsel tmarsel ist offline Grünschnabel
    Registriert seit
    Mar 2005
    Beiträge
    3
    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
     

  7. #7
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    Zitat Zitat von Neurodeamon
    @reptiler: Ich kenne User, die haben sich mit nur einem Befehl ausgesperrt
    Natuerlich:
    Code :
    1
    
    iptables -A INPUT -j DROP

    Aber mit einer Zeile mehr, also:
    Code :
    1
    2
    
    iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -j DROP
    kann man alles bis auf den Webserver blocken.
     
    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 Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  8. #8
    Registriert seit
    Dec 2001
    Ort
    Hannover
    Beiträge
    4.234
    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)
     
    Copy for free - Yet another page for free software with soures:
    • BitUnlocker (Automatic unlock multiple Bitlocker secured drives - if you use the same password)
    • W7 ScrollZoom (Use Windows 7 zoom tool through your mouse wheel)
    • AppStarter (Somewhat like PortableApps launcher)
    • QuakeConsole (Show/Hide windows console with your tilde key)
    • BetterFileRenamer (Simple file renamer that adds date and version)
    .... more to come

  9. #9
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    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:
    Code :
    1
    2
    
    iptables -A INPUT -p tcp --dport smtp
    iptables -A INPUT -p tcp --dport ftp
    auch noch den Mail- und FTP-Server zugaenglich machen.
    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 Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  10. #10
    Registriert seit
    Dec 2001
    Ort
    Hannover
    Beiträge
    4.234
    Zitat Zitat von reptiler
    Ja gut, hast recht. Aber nicht jeder braucht unbedingt SSH. Wenn die Box direkt vor Dir steht brauchst Du's nicht zwingend.
    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
     
    Copy for free - Yet another page for free software with soures:
    • BitUnlocker (Automatic unlock multiple Bitlocker secured drives - if you use the same password)
    • W7 ScrollZoom (Use Windows 7 zoom tool through your mouse wheel)
    • AppStarter (Somewhat like PortableApps launcher)
    • QuakeConsole (Show/Hide windows console with your tilde key)
    • BetterFileRenamer (Simple file renamer that adds date and version)
    .... more to come

  11. #11
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    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 Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

Ähnliche Themen

  1. [Brainfuck] Grundlegende Fragen
    Von Irgendjemand_1 im Forum Sonstige Sprachen
    Antworten: 4
    Letzter Beitrag: 01.06.08, 02:24
  2. Antworten: 5
    Letzter Beitrag: 19.12.07, 19:10
  3. Grundlegende Fragen zu asp.Net (v2)
    Von Suchfunktion im Forum ASP
    Antworten: 2
    Letzter Beitrag: 26.01.06, 23:02
  4. Ein paar Grundlegende Fragen
    Von KooF im Forum 3D Studio Max
    Antworten: 4
    Letzter Beitrag: 15.03.05, 08:24
  5. Grundlegende Fragen zu HTML&Webdesign
    Von PAK im Forum HTML & XHTML
    Antworten: 2
    Letzter Beitrag: 12.01.04, 19:44