Linuxnetworking服务

我试图激励一个class级学习一些在Linux系统上运行的常见types的服务,比如httpd,ssh,ftp等。我应该教什么服务? 学生最感兴趣的是什么,同时还能够简单地作为入门教学工具?

你是什​​么意思的“Linux服务”? 我的猜测是,你的意思是运行一些关于通常在Linux机器上运行的服务 – DNS,电子邮件,Web服务 – 在这种情况下,你的课程不是关于Linux,而是关于互联网基础设施。

谁是你的目标受众? 他们是CS学生,Windowspipe理员,爱好者,程序员吗? 如果他们对互联网一无所知,并渴望成为系统pipe理员或networkingpipe理员,那么DNS是一个很好的开始; 这是大多数其他服务的基础,容易被忽视。 教他们名字parsing系统如何工作,数据是如何(主要)分散的,以及他们可以期望看到什么问题。

HTTP和电子邮件也是一样的:告诉他们当你在浏览器中键入URL或者你的电子邮件如何find它们时,会发生什么。

一旦你弄清楚你在教什么,为了什么目的,你可以想出如何激励他们。 如果你在教CS的学生,也许这是一个好主意,以显示如何在互联网基础设施的失败应该由软件来处理,或者(可能去OT)如何在现代互联网中使用algorithm (即OSPF使用Dijkstra的algorithm来build立路线权重)。

我认为,像很多教学一样,会有三组学生:

  • 那些高兴的学生。 告诉他们去分割一个networking,并在防火墙之间放置一个防火墙,他们会问:“我应该使它成为IPv4还是IPv6?”
  • 无论发生什么事,学生们都会摔倒
  • 如果你激起兴趣,那么这个学生会这样做

所以我打算把目标定在第一和第三,说冷静 。 对于第二个……如果他们想要成绩的话,他们必须这样做。

所以根据你想要定位的服务,select一些很酷的东西,然后让他们去做。

  • 乌贼? 让它运行整个networking的上行 – 下行networking
  • DHCP? 将networking划分为10.0.xx和10.1.xx,然后让他们使用shorewall (我发现它比iptables更容易)来分割networking,并且倒置的脚本只影响它的一部分
  • 防火墙? 做一台电脑或服务器。 蛮力的密码。 告诉他们build立一个规则,所以你不能访问它来做到这一点。
  • DNS? 让他们将访问Facebook的任何人redirect到其他网站。 将googleredirect到live.msn
  • FTP? 让他们设置,然后做一些包嗅探,窃取一个文件,然后让他们设置SFTP。 与telnet和SSH一样