熟悉 Linux 的一个小挑战

熟悉 Linux 的一个小挑战

我想了解更多有关 Linux 的知识。我简单地浏览了几本书和很多在线文章,但学习某些东西的唯一方法就是实际开始使用它。

我想深入了解并配置 Linux 服务器。到目前为止我已经下载了Ubuntu Server。

如果你愿意的话,我正在寻找目标或挑战,一些能让我熟悉 Linux 服务器的东西。

理想情况下,我希望能够配置安全的邮件、文件和 Web 服务器。我有很强的编程背景,所以我希望它能对我有所帮助。

我知道这不是一个具体的问题,我只是在寻找一个里程碑或一个目标,否则我可以花几周的时间阅读书籍和在线文章。

编辑1: 谢谢大家的回复。

根据您到目前为止所说的,我认为我需要了解几个不同的领域:

  1. 内核。我说这是我应该关注的第一件事,对吗?
  2. 虚拟化。一旦我对内核知识感到满意,我就会专注于 KVM。我读过很多有关虚拟机管理程序的内容,并且我相信它们也属于虚拟化。如果我错了,请纠正我。
  3. 安全。理想情况下,我想把这个留到最后,但我想我需要的大多数包都是在线的。所以我不确定是否应该优先考虑这一点。 SSH、Linux 作为防火墙和通过 shell 进行远程访问都属于这一类。
  4. 最后,我将了解备份例程(使用 Linux 作为文件服务器)并配置 Web 和邮件服务器。我想邮件服务器可能会很痛苦。

我很想开始写一个博客,看看两周后我会做什么。关于发行版,我看到有数百种不同的 Linux 发行版。说实话,我不想要任何简单的东西,但同时,我不想花几个小时在一个非常基本的操作上。理想情况下,我只想在命令提示符下工作,一旦我能做到这一点,我将能够使用大多数漂亮的 GUI(无论如何我希望如此)。

再次感谢您的帮助,我将非常感谢您的进一步建议。

编辑2:这给我留下了最后一个问题:我应该使用哪种 Linux 发行版?

答案1

这是几个:

  • 在台式机和笔记本电脑(如果有)上运行 Linux 作为主要操作系统
  • 安装 KVM 和 virt-manager 并构建几个虚拟机
  • 为您选择的发行版构建一个软件包(.deb 或 .rpm 文件);它有助于理解很多事情
  • 构建你自己的内核

这些似乎与您学习构建 Web 服务器的个人目标没有直接关系,但我向您保证,如果您了解 Linux,您将轻松构建各种服务器。

答案2

我不确定这个问题有多“切题”,但我认为这很有趣。您将越多的计算转移到 Linux 中,您开始学习的速度就越快。

这是我在完全使用 Linux 后不久所做的事情。它需要有一台备用计算机。

  • 使用 Ubuntu Server 设置服务器。
  • 设置对服务器的 SSH 访问。
  • 卸下键盘和显示器并远程进行所有进一步的配置和管理。对我来说,这是一次认真的学习经历,因为它迫使您(1)通过 shell 完成所有操作,并且(2)对配置更改非常小心。
  • 开始配置您想要的服务。您可以考虑执行以下一些操作
    • 从一开始就关注安全。配置防火墙。保护您的 ssh 设置。确保您了解计算机上正在运行哪些服务以及原因。
    • 设置客户端计算机以定期备份到服务器或服务器上安装的某些外部介质,或创建需要客户端和服务器之间交互的其他备份解决方案。

在任何基于 Debian 的系统上,文件服务器和 Web 服务器都相对容易设置和配置。电子邮件服务器将会更加困难,至少如果您尝试获得像 Gmail 这样的服务可以提供的可靠邮件传递类型。

答案3

我挑战您配置安全的邮件、文件和网络服务器。这有帮助吗?

听起来你在提出自己的挑战方面做得很好。先做这些,然后再想一些新的事情。冲洗,重复。

答案4

以下是两个很好的挑战:

  • 安装samba并使用swatwebmin 或 webmin 来配置它。您会从很多人那里听说swatwebmin 可能不安全,了解原因并了解如何使其不安全。使用 Linux 机器作为文件服务器的实验非常有用,这将教会您一些如何让 Windows 和 Linux 很好地协同工作。

  • 选择“第三方”Web 应用程序,安装它并使其运行。我建议安装 Wordpress 并尝试运行您自己的博客。 Ajaxplorer 是一个很好的应用程序,也非常有用。您将了解 apache、mySQL php、Web 应用程序安装如何工作以及所有这些组件如何协同工作。毕竟,你将会获得很多知识。

更简单的挑战:

  • 安装并运行 FTP 服务器。然后找出 FTP 糟糕的原因并了解 SCP,并进行配置sshd以使您能够进行安全的文件传输。

相关内容