Eine kleine Herausforderung, mich mit Linux vertraut zu machen [geschlossen]

9

Ich würde gerne mehr über Linux erfahren. Ich habe kurz ein paar Bücher und einige Artikel online durchgesehen, aber der einzige Weg, etwas zu lernen, besteht darin, es tatsächlich zu benutzen.

Ich möchte in die Tiefe springen und einen Linux-Server konfigurieren. Bisher habe ich Ubuntu Server heruntergeladen.

Ich suche ein Ziel oder eine Herausforderung, wenn Sie möchten, etwas, das mich mit Linux-Servern vertraut macht.

Idealerweise möchte ich einen sicheren Mail-, Datei- und Webserver konfigurieren können. Ich habe einen starken Programmierhintergrund und hoffe, dass es mir helfen wird.

Ich verstehe, dass dies keine spezifische Frage ist, ich suche nur nach einem Meilenstein oder einem Ziel, sonst kann ich Wochen damit verbringen, Bücher und Online-Artikel zu lesen.

Edit 1: Vielen Dank für die Antworten.

Basierend auf dem, was Sie bisher gesagt haben, denke ich, dass es nur wenige verschiedene Bereiche gibt, über die ich lernen muss:

  1. Kernel. Bin ich richtig zu sagen, dass dies das erste ist, worauf ich mich konzentrieren sollte?
  2. Virtualisierung. Sobald ich mit meinem Wissen über Kernel zufrieden bin, möchte ich mich auf KVM konzentrieren. Ich habe kurz über Hypervisoren gelesen und glaube, dass sie auch unter Virtualisierung fallen. Bitte korrigieren Sie mich, falls ich falsch liege.
  3. Sicherheit. Idealerweise möchte ich dies bis zum letzten Mal belassen, aber ich denke, dass die meisten Pakete, die ich benötige, online sind. Ich bin mir also nicht sicher, ob ich dem eine höhere Priorität geben soll. SSH, Linux als Firewall und Remotezugriff über Shell fallen unter diese Kategorie.
  4. Abschließend werde ich mir die Sicherungsroutinen (unter Verwendung von Linux als Dateiserver) ansehen und Web- und Mailserver konfigurieren. Ich denke, dass Mail-Server ein Schmerz sein könnte.

Ich bin versucht, ein Blog zu starten und zu sehen, wohin es mich nach zwei Wochen führt. In Bezug auf Distributiven habe ich gesehen, dass es Hunderte verschiedener Linux-Distributiven gibt. Um ganz ehrlich zu sein, möchte ich nichts Einfaches, aber gleichzeitig möchte ich zunächst keine Stunden mit einer sehr einfachen Operation verbringen. Idealerweise möchte ich nur über die Eingabeaufforderung arbeiten. Sobald ich das kann, kann ich mit den meisten hübschen GUIs arbeiten (ich hoffe es trotzdem).

Nochmals vielen Dank für Ihre Hilfe und ich freue mich über weitere Ratschläge.

Edit 2: Dies lässt mich mit einer letzten Frage zurück, welche Linux-Distribution ich verwenden sollte?

vikp
quelle
1
Ein Hypervisor ist das Ding, mit dem Sie virtuelle Maschinen ausführen können. Du wolltest lernen. Der Kernel ist ein guter Ort zum Lernen. Aber es hat eine steile Lernkurve :)
wzzrd

Antworten:

10

Hier ist ein paar:

  • Führen Sie Linux als primäres Betriebssystem aus, sowohl auf Ihrem Desktop als auch auf Ihrem Laptop, falls vorhanden
  • Installieren Sie KVM und virt-manager und erstellen Sie einige virtuelle Maschinen
  • Erstellen Sie ein Paket für die Distribution Ihrer Wahl (eine .deb- oder .rpm-Datei). es hilft beim Verstehen vieler Dinge
  • Erstelle deinen eigenen Kernel

Diese scheinen nicht direkt mit Ihren persönlichen Zielen zu zusammenhängen, das Erstellen von Webservern zu lernen, aber ich versichere Ihnen, wenn Sie Linux verstehen, können Sie alle Arten von Servern problemlos erstellen.

wzzrd
quelle
1
+1 für den Vorschlag der Virtualisierung! Persönlich denke ich, dass VirtualBox eine einfachere Möglichkeit ist, Ubuntu Server zu lernen, aber das Konzept ist das gleiche.
Josh
3
Vielen Dank. Virtualbox ist ein Desktop- Virtualisierungsprodukt für Desktops mit einer desktopfreundlichen Oberfläche. Ich habe KVM nicht ohne Grund erwähnt: KVM ist serverorientiert. Es ist ein Typ 1-Hypervisor, während Virtualbox Typ 2 ist. KVM zwingt Sie dazu, ein wenig darüber zu lernen, wie Kernel funktionieren, was ein Hypervisor ist und wie Sie den Kernel in einen Hypervisor verwandeln können. In Virtualbox lernen Sie lediglich, wie Sie klicken. Beim Erlernen von Linux geht es nicht um "einfach". Es geht um 'Wissen'.
wzzrd
Oh und Leute, bitte, Ubuntu ist nicht Linux. Ubuntu ist nur eine Inkarnation von Linux. Sicherlich eine schöne, aber immer noch nur eine von Hunderten von Distributionen da draußen. Also, soweit es mich betrifft: Installieren Sie eine ganze Reihe von Linuxes. Installieren Sie CentOS, Fedora, Ubuntu, Gentoo (gut, von dem Sie viel lernen können), ein paar BSDs. Du willst lernen? Experiment! Versuche deine Augen bluten zu lassen ;-)
wzzrd
Hallo wzzrd, danke für deine Antworten. Bitte beachten Sie die Bearbeitung.
Vikp
Sie haben den obligatorischen Link zu distrowatch.com vergessen, da es keine bessere Website gibt, auf der angegeben werden kann, aus wie vielen verschiedenen Distributionen Sie auswählen können.
Johan
8

