设为首页 收藏本站
查看: 452|回复: 0

[经验分享] centos7的基础文档二

[复制链接]

尚未签到

发表于 2018-4-22 14:49:00 | 显示全部楼层 |阅读模式
centos7基础文档二
一.centos7的服务控制
1. 服务脚本文件
  systemctl对于Linux来说,就是一个init程序,可以作为sysVinit和Upstat的替代。
  centos7的服务脚本存放在:/usr/lib/systemd/,有系统(system)命令和用户(users)命令之分,像需要开机不登录的就能运行的服务存在系统的服务里,即:/usr/lib/systemd/system目录下,每一个服务以.server结尾。一般会分为三个部分:[unit][service][install]
  [unit]:部分主要是对这个服务的说明,内容包括描述和after,其中after由于描述服务类型
  [service]:部分是服务的主要部分,是服务的一些具体运行的参数的设置,这里type-forKing是后台运行的形式,pidfiel为存放PID的文件路径,execstart为服务的具体运行命令,
  [install]:部分是服务安装的相关设置,可设置为对用户的。
2 .systemctl命令的使用
  systemctl命令作为service和chkconfig命令的结合。
  systemctl命令的基本操作格式:
  systemctl 动作  .service(服务名称)
3.分析系统的状态
  systemctl 或systemctl   list-units  //输出激活的单元
  systemctl  list-units  --type=service //列出active状态的服务
  systemctl list-unit-files //列出所有已安装的服务
  systemctl --failed //显示启动失败的服务
  所有的可用的单元文件存放在/usr/lib/systemd/system 和/etc/systemd/syetem/目录(或者的优先级高)
  使用单元:
  一个单元可以是:(.service)(.mount )(.sockets)
  systemctl  start  //立即启动单元
  systemctl  stop   //停止单元
  systemctl  restart   //重启单元
  systemctl   reload   //重新加载单元配置
  systemctl status   // 输出单元运行状态
  systemctl is-enabled  //检查单元是否设置为自动启动
  systemctl enable    //开机自动启动单元
  systemctl  disable   //取消开机自动启动单元
  systemctl  is-active  //查看单元是不是正在运行
  systemctl daemon-reload //重新载入systemd 扫描新的或有变动的单元。
  电源管理:
  systemctl  reboot  // 重启
  systemctl  poweroff //关机
  可以通过type来过滤掉其他的类型的单元
  systemctl list-unit-files  -type  service
二.centos7的防火墙
1.centos7的防火墙的差异
  centos7已经默认使用firewalld作为防火墙了,其实用的方法已经变化,基于iptables的防火墙被默认不启动,但任然可以继续使用。
  centos7中有firewalld ,IPtables ,ebtables 等防火墙共存,默认使用firewalld作为防火墙,管理工具是firewalld-config和firewalld-cmd来管理。
2.firewalld防火墙的基本命令的使用
  1)systemctl   status {firewalld,iptables,ebtables} //查看各类防火墙的运行状态
  2)禁用防火墙iptables,:systemctl  mask iptables 或
  for service in iptables ebtables;do
  systemctl mask  $(service).service
  done    //利用for循环语句来禁用
  3)取消禁用防火墙iptables:systemctl   unmask iptables
  4)查看几种服务是否正在运行
  systemctl  status  服务名 或 systemctl   is-active 服务名
3.firewalld防火墙的区域(zone)
  firewalld 提供了支持网络/防火墙区域定义网络链接以及接口安全等级的防火墙管理工具,拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口,以前的iptables使静态的,每次修改完之后需要重新加载,相反,firewalld的防火墙不需要重启整个防火墙便可。
  

  firewalld区域的概念:
  数据包通过到内核必须要通过这些zone中的一个,而不同的zone里定义的规则不一样,可以根据网卡所连接的网络的安全性来判断,这张网卡的流量到底是使用哪个zone,比如eth0的流量全部使用zone1的过滤规则,Eth1使用的流量为zone2
  

  预定义的服务:就是端口和协议号入口的集合
  端口和协议:定义了tcpudp端口,端口可以是一个或者端口范围
