最新《Java开发大型互联网微服务架构简述之sprng boot入门》

将RIP重发布到OSPF:
A—>B
r2(config)#router ospf 1
r2(config-router)#redistribute rip subnets
将OSPF重发布到RIP:
A–>B
r2(config)#router rip
r2(config-router)#redistribute ospf 1 metric 1(在这里对metric值进行修改是因为默认值为16,而RIP最多15)
配置完成之后,由于管路距离不同,RIP的管理距离120大于OSPF的110,所以会出现路由回馈问题。这时需要进行修改管理距离,让它一视同仁,分辨不出谁的管理距离大。
r2(config)#router ospf 100
r2(config-router)#distance 121 4.4.4.4 0.0.0.0 —RID
r4(config)#router ospf 100
r4(config-router)#distance 121 2.2.2.2 0.0.0.0 —RID
从该邻居处学习到的路由条目,管理距离修改为121;(从该邻居学习意思就是R3从R2和R4学习到的路由)
做完配置后:

在R3出现了负载均衡,从表中可以看出去12.1.1.0网段和去14.1.1.0网段出现了问题,去12.1.1.0网段应该从23.1.1.0网段出发,去14.1.1.0网段应该从34.1.1.0网段出发,所以此时要进行路由策略。
路由策略:
基于控制层面流量(针对路由协议的流量)进行策略,最终影响路由表的生成,导致路径的选择被人为控制;
无论何种策略均需要一个协议来帮助其抓取流量;
ACL-----1、数据层面流量的访问控制 2、定义感兴趣流量
前缀列表—专门用于为路由策略抓取网络号;可以为分发列表和route-map服务;
前缀列表
匹配规则:至上而下逐一匹配,若上条匹配按上条执行,不再查看下条;末尾隐含拒绝所有。
具体方法有两种:
1、偏移列表----在rip或EIGRP工作时,基于控制层面的流量,在其进出时进行增加;可以叠加生效;只能使用ACL来抓取流量;

2、分发列表—在控制层面流量的进出的接口上限制条目的传递;
ACL和前缀列表均可使用
今天只针对于分发列表进行分析

首先直接干掉34.1.1.0,然后拒接所来自12.1.1.0的流量(之所以这么做,是为了方便抓取,防止误伤),允许所有,随后进协议,在流量的入接口(本实验为s1/0口)进一步拒绝所需要的流量,做到了精确拒绝。
注:若在OSPF协议中调用,必须为in方向调用!!!!!!

同理,14.1.1.0网段的修改也是这样

修改之后,路由表正常

分发列表除可以在流量进出的接口上调用外,还可以直接在重发布的时候调用
r4(config)#ip prefix-list yy deny 2.2.2.0/24
r4(config)#ip prefix-list yy permit 0.0.0.0/0 le 32

r4(config)#router rip
r4(config-router)#distribute-list prefix yy out ospf 100
必须为out方向,以上配置理解为 从ospf 100发出进入rip时生效,也就是拒绝从OSPF方向过来的R2环回。

对于route-map 主要在重发布、PBR、BGP选路时提供策略
可以搭配ACL和前缀列表工作,以下为利用ACL及前缀列表抓取流量
r2(config)#access-list 1 permit 1.1.1.0
r2(config)#access-list 2 permit 1.1.2.0
r2(config)#ip prefix-list a permit 1.1.3.0/24
r2(config)#ip prefix-list b permit 1.1.4.0/24

r2(config)#route-map ccie permit 10 创建列表CCIE,大动作为允许,序号10
r2(config-route-map)#match ip address 2 匹配ACL 2
r2(config-route-map)#set metric-type type-1 小动作为修改类型为type-1(修改为type-1是因为度量值为21,默认为20)(OSPF类型一度量值叠加,好处是干涉选路,默认为类型二,不叠加)
r2(config-route-map)#exit
r2(config)#route-map ccie permit 20 列表CCIE的序号20,大动作为允许
r2(config-route-map)#match ip address prefix-list a 匹配前缀列表 a
r2(config-route-map)#set metric ?
+/- Add or subtract metric
<0-4294967295> Metric value or Bandwidth in Kbits per second

