Linux必学的60个命令(5)-网络安全

来源:百度文库 编辑:神马文学网 时间:2024/04/28 05:01:37
网站首页 社区首页 新闻首页 书籍教程 视频教程 JAVA技术 .NET开发 C/C++ 数据库 WEB开发 linux 软件测试 在线试题 博 客 进入论坛
 操作系统 Linux Windows xp Windows 2003 Windows 2000/NT DOS Mac OS X Vista FreeBSD Solaris SCO UNIX AIX Windows 2008 用户名:
密  码: 
验证码:
   
JAVA J2EE J2ME J2SE JSP C/C++ C语言 C++ VC MFC Web前台 Html css JavaScript 软件测试 软件测试入门 LoadRunner Windows Win2008 Win2003 WinXP .NET ASP.NET VB.NET MVC Linux/Unix Linux Unix Shell Web开发 PHP ASP Ajax IIS Apache 编程语言 C VB Delphi 汇编 数据库 MSSQL Mysql Oracle·.Net视频教程DVD 7张 26G 120元 ·尚学堂+j2ee+赛迪+传智播客 23 DVD ·达内培训视频教学光盘DVD 6张 90元 ·Oracle视频教程9i 4 DVD 50元
DIY部落 >> linux >> Linux系列教程 >>  正文
Linux必学的60个命令(5)-网络安全
www.diybl.com 时间:2008-10-13 作者:佚名 编辑:本站 点击: 158 [评论]
-
-虽然Linux和Windows NT/2000系统一样是一个多用户的系统,但是它们之间有不少重要的差别。对于很多习惯了Windows系统的管理员来讲,如何保证Linux操作系统安全、可靠将会面临许多新的挑战。本文将重点介绍Linux系统安全的命令。
passwd1.作用
passwd命令原来修改账户的登陆密码,使用权限是所有用户。2.格式
passwd [选项] 账户名称3.主要参数
-l:锁定已经命名的账户名称,只有具备超级用户权限的使用者方可使用。
-u:解开账户锁定状态,只有具备超级用户权限的使用者方可使用。
-x, --maximum=DAYS:最大密码使用时间(天),只有具备超级用户权限的使用者方可使用。
-n, --minimum=DAYS:最小密码使用时间(天),只有具备超级用户权限的使用者方可使用。
-d:删除使用者的密码, 只有具备超级用户权限的使用者方可使用。
-S:检查指定使用者的密码认证种类, 只有具备超级用户权限的使用者方可使用。4.应用实例$ passwd
Changing password for user cao.
Changing password for cao
(current) UNIX password:
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.从上面可以看到,使用passwd命令需要输入旧的密码,然后再输入两次新密码。su1.作用
su的作用是变更为其它使用者的身份,超级用户除外,需要键入该使用者的密码。2.格式
su [选项]... [-] [USER [ARG]...]3.主要参数
-f , --fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。
-l , --login:加了这个参数之后,就好像是重新登陆为该使用者一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。
-m, -p ,--preserve-environment:执行su时不改变环境变数。
-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
USER:欲变更的使用者账号,ARG传入新的Shell参数。4.应用实例
变更账号为超级用户,并在执行df命令后还原使用者。 su -c df rootumask1.作用
umask设置用户文件和目录的文件创建缺省屏蔽值,若将此命令放入profile文件,就可控制该用户后续所建文件的存取许可。它告诉系统在创建文件时不给谁存取许可。使用权限是所有用户。2.格式
umask [-p] [-S] [mode]3.参数
-S:确定当前的umask设置。
-p:修改umask 设置。
[mode]:修改数值。4.说明
传统Unix的umask值是022,这样就可以防止同属于该组的其它用户及别的组的用户修改该用户的文件。既然每个用户都拥有并属于一个自己的私有组,那么这种“组保护模式”就不在需要了。严密的权限设定构成了Linux安全的基础,在权限上犯错误是致命的。需要注意的是,umask命令用来设置进程所创建的文件的读写权限,最保险的值是0077,即关闭创建文件的进程以外的所有进程的读写权限,表示为 -rw-------。在~/.bash_profile中,加上一行命令umask 0077可以保证每次启动Shell后, 进程的umask权限都可以被正确设定。5.应用实例umask -S
u=rwx,g=rx,o=rx
umask -p 177
umask -S
u=rw,g=,o=上述5行命令,首先显示当前状态,然后把umask值改为177,结果只有文件所有者具有读写文件的权限,其它用户不能访问该文件。这显然是一种非常安全的设置。chgrp1.作用
chgrp表示修改一个或多个文件或目录所属的组。使用权限是超级用户。2.格式
chgrp [选项]... 组 文件...

