[精讚] [會員登入]
2224

[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

你可能感興趣的文章

[Docker] IPv6+nginx+php 讓docker中的容器支援ipv6,讀取到外部ipv6 docker中的容器要如何讀取到來源的ip6?這裡眉角很多。

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

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

[Linux] 安裝rsync (selinux 的設定) 在selinux enforcing 的情況下安裝rsync

[CENTOS7] 使用 logrotate 來整理mongo日誌檔 解決 mongo 的日誌檔不斷長大的問題

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

隨機好文

[MAC] 截取螢幕畫面的方法 截取螢幕畫面的方法,在MAC中叫作螢幕快照,英文是screenshot

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

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

TFTP Server 安裝及使用 讓設備的網路設定檔或是韌體經由TFTP拷備出來,操作的方法