ICMP阻塞:可以选择internet控制报文协议的报文,这些报文可以是信息请求也可以是对信息请求或错误条件创建的响应。
伪装:私有网络地址可以被映射到公网的ip地址,这是一次正规的地址转换。
端口转发:端口可以映射到另一个端口以及其他主机
4.firewalld的区域详解
  1)丢弃区域(drop zone)如果使用丢弃区域,任何进入该区域的数据包将被丢弃,这里类似于我们之前学过的iptables -j DROP 使用丢弃区域将不再有任何的响应
  2)阻塞区域(block zone)阻塞区域会拒绝进入的网络连接,返回icmp-host-prohibited ,只有服务器已经建立连接会被通过即只允许该系统初始化的网络连接。
  3)外部区域(external zone)这个区域相当于路由的启用伪装选项,只有指定的连接会被接受,即ssh 其他的连接将被丢弃或者不被接受。
  4)公共区域(public zone) 只接受那些被选中的连接,默认只允许ssh和dhcp6-client.这个zone是缺省区域。
  5)隔离区域(DMZ zone) 如果想要只允许给部分的服务能够被外部访问,可以在此区域中定义,它也拥有只通过被选中的连接的特性,即ssh。
  6)工作区域(work zone) 在这个区域,我们只能定义内部网络,比如私有网络通信才能被允许。
  7)家庭区域(home zone) 这个区域专门用于家庭网络,它同样只允许被选中的连接才能通过和home区域一样。
  8)内部区域(internal zone) 这个区域和工作区域类似,只有通过被选中的连接才能通过。
  9)信任区域(trust zone) 信任区域允许所有的网络通过,因为trusted是最被信任的,即使没有任何服务,那么也是被允许的,因为trusted是允许所有连接的。
5.firewalld的控制规则
1.如果一个客户端数据包的源ip地址匹配zone的source,那么该数据包就被这个zone处理,一个源只能够属于一个zon。
2.如果一个客户端数据包进入服务器的某一个接口匹配zone的interface,那么该zone的规则对这个数据包进行处理。一个接口只能属于一个zone,不能同时属于多个zone。
3.如果上述的都不匹配,那么就缺省的zone被应用,即public。
6.firewalld的命令的一般应用
  firewall-cmd  --state   //获取firewalld的状态
  
  firewall-cmd  --reload //在不改变状态的情况下重新加载防火墙
  
  firewall-cmd   --get-zone //获取支持的区域列表
  
  firewall-cmd  --get-services //获取所有支持的服务
  
  想要列出默认的有效服务,也可以进入下面的目录也可以获取
  cd   /usr/lib/firewalld/services/*.xml
  
  想要自己定义某个服务,就可以修改这里的配置文件就可以了
  firewall-cmd  --get-icmptypes   //获取所有支持的icmp类型
  
  firewall-cmd   --list-all-zones   //列出全部启用的区域的特性
  
  firewall-cmd  --zone=public --list-all  //列出制定区域的全部特性
  
  firewall-cmd   --get-default-zone   //查看默认的区域
  在文件/etc/firewalld/firewalld.conf可以定义成defaultzone=public
  
  firewall-cmd  --set-default-zone=区域名称    //设置默认区域
  firewall-cmd   --get-active-zones    //获取活动的区域
  
  firewall-cmd  --get-zone-of-interface=网卡名称   //查看某个接口属于哪个zone
  
  firewall-cmd   --add-interface =网卡名称  --zone=区域名称   //将指定接口加入到某个区域
  
  firewall-cmd   --change-interface=网卡名称  --zone=区域名称   //将某个接口转移到另一个zone
  
  firewall-cmd  --remove-interface=网卡名称  --zone=区域名称   //将某个接口从指定的区域删除
  
  firewall-cmd   --query-interface=网卡名称  --zone=区域名称    //查看某个区域是否包含所查询的接口
  
  firewall-cmd   --list-services  --zone=区域名称   //  列出区域中的所启用的服务
  
  firewall-cmd    --panic-on  //启用应急模式阻断所有的连接,以防出现紧急状况
  
  firewall-cmd    --panic-off    //禁用紧急模式
  firewall-cmd  --query-panic   //查询紧急模式
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-450522-1-1.html 上篇帖子: centos7基础文档一 下篇帖子: centos7的firewalld的命令高级应用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表