chgrp [选项]... --reference=参考文件 文件...将每个<文件>的所属组设定为<组>。3.参数
-c, --changes :像 --verbose,但只在有更改时才显示结果。
--dereference:会影响符号链接所指示的对象,而非符号链接本身。
-h, --no-dereference:会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更改符号链接的所有者,此选项才有效)。
-f, --silent, --quiet:去除大部分的错误信息。
--reference=参考文件:使用<参考文件>的所属组,而非指定的<组>。
-R, --recursive:递归处理所有的文件及子目录。
-v, --verbose:处理任何文件都会显示信息。4.应用说明
该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。5.应用实例
改变/opt/local /book/及其子目录下的所有文件的属组为book,命令如下:
$ chgrp - R book /opt/local /bookchmod1.作用
chmod命令是非常重要的,用于改变文件或目录的访问权限,用户可以用它控制文件或目录的访问权限,使用权限是超级用户。2.格式
chmod命令有两种用法。一种是包含字母和操作符表达式的字符设定法(相对权限设定);另一种是包含数字的数字设定法(绝对权限设定)。(1)字符设定法
chmod [who] [+ | - | =] [mode] 文件名◆操作对象who可以是下述字母中的任一个或它们的组合
u:表示用户,即文件或目录的所有者。
g:表示同组用户,即与文件属主有相同组ID的所有用户。
o:表示其它用户。
a:表示所有用户,它是系统默认值。◆操作符号
+:添加某个权限。
-:取消某个权限。
=:赋予给定权限,并取消其它所有权限(如果有的话)。◆设置mode的权限可用下述字母的任意组合
r:可读。
w:可写。
x:可执行。
X:只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x属性。
s:文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
t:保存程序的文本到交换设备上。
u:与文件属主拥有一样的权限。
g:与和文件属主同组的用户拥有一样的权限。
o:与其它用户拥有一样的权限。
文件名:以空格分开的要改变权限的文件列表,支持通配符。
一个命令行中可以给出多个权限方式,其间用逗号隔开。(2) 数字设定法
数字设定法的一般形式为: chmod [mode] 文件名数字属性的格式应为3个0到7的八进制数,其顺序是(u)(g)(o)文件名,以空格分开的要改变权限的文件列表,支持通配符。数字表示的权限的含义如下:0001为所有者的执行权限;0002为所有者的写权限;0004为所有者的读权限;0010为组的执行权限;0020 为组的写权限;0040为组的读权限;0100为其他人的执行权限;0200为其他人的写权限;0400为其他人的读权限;1000为粘贴位置位;2000表示假如这个文件是可执行文件,则为组ID为位置位,否则其中文件锁定位置位;4000表示假如这个文件是可执行文件,则为用户ID为位置位。3.实例
如果一个系统管理员写了一个表格(tem)让所有用户填写,那么必须授权用户对这个文件有读写权限,可以使用命令:#chmod 666 tem上面代码中,这个666数字是如何计算出来的呢?0002为所有者的写权限,0004为所有者的读权限,0020为组的写权限,0040为组的读权限, 0200为其他人的写权限,0400为其他人的读权限,这6个数字相加就是666(注以上数字都是八进制数),结果见图1所示。图1 用chmod数字方法设定文件权限从图1可以看出,tem文件的权限是-rw-rw-rw-,即用户对这个文件有读写权限。如果用字符权限设定使用下面命令:
#chmod a =wx tem
chown1.作用
更改一个或多个文件或目录的属主和属组。使用权限是超级用户。2.格式
chown [选项] 用户或组 文件3.主要参数
--dereference:受影响的是符号链接所指示的对象,而非符号链接本身。
-h, --no-dereference:会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更改符号链接的所有者,此选项才有效)。
--from=目前所有者:目前组只当每个文件的所有者和组符合选项所指定的,才会更改所有者和组。其中一个可以省略,这已省略的属性就不需要符合原有的属性。
-f, --silent, --quiet:去除大部分的错误信息。
-R, --recursive:递归处理所有的文件及子目录。
-v, --verbose:处理任何文件都会显示信息。4.说明
chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或用户ID;组可以是组名或组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的目录下以后,让用户拥有使用该文件的权限。5.应用实例
1.把文件shiyan.c的所有者改为wan
$ chown wan shiyan.c2.把目录/hi及其下的所有文件和子目录的属主改成wan,属组改成users。
$ chown - R wan.users /hichattr1.作用
修改ext2和ext3文件系统属性(attribute),使用权限超级用户。2.格式
chattr [-RV] [-+=AacDdijsSu] [-v version] 文件或目录3.主要参数
-R:递归处理所有的文件及子目录。
-V:详细显示修改内容,并打印输出。
-:失效属性。
+:激活属性。
= :指定属性。
A:Atime,告诉系统不要修改对这个文件的最后访问时间。
S:Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。
a:Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。
i:Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
D:检查压缩文件中的错误。
d:No dump,在进行文件系统备份时,dump程序将忽略这个文件。
C:Compress,系统以透明的方式压缩这个文件。从这个文件读取时,返回的是解压之后的数据;而向这个文件中写入数据时,数据首先被压缩之后才写入磁盘。
s:Secure Delete,让系统在删除这个文件时,使用0填充文件所在的区域。
u:Undelete,当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件。4.说明
chattr 命令的作用很大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现。同样-D检查压缩文件中的错误的功能,需要2.5.19以上内核才能支持。另外,通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。5.应用实例
1.恢复/root目录,即子目录的所有文件
# chattr -R +u/root2.用chattr命令防止系统中某个关键文件被修改
在Linux下,有些配置文件(passwd ,fatab)是不允许任何人修改的,为了防止被误删除或修改,可以设定该文件的“不可修改位(immutable)”,命令如下:
# chattr +i /etc/fstabsudo1.作用
sudo是一种以限制配置文件中的命令为基础,在有限时间内给用户使用,并且记录到日志中的命令,权限是所有用户。2.格式sudo [-bhHpV] [-s ] [-u <用户>] [指令]
sudo [-klv]3.主要参数-b:在后台执行命令。
-h:显示帮助。
-H:将HOME环境变量设为新身份的HOME环境变量。
-k:结束密码的有效期,即下次将需要输入密码。
-l:列出当前用户可以使用的命令。
-p:改变询问密码的提示符号。
-s :执行指定的Shell。
-u <用户>:以指定的用户为新身份,不使用时默认为root。
-v:延长密码有效期5分钟。4.说明
sudo 命令的配置在/etc/sudoers文件中。当用户使用sudo时,需要输入口令以验证使用者身份。随后的一段时间内可以使用定义好的命令,当使用配置文件中没有的命令时,将会有报警的记录。sudo是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。一个明显的用途是增强了站点的安全性,如果需要每天以超级用户的身份做一些日常工作,经常执行一些固定的几个只有超级用户身份才能执行的命令,那么用sudo是非常适合的。ps1.作用
ps显示瞬间进程 (process) 的动态,使用权限是所有使用者。2.格式
ps [options] [--help]3.主要参数
ps的参数非常多, 此出仅列出几个常用的参数。-A:列出所有的进程。
-l:显示长列表。
-m:显示内存信息。
-w:显示加宽可以显示较多的信息。
-e:显示所有进程。
a:显示终端上的所有进程,包括其它用户的进程。
-au:显示较详细的信息。
-aux:显示所有包含其它使用者的进程。4.说明
要对进程进行监测和控制,首先要了解当前进程的情况,也就是需要查看当前进程。ps命令就是最基本、也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行、运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等。图2给出了ps-aux命令详解。大部分信息都可以通过执行该命令得到。最常用的三个参数是u、a、x。下面就结合这三个参数详细说明ps命令的作用:ps aux图2 ps-aux命令详解图2第2行代码中,USER表示进程拥有者;PID表示进程标示符;%CPU表示占用的CPU使用率;%MEM占用的物理内存使用率;VSZ表示占用的虚拟内存大小;RSS为进程占用的物理内存值;TTY为终端的次要装置号码。STAT 表示进程的状态,其中D为不可中断的静止(I/O动作);R正在执行中;S静止状态;T暂停执行;Z不存在,但暂时无法消除;W没有足够的内存分页可分配;高优先序的进程;N低优先序的进程;L有内存分页分配并锁在内存体内 (实时系统或 I/O)。START为进程开始时间。TIME为执行的时间。COMMAND是所执行的指令。4.应用实例
在进行系统维护时,经常会出现内存使用量惊人,而又不知道是哪一个进程占用了大量进程的情况。除了可以使用top命令查看内存使用情况之外,还可以使用下面的命令:
ps aux | sort +5nwho1.作用
who显示系统中有哪些用户登陆系统,显示的资料包含了使用者ID、使用的登陆终端、上线时间、呆滞时间、CPU占用,以及做了些什么。 使用权限为所有用户。2.格式
who - [husfV] [user]3.主要参数-h:不要显示标题列。
-u:不要显示使用者的动作/工作。
-s:使用简短的格式来显示。
-f:不要显示使用者的上线位置。
-V:显示程序版本。4.说明
该命令主要用于查看当前在线上的用户情况。如果用户想和其它用户建立即时通信,比如使用talk命令,那么首先要确定的就是该用户确实在线上,不然 talk进程就无法建立起来。又如,系统管理员希望监视每个登录的用户此时此刻的所作所为,也要使用who命令。who命令应用起来非常简单,可以比较准确地掌握用户的情况,所以使用非常广泛。动手练习1.使用Linux命令检测系统入侵者
安装过Ma
问题没解决?到论坛提问求助 -
 1 2如果图片或页面不能正常显示请点击这里 站内搜索:
