rhel6之四正则表达式共享访问自动挂载ldap acl selinux包管理_第1页
rhel6之四正则表达式共享访问自动挂载ldap acl selinux包管理_第2页
rhel6之四正则表达式共享访问自动挂载ldap acl selinux包管理_第3页
rhel6之四正则表达式共享访问自动挂载ldap acl selinux包管理_第4页
rhel6之四正则表达式共享访问自动挂载ldap acl selinux包管理_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、正则表达式:正则表达式(或称 Regular Expression,简称 RE)就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。vim、grep、awk、sed 都支持正则表达式。1、.代表任意单个字符? 匹配零个或一个字符。如:'gr?p'匹配 gr 后跟一个或没有字符,然后是 p 的行2、作为 RE 的第一个字符,代表行的开始;在其他位置是普通字符3、$作为 RE 的最后一个字符,代表行的结束;在其他位置是普通字符那么$ 就

2、表示空行4、匹配括号中的字符之一abc匹配单个字符 a 或b 或c123匹配单个字符 1 或 2 或 3a-z匹配小写字母 a-z 之一a-zA-Z匹配任意英文字母之一0-9a-zA-Z匹配任意英文字母或数字之一注意上面标红色的单个和之一,不管里面多复杂,它的结果都是一个字符!可以用标记做内的前缀,表示除内的字符之外的字符。比如 搜索 oo 前没有 g 的字符串的行. 应用 'goo' 作搜索字符串,符号如果出现在的起始位置表示他位置是普通字符。abc 匹配不是 a 或b 或或 c 的任意字符,但是在其5、* 用于修饰前导字符,表示前导字符出现任意多次,如:'a*gre

3、p'匹配所有一个或多个a 后紧跟 grep 的行。“.*”表示任意字符串6、? 用于修饰前导字符,表示前导字符出现 0 或 1 次7、+ 用于修饰前导字符,表示前导字符出现 1 或多次8、n,m用于修饰前导字符,表示前导字符出现 n 至m 次(n 和m 都是整数,且 n<m)n,m还有其他几种形式:n连续的 n 个前导字符n,连续的至少 n 个前导字符9、用于转义紧跟其后的单个特殊字符,使该特殊字符成为普通字符注:以上“前导字符”表示紧贴于元字符前面的单个普通字符例如:a* 匹配连续的任意(也包括 0)个a.* 匹配连续的任意(也包括 0)个任意字符, a? 匹配 0 或 1 个

4、aa+ 匹配 1 或多个 aa3,5 匹配 3 至 5 个连续的 a中的万能匹配!.* 匹配 0 或多个连续的.表示普通字符句点10、表示或 如: a|b|c 匹配a 或 b 或 c。如:grep|sed 匹配 grep 或 sed11、(),将部分 内容一个组,比如 要搜刮 glad 或 good 可以如许 'g(la|oo)d'grep 命令的用法grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的

5、行打印出来.参数1. -A NUM,-after-context=NUM除了列出符合行之外,并且列出后 NUM 行。如:$ grep A 1 panda file(从 file 中搜寻有 panda 样式的行,并显示该行的后 1 行)2. -a 或textgrep 原本是搜寻文字文件,若拿二进制的作为搜寻的目标,则会显示如下的讯息: Binary file 二进制文件名 matches 然后结束。若加上-a 参数则可将二进制视为文本文件搜寻,相当于-binary-files=text 这个参数。example:(错误!)(从二进制mv 中去搜寻 panda 样式)$ grep panda mv

6、Binary file mv matches(这表示此(正确!)有 match 之处,详见-binary-files=TYPE )$ grep -a panda mv3. -B NUM,-before-context=NUM与 -A NUM 相对,但这此参数是显示除符合行之外并显示在它之前的 NUM 行。example: 行)$ grep -B 1 panda file(从 file 中搜寻有 panda 样式的行,并显示该行的前 14、 -C NUM, -NUM, -context=NUM列出符合行之外并列出上下各 NUM 行,默认值是 2。example:(列出file 中除包含panda

7、 样式的行外并列出其上下 2 行)(若要改变默认值,直接改变 NUM 即可)$ grep -CNUM panda file5、 -c, -count不显示符合样式行,只显示符合的总行数。若再加上-v,-invert-match,参数显示不符合的总行数6、-i,-ignore-case 忽略大小写差别7、-n,-line-number 在匹配的行前面打印行号8、-v,-revert-match反检索,只显示不匹配的行要用好 grep 这个工具,其实就是要写好正则表达式,所以这里不对 grep 的所有功能进行实例讲解,只列几个例子,讲解一个正则表达式的写法。$ ls -l | grep '

8、a'通过管道过滤 ls -l 输出的内容,只显示以 a 开头的行。$ grep 'test' d*显示所有以 d 开头的文件中包含 test 的行。$ grep 'test' aa bb cc显示在 aa,bb,cc 文件中匹配 test 的行。$ grep 'a-z5,' aa显示所有包含每个字符串至少有 5 个连续小写字符的字符串的行。sed 命令的用法sed 是一种编辑器,它一次处理一行内容。处理时,把当前处理的行在临时缓冲区中,称为“模式空间”(pattern space),接着用 sed 命令处理缓冲区中的内容,处理完成后,把缓

9、冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向输出。1. 基本命令 -" 替换 ": s1.1 基本用法如: sed 's/day/night/' <old >new该例子将文件 old 中的每一行第一次出现的 day 替换成 night, 将结果输出到文件 news"替换 " 命令/././分割符 (Delimiter)day搜索字符串night替换字符串其实 ,分割符 "/" 可以用别的符号代替 , 比如 ",", "|

10、" 等 .如:sed 's/usr/local/bin/common/bin/'<old >new等价于 sed 's_/usr/local/bin_/common/bin_' <old >new显然 , 此时用 "_" 作分割符比 "/" 好得多1.2 用 & 表示匹配的字符串有时可能会想在匹配到的字符串周围或附近加上一些字符 .如: sed 's/abc/(abc)/' <old >new该例子在找到的 abc 前后加上括号 .该例子还可以写成 se

11、d 's/abc/(&)/' <old >new下面是更复杂的例子 :sed 's/a-z*/(&)/' <old >newsed 默认只替换搜索字符串的第一次出现 , 利用 /g 可以替换搜索字符串所有$ sed 's/test/mytest/g' example在整行范围内把 test 替换为 mytest。如果没有g 标记,则只有每行第一个匹配的 test 被替换成 mytest。$ sed 's//&localhost/' example&符号表

12、示替换字符串中被找到的部份。所有以 开头的行都会被替换成它自已加 localhost,变成 localhost。$ sed 's#10#100#g' example不论什么字符,紧跟着 s 命令的都被认为是新的分隔符,所以,“#”在这里是分隔符,代替了默认的“/”分隔符。表示把所有 10 替换成 100。二、网络文件共享服务:1、NFS:Network File System在 Linux 下实现文件共享有多种方式,NFS 就是其中之一。网络文件系统(NFS)协议是由 SunMicroSystem 在 20 世纪 80 年代为了提供

13、对共享文件的而设计和实现的。该协议采用Client/Server 模型, 通过使用Sun 开发的过程调用协议(RPC Protocol)来实现运行在一台计算机上的程序来调用在另一台上运行的子程序.NFS 包含 3 个版本:NFSv2、NFSv3、NFSv4RHEL6 是以 NFSv4 作为默认版本,NFSv4 使用 TCP协议(端是 2049)和 NFS 服务器建立连接,而老版本的 NFS 可以在 TCP 协议或者是 UDP 协议上运行。NFS 服务的端口默认是不固定的,但可以强制 NFS 使用固定端口。RHEL6 中 NFS 的软件包:nfs-utils在 NFS 的相关文档中,有两个值得重

14、点关注/etc/exports:NFS 服务的主配置文件,该文件的最主要目的是发布共享目录并为共享目录限制权限。和其他服务的主配置文件一样,绝大部分的配置都是通过编辑该文件完成/var/lib/nfs/xtab:这个文件主要用来客户端与 NFS 服务器的连接,如果想查看哪些客户端曾经连接过 NFS 服务器,查看该文件即可NFS 服务的主配置文件 exports 发布共享目录的格式如下:共享目录客户端 1 参数 1客户端 2 参数共享目录是指在 NFS 服务器上需要给客户端共享出来的目录,在设置共享目录的时候要使用绝对路径客户端是指所有可以NFS 服务器共享目录的计算机。常见客户端指定方式如下表

15、:参数:在诸多可以附带的参数中,使用最多的要数权限设置的参数了,常见参数如下表:注意:在发布共享目录的格式中除了共享目录是必跟参数外,其他参数都 是可选 的。而且共享目录和客户端 1 与客户端 2 之间都 需要使用空格符号,但客户端和参数之间不能有空格。如:在/etc/exports 文件添加如配置:/media *(ro) 0(rw,no_root_squash)/NFS/test/24(ro)NFS 服务的启动与停止:NFS 服务chkconfig -list是 NFS将 rpcbind 和 nfs 都设为自动启动chkconfig rpcbin

16、d onchkconfig nfs on启动 rpcbind参数说明ro设置共享权限为只读rw设置共享权限为读写root_squash当使用 NFS 服务器共享目录的使用者是 root 时,将不被为账号no_root_squash当使用 NFS 服务器共享目录的使用者是 root 时,将被为账号all_squash将所有使用 NFS 服务器共享目录的使用者都为账号anonuid设置账号的 UIDanongid设置账号的 GIDsync保持数据同步,也就是将数据同步写入内存和硬盘。这可能导致效率降低async先将数据保存在内存中,而不是直接保存在硬盘客户端指定方式示例使用 IP 地址指定单一主机

17、0使用 IP 地址指定范围主机/16使用 IP 地址指定范围主机192.168.1.*使用指定单一主机Test.ice.apple使用指定范围主机*.ice.apple使用通配符指定所有主机*service rpcbind start之后才能启动 nfsservice nfs start一定要先启动 rpcbind,然后再启动 nfs,不然 NFS quotas 和 NFS daemon 都将启动失败。service nfs start|stop|restart|reloadexportfs 命令:用于维护当前主机中 NFS 服务器的输出目录列表expo

18、rtfs rv 使 NFS 服务器重新exports 文件的设置,而不需重启 NFS 服务器exportfs auv 用于停止当前主机中 NFS 服务器的所有目录输出exportfs av 用于输出 NFS 服务器的所有共享目录exportfsv 显示输出列表同时,显示导出的设定参数showmount -e 在 NFS Server 上执行此命令显示 NFS Server 上所有的共享卷格式:showmount e NFS 服务器的 IPshowmount-d NFS 服务器 IP查看 NFS 服务器上哪些共享目录被客户端挂载了。showmount- aNFS 服务器地址:显示指定 NFS 服

19、务器的所有客户端主机和其所连接的目录客户端的使用:客户端可以先使用 showmount e 查看 NFS 服务器发布的共享目录挂载 NFS 文件系统Mount-t nfsNFS 服务器 IP 地址(或主机名):共享目录 本地挂载点如:mount t nfs :/media启动挂载 NFS/mnt想要系统每次启动时自动挂载 NFS 服务器上的共享目录,则可以编辑/etc/fstab 文件NFS 服务器的 IP:共享目录配置 NFS 固定端口:挂载点nfsdefaults0 0默认情况下,NFS 配置完毕后,每次重新启动该服务后其相应的端口都会随化,如果,如何开放变化的端口就

20、成问题了,其实解决办法也很简单,只需对 NFS 进启用了行配置使用固定端口即可NFS 服务启动时,会检查/etc/sysconfig/nfs 文件,因此改该文件,修改相应字段便可以强制 NFS 服务使用固定端口了:若 NFS 服务器上启用了 iptables下规则:且 filter 表的 3 个链默认规则为 DROP 需创建如iptables iptables iptables iptables iptablesiptables-P-P-P-A-AAINPUT DROP OUTPUT DROP FORWARD DROPINPUT -i lo -j ACCEPT OUTPUT -o lo -j

21、ACCEPTOUTPUT m state -state ESTABLISHED,RELATED j ACCEPTiptables iptables iptables iptables iptablesiptablesAAAAAINPUT INPUT INPUT INPUTINPUTmppppstate -state ESTABLISHED,RELATED j ACCEPTtcp udp tcpudp-dport-dport-dport-dport111 j ACCEPT111 j ACCEPT 2049 j ACCEPT 2049 j ACCEPTA INPUT p tcp m multipo

22、rt -dport 875,32803,32769,892,662j ACCEPTiptables A INPUT p udp m multiport -dport 875,32803,32769,892,662j ACCEPTservice iptables save2、SMB/CIFSSamba 项目是 SMB/CIFS 协议在 Linux/Unix 系统中的实现,能够实现跨平台的文件和打印机共享,适用于使用混合操作系统平台的企业环境Samba 的软件包组成:samba、samba-client、samba-common、samba-doc 等,只需安装 samba、 samba-clie

23、nt、samba-common 这 3 个软件包,即可实现 Samba 服务器和客户端的基本功能Samba 服务器的主要程序smbd:提供对服务器中文件、打印的共享nmbd:提供基于 NetBIOS 主机名称的Samba 的服务:/etc/init.d/smbSamba 的配置目录及文件/etc/samba/etc/samba/smb.confSamba 服务的端:tcp 协议的 139、445;udp 协议的 137、138.若 samba 服务器启动了防火墙,要在 input 链上创建规则smb.conf 配置文件的内容组成常见全局配置项的含义workgroup:所在工作组名称server

24、 string:服务器描述信息security:安全级别,可用值如下:share、user、server、domain、ads(samba 使用 ads 级别加入 WINDOWS 的域环境中)passdb backend = tdbsamlog file:日志文件位置,“%m”变量表示客户机地址 max log size:日志文件的最大容量,为 KB load printers = yescups options = raw hosts allowhosts deny当 hosts allow 和 hosts deny 同时出现且homescomment = Home Directories

25、browseable = nowritable = yes printers.时,hosts allow 优先常见共享目录配置项的含义comment:对共享目录的注释、说明信息path:共享目录在服务器中对应的实际路径browseable:该共享目录在“网上邻居”中是否可见guest ok:是否所有人,等效于“public”writable:是否可写,与 read only 的作用相反建立可global的文件共享:修改 smb.conf 配置文件workgroup = WORKGROUPsecurity = share moviecomment = Public share with movi

26、e files path = /var/public/moviespublic = yes read only = yes建立带验证的文件共享建立 Samba 用户数据库文件:系统用户帐号 -> Samba 用户帐号-a系统用户名smbpasswdsmbpasswd 命令的主要选项:-h:显示 smbpasswd 命令的帮助信息-a:添加指定的 Samba 用户帐号-d:禁用指定的用户帐号-e:启用指定的用户帐号-x:删除指定的用户帐号不使用任何命令选项时可以用于修改 Samba 用户的globalworkgroup = WORKGROUP security = usermoviecom

27、ment = Public share with movie files path = /var/public/moviespublic = no read only = novalid users = vina, root write list = root directory mask = 0744create mask = 0600在 smb.conf 文件设置客户机,一般用在全局配置global部分hosts allow 配置项:仅特定的客户机hosts deny 配置项:仅拒绝特定的客户机客户机地址表示形式:以空格分隔多个地址主机名或 IP 地址,例如: 1

28、 或者 prtsvr网络地址,例如:173.17. 或者 /客户端:使用 Windows 客户端文件共享服务网上邻居、UNC 路径使用 Linux 客户端文件共享服务smbclient 命令,查看及登录使用共享smbclient -L smbclient -U vina //moviemount 命令,将共享目录挂载到本地使用mount -o username=vina //movie /mnt注意:若开启了 selinux 功能则执行如下命令:先用 getsebool-a|

29、grepsamba 显示与samba 相关的布尔值,然后再用 setsebool 修改相关的布尔值。P 选项是修改的布尔值 生效。如 setsebool -P samba_enable_home_dirs on 和 setsebool P samba_export_all_ro on注意的配置三、自动挂载网络(automount)自动安装守护进程在文件系统被到时就安装文件系统,而不再需要文件系统时,就卸载它们(不活动状态的时间间隔默认为 5 分钟),这一过程就减少了活动安装点的数目。与自动安装相关的配置文件中,有两个主要的配置文件主控文件:/etc/auto.master此文件列出了应该有 a

30、utofs 文件系统安装到它们上面的目录,并且给每个目录关联了一个文件。除了给和名提供根目录之外,还能以 mount命令使用的“-o”格式来指定其他选项,一个简单的主控文件(auto.master)类似于下面的样子DirectoryMapDirectory 是指挂载点的父目录,可自已随便设置。这个目录必须是一个有效目录Map 是指定的动挂载。也是可以的。如下图所示:文件,该文件中包含挂载点目录;autofs 会自动监视文件的配置来自文件名可以随便写,只要在/etc 目录下能够找到就 OK 了,像写成 media.dvd文件:自动把几个文件系统安装到一个公共的目录下,目录路径是在主控文件中,而不

31、是在文件本身里指定的。格式:挂载目录fstype文件系统类型,其后可以跟挂载选项,用“,”隔开要挂载的设备名(本地设备必须加“:”)修改完主控文件和文件后要重启 autofs 服务:service autofs stopservice autofs start自动挂载的默认有效时间是 5 分钟,但可以通过修改/etc/sysconfig/autofs 文件来设置。Automount 的应用1、 自动挂载光驱:将光驱挂载在/misc/cd 目录确定/misc 目录已存在修改/etc/auto.master 文件:指定挂载点的父目录(/misc)和文件。:修改/etc/auto.misc 文件:指

32、定挂载点、文件系统类型及参数、挂载的设备。如下图所示2、 自动挂载 linux 文件系统即 linux 分区:将 linux 分区挂载在/disk/part 目录创建目录/disk:mkdir /disk修改/etc/auto.master 文件:指定挂载点的父目录(/disk)和文件。:创建/etc/auto.part文件:指定挂载点、文件系统类型及参数、挂载的设备。如下图所示cp/etc/auto.misc/etc/auto.partvi/etc/auto.part3、 自动挂载 NFS 共享目录:将 NFS 服务器上有两个共享目录:/var/nfs/oshu 和/var/nfs/rali

33、i 分别挂载在/special/oshu 和/special/ralii 目录并且只读修改/etc/exports 文件,共享上述两个目录确定挂载点父目录/special 已存在修改/etc/auto.master 文件:指定挂载点的父目录(/special)和文件。:创建/etc/auto.nfs所示文件:指定挂载点、文件系统类型及参数、挂载的设备。如下图cp/etc/auto.misc/etc/auto.nfsvi/etc/auto.nfs4、 自动挂载 samba 共享服务器上的共享目录 public(对应本地目录:/var/public),将其挂载在/special/share 目录确

34、定挂载点父目录/special 已存在修改/etc/auto.master 文件:指定挂载点的父目录(/special)和文件。:修改/etc/auto.nfs所示文件:指定挂载点、文件系统类型及参数、挂载的设备。如下图扩展知识点:Automount 可以应用于nfs+nis+autofs先在 nis 服务器上面建立好用户:107 在nis 客户端上验证(具体过程不多说了)出错了,说没有家目录。怎么办?对,自动挂载给他做一个家目录:auto.master 文件四、管理用户账户和权限用户和组帐号概述:(/etc/passwd、/etc/shadow、/etc/group)Linux 基于用户用户

35、帐号:对进行超级用户 root: 即 root 用户,类似于 Windows 系统中的 Administrator 用户,非执行管理任务时不建议使用 root 用户登录系统普通用户: 一般只在用户的宿主目录中有完全权限程序用户: 用于维持系统或某个程序的正常运行,一般不daemon、ftp、mail 等组帐号:基本组(私有组) 附加组(公共组) UID 和 GID:UID(User Identity,用户标识号) GID(Group Identify,组标识号)root 用户的 UID 的固定值为 0、root 组帐号的 GID 号为固定值 0登录到系统。例如:bin、1499 的 UID、G

36、ID 默认保留给程序用户使用,普通用户/组使用的 UID、GID 号在 50060000之间。可以查看/etc/login.defs 文件保存用户的帐号基本信息:文件位置:/etc/passwd ,每一行对应一个用户的帐号p 字段 1:用户帐号的名称p字段 2:用户字串或者占位符“x”这是 auto.nfs 文件好了现在测试一下:OK!那现在问题来了,是不是我所有的网络用户都要在自动挂载里面写一条,那多麻烦啊,所以我们利用通配符可以很好的解决这一需求:在 auto.nfs 文件里改:ppppp字段 3:用户帐号的 UID 号字段 4:所属基本组帐号的 GID 号字段 5:用户全名字段 6:宿主

37、目录字段 7:登录 Shell 信息管理本地用户:添加用户帐号:useradd 常用命令选项-u:指定选项.用户名UID 标记号-d:指定宿主目录,缺省为 /home/用户名-e:指定帐号失效时间-g:指定用户的基本组名(或 UID 号)-G:指定用户的附加组名(或 GID 号)-M:不为用户建立并初始化宿主目录-s:指定用户的登录 Shell最简单的用法是,不添加任何选项,只使用用户名作为 useradd 命令的参数,按系统默认配置建立指定的用户帐号使用 adduser 命令也可以添加用户帐号,在 RHEL 系统中 adduser 命令实际上是 useradd 命令的符号用户帐号的初始配置文

38、件:文件来源:新建用户帐号时,从 /etc/skel 目录中主要的用户初始配置文件/.bash_profile:用户每次登录时执行而来/.bashrc:每次进入新的 Bash 环境时执行/.bash_logout:用户每次登录时执行默认情况下,用户宿主目录下的初始配置文件只对当前用户有效,而全局配置文件对所有用户有效修改用户帐号的属性:usermod选项.用户名常用命令选项-l:更改用户帐号的登录名称-L:锁定用户账户-U:用户账户-a: append 模式,若不加-a 则删除其他附加组,通常和-G 一起使用。usermod-aG 组名 用户名(将用户加入指定的附加组)以下选项与 userad

39、d 命令中的含义相同 -u、-d、-e、-g、-G、-s删除用户帐号:userdel-r用户名添加管理-r 选项时,表示连用户的宿主目录一并删除:用于保存字串、有效期等信息:文件位置:/etc/shadow每一行对应一个用户的pppp字段 1:用户帐号的名称字段 2:加密的字串信息字段 3:上次修改的时间字段 4:的最短有效天数,默认值为 0ppppp默认只有 root 用户能够字段 5:的最长有效天数,默认值为 99999字段 6:提前多少天警告用户口令将过期,默认值为 7字段 7:在过期之后多少天禁用此用户字段 8:帐号失效时间,默认值为空字段 9:保留字段(未使用)文件中的内容,并且不r

40、oot 直接编辑该文件中的内容上次修改的时间,表示从 1970 年 01 月 01 日(可理解为 Unix 系统的诞生日)算起到最近一次修改时间隔的天数设置/更改用户口令:passwd选项.用户名常用命令选项-d:清空用户的-l:锁定用户帐号,使之无需即可登录-S:查看用户帐号的状态(是否被锁定)-u:用户帐号“未设置”的用户帐号尚未完成初始化,处于不可登录状态,这与“空”的情况(已经为用户设置,但字串为空)是不同的,“未设置”的用户将被登录系统,而拥有“空”的用户是可以在本地终端登录的普通用户也可以使用 passwd 命令,但只能更改的,要求有一定的复杂性(如不要直接使用英文单词,长度保持在

41、 6 位以上),否则系统可能拒绝进行设置被锁定的帐号也将无法登录系统chage 命令:修改用户的有效期如:在下次登录时,chage-d 0 username 将强制更新chage-l username 将列出用户名的当前设置组帐 group、gshadow/etc/group:保存组帐号基本信息/etc/gshadow:保存组帐号的信息group 文件内的最后一个字段中列出属于该组的用户成员(一般不包括基本组对应的用户帐号),多个成员之间以逗号“,”分隔添加组帐号:groupadd-g GID组帐号名添加、删除组成员:gpasswd选项.组帐号名用途:设置组帐号常用选项:(极少用)、添加/删除

42、组成员-a:向组内添加一个用户-d:从组内删除一个用户成员-M:定义组成员列表,以逗号分隔使用“-M”选项时可以为指定组帐号定义成员列表(注意:会覆盖原有组成员),需要添加多个用户到指定的组中时非常方便删除组帐号:groupdel组帐号名用户和组帐号id 命令:用途: 格式:idgroups 命令用途:用户标识用户名用户所属的组格式:groups用户名 finger 命令用途:用户帐号的详细信息格式:finger-l用户名 users、w 、who 命令用途:已登录到主机的用户信息Linux 系统有关文件和目录的权限管理:基本权限与附限(略,请参考)五、LDAP(轻量级目录服务)管理用户近几年

43、,随着 LDAP(Light Directory Access Protocol,轻量级目录协议)技术的兴起和应用领域的不断扩展,目录服务技术成为许多新型技术实现信息、管理和的首选方案,、商务特别是在网络查找、用户与认证信息的、新型网络服务、网的通用数据库服务和安全服务等方面,都需要应用目录服务技术来实现一个通用、完善、应用简单和可以扩展的系统。随着企业自身的发展,企业网络也日益壮大,网络提供的服务也越来越多,如网络登录、电子邮件服务、FTP 服务、WEB 服和、服务和办公自动化等,但带来的问题也日益增多,其中最突出的问题是用户账号的管理。由于大部分的应用系统都来自不同的开发商,各个系统都使用

44、自已的认证机制,需要网络管理员在每个应用系统中建立相应的账号信息,因此造成大量重复的劳动,同进也给用户们带来列穷的烦恼,他们不得不记信一大堆账号和。目录服务就是为了解决以上问题而产生的。目录服务是一个特殊的数据库,它为读、浏览和搜索进行了优化。目录服务目前有 X.500 和 LDAP 两个国际标准协议。LDAP 协议简介:LDAP(轻量级目录协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统,其专门,浏览和搜索操作进行了特定的优化。在网络中应用了 LDAP 后,用户只需要使用一个账号和就可以轻松网

45、络中的所有服务,实现用户的统一认证。LDAP 系统结构图见图 1.特殊权限数字表示对文件的影响对目录的影响u+s (suid)4以拥有文件的用户身份执行文件,而不是以运行文件的用户身份无影响g+s (sgid)2以拥有文件的组执行文件在目录中最新创建的文件将其组所有者设置为与目录的组所有者相匹配o+t (sticky)1无影响对目录具有写入权限的用户仅可以删除其所拥有的文件,而无法删除其他用户所拥有的文件。权限数字表示对文件的影响对目录的影响r ()4可文件中的内容可以列出目录的内容(文件名)w (写入)2可以更改文件的内容可以创建或删除目录中的任一文件x (可执行)1可以作为命令执行文件可以

46、 目录的内容,即可以进入或通过目录,目录中文件内容能否 取决于目录中文件的权限LDAP 的信息是以树型结构的首先要为目录树建立一个“根(ROOT)”。根是目录树的最顶层,后面建立的所有对象都是基于这个根的,所以它也称为基准 DN。推荐使用公司的 DNS的不同部分:dc=com,dc=example公司的部门作为 OU,如 ou=people,ou=servers。OU 是目录树的分枝节点,下面可以包含其他分枝节点或叶子节点。用户是目录树的最底层(即叶子节点),可以根据用户所在的部门将其放在不同的 OU 中,使用 uid 或 cn 描述都可以。如 uid=babs 或 cn=babs配置 OPE

47、NLDAP 服务器:1、安装 openldap、db4、migrationtools 安装包#yum install openldap* #yum install db4#yum install migrationtools# cd /var/lib/ldap/下面的这一步非常重要 ( 必须要第一步就执行这个 slapd 命令)# slapd(会生成一些库文件)alockdb.003 db.006log.0000000001ls db.001 db.004 dn2id.bdbopenldap-severs-update.log db.002 db.005 id2entry.bdb查看服务器进程

48、: #ps aux | grep ldap 查看端口:rootstation3 ldap# netstat -ntlp | grep 389tcp00 :38:*LISTEN3782/slapdtcp00 :389:*LISTEN3782/slapd问题一:rootstation3 ldap# service slapd restart停止 slapd:确定/var/lib/ldap/id2entry.bdb is not owned by "ldap"警告/var/lib/ldap/ db.002 is not owned by "

49、ldap"警告/var/lib/ldap/ db.001 is not owned by "ldap"警告/var/lib/ldap/dn2id.bdb is not owned by "ldap"警告/var/lib/ldap/ db.005 is not owned by "ldap"警告/var/lib/ldap/ db.006 is not owned by "ldap"警告/var/lib/ldap/ db.003 is not owned by "ldap"警告/var/l

50、ib/ldap/ db.004 is not owned by "ldap"警告正在检查 slapd 的配置文件: bdb_db_open: alock package is unstable backend_startup_one: bi_db_open failed! (-1)slap_startup failed (test would succeed using the -u switch)失败解决方法:chown ldap:ldap/var/lib/ldap/* # service slapd restart停止 slapd:失败正在检查 slapd 的配置文件:

51、bdb_db_open: Warning - No DB_CONFIG file found in directory /var/lib/ldap: (2)解决方法:拷贝 DB_CONFIG.example 为 DB_CONFIGcp /usr/share/doc/openldap-servers-2.4.19/DB_CONFIG.example /var/lib/ldap/DB_CONFIG# service slapd restart一切都正常了,slapd 服务启动正常。2、创建 LDAP 服务的主配置文件/etc/openldap/slapd.conf cp -p /etc/openl

52、dap/slapd.conf.bak/etc/openldap/slapd.conf 3、产生一个 manager 服务的管理的#slappasswd h SSHA s redhat >>/etc/openldap/slapd.conf 4、 编辑文件 slapd.confdatabase bdbsuffix "dc=example,dc=com"#一条所属区域#rootdn "cn=Manager,dc=example,dc=com"rootpw 此处所写的就是上一步所产生的加密#定义 LDAP 根管理员的(强烈建议使用加密的密码)root

53、pw 与加密之间最好用按 TAB 键分隔5、 设置各项服务的开机启动#chkconfig slapd on #chkconfig rsyslog on #chkconfig rpcbind onldap 服务(5.4 为 ldap)现在变成了 slapd rsyslog 服务(日志) 5.4 为 syslog启动 rpcbind 服务 5.4 为 portmap 111 端口6、将系统账户转移到 openldap 中(事先建好一些系统账号),编辑文件 migrate_common.ph文件#vi /usr/share/migrationtools/migrate_common.ph# cd /

54、etc/openldap/cat example.ldif$DEFAULT_BASE = "dc=example,dc=com"第 74 行# cd /usr/share/migrationtools# ./migrate_passwd.pl /etc/passwd > /etc/openldap/user.ldif # ./migrate_group.pl /etc/group > /etc/openldap/group.ldif建立 example.ldif,ou_people.ldif, ou_group.ldif 三个文件$DEFAULT_MAIL_DOMAIN = ""第 71 行Expect poor performance for suffix dc=my-domain,dc=com. config file testing succeeded确定启动 slapd:确定bdb_db_open: Warning - No DB_CONFIG file found in directo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论