新聞中心
SELinux (Security-Enhanced Linux)是一種操作系統(tǒng)級別的安全性增強工具,它基于Mandatory Access Control (MAC)機制,使用了一種名為”安全策略”的配置文件,并提供了一種可靠的安全機制來保護計算機系統(tǒng)和網(wǎng)絡(luò)。在安全策略中,SELinux通過針對每個進程和進程間通信鑒別和限制其對系統(tǒng)資源的訪問來保證系統(tǒng)的安全。本文將著重介紹SELinux是如何管理端口配置文件的。

目前累計服務(wù)客戶上1000家,積累了豐富的產(chǎn)品開發(fā)及服務(wù)經(jīng)驗。以網(wǎng)站設(shè)計水平和技術(shù)實力,樹立企業(yè)形象,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁設(shè)計、網(wǎng)絡(luò)營銷、VI設(shè)計、網(wǎng)站改版、漏洞修補等服務(wù)。成都創(chuàng)新互聯(lián)公司始終以務(wù)實、誠信為根本,不斷創(chuàng)新和提高建站品質(zhì),通過對領(lǐng)先技術(shù)的掌握、對創(chuàng)意設(shè)計的研究、對客戶形象的視覺傳遞、對應(yīng)用系統(tǒng)的結(jié)合,為客戶提供更好的一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進步。
一、什么是SELinux端口配置文件?
SELinux控制訪問資源的方式是通過其規(guī)則和策略來限制和防止特定進程和用戶對系統(tǒng)資源的訪問。其中,端口也是一種系統(tǒng)資源。 Linux系統(tǒng)中,進程或服務(wù)通過綁定或監(jiān)聽一個特定的端口號(也稱為套接字),來等待來自其他進程或網(wǎng)絡(luò)請求的傳入數(shù)據(jù)。SELinux能夠通過端口的MAC策略設(shè)置來控制這些端口的訪問。
SELinux使用的端口配置文件,是一個包含了規(guī)則和策略的文件,它被稱為”SELinux端口策略配置文件”。該文件通常存放在/etc/selinux目錄下。SELinux端口策略配置文件中定義了目標機器上可以使用的端口號及他們的訪問權(quán)限,并給用戶提供一些可配置的選項。
二、SELinux端口配置文件中的端口號和標簽
SELinux端口配置文件的主要部分是端口標簽。這些端口標簽用于定義開放和阻止訪問的端口號。所有的端口號都必須在SELinux端口策略配置文件中標記為SELinux標簽才能進行訪問。
端口標簽分為兩個部分:端口類型和端口號。 端口類型是可選的,用于定義端口類型的訪問策略。而端口號是必須的,它是該端口的標識符。
常見的端口類型有:
? types port_type:用于指定端口類型
? types ping_type:用于指定ICMP ping訪問請求
? types http_port_t:用于指定HTTP協(xié)議端口
? types ftp_port_t:用于指定FTP協(xié)議端口
例如,定義ssh協(xié)議的訪問策略為開放時,端口配置文件的內(nèi)容如下:
“`
portcon ssh_port_t udp 22
portcon ssh_port_t tcp 22
“`
其中,“ssh_port_t”是端口類型,“22”是端口號。 這段代碼定義了端口22通過ssh協(xié)議進行訪問和端口類型ssh_port_t標記。
三、SELinux端口配置文件管理
SELinux端口策略配置文件既可以通過命令來自動化創(chuàng)建和管理,也可以手動配置和編輯。
1、手動編輯SELinux端口配置文件
手動編輯SELinux端口配置文件時,需要創(chuàng)建或更新文件/etc/selinux/port_contexts文件或/etc/selinux/semanage.conf文件。修改完成后,需要執(zhí)行如下命令更新SELinux策略緩存:
“`
# restorecon /etc/selinux/port_contexts /etc/selinux/semanage.conf
“`
2、自動化創(chuàng)建和管理SELinux端口配置文件
Linux系統(tǒng)提供了幾個命令來自動化管理SELinux端口配置文件。 sysctl, semanage和audit2allow是最常用的工具。其中,semanage允許用戶訪問其中的某些工具。下面我們詳細介紹這些命令的用法。
1、用sysctl命令創(chuàng)建和管理SELinux端口配置文件
sysctl是一個允許用戶查詢和修改內(nèi)核選項的命令,也可以用來管理SELinux端口策略配置文件。它的使用方法如下:
“`
# sysctl net.ipv4.tcp_keepalive_time=1800
“`
這個命令將SELinux使用的tcp_keepalive_time選項設(shè)置為1800秒。這使得SELinux策略文件允許訪問TCP keepalive服務(wù)。
2、用semanage命令創(chuàng)建和管理SELinux端口策略配置文件
semanage允許用戶管理SELinux端口策略文件。它提供了管理SELinux端口策略配置文件的各種命令。下面是semanage的典型用法:
(1) 獲取SELinux端口配置文件信息
“`
# semanage port -l
“`
運行這個命令將打印出所有已配置的SELinux端口策略文件及其詳細信息。
(2) 更新端口策略配置文件添加和刪除端口標簽
“`
# semanage port -a -t http_port_t -p tcp 8080
“`
這個命令會添加一種新的端口類型http_port_t,用于tcp協(xié)議的端口號8080。同樣,刪除端口標簽的命令也很簡單:
“`
# semanage port -d -t ssh_port_t -p tcp 22
“`
這個命令將從selinux端口列表中刪除tcp的22端口號。
3、用audit2allow命令創(chuàng)建和管理SELinux端口策略配置文件
audit2allow是一個用于管理SELinux策略的工具。它會檢查SELinux檢查日志并根據(jù)日志生成一組策略文件。 該命令的基本用法如下所示:
“`
# tl -f /var/log/audit/audit.log | audit2allow -M name
“`
這個命令將根據(jù)/var/log/audit/audit.log文件生成SELinux策略文件,此處name是策略文件的名稱。
四、
本文介紹了SELinux端口配置文件的相關(guān)內(nèi)容,包括配置文件的基本的概述,端口類型和端口號的使用、手動編輯和自動化創(chuàng)建和管理SELinux端口策略配置文件等多方面知識。希望本文能夠幫助您理解如何使用SELinux提高計算機系統(tǒng)和網(wǎng)絡(luò)的安全性。
相關(guān)問題拓展閱讀:
- mysql修改端口后啟動失敗
- 如何在虛擬機上的Linux系統(tǒng)配置FTP服務(wù),跟Windows建立連接傳輸文件
- android之SELinux小記
mysql修改端口后啟動失敗
mysql 修衡羨改端口后啟動失敗譽攔凳
查看日志慶旅文件/var/log/mysqld.log,發(fā)現(xiàn)錯誤提示:Can’t start server: Bind on TCP/IP port: Permission denied
解決方法:
關(guān)閉SELINUX,修改selinux配置文件
vi /etc/selinux/config
SELINUX=disabled
然后重啟服務(wù)。
或者使用命令setenforce 0 臨時關(guān)閉selinux ,不用重啟服務(wù)器;
如何在虛擬機上的Linux系統(tǒng)配置FTP服務(wù),跟Windows建立連接傳輸文件
讓你看的不是LO口的IP 是eth0或者eth1的IP 那個才是網(wǎng)卡IP
selinux可以通過getenforce查看 看值是什么 如果說山迅是permissive或模唯褲者disabled就沒事 不是的話想臨時改動的話 輸入旦簡setenforce 0即可
在虛擬機上的Linux系統(tǒng)配置FTP服務(wù),跟Windows建衡仔立連接傳游攔納輸文件的具體操作步驟如下:
1、在電腦上下載并安裝好小型FTP服務(wù)器(Quick Easy FTP Server) 軟件,打開進行設(shè)置用戶名,用于遠程登錄。
2、設(shè)置密碼,再輸一次確認密碼。
3、設(shè)置想共享的文件夾。
4、神沒設(shè)置各項權(quán)限,包括下載上傳權(quán)限、下載上傳速度限制等。
5、全部設(shè)置完畢后,點擊“完成”。
6、完成之后,可以在軟件里進行各項服務(wù)器配置,并且點左上角綠色按鈕可以啟動服務(wù)器,啟動后,綠色按鈕變暗,紅色按鈕變亮。
一. FTP 說明
linux 系統(tǒng)下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 還有一個是proftp(Profession ftp)。 我們這里也是簡單的說明下vsftp的配置。
vsftp提供3種遠程的登錄方式:
(1)匿名登錄方式
就是不需要用戶名,密碼。就能登錄到服務(wù)器電腦里面
(2)本地用戶方式
需要帳戶名和密碼才能登錄。而且,這個帳戶名和密碼,都是在你linux系統(tǒng)里面,已經(jīng)有的用戶。
(3)虛擬用戶方式
同樣需要用戶名和密碼才能登錄。但是和上面的區(qū)別就是,這個用戶名和密碼,在你linux系統(tǒng)中是沒有祥改的(沒有該用戶帳號)
二. Vsftp的安裝配置
2.1 安裝
vsftp 的安裝包,可以在安裝里找到。 用yum 安裝過程也很簡單。
安裝命令:yum install vsftpd
2.2. 相關(guān)命令
2.2.1 啟動與關(guān)閉
# service vsftpd start
Starting vsftpd for vsftpd:
# service vsftpd stop
Shutting down vsftpd:
# service vsftpd restart
Shutting down vsftpd:
Starting vsftpd for vsftpd:
# /etc/init.d/vsftpd start
Starting vsftpd for vsftpd:
# /etc/init.d/vsftpd stop
Shutting down vsftpd:
# /etc/init.d/vsftpd restart
Shutting down vsftpd:
Starting vsftpd for vsftpd:
# /etc/init.d/vsftpd status
vsftpd (pid 3931) is running…
#
2.2.2. 其他命令
–查看褲宴旁vsftpd 啟動狀態(tài)
# chkconfig –list vsftpd
vsftpd:off 1:off 2:off 3:off 4:off 5:off 6:off
# chkconfig vsftpd on
# chkconfig –list vsftpd
vsftpd:off 1:off 2:on 3:on 4:on 5:on 6:off
這里看到,默認情況下從2到5設(shè)置為on了。2到5是多用戶級別。 這個對應(yīng)的是linux不同的胡橡運行級別。
我們也可以加level 選項來指定:
# chkconfig –level 0 vsftpd on
# chkconfig –list vsftpd
vsftpd:on 1:off 2:on 3:on 4:on 5:on 6:off
我們看到0已經(jīng)設(shè)置為on了。
我們可以使用man chkconfig 來查看幫助:
–level levels
Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, –level 35 specifies runlevels and 5.
傳統(tǒng)的init 定義了7個運行級(run level),每一個級別都代表系統(tǒng)應(yīng)該補充運行的某些特定服務(wù):
(1)0級是完全關(guān)閉系統(tǒng)的級別
(2)1級或者S級代表單用戶模式
(3)2-5 級 是多用戶級別
(4)6級 是 重新引導的級別
(1)查看防火墻
我一般都是把系統(tǒng)的防火墻關(guān)閉了。 因為開了會有很多限制。
# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT udp.0.0.0/.0.0.0/udp dpt:53
2 ACCEPT tcp.0.0.0/.0.0.0/tcp dpt:53
3 ACCEPT udp.0.0.0/.0.0.0/udp dpt:67
4 ACCEPT tcp.0.0.0/.0.0.0/tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all.0.0.0/92.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all.168.122.0/.0.0.0/
3 ACCEPT all.0.0.0/.0.0.0/
4 REJECT all.0.0.0/.0.0.0/reject-with icmp-port-unreachable
5 REJECT all.0.0.0/.0.0.0/reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
You have new mail in /var/spool/mail/root
–添加開放21號端口:
# /in/iptables -I INPUT -p tcp –dport 21 -j ACCEPT
# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all.168.122.0/24 !192.168.122.0/24
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT tcp.0.0.0/.0.0.0/tcp dpt:21
2 ACCEPT udp.0.0.0/.0.0.0/udp dpt:53
3 ACCEPT tcp.0.0.0/.0.0.0/tcp dpt:53
4 ACCEPT udp.0.0.0/.0.0.0/udp dpt:67
5 ACCEPT tcp.0.0.0/.0.0.0/tcp dpt:67
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all.0.0.0/92.168.122.0/24 state RELATED,ESTABLISHED
2 ACCEPT all.168.122.0/.0.0.0/
3 ACCEPT all.0.0.0/.0.0.0/
4 REJECT all.0.0.0/.0.0.0/reject-with icmp-port-unreachable
5 REJECT all.0.0.0/.0.0.0/reject-with icmp-port-unreachable
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
–保存配置
# /etc/rc.d/init.d/iptables save
Saving firewall rules to /etc/sysconfig/iptables:
–重啟防火墻:
# service iptables {start|stop|restart}
(2)查看關(guān)閉selinux
# sestatus
SELinux status: disabled
我這里在安裝操作系統(tǒng)的時候就關(guān)閉了selinux,如果沒有關(guān)閉,可以修改如下文件來關(guān)閉:
# cat /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#enforcing – SELinux security policy is enforced.
#permissive – SELinux prints warnings instead of enforcing.
#disabled – SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#targeted – Only targeted network daemons are protected.
#strict – Full SELinux protection.
SELINUXTYPE=targeted
#
保存退出并重啟系統(tǒng)reboot
三. FTP配置文件
FTP 安裝好之后,在/etc/vsftpd/目錄下會有如下文件:
# cd /etc/vsftpd/
# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
#
vsftpd.conf: 主配置文件
ftpusers: 指定哪些用戶不能訪問FTP服務(wù)器
user_list: 指定的用戶是否可以訪問ftp服務(wù)器由vsftpd.conf文件中的userlist_deny的取值來決定。
# cat user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
我們過濾掉#的注釋后,查看一下vsftpd.conf 文件:
# cat /etc/vsftpd/vsftpd.conf |grep -v ‘^#’;
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=yes
tcp_wrappers=YES
至于這些參數(shù)的意思,在注釋里有詳細的說明。
我們可以在vsftpd.conf 文件設(shè)置如下參數(shù):
(1)ftpd_banner=welcome to ftp service :設(shè)置連接服務(wù)器后的歡迎信息
(2)idle_session_timeout=60 :限制遠程的客戶機連接后,所建立的控制連接,在多長時間沒有做任何的操作就會中斷(秒)
(3)data_connection_timeout=120 :設(shè)置客戶機在進行數(shù)據(jù)傳輸時,設(shè)置空閑的數(shù)據(jù)中斷時間
(4)accept_timeout=60 設(shè)置在多長時間后自動建立連接
(5)connect_timeout=60 設(shè)置數(shù)據(jù)連接的更大激活時間,多長時間斷開,為別人所使用;
(6)max_clients=200 指明服務(wù)器總的客戶并發(fā)連接數(shù)為200
(7)max_per_ip=3 指明每個客戶機的更大連接數(shù)為3
(8)local_max_rate=50000(50kbytes/sec) 本地用戶更大傳輸速率限制
(9)anon_max_rate=30000匿名用戶的更大傳輸速率限制
(10)pasv_min_port=端口
(11)pasv-max-prot=端口號 定義更大與最小端口,為0表示任意端口;為客戶端連接指明端口;
(12)listen_address=IP地址 設(shè)置ftp服務(wù)來監(jiān)聽的地址,客戶端可以用哪個地址來連接;
(13)listen_port=端口號 設(shè)置FTP工作的端口號,默認的為21
(14)chroot_local_user=YES 設(shè)置所有的本地用戶可以chroot
(15)chroot_local_user=NO 設(shè)置指定用戶能夠chroot
(16)chroot_list_enable=YES
(17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用戶才能執(zhí)行 )
(18)local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄;
(19)chroot_local_user=yes/no 是否鎖定本地系統(tǒng)帳號用戶主目錄(所有);鎖定后,用戶只能訪問用戶的主目錄/home/user,不能利用cd命令向上轉(zhuǎn);只能向下;
(20)chroot_list_enable=yes/no 鎖定指定文件中用戶的主目錄(部分),文件:/chroot_list_file=path 中指定;
(21)userlist_enable=YES/NO 是否加載用戶列表文件;
(22)userlist_deny=YES 表示上面所加載的用戶是否允許拒絕登錄;
(23)userlist_file=/etc/vsftpd/user_list 列表文件
限制IP 訪問FTP:
#vi /etc/hosts.allow
vsftpd:192.168.5.128:DENY 設(shè)置該IP地址不可以訪問ftp服務(wù)
FTP 訪問時間限制:
#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd
#vi /etc/xinetd.d/vsftpd/
修改 disable = no
access_time = hour:min-hour:min (添加配置訪問的時間限制(注:與vsftpd.conf中l(wèi)isten=NO相對應(yīng))
例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp
ftp的配置基本上只有這些了。
默認情況下,ftp根目錄是/var/ftp。 如果要修改這個目錄位置,可以更改/etc/passwd 文件:
# cat /etc/passwd | grep ftp
ftp:x:14:50:FTP User:/var/ftp:/in/nologin
創(chuàng)建一個用戶來訪問FTP,并指定該用戶的FTP 目錄:
# useradd -d /u02/qsftp qs
# passwd qs
Changing password for user qs.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
這里指定的是/u02/qsftp 這個目錄,要注意個目錄的權(quán)限。
更改用戶不能telnet,只能ftp:
usermod -s /in/nologin username //用戶只能ftp,不能telnet
usermod -s /in/bash username //用戶恢復正常
禁止用戶ssh登陸
useradd username -s /bin/false
更改用戶主目錄:
usermod -d /bbb username//把用戶的主目錄定為/bbb
然后用qs這個用戶就可以訪問了。
以上只是一些簡單的設(shè)置。 在用戶權(quán)限這塊還有很多內(nèi)容可以研究。 比如特定用戶的特定權(quán)限。 安全性等。 以后在研究了。
1. 首先保證網(wǎng)絡(luò)暢通(假設(shè)win: 192.168.1.linux: 192.168.1.2)
2. 安裝VSFTPD軟件,(一般情況下都會安裝好,可以喚衡通過rpm -qa |grep vsftpd來查看)
3. 啟動vsftpd服務(wù),service vsftpd start ,出現(xiàn)了一個OK,就算是啟動成功了。
4. 在LINUX的字符界面測試一下服務(wù)器是否正常:
輸入ftp localhost,回車如果成功會提示讓你輸入用戶名,輸入ftp,回車,提示輸入密碼,族枯直接回和穗做車,如果出現(xiàn)了ftp>,此時繼續(xù)輸入dir,如果看到了一個pub的目錄,說明服務(wù)器沒有問題,正常。
5. 轉(zhuǎn)到windows上測試,打開IE瀏覽器輸入 ,如果可以看到pub文件夾,說明好了,如果不能提示無法訪問,有可能是linux的防火墻和SELINUX機制導致的。
解決辦法:
A: 分別執(zhí)行: iptables -F
iptables -X
service iptables save
B. 編輯/etc/sysconfig/selinux,會看到一個selinux=enable,如果是enable,改成disabled,然后一定要重啟linux系統(tǒng),這樣應(yīng)該就沒有問題了。
無論虛擬和真是機器,對于ftp服務(wù)來說,沒區(qū)別,ftp服務(wù)在Linux上,有很多軟件,先說vsftp吧。
最困扒簡單的辦法,
打命令命令: service vsftp start
或者:/etc/init.d/vsftp start
或者:運行setup,在服務(wù)汪昌昌那里,開啟vsftp。
android之SELinux小記
SELinux是安全增強型 Linux(Security-Enhanced Linux)簡稱 SELinux。它是一個 Linux 內(nèi)核模塊,也是 Linux 的一個安全子系統(tǒng)。
SELinux 主要由美國國家安全局開發(fā)。2.6 及以上版本的 Linux 內(nèi)核都已經(jīng)集成了 SELinux 模塊。
SELinux 的結(jié)構(gòu)及配置非常復雜,而且有大量概念性的東西,要學精難度較大。很多 Linux 系統(tǒng)管理員嫌麻煩都把 SELinux 關(guān)閉了。
SELinux目的在于明確的指明某個進程可以訪問哪些資源(文件、網(wǎng)絡(luò)端口等)。強制訪問控制系統(tǒng)的用途在于增強系統(tǒng)抵御 0-Day 攻擊(利用尚未公開的漏洞實現(xiàn)的攻擊行為)的能力。
在目前的大多數(shù)發(fā)行版中,已經(jīng)默認在內(nèi)核集成了SELinux。
舉例來說,系統(tǒng)上的 Apache 被發(fā)現(xiàn)存在一個漏洞,使得某遠程用戶可以訪問系統(tǒng)上的敏感文件(比如 /etc/passwd 來獲得系統(tǒng)已存在用戶) ,而修復該安全漏洞的 Apache 更新補丁尚未釋出。此時 SELinux 可以起到彌補該漏洞的緩和方案。因為 /etc/passwd 不具有 Apache 的 訪問標簽,所以 Apache 對于 /etc/passwd 的訪問會被 SELinux 阻止。
相比其他強制性訪問控制系統(tǒng),SELinux 有如下優(yōu)勢:
SELinux for Android在架構(gòu)和機制上與SELinux完全一樣,考慮到移動設(shè)備的特點,所以移植到Android上的只是SELinux的一個子集。SELinux for Android的安全檢查幾乎覆蓋了所有重要的系統(tǒng)資源,包括
域轉(zhuǎn)換,類型轉(zhuǎn)換,進程、內(nèi)核、文件、目錄、設(shè)備,App,網(wǎng)絡(luò)及IPC相關(guān)的操作
。
Android分為 寬容模式 (僅記錄但不強制執(zhí)行 SELinux 安全政策 )和 強制模式 (強制執(zhí)行并記錄安全政策。如果失敗,則顯示為 EPERM 錯誤。 );在選擇強制執(zhí)行級別時只能二擇其一。
您的選擇將決定您的政策是采取操作,還是僅允許您收集潛在的失敗事件。寬容模式在實現(xiàn)過程中尤其有用。
DAC是傳統(tǒng)的Linux的訪問控制方式,DAC可以對文件、文件夾、共享資源等進行訪問控制。
在DAC這種模型中,文件客體的所有者(或者管理員)負責管理訪問控制。
DAC使用了ACL(Access Control List,訪問控制列表)來給非管理者用戶提供不同的權(quán)限,而root用戶對文件系統(tǒng)有完全自由的控制權(quán)。
MAC是任何進程想在SELinux系統(tǒng)中干任何事情,都必須先在安全策略配置文件中賦予權(quán)限。
凡是沒有出現(xiàn)在安全策略配置文件中的權(quán)限,進程就沒有該權(quán)限。
這個機制相當于一個白名單,這個白名單上配置了所有進程的權(quán)限,進程只能做白名單上權(quán)限內(nèi)的事情,一差升纖旦它想做一個不屬于它權(quán)限的操作就會被拒絕。
這就需要使用到配置文件和其對應(yīng)的te語法。
語法解析:
指定一個“域”(domain),一般用于描述進程,該域內(nèi)的的進程,受該條TE語句的限制。
用 type 關(guān)鍵字,把笑或一個自定義的域與原有的域相關(guān)聯(lián),最簡單地定義一個新域的方式為:
意思為賦予shell給domain屬性,同時,shell與屬于虛仿domain這個里。
例如:有一個allow domain xxxxx 的語句,同樣地也給了shell xxxxx的屬性。
進程需要操作的客體(文件,文件夾等)類型(安全上下文),同樣是用type與一些已有的類型,屬性相關(guān)聯(lián)。
type有兩個作用,定義(聲明)并關(guān)聯(lián)某個屬性。
可以把這兩個作用分開,type定義,typeattribute進行關(guān)聯(lián)。
class定義在文件 system/sepolicy/private/security_classes 中.
定義在 system/sepolicy/private/access_vectors 。有兩種定義方法。
SELinux中,每種東西都會被賦予一個安全屬性,它就是SecurityContext(Security Context以下簡稱SContext,安全上下文或安全屬性)是一個字符串,主要由三部分組成。
例如在 SELinux for Android中,進程的SContext可以通過PS-Z命令查看,如下:
其中:
1. kernel/m-3.18/security/selinux/
2. external/selinux/
3. 用BOARD_SEPOLICY_DIRS添加的各te文件和安全配置文件,主要包括device//sepolicy//和system/sepolicy/,以及其他功能模塊添加的配置文件。
一文徹底明白linux中的selinux到底是什么
SELinux之一:SELinux基本概念及基本配置
Android selinux配置和用法
詳解 SEAndroid 以及 Hack 其規(guī)則(sepolicy)
SELinux/SEAndroid 實例簡述(二) TE語言規(guī)則
關(guān)于selinux 端口配置文件的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價格厚道的香港/美國云服務(wù)器和獨立服務(wù)器。創(chuàng)新互聯(lián)成都老牌IDC服務(wù)商,專注四川成都IDC機房服務(wù)器托管/機柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機房租用、服務(wù)器托管、機柜租賃、大帶寬租用,可選線路電信、移動、聯(lián)通等。
分享名稱:SELinux如何管理端口配置文件?(selinux端口配置文件)
文章源于:http://m.fisionsoft.com.cn/article/coeicge.html


咨詢
建站咨詢
