一、Linux 安全管理

1.1 什么是防火墙?

防火墙分为硬件防火墙和软件防火墙两种

防火墙对数据封包取得方式来分类,可以分为

(1)代理服务器 proxy

(2)封包过滤机制 IP filter

1.2 防火墙的功能

(1)代理服务功能 是一种网络服务,通常架设在路由器上面,可以完整掌握局域网对外连接

(2)IP filter 这种方式可以直接分析底层封包表头数据进行过滤,包括MAC地址,IP,TCP,UDP,ICMP等封包信息都可以进行过滤,用途非常广泛

(3)状态监控包过滤 动态服务,内网主动访问外网的请求,外网回复是可以进来的

其他功能

L2-L7层防御,失陷主机检测,沙盒,waf等web专属防御,热点事件预警,鉴黄等这些功能不是防火墙必须有的,甚至都是要花钱的。

1.3 Linux 防火墙
1.3.1 红帽系列自带的firewall

红帽8是没有防火墙的图形化界面,只能通过命令行来管理,我们可以安装红帽的防火墙图形化界面

[root@wentan ~]# yum install -y firewall-config

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RwEqHWoc-1642248747472)(C:\Users\tan-1210\AppData\Roaming\Typora\typora-user-images\image-20220114105640833.png)]

1.3.2 firewalld防火墙的区域

firewalld 中常用的区域名称及默认策略规则

区域 默认策略规则
trusted 允许所有的数据包
home 拒绝流入的流量,除非与流出的流量相关; 而如果流量与ssh、mdns、ipp-client、amba-client与dhcpv6-client服务相关,则允许流量
internal 等同于home区域
work 拒绝流入的流量,除非与流出的流量数相关;而如果流量与ssh、ipp-client与dhcpv6-client服务相关, 则允许流量
public 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、dhcpv6-client服务相关,则允许流量
external 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
dmz 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
block 拒绝流入的流量,除非与流出的流量相关
drop 拒绝流入的流量,除非与流出的流量相关
1.3.3 防火墙 firewall 的两个应用项

runtime 当前有效

permanent 永久有效

1.4 firewall-cmd 命令

终端管理工具 firewall-cmd 命令的使用及作用

参数 作用
–get-default-zone 查询默认的区域名称
–set-default-zone=<区域名称> 设置默认的区域,使其永久生效
–get-zones 显示可用的区域
–get-services 显示预先定义的服务
–get-active-zones 显示当前正在使用的区域与网卡名称
–add-source= 将源自此IP或子网的流量导向指定的区域
–remove-source= 不再将源自此IP或子网的流量导向某个指定区域
–add-interface=<网卡名称> 将源自该网卡的所有流量都导向某个指定区域
–change-interface=<网卡名称> 将某个网卡与区域进行关联
–list-all 显示当前区域的网卡配置参数、资源、端口以及服务等信息
–list-all-zones 显示所有区域的网卡配置参数、资源、端口以及服务等信息
–add-service=<服务名> 设置默认区域允许该服务的流量
–add-port=<端口号/协议> 设置默认区域允许该端口的流量
–remove-service=<服务名> 设置默认区域不再允许该服务的流量
–remove-port=<端口号/协议> 设置默认区域不再允许该端口的流量
–reload 让“永久生效”的配置规则立即生效,并覆盖当前的配置规则
–panic-on 开启应急状况模式
–panic-off 关闭应急状况模式

实例1