r2(config-route-map)#set metric 10 小动作为修改度量值
r2(config-route-map)#exit
r2(config)#route-map ccie deny 30 序号30,大动作为拒绝
r2(config-route-map)#match ip address prefix-list b 匹配前缀b
r2(config-route-map)#exit
r2(config)#route-map ccie permit 40 序号40的空表,标示允许所有
r2(config-route-map)#exit

扫描二维码关注公众号,回复: 6057292 查看本文章

配置完上面的配置后,在重发布过程中进行调用
r2(config)#router ospf 1
r2(config-router)#redistribute rip subnets route-map ccie 在重发布时调用

配置指南:
1、在创建route-map时,若不配置大动作,默认为允许;若不配置序号,那么序号永远为10;
2、抓取流量时,必须使用允许,然后在route-map中来拒绝
3、自上而下逐一匹配,若上条匹配按上条执行,不再查看下条;末尾隐含拒绝所有
使用空表项来允许所有;不匹配即匹配所有,不执行则不执行小动作,仅按大动作实施;
总结:permit及permit所有,deny及deny any意思为:大动作允许就为允许,大动作允许,小动作拒绝,也为允许(此观点个人观点,欢迎指正)

小结
r2(config)#route-map ccie permit 60
r2(config-route-map)#exit
在route-map存在 and (与) or(或) 关系
route-map ccps permit 10
match ip address 1 2 3 4 5 6 或关系
只要匹配上1、2、3、4、5、6中任何一个,就算匹配成功,这是或关系。
set metric 1
set metric-type type-1 与关系
set origin egp 2 (改起源属性)
上面三个指令为和关系,同时启用
    Linux 操作系统对多用户的管理,是非常繁琐的,所以用组的概念来管理用户就变得简单,每个用户可以在一个独立的组,每个组也可以有零个用户或者多个用户。
    Linux 系统用户是根据用户 ID 来识别的,默认 ID 长度为 32 位,从默认 ID 编号从 0 开始,但是为了和老式系统兼容,用户 ID 限制在 60000 以下,Linux 用户分总共分为三种,分别如下:  
     root 用户 (ID 0)        
      在Linux系统中,root用户UID为0,root用户的权限是最高的,普通用户无法执行的操作,root用户都能完成,所以也被称为超级用户。在Linux系统中的每一个文件、目录和进程都归属于某一个用户,没有用户许可,其它普通用户是无法操作的,但对root用户除外。root用户的特权性还表现在root用户可以超越任何用户和组群对文件或目录进行读取、修改和删除(在系统正常的许可范围内);可以控制对可执行程序的执行和终止;可以对硬件设备进行添加、创建和移除等操作;也可以对文件和目录的属性和权限进行修改,以适合系统管理的需要。
     系统用户 (ID 1-499)          
     系统用户也被称为虚拟用户、伪用户或假用户,这类用户不具有登录Linux系统的能力,但却是系统运行不可缺少的用户,比如bin、daemon、adm、ftp、mail等,这类用户都是系统自身拥有的。系统用户的UID为1--499。
     普通用户 (ID 500 以上)        
     普通用户能登录系统,在Linux系统上进行普通操作,能操作自己目录的内容,其使用系统的权限受到限制,这类用户都是系统管理员创建的,其UID为500~60000之间。Linux 系统中的每个文件或者文件夹,都有一个所属用户及所属组,使用 id 命令可以显示当前用户的信息,使用 passwd 命令可以修改当前用户密码。Linux 操作系统用户的特点如下:
      每个用户拥有一个 UserID,操作系统实际读取的是 UID,而非用户名;
      每个用户属于一个主组,属于一个或多个附属组,一个用户最多有 31 个附属组;
      每个组拥有一个 GroupID;   
      每个进程以一个用户身份运行,该用户可对进程拥有资源控制权限;
      每个可登陆用户拥有一个指定的 Shell 环境