【收藏此页】【BBS社区】【发表评论】【返回顶部】【关闭】
上一篇文章:Linux必学的60个命令(6)-其他
下一篇文章:Linux必学的60个命令(4)-网络操作 推荐文章丰富多彩的Linux办公软件..
Linux指令篇:文件打印--lpr
Linux防火墙入门:iptable..
Linux(Ubuntu)下,让Swing..
shell简介入门之前言部分
Linux 指令篇:设备管理--s..
Linux中文化之Chinput安..
Linux命令Man解释:apropos..
Ubuntu 安装GT8600显卡
安装配置技巧:如何修改提..
网络监控工具:IPTraf(一)
LinuxKernel核心中文手册(..
首先对内核增加WLAN的配置
利用ADSL+3322自架服务器2
as4下jdk环境变量配置
2005-4-6 Linux新闻与流言.. 文章评论暂无数据!
请您留言
昵称:  
验证码:
注册会员 会员登陆
  BBS问题帖
关于Visual C++ 6.0的调.. [10分]
学编程先学什么好呀 [10分]
java中int类型数据的范围 [10分]
有相关的测试书买吗? [10分]
关于.net 在实际中运用什.. [10分]
最初级的菜鸟问题,大大们.. [10分]
怎样远程枚举其他计算机.. [10分]
 
BBS社区热帖 一个问题[10分]
桌面系统是如何运行的[10分]
如何刷新gridview中的计..[10分]
服务器数据库1个多G 导..[10分]
怎样提高计算机性能?[10分]
请求帮助[10分]
[活动结束]java 基础盛宴..[100分]
net转java应该怎么学?[10分]
给点EXCEL的教程[10分]
sql语言与c语言有何不同?[10分] 相关教程文章 桌面使用技巧集中(二)
Linux网络编程--2. 初等网络函数..
linux问答99--(一)
桌面使用技巧集中(一)
Linux网络编程--4.完整的读写函数
Linux循序渐进(17):打印操作
Linux循序渐进(18):netstat命令
ThizDesktop7.0使用手记(2)
Linux循序渐进(19):shell
Linux下的中文显示和支持常见问..
Android 应用程序的生命周期
nTop截图之IP Subnet Traffic Mat..
Android移植到现有硬件平台的可..
新手入门 Linux日志简介
linux下《UNIX环境高级编程》(apue2..
linux协议栈之链路层上的数据传..
Linux必学的60个命令(4)-网络操作
nTop截图之Host Information
Android核心模块及相关技术
LVS Heartbeat Ldirectord在Cento.. 本栏目热门教程 Linux那些事儿之我是Block层(7)sc..
Linux设置启动程序
第十五章 高级进程间通信
Iptables 指南 1.1.19(中文版)(一)
Linux基础知识99问(五)
as4下ntop配置
[下载]openoffice.org3.0 rc3中..
Mail::SpamAssassin::Conf - Spam..
(转)u-boot 分析- [嵌入式Linux..
shell基础 频道地图  Linux     Linux系列教程
    Linux应用技巧
    Linux技术文章  Linux
 Windows xp
 Windows 2003
 Windows 2000/NT
 DOS
 Mac OS X
 Vista
 FreeBSD
 Solaris
 SCO UNIX
 AIX
 Windows 2008 DIY部落简介 | 广告联系 | 联系我们 | 收藏本站 | 版权声明 | 网站地图 | 问题报告 | 社区交流本站文章均为网上网友上传,如果有非法内容请联系我们,我们会在第一时间删除 Copyright @ 2006-2009 陕ICP备06011157号
 Oracle视频9i 4DVD 50元
PHP100视频教程DVD 50元
ARM视频教程 5DVD 50元
尚学堂全套+j2ee 23DVD 180元
ASP.NET视频DVD 7张 120元
 星洋泰-Cpp基础入门 一个29岁的总裁对大 win7 激活的方法 DIY部落招收各版主! c++ 快速排序 分享C#项目开发经验 ASP.NET三层与MVC DOS命令大全 很全 .  
文章出处:DIY部落(http://www.diybl.com/course/6_system/linux/Linuxxl/20081013/150613.html)