利用html & php & shell 構成修改Linux user密碼的功能

因為WEB EMAIL 是跟著系統的USER PASSWORD

所以利用了PHP 加C  來執行給使用者修改密碼 的功能.

缺點是要等1分鐘. 因為你還會用上cron  , 而他的等待時間最短是1分鐘內.

【日後當然會用python來取代】

 

1.利用php寫入成  .sh

<?php

$id = $_POST['id'];
$pw1 = $_POST['newpw1'];
$pw2 = $_POST['newpw2'];
echo 'ID: '.$_POST['id'].'<BR>';
echo 'NEW PW'.$_POST['newpw1'].'<BR>';
echo 'NEW PW2'.$_POST['newpw2'].'<BR>';
if( $pw1 != $pw2)
{
    header("Location: https://junlin.com.tw/fix/error.html");
}else {

    $filename = "fix.sh";

    // 要寫入文件的內容
    $content .= 'echo '.$id.':'.$pw1.' | sudo chpasswd';
    
    // 嘗試打開文件進行寫入
    $file = fopen($filename, "w") or die("無法打開文件!");
    
    // 寫入內容到文件
    fwrite($file, $content);
    
    // 關閉文件
    fclose($file);
   header("Location: https://junlin.com.tw/fix/done.html");

}

?>
 

 

2. crontab 增加動作

*/1 * * * * sh /mailcom/result.sh

 

3./mailcom/result.sh

#密碼修正檢查
if [ -s "/www/fix/fix.sh" ]
then
    sh /www/fix/fix.sh
    rm -fr /www/fix/fix.sh
fi
 

 

← 回列表