2006年9月17日星期日

linux实用教程
第一章,linux概况及安装。
第二章,linux的常用命令。
第三章,linux系统管理。
第四章,linux网络基础。
第五章,intranet服务器。
第六章,internet应用服务器的配置。
第七章,WEB应用服务。
第八章,网络安全。
第九章,linux程序设计基础。

第一章
linux系统的主要特点:开放性,多用户,多任务,良好的用户界面:linux向用户提供了用户界面和系统调用两种界面,设备独立性:操作系统将外部设备统一当作文件对待,提供了丰富的网络功能,可靠的系统安全性,良好的可移植性。
linux系统一般由内核,shell,文件系统和应用程序4个部分组成。linux能支持多种文件系统,如EXT2,EXT3,FAT,VFAT,ISO9660,NFS,SMB(手机)etc.
Red Hat Linux9的安装:这也没什么好说的,按照安装提示一步步做就可以了。光盘的使用:加载#mount/mnt/cdrom卸载 #unmount/mnt/cdrom。mnt是个空的文件夹专门用来挂载外设的。不过我用这条命令,并没成功,不知道哪出了问题。
使用RPM管理软件包,RPM是个好东西,它可升级,强大的查询功能,系统校验和纯净源码。安装,rpm -ivh rpm包的全路径文件名。删除,rpm-e RPM包名称。升级,rpm -u RPM包的全路径文件名。查询,rpm -q。校验,rpm -v。
第二章
CTRL +d:终端的输入结束。 ctrl+g:控制终端响铃。ctrl+h:用于改正输入的错误。ctrl+c:终止程序。ls 命令,蓝色-目录,绿色-可执行文件,红色-压缩文件,浅蓝色-链接文件,灰色-其他文件。#find/root-name"install*"- print 搜索/root目录下所有名称包含“install”的文件。
#find/-name httpd-conf-print 该命令的含义是:“/”查找整个硬盘,“-name”表明要求系统按照文件,“-print”表示将查找结果显示在终端上。
显示文本文件内容:cat。
linux系统主要目录说明。
/bin: linux常用的命令。/boot:系统启动时要用的程序。/dev:外部设备的端口,存放的不是驱动程序。/etc:系统管理配置文件和子目录。 /sbin:系统管理员的系统管理程序。/home:用户的主目录。/lib:系统动态连接共享库。/mnt:别的文件系统挂在这个目录下。/proc: 可以在这获取系统信息,信息在内存中,是由系统产生的。/root超级用户主目录。/tmp临时文件。/usr:用户的应用程序和文件, /usr/bin:应用程序;/usr/sbin:超级用户使用的一些管理程序,/usr/doc:文档;/usr/include:在linux下开发 和编译应用程序所需的头文件,/usr/lib:动态链接共享库和静态档案库,/usr/local:用户共享使用的文件,/usr/man:帮助文档目 录,/usr/src:linux开放源代码的存放目录。/var:存放不断在扩充的东西,为了保持/usr的相对稳定,那些经常被修改的目录可以放在这 个目录下。/var/log:日志文件。
压缩:#gzip 2.txt 解压缩:#gzip -d 2.txt.gz
第三章

Linux内核由进程管理,内存管理,硬件设备驱动程序,文件系统驱动程序,网络管理以及其他各种其他成分。用户帐号在“/etc/passwd”中,口令在‘/etc/shadow’中。增加用户帐号:useradd 用户名。口令维护命令:passwd 用户名。管理用户和组:redhat-config-users

进程查看命令:PS。查看用户操作:w。查看登陆用户历史:last.。查看日志文件:redhat-logviewer.

第四章

TCP/IP协议在另外一本书在具体介绍。Linux的网络配置:redhat-config-network

Ping命令失败后,首先使用的是traceroute这个命令查找发送的分组碰到了什么问题,其中可能是这些分组被错误路由了,或者可能是被中间的路由器所丢弃,即该网关可能关闭,当然也可能是目标主机不工作。Traceroute命令就是跟踪本地和远程两台主机间的UDP路由数据报,traceroute IP地址。Netstat命令用来显示各种各样的与网络相关的状态信息,它的主要用途有:查看网络的连接状态(仅对TCP有效,对UDP无效),检查接口的配置信息,检查路由表,取得统计信息。

-a 显示所有配置的接口;

-i 显示接口统计信息;

-n 以数字形式显示IP地址;

-r 显示内核路由表;

-s 表示计数器的值。

Ifconfig对用户的网络接口进行配置。nslookup是一条查询DNS数据库的用户级命令。tcpdump用于监视TCP/IP连接并直接读取数据链路层的数据包的头部信息。

系统中重要的网络配置文件:

/etc/sysconfig/network 网络配置

/etc/HOSTNAME 主机名

/etc/hosts IP地址和主机名的映射 配置后应重新启动网络。命令:/etc/rc.d/init.d/network restart

/etc/services 端口号和服务名之间的映射

/etc/host.conf 配置名字解析器

/etc/nsswitch.conf 提供更多功能 配置名字解析器

/etc/resolv.conf 配置DNS客户

/etc/rc.d/init.d/network

这些文件都可以在系统运行时进行修改,不用启动或者停止任何守护程序,更改会立刻生效(除了/etc/sysconfig/network)。这些文件都支持以"#"开头的注释。

/etc/init.d/network 主机地址,子网掩码和网关

使用netconfig程序配置网络。service network restart

测试网络步骤

(1)检测该站点是否关闭,可通过打开知名站点来确认。

(2)查看IP地址及相关网络参数设置是否正确。

(3)检测本机与网关之间的通信是否正常。

(4)检测与互联网的连接,ping命令。

(5)测试域名解析是否正常。

输入reboot命令观看屏幕测试信息。注意寻找下列信息:

Setting hostname:

Bringing up Interface lo:or

Bringing up interface eth0or

Setting hostname这一项将显示分配给这台计算机的主机名。而lo和eth0项的后面若显示ok,就表示检测成功。

这里有疑问,我一般都不配置DNS文件,但是上网也不是问题。

第五章

Intranet 是一套基于Internet标准和协议的技术,把Internet技术应用于企业的内部网。Samba是一套让Linux系统能够应用Microsoft 网络通信协议的软件。SMB(Server Message Block,服务信息块)通信协议是微软和Intel在1987年制定的协议,主要是作为Microsoft网络的通信协议,SMB提供了在网络上的不同 计算机之间共享文件,打印机及其他资源的手段。Samba采用SMB协议使Linux与不同的操作系统共享资源。SMB使用了Netbios的API,让 NetBIOS协议运行在TCP/IP协议之上,并且使用NetBIOS的名字解释器让Linux机器可在Windows的网上邻居中被看到。Samba 的主要功能:提供Windows风格的文件和打印机共享,它的smbclint可以在linux下以类似FTP访问WINDOWS资源,利用smbtar 的shell备份PC上的资源,提供一个命令行工具。一个samba服务器包含sambd和nmbd两个服务器程序。smdb是核心,负责建立对话进程, 验证用户身份,提供对文件系统和打印机的访问机制。nmdb实现了“Network Browser”的功能,主要作用是对外发布Samba服务器可以提供的服务。查看命令:#rpm -qa|grep samba。安装命令:#mount/mnt/cdrom切换到redhat/RPM目录,使用#cd/mnt/cdrom/Red Hat/RPMS。安装

#rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm

#rpm -ivh samba-2.2.7a-7.9.0.i386.rpm

#rpm -ivh samba-client-2.2.7a-7.9.0.i386.rpm

#rpm -ivh redhat-config-samba-1.0.4-1.noarch.rpm

弹出光盘#cd;eject

#/sbin/service smb status 查看

#/sbin/service smb start 启动

#pstree|grep mdb 检验

#/sbin/service smb stop

#/sbin/chkconfig --level 345 smb on 在引导时启动smb服务

smbclient//hostname/sharename -U username 共享命令

还有NFS服务这里就不介绍了。

上网配置有两种方法:一是静态手工配置,二是从DHCP服务器动态获取。动态主机配置协议(Dynamic Host Configuration Protocol)

#rpm -qa|grep dhcp 检测

#rpm -ivh dhcp-3.0p11-23.i386.rpm 第三张盘 安装

cp/usr/share/doc/dhcp-3.0p11/dhcpd.conf.sample/etc/dhcpd.conf 配置 安装后默认配置文件是不存在的,运行该命令创建之。

第六章

Host 文件由于仅适用于小型网络,这时就引进了DNS(域名系统)解决方式。域名系统是一种基于分布式的数据库系统,并采用客户/服务器模式进行主机名称与IP 地址之间的转换。在redhat中DNS服务器采用的是BIND域名服务器。检验安装与否#rpm -qa|grep bind可使用下面命令对BIND进行操作:

#service named start

#service named stop

#service named restart

配置工具:#redhat-config-bind bind配置工具允许添加一个正向主区,一个逆向主区和一个从区。

FTP 工作在TCP的第四层即应用层,需经过“三次握手”的过程。FTP主要功能是减少或消除在不同操作系统下处理文件的不兼容性。FTP标准命令TCP端口号 21,Port方式数据端口号20。FTP有两种方式:ASII传输模式和二进制数据传输模式。检测命令#rpm -qa|grep vsftpd检查是否被启动#pstree|grep vsftpd 安装方法:第三张牒输入:#rpm -ivh vsftpd-1.1.3-8.i386.rpm安装成功后就包含匿名FTP站点目录/var/ftp。默认配置文件是 /etc/vsftpd/vsftpd.conf。FTP客户端命令#ftp 主机名

还有邮件服务器我不想介绍了。

第七章

Apache服务器完全免费,公开源代码,跨平台。