在/etc/passwd 文件中添加用户信息;
如使用 passwd 命令创建密码,密码会被加密保存在/etc/shdaow 中;
为 songsong 创建家目录:/home/songsong;
将/etc/skel 中的.bash 开头的文件复制至/home/songsong 家目录;
创建与用户名相同的 songsong 组,songsong 用户默认属于 songsong 同名组;
songsong 组信息保存在/etc/group 配置文件中。在使用 useradd 命令创建用户时,可以支持如下参数:
用法:useradd [选项] 登录
useradd -Duseradd -D [选项]
选项:-b, --base-dir BASE_DIR 指定新账户的家目录;
-c, --comment COMMENT 新账户的 GECOS 字段;
-d, --home-dir HOME_DIR 新账户的主目录;
-D, --defaults 显示或更改默认的 useradd 配置;
-e, --expiredate EXPIRE_DATE 新账户的过期日期;
-f, --inactive INACTIVE 新账户的密码不活动期;
-g, --gid GROUP 新账户主组的名称或 ID;
-G, --groups GROUPS 新账户的附加组列表;
-h, --help 显示此帮助信息并推出;
-k, --skel SKEL_DIR 使用此目录作为骨架目录;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库;
-m, --create-home 创建用户的主目录;
-M, --no-create-home 不创建用户的主目录;
-N, --no-user-group 不创建同名的组;-
o, --non-unique 允许使用重复的 UID 创建用户;
-p, --password PASSWORD 加密后的新账户密码;
-r, --system 创建一个系统账户;
-R, --root CHROOT_DIR chroot 到的目录;
-s, --shell SHELL 新账户的登录 shell;
-u, --uid UID 新账户的用户 ID;
-U, --user-group 创建与用户同名的组;
-Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER
useradd 案例演示:
创建新用户sls,并把新用户的组设置为songlss [root@songsong /]# useradd -g songlss sls
新建 edu 用户,并指定新的家目录,同时指定其登陆的 SHELL;
useradd -d /etc/edu -s /bin/bash edu
创建新用户,并未他指定主组 以及附属组
Useradd -g songlss -G slss edd
linux创建账户并自动生成主目录和主目录下的文件
useradd -d /home/test -m test
为test账户设置新的密码
Passwd test 输入新密码就好
删除用户 用userdel username
删除用户
先su root进入超级用户,再userdel username,
userdel -r -f username,强制删除所有与此用户相关的文件,包括家目录和用户邮箱,
userdel -r username是删除所有与此用户相关的文件,userdel username删除的是账户和组信息,家目录和用户邮箱还在修改用户及组的属性
Useradd 主要用于新建用户,而用户新建完毕,可以使用 usermod 来修改用户及组的属性,
如下为 usermod 详细参数:
用法:
usermod [选项] 登录选项:
-c, --comment 注释 GECOS 字段的新值;
-d, --home HOME_DIR 用户的新主目录;
-e, --expiredate EXPIRE_DATE 设定帐户过期的日期为 EXPIRE_DATE;
-f, --inactive INACTIVE 过期 INACTIVE 天数后,设定密码为失效状态;
-g, --gid GROUP 强制使用 GROUP 为新主组;
-G, --groups GROUPS 新的附加组列表 GROUPS;
-a, --append GROUP 将用户追加至上边
-G 中提到的附加组中,并不从其它组中删除此用户;
-h, --help 显示此帮助信息并推出;
-l, --login LOGIN 新的登录名称;
-L, --lock 锁定用户帐号;
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用);
-o, --non-unique 允许使用重复的(非唯一的) UID;
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码;
-R, --root CHROOT_DIR chroot 到的目录;
-s, --shell SHELL 该用户帐号的新登录 shell 环境;
-u, --uid UID 用户帐号的新 UID;-
U, --unlock 解锁用户帐号;
-Z, --selinux-user SEUSER 用户账户的新 SELinux 用户映射。
Usermod 案例演示:
(1) 将 edu 用户属组修改为 edu1,edu2 附属组;
usermod -G edu1,edu2 edu
(2) 将 edu 用户加入到 edu3,edu4 附属组,-a 为添加新组,原组保留;
usermod –a -G edu3,edu4 edu
(3) 修改 edu 用户,并指定新的家目录,同时指定其登陆的 SHELL;
usermod -d /tmp/aa -s /bin/bash edu
(4) 将 edu 用户名修改为 edu1;
usermod -l edu1 edu
(5) 锁定 edu1 用户及解锁 edu1 用户方法;
usermod –L edu1;usermod -U edu13、
3 、Linux 组管理
所有的 Linux 或者 Windows 系统都有组的概念,通过组可以更加方便的管理用户,组的概念应用于各行行业,例如企业会使用部门、职能或地理区域的分类方式来管理成员,映射在 Linux 系统,同样可以创建用户,并用组的概念对其管理。
Linux 组有如下特点:
q 每个组有一个组 ID;
q 组信息保存在/etc/group 中;q
每个用户至少拥有一个主组,同时还可以拥有 31 个附属组。
通过命令 groupadd、groupdel、groupmod 来对组进行管理,详细参数使用如下:
groupadd 用法
-f, --force 如果组已经存在则成功退出;并且如果 GID 已经存在则取消
–g;-g, --gid GID 为新组使用 GID;
-h, --help 显示此帮助信息并推出;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;-o, --non-unique 允许创建有重复 GID 的组;
-p, --password PASSWORD 为新组使用此加密过的密码;-r, --system 创建一个系统账户;
groupmod 用法
-g, --gid GID 将组 ID 改为 GID;
-h, --help 显示此帮助信息并推出;
-n, --new-name NEW_GROUP 改名为 NEW_GROUP;
-o, --non-unique 允许使用重复的 GID;
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD;
groupdel 用法
groupdel edu4 删除 edu4 组
要想删除成功edu4得是空的组
groupadd 案例演示:
(1) groupadd 创建 dzqcedu 组groupadd dzqcedu
(2) groupadd 创建 dzqcedu 组,并指定 GID 为 1000;groupadd -g 1000 dzqcedu
(3) groupadd 创建一个 system 组,名为 dzqcedu 组groupadd -r dzqcedu
Groupmod 案例演示
(4)groupmod 修改组名称,
将 dzqcedu 组名,改成 dzqcedu1;
groupmod -n dzqcedu1 dzqcedu
(5)groupmod 修改组 GID 号,将原 dzqcedu1 组 gid 改成 gid 1000;
groupmod –g 1000 dzqcedu1
4、Linux 权限管理
Linux 权限是操作系统用来限制对资源访问的机制,权限一般分为读、写、执行。系统中每个文件都拥有特定的权限、所属用户及所属组,通过这样的机制来限制哪些用户或用户组可以对特定文件进行相应的操作。
Linux 每个进程都是以某个用户身份运行,进程的权限与该用户的权限一样,用户的权限越大,则进程拥有的权限就越大。Linux 中所有的文件及文件夹都有至少权限三种权限
r(读取) 可读取文件内容 可列出目录内容
w(写入) 可修改文件内容 可在目录中创建删除内容
x(执行) 可作为命令执行 可访问目录内容
目录必须拥有 x 权限,否则无法查看其内容
Linux 权限授权,默认是授权给三种角色,分别是 user、group、other,Linux 权限与用户之间的关联如下:
U 代表 User,G 代表 Group,O 代表 Other;
每个文件的权限基于 UGO 进行设置;
权限三位一组(rwx),同时需授权给三种角色,UGO;每个文件拥有一个所属用户和所属组,对应 UG,不属于该文件所属用户或所属组使用 O 来表示;
在 Linux 系统中,可以通过 ls –l 查看 jfedu.net 目录的详细属性:
Drwxrwxr -x 2 jfedu1 jfedu1 4096 Dec 10 01:36 jfedu.net
jfedu.net 目录属性参数详解如下:
q1、 d 表示目录,同一位置如果为-则表示普通文件;
q2、 rwxrwxr-x 表示三种角色的权限,每三位为一种角色,依次为 u,g,o 权限,如上则表示 user 的权限为 rwx,group 的权限为 rwx,other 的权限为 r-x;
q 3、2 表示文件夹的链接数量,可理解为该目录下子目录的数量;
q 4、 从左到右,第一个 jfedu1 表示该用户名,第二个 jfedu1 则为组名,其他人角色默认不显示;
q 5、4096 表示该文件夹占据的字节数;
q 6、Dec 10 01:36 表示文件创建或者修改的时间;
q 7、Jfedu.net 为目录的名,或者文件名
5、Chown 属主及属组(更改文件以及文件夹所属的用户与所属的组)
修改某个用户、组对文件夹的属主及属组,用命令 chown 实现,案例演示如下:
(1) 修改 jfedu.net 文件夹所属的用户为 root,其中-R 参数表示递归处理所有的文件及子目录。
chown -R root jfedu.net
(2) 修改 jfedu.net 文件夹所属的组为 root。
chown -R :root jfedu.net 或者 chgrp –R root jfedu.net
(3) 修改 jfedu.net 文件夹所属的用户为 root,组也为 root。
chown -R root:root jfedu.net[root@bogon home]# chown -R dou ./dou/* #<==把dou目录下的所有文件以及文件夹的所属用 户由root 改为dou用户
[root@bogon home]# ls -l ./doutotal 48
-rw-r-xr–. 1 dou root 13 Mar 21 08:01 123.txt
-rw-r-xr–. 1 dou root 16 Mar 21 08:01 1.txt
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Desktop
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 dfg
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Documents
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Downloads
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 dzqc
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Music
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Pictures
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Public
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Templates
drwxr-xr-x. 2 dou root 4096 Mar 21 08:01 Videos[root@bogon home]# chown -R :dodo ./dou/* #<==把dou目录下所有的文件以及文件夹 所属的组改为dodo
[root@bogon home]# ls -l ./doutotal 48
-rw-r-xr–. 1 dou dodo 13 Mar 21 08:01 123.txt
-rw-r-xr–. 1 dou dodo 16 Mar 21 08:01 1.txt
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Desktop
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 dfg
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Documents
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Downloads
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 dzqc
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Music
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Pictures
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Public
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Templates
drwxr-xr-x. 2 dou dodo 4096 Mar 21 08:01 Videos
[root@bogon home]#
6、Chmod 用户及组权限修改某个用户、组对文件夹的权限,用命令 chmod 实现,其中以代指 ugo,+、-、=代表加入、删除和等于对应权限,具体案例如下:
(1)授予用户对 jfedu.net 目录拥有 rwx 权限
chmod –R u+rwx jfedu.net
(2)授予组对 jfedu.net 目录拥有 rwx 权限
chmod –R g+rwx jfedu.net
(3)授予用户、组、其他人对 jfedu.net 目录拥有 rwx 权限
chmod –R u+rwx,g+rwx,o+rwx jfedu.net
(4)撤销用户对 jfedu.net 目录拥有 w 权限
chmod –R u-w jfedu.ne
(5)撤销用户、组、其他人对 jfedu.net 目录拥有 x 权限
chmod –R u-x,g-x,o-x jfedu.net
(6)授予用户、组、其他人对 jfedu.net 目录只有 rx 权限
chmod –R u=rx,g=rx,o=rx jfedu.net
7、Chmod 二进制权限
Linux 权限默认使用 rwx 来表示,为了更简化在系统中对权限进行配置和修改,Linux权限引入二进制表示方法,如下代码:
Linux 权限可以将 rwx 用二进制来表示,其中有权限用 1 表示,没有权限用 0 表示;Linux 权限用二进制显示如下:
rwx=111 r-x=101 rw-=110 r–=100依次类推,转化为十进制,对应十进制结果显示如下:
rwx=111=4+2+1=7
r-x=101=4+0+1=5
rw-=110=4+2+0=6
r–=100=4+0+0=4得出结论,用 r=4,w=2,x=1 来表示权限。
使用二进制方式来修改权限案例演示如下,其中默认 jfedu.net 目录权限为 755:
(1) 授予用户对 jfedu.net 目录拥有 rwx 权限
chmod –R 755 jfedu.net
(2) 授予组对 jfedu.net 目录拥有 rwx 权限
chmod –R 775 jfedu.net
(3) 授予用户、组、其他人对 jfedu.net 目录拥有 rwx 权限
chmod –R 777 jfedu.net
(4) 撤销用户对 jfedu.net 目录拥有 w 权限
chmod –R 555 jfedu.net
(5) 撤销用户、组、其他人对 jfedu.net 目录拥有 x 权限
chmod –R 644 jfedu.net
(6) 授予用户、组、其他人对 jfedu.net 目录只有 rx 权限chmod –R 555 jfedu.n
以后真正修改权限,是这种方式 讲到这里还剩余一个知识点没讲,那就是Linux 特殊权限及掩码,可以课下进行了解
8、总结
通过对本节内容的学习,读者可以了解 Linux 用户和组的系统知识,同时账号 Linux 用户和组在系统中各种案例操作。我们要可以熟练新建用户、删除用户、修改用户属性、添加组、修改组以及删除组,修改角色的权限

猜你喜欢

转载自blog.csdn.net/weixin_44944853/article/details/89672159