首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Linux 之父如何定义 Linux?

来源:马哥教育链接:https://mp.weixin.qq.com/s/wwBt5H68tHmf_lHXrd_eSQ本文是 Linus 写于 1991年10月10日LINUX是什么?LINUX是一个免费类unix内核,适用于386-AT计算机,附带完整源代码。主要让黑客、计算机科学学生使用,学习和享受。它大部分用C编写,但是一小部分是用gnu格式汇编,而且引导序列用的是因特尔086汇编语言。C代码是相对ANSI的,使用一些GNU增强特性(大多为 __asm__ 和 inline)。然而有很多可用于386电脑的unices,他们大部分要花很多钱,而且不附带源码。因此他们是使用计算机的理想选择,但是如果你想了解他们如何工作,那是不可能的。也有一些 Unix 是附带源码的。Minix,Andrew S. Tanenbaum编写的学习工具,已经在大学中作为教学工具使用了很多年了。BSD-386系统是附带源码的,但是有版权限制,而且要花很多钱(我记得起始价格为$995)。GNU内核(Hurd)将会是免费的,但是现在还没有准备好,而且对于了解和学习它们来说有点庞大。LINUX与Minix是最相似的,由于它很小而且不是非常复杂,因此易于理解(嗯…)。LINUX是基于Minix编写的,因此有相当多的相同点,任何Minix黑客在使用LINUX的时候都感觉非常熟悉。不过,没有在项目中使用Minix代码,因此Minix版权没有限制到这个新系统。它也是完全免费的,而且它的版权非常宽松。因此不像使用Minix,它不需要几兆字节大小的区别。LINUX版权虽然是免费的发布版,我还是从以下几个方面限制了LINUX的使用:你可以自由复制和重新发布源码和二进制,只要是:1. 完全开源。因此不能单独发布二进制,即使你只修改了一点。2. 你不能从发布版获取利益。事实上甚至“装卸费用”都是不被接受的。3. 你要保持完整的适当版权。· 根据需要你可能会修改源码,但是如果你发布了新系统的一部分(或者只有二进制),必须将新的代码包含进去。· 除了不包含版权的代码之外,你可能会做一些小的修改。这由你来定,但是如果能将相关内容或者代码告诉我,将不胜感激。对任何使用或者扩展系统的人来说,这应该足够宽松而不会引起任何担忧。如果你有朋友真的不想要源码,只想要一个能运行的二进制,你当然可以给他而不用担心我会起诉你。不过最好只在朋友之间这么做。LINUX运行所需的硬件/软件LINUX是在一个运行Minix的386-AT上开发的。由于LINUX是一个真正的操作系统,而且需要直接与硬件交互来做一些事情,你必须有一个非常相似的系统来让他顺利运行:· 386-AT(PS/2之类是不同的,不能正常运行)· VGA或者EGA屏幕硬件。· 标准AT硬盘接口,IDE盘可以运行(实际上我用的就是这个)。· 正常实模式BIOS。一些机器看起来是用虚-86模式运行启动程序,而且在这样的机器LINUX不会启动和正常运行。LINUX会发展成为一个自给自足的系统,现在需要Minix-386才能正常运行。你需要Minix让初始化启动文件系统,和编译OS二进制。在那之后LINUX是一个自给自足的系统,但是为了做文件系统检查(fsck)和修改之后重编译系统,推荐使用Minix。获取LINUXLINUX现在可以使用匿名ftp从‘nic.funet.fi’的‘/pub/OS/Linux’目录获取。这个目录包含操作系统的所有源码,还有一些二进制文件,因此你可以真正使用系统了。注意!二进制大多是GNU软件,而且版权比LINUX的严格(GNU非盈利性版权)。因此你不能在不发布他们源码的情况下重新发布他们,可以在/pub/GNU中找到。关于GNU非盈利性版权,从任何GNU软件包了解更多。此目录中各类文件如下:· linux-0.03.tar.Z–系统的完全源码,16位tar压缩文件格式。· Linux.tex–这个文件的LATEX源码。· bash.Z–在LINUX下运行的bash二进制文件。这个二进制文件应该放到预留给LINUX文件系统中的/bin/sh下(参见installation)。· update.Z–更新二进制文件,要放到/bin/update。· gccbin.tar.Z–GNU cc二进制文件需要由一个可运行的编译器。这个tar压缩包含有编译器,加载器,汇编程序和支持程序(nm,strip等)。它还包含一个小型的库,可用于大部分程序。· include.tar.Z–让gcc运行的必要include文件。· unistd.tar.Z–unistd库程序的源码(即系统调用接口)。通过这个你可以使用系统独立库源码编译一个大一些的库。· utilbin.tar.Z–各种GNU工具的二进制文件,包括GNU的fileutils,make和tar。也包含克隆emacs的uemacs。· README, RELNOTES-