#查看firewalld服务当前所使用的区域
[root@wentan ~]# firewall-cmd --get-default-zone
public#设置firewalld服务的区域
[root@wentan ~]# firewall-cmd --set-default-zone=trusted
success
[root@wentan ~]# firewall-cmd --set-default-zone=public
success#查看firewalld全部区域
[root@wentan ~]# firewall-cmd --get-zones
block dmz drop external home internal libvirt public trusted work
#查看firewalld全部服务
[root@wentan ~]# firewall-cmd --get-services
RH-Satellite-6 RH-Satellite-6-capsule amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-client bb bgp bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc bittorrent-lsd ceph ceph-mon cfengine cockpit collectd condor-collector ctdb dhcp dhcpv6 dhcpv6-client distcc dns dns-over-tls docker-registry docker-swarm dropbox-lansync elasticsearch etcd-client etcd-server finger foreman foreman-proxy freeipa-4 freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp galera ganglia-client ganglia-master git grafana gre high-availability http https imap imaps ipp ipp-client ipsec irc ircs iscsi-target isns jenkins kadmin kdeconnect kerberos kibana klogin kpasswd kprop kshell kube-apiserver ldap ldaps libvirt libvirt-tls lightning-network llmnr managesieve matrix mdns memcache minidlna mongodb mosh mountd mqtt mqtt-tls ms-wbt mssql murmur mysql nbd nfs nfs3 nmea-0183 nrpe ntp nut openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole plex pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy prometheus proxy-dhcp ptp pulseaudio puppetmaster quassel radius rdp redis redis-sentinel rpc-bind rquotad rsh rsyncd rtsp salt-master samba samba-client samba-dc sane sip sips slp smtp smtp-submission smtps snmp snmptrap spideroak-lansync spotify-sync squid ssdp ssh steam-streaming svdrp svn syncthing syncthing-gui synergy syslog syslog-tls telnet tentacle tftp tftp-client tile38 tinc tor-socks transmission-client upnp-client vdsm vnc-server wbem-http wbem-https wsman wsmans xdmcp xmpp-bosh xmpp-client xmpp-local xmpp-server zabbix-agent zabbix-server
#查看
[root@wentan ~]# firewall-cmd --get-active-zones
libvirtinterfaces: virbr0
publicinterfaces: ens160

实例2

#查询ens160网卡在firewalld服务中的区域
[root@wentan ~]# firewall-cmd --get-default-zone
public
[root@wentan ~]# firewall-cmd --get-zone-of-interface=ens160
public#开启https服务
[root@wentan ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@wentan ~]# firewall-cmd --reload     //刷新
success
[root@wentan ~]# firewall-cmd --zone=public --query-service=https
yes#禁用https服务
[root@wentan ~]# firewall-cmd --permanent --zone=public --remove-service=https
success

实例3

#把firewalld服务中ens160网卡的默认区域修改为external,并在系统重启后生效。分别查看当前与永久模式下的区域名称
[root@wentan ~]# firewall-cmd --permanent --zone=external --change-interface=ens160The interface is under control of NetworkManager, setting zone to 'external'.
success
[root@wentan ~]# firewall-cmd --runtime-to-permanent
success

实例4

#把在firewalld服务中访问8080到8088端口的流量策略设置为允许,但仅限当前生效
[root@wentan ~]# firewall-cmd --zone=public --add-port=8080-8088/tcp
success
#查看端口
[root@wentan ~]# firewall-cmd --zone=public --list-ports
8080-8088/tcp

实例5