Red Hat linux 9自带了两个Apache2.0的安装文件:http:Apache2.0和http-manual:Apache2.0手册。检测命令#rpm -qa|grep httpd安装方法第一张光盘执行

#rpm -ivh httpd-2.0.40-21.i386.rpm和#rpm -ivh httpd-manual-2.0.40-21.i386.rpm

Apache2.0 的主配置文件为httpd.conf。以RPM包方式安装的 配置文件在/etc/httpd/conf/目录下。#redhat-config-httpd日志文件 /var/log/httpd/access_log错误日志/var/log/httpd/error_log

虚拟主机在一台Web服务器上为多个单独的域名提供Web服务,每个域名具有特定的目录和配置,相当于一台主机分为多台主机。Apache有两种方式支持虚拟主机,一种是基于IP的虚拟主机,另一种是基于名字的虚拟主机。

MySQL 是一个多用户,多线程的SQL数据库,是一个客户机/服务器结构的应用,它是由一个服务器守护程序mysqld,很多不同的客户程序和库组成。MySQL 主要目标是快速,稳定和容易使用。数据库与用户端之间的接口程序可以使用CGI进行通信。使用PHP和MySQL对于开发数据驱动的网站这项工作而言是最 佳组合。PHP是一种用于服务器端执行程序解释的脚本语言。PHP代码在服务器端被解释执行并被转变成普通的HTML页面内容,送给客户端浏览器。 MySQL可以在www.mysql.com网站上下载,它提供了其它数据库少有的编程工具。

确认安装与否#rpm -qa|grep mysql安装 第二张牒执行

mysql-2.23.54a-11.i386.rpm

mysql-server-2.23.54a-11.i386.rpm

mysql-devel-2.23.54a-11.i386.rpm

在Red hat linux中,MySQL需要Perl语言支持才能正常运行,因此在安装MySQL之前需要先安装Perl语言及其相关包。

#rpm -ivh perl-CGI-2.18-88.i386.rpm

#rpm -ivh perl-DBI-1.32-5.i386.rpm

#rpm -ivh mysql-2.23.54a-11.i386.rpm

#rpm -ivh mysql-server-2.23.54a-11.i386.rpm

Web程序设计语言(PHP)

PHP3大量采用了C,JAVA和Perl语言的语法,并加入了各种PHP的特征。它与JavaScript等语言的一个区别就是PHP3是在服务器端执行的,客户机所看到的是其在服务器上运行的结果。

XML方式

在此写PHP程序

?>

SGML方式

在此写PHP程序

?>

在此写PHP程序

ASP方式<%

在此写PHP程序

%>

变量类型string,integer,double,array和object使用变量只要在英文字符前加$即可。PHP通过Web服务器与MySQL数据库有两种方式相联,一种是通过php的mysql相关函数,另一种通过php的ODBC相关函数。

第八章

网络安全是指网络系统的硬件,软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭到破坏,更改,泄漏,系统连续可靠正常地运行,网络服务不中断。

关 键技术:主机安全技术,身份认证技术,访问控制技术,密码技术,防火墙技术,安全审计技术,安全管理技术。linux的基本安全机制1.linux系统的 用户帐号2.linux的文件系统权限3.合理利用linux的日志文件/var/log/lastlog文件./var/log/secure文件(自 开通以来所有用户的登陆信息)./var/log/wtmp文件。

攻击类型1.拒绝服务攻击2.口令破解攻击3.欺骗用户攻击4.扫描程序和网络监听攻击。

安全防范策略1.仔细设置每个用户的权限2.确保用户口令文件/etc/shadow的安全3.加强对系统运行的监控和记录4.合理划分子网和设置防火墙5.定期对`linux网络进行安全检查6.制定适当的数据备份计划确保系统万无一失。

合 理使用各种工具1.利用纪录工具2.慎用Telnet服务3.合理设置nfs服务和NIS服务4.小心配置FTP服务5.合理设置POP-3和 Sendmail等电子邮件服务6.加强对WWW服务器的管理,提供安全的WWW服务(保证CGI可执行脚本只存放在Web服务器的CGI-BIN目录 中)7.最好禁止finger服务(finger命令可以显示本地或远程系统中目前已登陆用户的详细信息)。

linux 网络安全工具1.sudo 它是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。2.sniffit3.nmap它是用来对一个比较大的网络进行端口扫描的 工具,它能检测该服务器有哪些TCP/IP端口目前正处于打开状态。可以运行它来确保已经禁止掉打开的不安全的端口号。

防 火墙还支持具有Internet服务特性的企业内部网络技术体系VPN。通过VPN,将企事业单位在地域上分布在世界各地的LAN或专用子网有机地联成一 个整体,不仅省去了专用通信线路,而且为信息共享提供了技术保障。防火墙有三种类型1.数据包过滤型防火墙2.应用级网关型防火墙3.代理服务型防火墙。




没有评论: