[精讚] [會員登入]
2168

[SELINUX] php 呼叫系統程式(使用exec, system等)執行網路服務

這近想透過PHP呼叫系統的程式來執行網路的服務,怎麼測試都失敗…

分享此文連結 //n.sfs.tw/14578

分享連結 [SELINUX] php 呼叫系統程式(使用exec, system等)執行網路服務@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
最後編修
2020-03-18 11:23:38 By 張○○
 

這近想透過PHP呼叫系統的程式來執行網路的服務,例如 ping

index.php --> 呼叫系統的程式 -->進行網路檢測

index.php

$res= exec("ping 8.8.8.8");

 

後來發現是SELinux的問題

分別要開二個開關,只要有用到函式 exec, system, passthru, eval, ``(cf [PHP] 讀取作業系統程式執行結果@新精讚) 都需要

# setsebool -P httpd_ssi_exec  on

要讓shell能進行網路呼叫,再開另一個開關

# setsebool -P httpd_can_network_connect on

這樣就能透過php來呼叫系統程式進行網路的服務

 

END

你可能感興趣的文章

[Centos7] 使用網路安裝 Centos7 使用網路來安裝Centos7,雖然這不是什麼新鮮事,但可以省你的磁碟空間或光碟片

使用dnstop 來觀察dns運作的情形 dnstop是非常方便的工具,可以觀察即時的dns查詢。 安裝 yum install dnstop

Linux shell 的date表示法 linux下SHELL中的date表示法

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

[Centos7] 安裝 semanage (selinux工具程式) 安裝selinux的工具程式 semanage

[CentOS] 設定和使用quota quota 的觀念已經很老了,不過每次都會忘記所以寫下來,有需要觀念的朋友請參看鳥哥的網站吧

隨機好文

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

一個邏輯的錯誤刪了全部檔案的經驗 今天本來想做一件很簡單的事,但卻足足浪費我多一倍的時間,再加上刪掉我全部的檔案,原因只是因為我自己的邏輯錯誤。

[PHP] 檢查IP是否在某個網段內 mtachcidr 要檢查IP是否在某個網段內,要寫幾行?10行?5行? 不用,只要2行。以下是我寫的 code /** * matchCI