#把原本访问本机888端口的流量转发到22端口,要且求当前和长期均有效
[root@wentan ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.253.128
success
[root@wentan ~]# firewall-cmd --reload
success
[c:\~]$ ssh root@192.168.253.128 888

实例6

#启动/关闭firewalld防火墙服务的应急状况模式,阻断一切网络连接(当远程控制服务器时请慎用)
#紧急命令
[root@wentan ~]# firewall-cmd --panic-on
[root@wentan ~]# firewall-cmd --panic-off

实例7

#查询public区域是否允许请求SSH和HTTPS协议的流量
[root@wentan ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@wentan ~]# firewall-cmd --zone=public --query-service=https
no

实例8

#firewalld中的富规则表示更细致、更详细的防火墙策略配置,它可以针对系统服务、端口号、源地址和目标地址等诸多信息进行更有针对性的策略配置。它的优先级在所有的防火墙策略中也是最高的。比如,我们可以在firewalld服务中配置一条富规则,使其拒绝192.168.91.0/24网段的所有用户访问本机的ssh服务(22端口)
[root@wentan ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule \family="ipv4" \source address="192.168.253.0/24" \service name="ssh" \reject"
[root@wentan ~]# firewall-cmd --reload
success#关闭防火墙服务
[root@wentan ~]# systemctl stop firewalld.service

二、iptables 服务

其实iptables服务并不是真正的防火墙,只是用来定义防火墙功能的防火墙管理工具,将定义好的规则交给内核里面的netfilter功能,即网络过滤器来读取,从而真正实现防火墙功能。

2.1 IPtables 抵挡封包的方式

(1)拒绝让Internet包进入Linux主机的某些port

(2)拒绝让某些来源ip封包进入

(3)拒绝让带有某些flag标记的包进入

(4) 分析硬件地址mac来提供服务

2.2 五链

iptables命令中设置了数据过滤或者是处理数据包的策略,叫做规则。将多个规则合成一个链,叫做规则链,规则链则依据数据包位置不同分成5类

PREROUTING       #在进行路由判断之前所要进行的规则(DNAT/REDIRECT)
INPUT           #处理入站的数据包
OUTPUT          #处理出站的数据包
FORWARD         #处理转发的数据包
POSTROUTING     #在进行路由判断之后所要进行的规则(SNAT/MASQUERADE)
2.3 四表

iptables中的规则表适用于容纳规则链,规则表默认是允许状态的,那么规则链就是设置被禁止的规则,而反之如果规则表是禁止状态的,那么规则链就是设置被允许的规则。

表名 功能
raw 确定是否对该数据包进行状态跟踪
mangle 为数据包设置标记(较少使用)
nat 修改数据包中的源、目标IP地址或端口
filter 确定是否放行该数据包(过滤)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vMFx9YL1-1642248747475)(C:\Users\tan-1210\AppData\Roaming\Typora\typora-user-images\image-20220114204101691.png)]

  • 规则表的先后顺序:raw→mangle→nat→filter
  • 规则链的先后顺序:
    • 入站顺序 PREROUTING→INPUT
    • 出站顺序 OUTPUT→POSTROUTING
    • 转发顺序 PREROUTING→FORWARD→POSTROUTING

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rRqi9wsT-1642248747476)(C:\Users\tan-1210\AppData\Roaming\Typora\typora-user-images\image-20220114204331046.png)]

2.4 iptables命令中常见的控制类型
类型 功能
ACCEPT 允许通过
LOG 记录日志,传递给下一条规则
REJECT 拒绝通过,可以给提示
DROP 直接丢弃,不给回应
2.5 用法格式
2.5.1 iptables的用法格式
iptables [-t 表名] 选项 [链名] [条件] [-j 控制类型]
iptables –[A|I 链] [-i|o 网络接口] [-p 协议] [-s 来源ip/网域] [-d 目标ip/网域] –j[ACCEPT|DROP]
参数 作用
-P 设置默认策略:iptables -P INPUT (DROP|ACCEPT)
-F 清空规则链
-L 查看规则链
-A 在规则链的末尾加入新规则
-I num 在规则链的头部加入新规则
-D num 删除某一条规则
-s 匹配来源地址IP/MASK,加叹号"!"表示除这个IP外。
-d 匹配目标地址
-i 网卡名称 匹配从这块网卡流入的数据
-o 网卡名称 匹配从这块网卡流出的数据
-p 匹配协议,如tcp,udp,icmp
–dport num 匹配目标端口号
–sport num 匹配来源端口号
2.5.2 查看规则
[root@wentan ~]# iptables [-t tables] [-L] [-nv]
参数:
-t  #后面接table,例如nat或filter,如果省略,默认显示filter
-L  #列出目前的table的规则
-n  #不进行IP与主机名的反查,显示信息的速度会快很多
-v  #列出更多的信息,包括封包数,相关网络接口等
2.5.3 删除规则
[root@wentan ~]# iptables [-t tables] [-FXZ]
参数:
-F  #清除所有的规则
-X  #清除所有自定义规则
-Z  #将计数与流量统计清零
2.5.4 默认策略修改
[root@wentan ~]# iptables [-t tables] -P [链名] [ACCEPT/DROP]
2.5.5 实例

实例1

