[精讚] [會員登入]
2217

[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

你可能感興趣的文章

移除ssl 私鑰的密碼 現在用ssl產生私鑰會需要設定密碼,但是私鑰有密碼,啟動apache會失敗。

[Linux] 使用tarball安裝下載PERL的tar檔模組 在Linux下,perl下載的pm模組,不使用cpan的安裝方法

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

[Centos8] 利用nmcli 設定ipv6 位址 Centos7之後修改網路設定變得比較麻煩一點,此篇介紹使用nmcli指令的方法

動態DNS -- dynamic DNS實作 BIND9動態DNS設定

[Centos6] 安裝VNC連線程式 在Centos6桌上環境安裝VNC 連線程式

隨機好文

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

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

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

為什麼要重造輪子? 什麼輪子?造什麼輪子?我為什麼要重造輪子?

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?