Ich bin mir nicht sicher, wie "zum Thema" diese Frage ist, aber ich denke, dass es Spaß macht. Je mehr von Ihrem Computer Sie auf Linux umstellen, desto schneller werden Sie anfangen, Dinge zu lernen.

Hier ist etwas, was ich kurz nach dem Wechsel zu Linux getan habe. Es erfordert einen Ersatzcomputer.

  • Richten Sie einen Server mit Ubuntu Server ein.
  • Richten Sie den SSH-Zugriff auf den Server ein.
  • Entfernen Sie die Tastatur und den Monitor und führen Sie alle weiteren Konfigurationen und Administrationen per Fernzugriff durch. Für mich war dies eine ernsthafte Lernerfahrung, da Sie gezwungen sind, (1) alles über die Shell zu erledigen und (2) bei Konfigurationsänderungen sehr vorsichtig zu sein.
  • Machen Sie sich an die Arbeit und konfigurieren Sie die gewünschten Dienste. Sie könnten einige der folgenden Schritte in Betracht ziehen
    • Konzentrieren Sie sich von Anfang an auf Sicherheit. Konfigurieren Sie eine Firewall. Sichern Sie Ihre SSH-Einstellungen. Stellen Sie sicher, dass Sie verstehen, welche Dienste auf dem Computer ausgeführt werden und warum.
    • Richten Sie Clientcomputer so ein, dass sie regelmäßig auf Ihrem Server oder auf einem auf dem Server bereitgestellten externen Medium sichern, oder erstellen Sie eine andere Sicherungslösung, die eine Interaktion zwischen Ihren Clients und dem Server erfordert.

Auf jedem Debian-basierten System sind ein Dateiserver und ein Webserver relativ einfach einzurichten und zu konfigurieren. Ein E-Mail-Server wird schwieriger, zumindest wenn Sie versuchen, die Art der zuverlässigen E-Mail-Zustellung zu erhalten, die ein Dienst wie Google Mail bereitstellen kann.

Steven D.
quelle
Hallo, danke für deinen Rat, bitte siehe die Bearbeitung.
Vikp
2
+1 für "Seien Sie sehr vorsichtig bei Konfigurationsänderungen". :)
Stefan
In der Softwareentwicklung gibt es ein inoffizielles "Muss" -Buch - Gang of Four. Es erklärt sehr wichtige Grundlagen und Prinzipien, die viele Softwareentwickler ignorieren. Gibt es ähnliche Literatur für Linux?
Vikp
3

Ich fordere Sie auf, einen sicheren Mail-, Datei- und Webserver zu konfigurieren. Hilft das?

Klingt so, als hätten Sie Ihre eigenen Herausforderungen gut gemeistert. Mach das zuerst und denke dann an etwas Neues. Spülen, wiederholen.

Bahamat
quelle
1
Hinzufügen zur Liste: Verwenden Sie Ihre Linux-Box als Ihre Home-Firewall mit NAT.
gabe.
Hallo, Herausforderung ist eine Seite. Ich hatte Bedenken, dass ich mich auf etwas wie Dateiserver oder Webserver konzentrieren werde, ohne die Grundlagen zu verstehen.
Vikp
0

Hier sind zwei gute Herausforderungen:

  • Installieren Sie sambaund entweder swatoder webmin, um es zu konfigurieren. Sie werden von vielen Leuten hören, dass swatund Webmin unsicher sein können, lernen warum und lernen, wie man es nicht unsicher macht. Das Experimentieren mit der Verwendung einer Linux-Box als Dateiserver ist sehr nützlich. Auf diese Weise lernen Sie ein wenig, was erforderlich ist, damit Windows und Linux gut zusammenspielen.

  • Wählen Sie eine Webanwendung eines Drittanbieters aus, installieren Sie sie und bringen Sie sie zum Laufen. Ich würde sagen, installieren Sie Wordpress und experimentieren Sie mit dem Ausführen Ihres eigenen Blogs. Ajaxplorer ist eine nette Anwendung, die auch sehr nützlich ist. Sie erfahren mehr über Apache, mySQL PHP und wie die Installation von Webanwendungen funktioniert und wie all diese Komponenten zusammenarbeiten. Nach all dem werden Sie mit viel Wissen herauskommen.

Eine einfachere Herausforderung:

  • Installieren Sie einen FTP-Server und führen Sie ihn aus. Finden Sie dann heraus, warum FTP scheiße ist, lernen Sie SCP kennen und konfigurieren Sie es so sshd, dass Sie sichere Dateiübertragungen durchführen können.
LawrenceC
quelle