# 所有的来自 lo 这个网口的封包,都予以接受
[root@wentan ~]# iptables -A INPUT -i lo -j ACCEPT# 目标来自 192.168.1.200 这个 IP 的封包都予以接受
[root@wentan ~]# iptables -A INPUT -s 192.168.1.200 -j ACCEPT# 192.168.1.0/24 可接受,但 192.168.1.10 丢弃
[root@wentan ~]# iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
[root@wentan ~]# iptables -A INPUT -s 192.168.1.10 -j DROP[root@wentan ~]# iptables -L -n --line-numbers
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
2    ACCEPT     all  --  192.168.1.200        0.0.0.0/0
3    ACCEPT     all  --  192.168.1.0/24       0.0.0.0/0
4    DROP       all  --  192.168.1.10         0.0.0.0/0
#删除第三条规则
[root@wentan ~]# iptables -D INPUT 3
[root@wentan ~]# iptables -L -n --line-numbers
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
2    ACCEPT     all  --  192.168.1.200        0.0.0.0/0
3    DROP       all  --  192.168.1.10         0.0.0.0/0

案例2 Iptables 开放tcp、udp端口

#开放samba端口(udp137,138;tcp139,445)
[root@wentan ~]# iptables -A INPUT -i ens160 -p udp --dport 137:138 -j ACCEPT
[root@wentan ~]# iptables -A INPUT -i ens160 -p tcp --dport 139 -j ACCEPT
[root@wentan ~]# iptables -A INPUT -i ens160 -p tcp --dport 445 -j ACCEPT

实例3 匹配ICMP端口和ICMP类型

iptables –A INPUT –p icmp --icmp-type 类型 –j REJECT
#参数:--icmp-type :后面必须要接 ICMP 的封包类型,也可以使用代号,例如 8 代表 echo request 的意思。(可自查询ICMP-type对应表)
[root@wentan ~]# iptables -A INPUT -p icmp --icmp-type 8 -j REJECT

ICMP类型

TYPE CODE Description
0 0 Echo Reply——回显应答(Ping应答)
3 0 Network Unreachable——网络不可达
3 1 Host Unreachable——主机不可达
3 2 Protocol Unreachable——协议不可达
3 3 Port Unreachable——端口不可达
3 4 Fragmentation needed but no frag. bit set——需要进行分片但设置不分片比特
3 5 Source routing failed——源站选路失败
3 6 Destination network unknown——目的网络未知
3 7 Destination host unknown——目的主机未知
3 8 Source host isolated (obsolete)——源主机被隔离(作废不用)
3 9 Destination network administratively prohibited——目的网络被强制禁止
3 10 Destination host administratively prohibited——目的主机被强制禁止
3 11 Network unreachable for TOS——由于服务类型TOS,网络不可达
3 12 Host unreachable for TOS——由于服务类型TOS,主机不可达
3 13 Communication administratively prohibited by filtering——由于过滤,通信被强制禁止
3 14 Host precedence violation——主机越权
3 15 Precedence cutoff in effect——优先中止生效
4 0 Source quench——源端被关闭(基本流控制)
5 0 Redirect for network——对网络重定向
5 1 Redirect for host——对主机重定向
5 2 Redirect for TOS and network——对服务类型和网络重定向
5 3 Redirect for TOS and host——对服务类型和主机重定向
8 0 Echo request——回显请求(Ping请求)
9 0 Router advertisement——路由器通告
10 0 Route solicitation——路由器请求
11 0 TTL equals 0 during transit——传输期间生存时间为0
11 1 TTL equals 0 during reassembly——在数据报组装期间生存时间为0
12 0 IP header bad (catchall error)——坏的IP首部(包括各种差错)
12 1 Required options missing——缺少必需的选项
13 0 Timestamp request (obsolete)——时间戳请求(作废不用)
14 Timestamp reply (obsolete)——时间戳应答(作废不用)
15 0 Information request (obsolete)——信息请求(作废不用)
16 0 Information reply (obsolete)——信息应答(作废不用)
17 0 Address mask request——地址掩码请求
18 0 Address mask reply——地址掩码应答

实例4 iptables --syn 的处理方式

指定TCP匹配扩展

使用 --tcp-flags 选项可以根据tcp包