02

安全威胁无孔不入:基于Linux系统的病毒(转)

虽然在Linux里传播的病毒不多,但也是存在一些。我从一些 安全网站搜集了一些资料。   1、病毒名称:   Linux.Slapper.Worm   类别: 蠕虫   病毒资料: 感染系统:Linux   不受影响系统: Windows 3.x, Windows 95。 Windows 98, Windows NT, Windows 2000。 Windows XP, Windows Me, Macintosh   病毒传播:   port:80, 443。 2002   感染目标:各版本号Linux系统上的Apache Web server   技术特征:   该蠕虫会试图不断连接80port。并向 server发送无效的“GET”请求,以识别Apache系统。一旦发现Apache系统,它会连接443port。并向远程系统上的监听SSL服务发送恶意代码。   此蠕虫利用了Linux Shell代码仅能在英特尔系统上执行的漏洞。

02

基于统计分析的ICMP隧道检测方法与实现

在企业内网环境中,ICMP协议是必不可少的网络通信协议之一,被用于检测网络连通状态,通常情况下,防火墙会默认放此协议。由于防火墙对ICMP协议开放,恶意攻击者常会利用ICMP协议进行非法通信。例如,在黑客攻击中经常出现一种情况是,黑客通过某一种方式取得了一台主机的权限,得到了一些文件,比如域hash,密码文件之类的东西,需要回传至本地进行破解,但是防火墙阻断了由内网发起的请求,只有icmp协议没有被阻断,而黑客又需要回传文件,这个时候如果黑客可以ping通远程计算机,就可以尝试建立ICMP隧道,ICMP隧道是将流量封装进 ping 数据包中,旨在利用 ping数据穿透防火墙的检测。现在市面上已经有了很多类似的工具了,比如 icmptunnel、ptunnel、icmpsh等。

03

Linux下的DHCP服务的原理及搭建

DHCP:     动态主机配置协议Dynamic host configuration protocol     DHCP工作在OSI的应用层,可以帮助计算机从指定的DHCP服务器获取配置信息的协议。(主要包括:ip地址,子网掩码,网关和dns等)     工作原理:         1、客户机寻找服务器:广播发送discover包,寻找dhcp服务器         2、服务器响应请求:单播发送offer包,对客户机做出响应。提供客户端网络相关的租约以供选择         其中服务器在收到客户端的请求后,会针对客户端的mac地址与本身的设定数据进行一下工作:             a、到服务器的登录文件中寻找该用户之前曾经使用过的ip,若有且该ip目前没有人使用,这提供此ip为客户机             b、若配置文件中有针对该mac提供额外的固定ip,且该ip没有被使用,则提供此ip给客户机             c、如果没有符合以上两个条件,则随机取用目前没有被使用的ip参数给客户机并记录到leases文件中。         3、客户机发送ip请求:广播request包,选择一个服务器提供的网络参数租约回报服务器。             此外,客户机会发送一个广播封包给局域网内的所有主机,告知自己已经接受服务器的租约。         4、服务器确认租约:单播Ack包,服务器与客户机确认租约关系并记录到服务器的leases文件中 。         客户端打开68号端口,服务器打开67号端口。     配置:         配置文件都放在/etc/dhcp目录下;主配置文件为dhcpd.conf         将/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample文件复制到配置文件目录下,并覆盖dhcpd.conf文件,即可获得主配置文件。         主配置文件的主要内容介绍:             option domain-name "example.org";      --指定网域的域名             option domain-name-servers ns1.example.org, ns2.example.org;        --指定域名解析服务器(DNS)的ip地址。             default-lease-time 600;    --默认租约时间,单位为s             max-lease-time 7200;        --最大租约时间,单位为s。过期续约,续约直接发送request包即可。             log-facility local7;        --日志设备类型为local7.一般日志设备类型包括mail、crontab。通过此选项可以找到该服务的日志记录路径             subnet 10.5.5.0 netmask 255.255.255.224 {      --指定分配网段的ip地址以及子网掩码,括号内部为局部配置。             range 10.5.5.26 10.5.5.30;      --可使用的地址池范围             option domain-name-servers ns1.internal.example.org;        --该网段的域名,可以省略             option domain-name "internal.example.org";      --网段DNS             option routers 10.5.5.1;        --指定网关             option broadcast-address 10.5.5.31;    --指定广播地址             default-lease-time 600;    --租约时间             max-lease-time 7200;        --最大租约时间。             }             host passacaglia {      --主机名称             hardware ethernet 0:0:c0:5d:bd:95;      --主机的MAC地址             filename "vmunix.passacaglia";             server-name "toccata.fugue.com";        --文件名和服务器名,不太需要。             fixed-address fantasia.fugue.com;      --固定的ip地址

02
领券