⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linux必学的60个命令(5).txt

📁 program this is very useful
💻 TXT
📖 第 1 页 / 共 2 页
字号:
Linux必学的60个命令(5)-网络安全
Linux必学的60个命令:系统安全相关命令
Linux必学的系统安全命令 (1)
作者:曹元其 发文时间:2004.12.03
   虽然Linux和Windows NT/2000系统一样是一个多用户的系统,但是它们之间有不少重要
的差别。对于很多习惯了Windows系统的管理员来讲,如何保证Linux操作系统安全、可靠将
会面临许多新的挑战。本文将重点介绍Linux系统安全的命令。

   passwd

   1.作用
   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命令需要输入旧的密码,然后再输入两次新密码。

   su

   1.作用
   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 root

   umask

   1.作用
   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,结果只有文件所有者具有
读写文件的权限,其它用户不能访问该文件。这显然是一种非常安全的设置。

   chgrp

   1.作用
   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 /book

   chmod

   1.作用
   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
chown

   1.作用
   更改一个或多个文件或目录的属主和属组。使用权限是超级用户。

   2.格式
   chown [选项] 用户或组 文件

   3.主要参数
   --dereference:受影响的是符号链接所指示的对象,而非符号链接本身。
   -h, --no-dereference:会影响符号链接本身,而非符号链接所指示的目的地(当系统
支持更改符号链接的所有者,此选项才有效)。
   --from=目前所有者:目前组只当每个文件的所有者和组符合选项所指定的,才会更改所
有者和组。其中一个可以省略,这已省略的属性就不需要符合原有的属性。
   -f, --silent, --quiet:去除大部分的错误信息。
   -R, --recursive:递归处理所有的文件及子目录。
   -v, --verbose:处理任何文件都会显示信息。

   4.说明
   chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或用户ID;组可以
是组名或组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -