第一节 Linux网络操作系统概述(识记)
一,Linux特点
- 低廉性
- 适应性
- 广泛性
- 强健性
二,Linux分类
- 典型的Linux发行版包括:Linux内核,一些GNU程序库和工具,命令行shell,图形界面的X Window系统和相应的桌面环境,并包含数千种从办公套件,编译器,文本编辑器到科学工具的应用软件。
- 主流的Linux发行版:Asianux,B2D Linux,Conectiva Linux,Debian GNU/Linux,Fedora Core,Gentoo Linux,Red Hat Linux,Ubuntu Linux等。
- 大陆的Linux发行版:红旗 Linux(Redflag Linux),冲浪 Linux(Xteam Linux),蓝点 Linux,新华 Linux,共创 Linux,百资 Linux,中标普华 Linux,中软 Linux等。
- 台湾地区的Linux发行版:宏碁 Linux。
- 目前比较著名的Linux发行版本为:Debian,红帽,Ubuntu等。
- 国内比较著名的版本为:红旗Linux。
三,Linux的发展
- Linux操作系统的发展道路上衍生出了许多开源软件,如:Android操作系统发展自Linux又独立于Linux。Linux的类UNIX结构又使得其具有极大的柔性,既可以服务大型超级计算机,也可以裁剪到穿戴设备中,使用广泛,组合灵活。
第二节 Linux网络操作系统的基本组成(识记)
一,Linux的层次结构
- 主要分为用户层和内核层,其中内核层又分为可移植的和不可移植的核心层。
- Linux的内核由五个子系统组成:进程调度,内存管理,虚拟文件系统,网络接口和进程间通信。
- 进程调度
- 进程调度(Scheduling)控制进程对CPU的访问。实现调度算法,进行进程间的切换,分派处理机。
- Linux使用了可抢先式高优先级优先的进程调度算法,嵌入式Linux一般选用不可抢先式高于优先级算法。
- 内存管理
- 内存管理(Memory Management)管理,分配和回收内存资源。Linux的内存管理支持虚拟内存,段页式管理。
- 内存管理从逻辑上分为硬件无关部分和硬件有关部分。
- 硬件无关部分提供了进程的映射和逻辑内存的交换。
- 硬件相关部分实现虚拟内存到物理内存的映射。
- 虚拟文件系统
- 虚拟文件系统(Virtual File System,VFS)隐藏了各种硬件的具体细节,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。
- 虚拟文件系统可以分为逻辑文件系统和设备驱动程序。
- 逻辑文件系统指Linux所支持的文件系统,如ext2,fat等。
- 设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。
- 网络接口
- 网络接口(Net)提供了对各种标准的存取和各种网络硬件的支持。
- 网络接口分为网络协议和网络驱动程序。
- 网络协议部分负责实现每一种可能的网络传输协议。
- 网络设备驱动程序负责与硬件设备通讯。
- 进程间通信
- 进程间通信(IPC)利用管道,消息,共享内存和文件映射等方式支持进程间相互通信。
- 进程调度
第三节 Linux域名服务的实现
一,Linux域名服务的安装
- Linux平台下建立DNS服务器的主要软件是Berkrley Internet Name Domain(Bind)。许多Linux操作系统的发行版本中就包含Bind,默认情况下Bind不会被安装。这符合微内核操作系统的特征,外围服务功能可以选择安装。
1,通过命令行方式安装
-
~$ dpkg -l|grep ii|grep bind
-
如果bind未安装,系统会在前面显示
-
iU bind9
-
如果bind已经安装,则会显示版本和文件信息。
-
若系统尚未安装,输入如下命令
-
~$ sudo apt-get install bind9 //安装服务器 ~$ sudo apt-get install bind9-host dnsutils //安装测试工具 ~$ sudo apt-get install bind9-doc //安装文档
sudo用于切换到超级用户,apt-get是获取安装包的命令。
二,Linux启动和停止DNS服务
-
启动DNS的过程如下。
-
~# /etc/init.d/bind start //开机后人工启动 ~# /etc/init.d/bind stop //开机后人工关闭 ~# /etc/init.d/bind restart //开机后人工重新启动
其中:/etc/init.d/是bind的路径
-
如下指令可以设置在开机时自动启动DNS服务。
-
~# sysv-rc-conf bind on //设定开机时启动
三,Linux使用chroot创建安全的DNS服务器
-
通常情况下,如果使用root用户启动DNS服务,有可能这是一个潜在的安全问题。如果DNS服务有安全漏洞,则入侵者会通过安全漏洞获取root权限,从而对DNS服务器的安全构成威胁。
-
采用chroot对DNS服务进行限制,让DNS服务运行在一个非root用户下,从而提高系统安全性。
-
创建下面目录
-
~$ sudo mkdir -p /chroot/named //以超级用户的权限建立目录named ~$ cd /chroot/named //进入该目录 ~$ sudo mkdir -p dev/etc/namedb/slave/var/run //同样方法创建run目录
-
为chroot环境设置权限
-
~$ sudo chown root:root /chroot //建立chroot用户 ~$ sudo chmod 700 /chroot //该目录只限用户可读可写可运行 ~$ sudo chown bind:bind /chroot/named //将该目录赋予chroot ~$ sudo chmod 700 /chroot/named //赋予chroot读,写和运行named目录
-
创建和移动bind配置文件
-
~$ sudo touch /chroot/named/etc/named.conf //创建文件named.conf ~$ sudo cp /etc/named.conf /chroot/named/etc //拷贝文件
-
将/chroot/named/etc/namedb/slave目录的写权限赋予bind用户
-
~$ sudo chown bind:bind /chroot/named/etc/namedb/slave
四,配置DNS服务器
- 注册一个域名。
- 如果域名服务器提供公共服务,需要给主域名服务器和从域名服务器各申请一个公网的静态IP地址。如果只是企业内部使用,则只需要分配给域名服务器固定的内部IP地址即可(也可以同时绑定公网IP)。
- 创建一个主机名和IP地址的映射列表。
- 创建/etc/named.conf文件。
- 创建区域数据文件。
第四节 Linux共享文件系统
- Linux操作系统的另一个主要特点是具有资源共享。
- 在Linux和Windows共存的时候,文件共享和打印机共享是通过Samba来实现的。
一,Samba介绍
- Samba模仿了Windows内核的文件和打印共享协议,称为SMB协议(Server Message Block)。
- SMB是客户机/服务器协议,客户机通过该协议可以访问服务器上的共享文件系统,打印机以及其他资源。
- 通过Samba,我们可以在Linux和Windows系统之间进行信息的共享,特征包括:
- Samba可以提供Windows风格的文件和打印机共享。
- 提供SMB客户功能。可以从Linux下以类似于FTP的方式访问Windows的共享资源。
- 备份PC上的资源。可以使用tar格式备份和恢复一台远程Windows上的共享文件。
- Samba服务器可以配置成一个Windows的域控制器来控制域内所有的Windows系统。
二,Samba结构
- Samba包括两个服务端的守护进程,两个客户程序和一个管理工具程序。
1,smbdSMBD
- smbdSMBD是Samba服务的内核,是建立对话,验证客户,提供文件系统和打印服务的基础,负责硬盘驱动器和打印机的共享。
2,nmbd
- nmbd实现了网络浏览的功能,它的任务是向局域网广播Samba服务器所提供的服务,nmbd使得Samba服务器显示在Windows系统的“网上邻居”窗口中,允许用户浏览可以通过Samba使用的资源。