#打标记
[root@wentan ~]# iptables -A INPUT -p tcp --tcp-flags SYN,FIN,ACK SYN
[root@wentan ~]# iptables -A FORWARD -p tcp --tcp-flags ALL SYN,ACK
#上实例中第一个表示SYN、ACK、FIN的标志都检查,但是只有SYN匹配。第二个表示ALL(SYN,ACK,FIN,RST,URG,PSH)的标志都检查,但是只有设置了SYN和ACK的匹配[root@wentan ~]# iptables -A FORWARD -p tcp --syn
#选项--syn相当于"--tcp-flags SYN,RST,ACK SYN"的简写

实例5

[root@wentan ~]# iptables -A INPUT -m 模块名 --state 状态参数:
-m  iptables的模块     state: 状态检查     mac:网卡硬件地址
--state  连接追踪中的状态:        NEW: 新建立一个会话        ESTABLISHED:已建立的连接        RELATED: 有关联关系的连接        INVALID: 无法识别的连接
# 放行ssh的首次连接状态
[root@wentan ~]# iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
# 对局域网内mac地址为00:0C:29:56:A6:A2主机开放其联机
[root@wentan ~]# iptables -A INPUT -m mac --mac-source 01:00:5E:C6:49:A2 -j ACCEPT

实例6 本地端口转发

[root@wentan ~]# iptables -t nat -A PREROUTING -p tcp --dport 6666 -j REDIRECT  --to-port 22

实例7 iptables 保存和恢复

#保存
[root@wentan ~]# iptables-save > /etc/sysconfig/iptables
#恢复
[root@wentan ~]# iptables-restore /etc/sysconfig/iptables

Linux系统中,firewalld服务和iptables服务是冲突的,所以二者只有一个能运行,如果开启了iptables,那么必须永久关闭防火墙,iptables也会有默认的基本配置,保证网络安全。

[root@wentan ~]# iptables stop firewall
[root@wentan ~]# iptables disable firewall

这样才能用iptables

#可以删掉所有的规则
[root@wentan ~]# iptables -F
#保存当前配置
[root@wentan ~]# iptables-save

三、Selinux 安全子系统

3.1 什么是SELinux

SELinux(Security-Enhanced Linux)是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access Control)的安全子系统。RHEL 7系统使用SELinux技术的目的是为了让各个服务进程都受到约束,使其仅获取本应获取的资源。

selinux在Linux环境中有非常重要的用途,在我们Linux环境中,如果禁用selinux,是可以减少非常多的报错,但是在生产环境中想当不推荐

3.2 selinux在linux当中的三个用途

(1)可以允许或者拒绝访问我们的文件和资源

(2)可以明确一个进程,服务,可以调用哪些端口

(3)可以对一个文件做更精确的限制,远远比我们的用户权限高很多,更精确。

3.3 selinux 的三个模式

(1)强制模式 enforcing selinux 会强制执行严格的访问控制,系统默认就是这个模式,它会拒绝其他服务访问违规端口,同时也限制这些服务的访问执行权限,而且但凡发现了违规行为,会记录在日志里面。

(2)许可模式 permissive 不执行严格的访问控制,但是会记录这些违规的警告,这个模式主要用于测试和故障排除。

(3)关闭模式 disabled selinux功能完全关闭,不拒绝仍和的违规行为,而且不予记录。

三种模式的查看和切换,*只是当前有效,关机重启后会变成原来的模式

getenforce       #查看当前模式
setenforce 0    #设置为许可模式
setenforce 1    #设置为强制模式

关闭模式不能简单通过命令来实现,需要修改配置文件,同时修改配置文件也是永久修改默认模式的方法

selinux的配置文件:/etc/selinux/config

实例

[root@wentan ~]# getenforce
Enforcing
[root@wentan ~]# setenforce 0
[root@wentan ~]# getenforce
Permissive
[root@wentan ~]# setenforce 1
[root@wentan ~]# getenforce
Enforcing[root@wentan ~]# vim /etc/selinux/config
SELINUX=disabled   #修改为disable
[root@wentan ~]# reboot    #重启生效
[root@wentan ~]# getenforce
Disabled#最后再改回enforcing
3.4 selinux 的三个规则
  1. targeted 默认规则,针对网络服务的限制比较多,对本机的限制比较少

  2. minimun 只会选择性的保护我们的系统模块 例如内核 device

  3. mls 完整的selinux限制,对系统各方面都做限制

默认是targeted 模式,因为一般只需要对网络服务做限制

