| Line 52... |
Line 52... |
| 52 |
echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
|
52 |
echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
|
| 53 |
echo "--dbName MariaDb service database name, default is test".PHP_EOL;
|
53 |
echo "--dbName MariaDb service database name, default is test".PHP_EOL;
|
| 54 |
echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
|
54 |
echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
|
| 55 |
echo "--sshAddrAndPort ssh service address, example: 0.0.0.0:22".PHP_EOL;
|
55 |
echo "--sshAddrAndPort ssh service address, example: 0.0.0.0:22".PHP_EOL;
|
| 56 |
echo "--headless true/false, default is false. If true, it means link allInOneForCI.php to allInOne.php".PHP_EOL;
|
56 |
echo "--headless true/false, default is false. If true, it means link allInOneForCI.php to allInOne.php".PHP_EOL;
|
| - |
|
57 |
echo "--whiteIp, outsite ip which will not auto block forever".PHP_EOL;
|
| 57 |
exit;
|
58 |
exit;
|
| 58 |
|
59 |
|
| 59 |
}#function help end
|
60 |
}#function help end
|
| 60 |
|
61 |
|
| 61 |
#函式說明:
|
62 |
#函式說明:
|
| Line 214... |
Line 215... |
| 214 |
$sshAddrAndPort=array();
|
215 |
$sshAddrAndPort=array();
|
| 215 |
|
216 |
|
| 216 |
#預設要有自動輸出的內容
|
217 |
#預設要有自動輸出的內容
|
| 217 |
$headless="false";
|
218 |
$headless="false";
|
| 218 |
|
219 |
|
| - |
|
220 |
#預設的白名單ip清單
|
| - |
|
221 |
$whiteIp=array();
|
| - |
|
222 |
|
| 219 |
#檢查參數
|
223 |
#檢查參數
|
| 220 |
#函式說明:
|
224 |
#函式說明:
|
| 221 |
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
|
225 |
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
|
| 222 |
#回傳結果:
|
226 |
#回傳結果:
|
| 223 |
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
|
227 |
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
|
| Line 247... |
Line 251... |
| 247 |
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
|
251 |
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
|
| 248 |
#$conf["canNotBeEmpty"]=array();
|
252 |
#$conf["canNotBeEmpty"]=array();
|
| 249 |
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
|
253 |
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
|
| 250 |
#$conf["canBeEmpty"]=array();
|
254 |
#$conf["canBeEmpty"]=array();
|
| 251 |
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
|
255 |
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
|
| 252 |
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless");
|
256 |
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless","whiteIp");
|
| 253 |
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
|
257 |
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
|
| 254 |
$conf["skipableVariableName"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless");
|
258 |
$conf["skipableVariableName"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless","whiteIp");
|
| 255 |
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
|
259 |
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
|
| 256 |
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array","array","array","array","array");
|
260 |
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array","array","array","array","array","array");
|
| 257 |
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
|
261 |
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
|
| 258 |
$conf["skipableVarDefaultValue"]=array(null,null,null,null,null,null,null,null,null,null,null,null,null);
|
262 |
$conf["skipableVarDefaultValue"]=array(null,null,null,null,null,null,null,null,null,null,null,null,null);
|
| 259 |
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
|
263 |
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
|
| 260 |
#$conf["disallowAllSkipableVarIsEmpty"]="";
|
264 |
#$conf["disallowAllSkipableVarIsEmpty"]="";
|
| 261 |
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
|
265 |
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
|
| Line 438... |
Line 442... |
| 438 |
$headless=$parseArgu["content"]["headless"][0];
|
442 |
$headless=$parseArgu["content"]["headless"][0];
|
| 439 |
|
443 |
|
| 440 |
}#if end
|
444 |
}#if end
|
| 441 |
|
445 |
|
| 442 |
}#if end
|
446 |
}#if end
|
| - |
|
447 |
|
| - |
|
448 |
#如果有 whiteIp 參數
|
| - |
|
449 |
if(isset($parseArgu["content"]["whiteIp"])){
|
| - |
|
450 |
|
| - |
|
451 |
#針對每個白名單ip
|
| - |
|
452 |
foreach($parseArgu["content"]["whiteIp"] as $ip){
|
| - |
|
453 |
|
| - |
|
454 |
#儲存起來
|
| - |
|
455 |
$whiteIp[]=$ip;
|
| - |
|
456 |
|
| - |
|
457 |
}#foreach end
|
| - |
|
458 |
|
| - |
|
459 |
}#if end
|
| 443 |
|
460 |
|
| 444 |
}#if end
|
461 |
}#if end
|
| 445 |
|
462 |
|
| 446 |
#如果要使用不自動輸出內容的 allInOneForCI.php 檔案
|
463 |
#如果要使用不自動輸出內容的 allInOneForCI.php 檔案
|
| 447 |
if($headless==="true"){
|
464 |
if($headless==="true"){
|
| Line 1507... |
Line 1524... |
| 1507 |
#異常結束執行
|
1524 |
#異常結束執行
|
| 1508 |
exit(1);
|
1525 |
exit(1);
|
| 1509 |
|
1526 |
|
| 1510 |
}#if end
|
1527 |
}#if end
|
| 1511 |
|
1528 |
|
| - |
|
1529 |
#如果 $whiteIp 不為空
|
| - |
|
1530 |
if(count($whiteIp)>0){
|
| - |
|
1531 |
|
| - |
|
1532 |
#如果有 ip-blockerd.service 存在
|
| - |
|
1533 |
|
| - |
|
1534 |
#設置白名單ip
|
| - |
|
1535 |
|
| - |
|
1536 |
}#if end
|
| - |
|
1537 |
|
| 1512 |
#於 /etc/systemd/system 底下建立 $rootPath.$name."/usr/lib/systemd/system" 底下所有服務檔案的軟連結.
|
1538 |
#於 /etc/systemd/system 底下建立 $rootPath.$name."/usr/lib/systemd/system" 底下所有服務檔案的軟連結.
|
| 1513 |
#函式說明:
|
1539 |
#函式說明:
|
| 1514 |
#針對特定目錄下的內容建立軟連結.
|
1540 |
#針對特定目錄下的內容建立軟連結.
|
| 1515 |
#回傳結果:
|
1541 |
#回傳結果:
|
| 1516 |
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
|
1542 |
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
|