#安装httpd服务
[root@wentan ~]# yum install -y httpd
#开启httpd服务
[root@wentan ~]# systemctl start httpd
#关闭防火墙
[root@wentan ~]# systemctl stop firewalld.service
3.5 安全上下文

在启动selinux的时候,selinux会给系统中的资源设置一个安全上下文,保存在 /etc/selinux/targeted/contexts/files/file_contexts

#查询某文件上下文
[root@wentan ~]# ls -Zd /var/www/html/
system_u:object_r:httpd_sys_content_t:s0 /var/www/html/
#在文件上设置的selinux安全上下文,是由用户段,角色段,类型段等多个信息组成
#字段信息
system_u        #代表了系统进程的身份
object_r        #代表了文件目录的角色
httpd_sys_content_t  #代表了网站服务的系统文件
S0 :             #sensitivity
3.6 semanage管理安全策略

使用getsebool命令查询并过滤出所有与HTTP协议相关的安全策略。其中,off为禁止状态,on为允许状态。

#查看某服务的安全策略
[root@wentan ~]# getsebool -a | grep http
httpd_anon_write --> off
httpd_builtin_scripting --> on
httpd_can_check_spam --> off
httpd_can_connect_ftp --> off
httpd_can_connect_ldap --> off
httpd_can_connect_mythtv --> off
httpd_can_connect_zabbix --> off
httpd_can_network_connect --> off
httpd_can_network_connect_cobbler --> off
httpd_can_network_connect_db --> off
httpd_can_network_memcache --> off
httpd_can_network_relay --> off
httpd_can_sendmail --> off
httpd_dbus_avahi --> off
httpd_dbus_sssd --> off
httpd_dontaudit_search_dirs --> off
httpd_enable_cgi --> on
httpd_enable_ftp_server --> off
httpd_enable_homedirs --> off
httpd_execmem --> off
httpd_graceful_shutdown --> off
httpd_manage_ipa --> off
httpd_mod_auth_ntlm_winbind --> off
httpd_mod_auth_pam --> off
httpd_read_user_content --> off
httpd_run_ipa --> off
httpd_run_preupgrade --> off
httpd_run_stickshift --> off
httpd_serve_cobbler_files --> off
httpd_setrlimit --> off
httpd_ssi_exec --> off
httpd_sys_script_anon_write --> off
httpd_tmp_exec --> off
httpd_tty_comm --> off
httpd_unified --> off
httpd_use_cifs --> off
httpd_use_fusefs --> off
httpd_use_gpg --> off
httpd_use_nfs --> off
httpd_use_openstack --> off
httpd_use_sasl --> off
httpd_verify_dns --> off
mysql_connect_http --> off
named_tcp_bind_http_port --> off
prosody_bind_http_port --> off

面对如此多的SELinux域安全策略规则,实在没有必要逐个理解它们,我们只要能通过名字大致猜测出相关的策略用途就足够了。比如,想要开启httpd服务的个人用户主页功能,那么用到的SELinux域安全策略应该是httpd_enable_homedir

  • semanage-port 管理安全上下文
-a       #增加
-d      #删除
-t      #指定文件上下文类型

实验:修改httpd服务监听端口为82(默认是80)

[root@wentan ~]# vim /etc/httpd/conf/httpd.conf
#Listen 12.34.56.78:80
Listen 82       #需要修改配置文件为Listen 82端口
[root@wentan ~]# cat /etc/httpd/conf/httpd.conf | grep 82
Listen 82[root@wentan ~]# journalctl -xe
[root@wentan ~]# semanage port -a -t http_port_t -p tcp 82
#重启服务
[root@wentan ~]# systemctl restart httpd#浏览器访问本机ip地址的82端口

关注公众号:问渠清源
回复关键字 视频 获取视频教程

Linux 基础入门 05相关推荐

  1. SRE运维工程师笔记-Linux基础入门

    SRE运维工程师笔记-Linux基础入门 1. Linux基础 1.1 用户类型 1.2 终端terminal 1.2.1 终端类型 1.2.2 查看当前的终端设备 1.3 交互式接口 1.3.1 交 ...

  2. 腾讯云实验之Linux 基础入门

    image.png Linux 基础入门 目录操作 任务时间:5min ~ 10min 创建目录 使用 mkdir 命令创建目录 mkdir $HOME/testFolder 切换目录 使用 cd 命 ...

  3. Linux 基础入门

    Linux 基础入门 本课程教你如何熟练地使用 Linux,本实验中通过在线动手实验的方式学习 Linux 常用命令,用户与权限管理,目录结构与文件操作,环境变量,计划任务,管道与数据流重定向等基本知 ...

  4. Linux基础入门--驱动开发--USB

    Linux基础入门--驱动开发--USB 1.基本概念 2.组成结构 2.1 设备描述符 2.2 配置描述符 2.3 接口描述符 2.4 端点描述符 2.5 字符串描述符 3.管道 4.端点分类 4. ...

  5. Linux基础入门之内外命令讲解篇

    Linux基础入门篇--之内外命令讲解 1.基础命令 命令 使用方法 cat /etc/motd 设置用户成功登录系统后显示的提示信息.比如欢迎语! cat /etc/issue 设置用户成功登录系统 ...

  6. Linux基础入门教程

    Linux基础入门教程 --------- Linux学习路径 Linux学习者,常常不知道自己改怎么学习linux: Linux初级,也就是入门linux 前提是需要有一些计算机硬件相关的知识或是有 ...

  7. Linux 基础入门 02

    Linux 基础入门 02 一.用户&组管理 1.1 usermod 用来修改用户账号的各项设定 -c<备注> #修改用户帐号的备注文字. -d登入目录> #修改用户登入时的 ...

  8. Linux基础入门--进程间通信--共享内存

    Linux基础入门--进程间通信--共享内存 1.共享内存IPC原理 2.共享内存管理 1.共享内存IPC原理 共享内存进程间通信机制主要用于实现进程间大量的数据传输,共享内存是在内存单独开辟的一段内 ...

  9. Linux基础入门--网络工具--usb_modeswitch

    Linux基础入门--网络工具--usb_modeswitch 1.概述 2.语法 3.选项 1.概述 控制"多状态"USB设备的模式.一些新的USB设备有他们的专有Windows ...

最新文章

  1. python之运算符
  2. 盘点 12 个 GitHub 上的高仿项目
  3. 使用Linux lvm
  4. (原创)speex与wav格式音频文件的互相转换(二)
  5. 基于业务解释的特征重要性计算
  6. 孙鑫MFC笔记之十四--多线程同步与异步套接字编程
  7. 诸多研究生的一个通病:对导师过度依赖!
  8. docker 安装
  9. 云原生的本质_云原生2.0的逻辑之辩,如何让每个企业都成为新云原生企业
  10. 47. 全排列 II
  11. 山西首次举办明清水陆画专题展 多数藏品首次面世
  12. 两个小的java程序,用于练习java基本语法
  13. ++库 照片风格转换风格_婚纱照中式风格照片大全 2020年中式婚纱照怎么拍
  14. 个人微信api接口调用-微信好友发来聊天消息
  15. 实时渲染学习(十一)渲染加速算法总结
  16. Origin无法修改语言为灰色
  17. 不同框架接口自动化的优劣
  18. 计算机原理---七层网络协议详解
  19. 【男保姆式】教你打开第一个微信小程序
  20. 数电实验_时分秒计数器——终极版

热门文章

  1. 【Python】机器学习笔记08-流形学习(Manifold Learning)
  2. python3.7 利用函数os pandas 利用 excel 对文件名进行归类
  3. 计算机硬盘扇区1在哪里,硬盘的第一个扇区(0道0头1扇区)
  4. mysql galera集群配置
  5. 高通平台WIFI软件配置开启2.4G和5G功能
  6. l2范数求导_最小二乘法(LS算法):L2范数(计算残差平方和)的一个实际应用,为,具体...
  7. 《C语言杂记》理解字符串处理函数 strlen() strcpy() strcat() strcmp()
  8. 4月30日世界表白日_4月30日世界表白日_4月14日世界表白日是真的吗 表白温暖情话...
  9. libcurl错误代码
  10. 新型肺炎确诊2周以上人群多少康复治愈了?简单数值模型告诉你