常見技術問題


MySQL 備份檔還原至 Moodle 之步驟

張貼者:2019年2月25日 下午11:45Vin Yan   [ 已更新 2019年3月20日 下午7:39 ]

確認備份檔案

1. 進入主機後,到 mysql 備份檔的路徑位置,確認備份檔 .gz 名稱。

2. 若備份檔為壓縮檔 (.gz) ,則須先進行解壓縮
gunzip 壓縮檔名稱.sql.gz (如:moodle_要還原的日期.sql.gz )

3. 解壓縮後,確認 sql 備份檔名稱 (.sql) ,並將名稱記錄下來。

還原資料庫

1. 進入 mysql 資料庫
mysql -uroot -p

2. 輸入資料庫的密碼後,建立資料庫
CREATE DATABASE `資料庫名稱` CHARACTER SET utf8 COLLATE utf8_general_ci;

3. 離開資料庫後,執行還原動作
mysql -u root -p 資料庫名稱 < /備份檔路徑/備份檔名稱.sql
輸入資料庫的密碼後,會開始執行還原

4. 接著,可以進入 mysql 資料庫,確認是否有還原成功
show tables from 資料庫名稱;

若有顯示資料庫裡的 table,就代表已成功還原。

修改 Moodle 的 config.php

1. 還原成功後,離開資料庫
進入到moodle 資料夾中,修改 config.php 檔案,並更新資料庫的連線設定。
$CFG->dbtype    = 'mariadb';
$CFG->dblibrary = 'native';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = '還原資料庫名稱';
$CFG->dbuser    = 'root';
$CFG->dbpass    = '資料庫密碼';
$CFG->prefix    = 'mdl_';
$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => '',
  'dbsocket' => '',
  'dbcollation' => 'utf8mb4_unicode_ci',
);

$CFG->wwwroot = 'http://Moodle網址';

2. 修改後,儲存離開。

3. 使用瀏覽器開啟 Moodle 網頁,確認是否有問題~


[OpenSSL]CVE-2014-0160

張貼者:2018年12月19日 下午6:50Jack Liou   [ 已更新 2018年12月19日 下午6:50 ]

CVE-2014-0160
The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packets, which allows remote attackers to obtain sensitive information from process memory via crafted packets that trigger a buffer over-read, as demonstrated by reading private keys, related to d1_both.c and t1_lib.c, aka the Heartbleed bug.

先檢查OpenSSL版本是不是在1.0.1 ~1.0.1g的版本
# rpm -qa | grep openssl
# openssl version

後來查詢yum update後的log訊息,已有修復 漏mod_ssql洞編號:CVE-2014-0160
# rpm -q --changelog openssl-1.0.1e | grep -B 1 CVE-2014-0160

只要更新mod_ssl版本即可解決。

WebLog Expert 過濾 IP 的方法

張貼者:2018年9月21日 上午3:00Vin Yan   [ 已更新 2018年9月21日 上午3:14 ]

WebLog Expert 分析工具:載點

使用 WebLog Expert 分析工具,在分析 Access Log 時,會發現報告中的 Visitors 的 Hosts 的 IP 列表,有許多來自於本機端的 IP 、Load Balance 或是監控系統...等。
這些系統會存取或是連結 Moodle 平台,而造成報告的流量有差異或不符合實際狀況。

因此需要在 WebLog Expert 分析工具中,將這些 IP 過濾掉。

以下為過濾 IP 的操作步驟:
1. 點選已新增完成的 Profile 點選「Edit」。

2. 點選「Filters」頁籤,接著點選「Add...」按鈕。

3. 點選 「Exclude filter」以及「Host」 選項。

4. 填入需要過濾的 IP 後,點選「finish」。

5.即可看到過濾清單中,有剛剛輸入的 IP。


以上過濾 IP 的步驟完成後,再進行 Log 分析,即可得到數據正確的報告!

Windows 10 更新後,遠端桌面無法登入?

張貼者:2018年9月6日 上午2:18Moodle Taiwan   [ 已更新 2018年9月6日 上午2:19 ]

Q: Windows 10 遠端桌面無法登入Server, 出現"驗證錯誤"的訊息:
發生驗證錯誤。
要求的函數不受支援。
遠端電腦: <hostname>
這可能是 CredSSP 加密 Oracle 補救所造成的。
如需詳細資訊,請參閱 https://go.microsoft.com/fwlink/?linkid=866660
因為Windows 10更新後(因為修補 CredSSP 中存在遠端執行弱點, 攻擊者利用此弱點可轉送使用者認證, 以便在目標系統上執行程式碼...), 遠端桌面無法直接登入Server了 .出現"驗證錯誤"無法連線的訊息.

CredSSP 重大更新(CredSSP updates for CVE-2018-0886 ) -說明在這: Chinese 英文版 

解決辦法有2:

更新Server(伺服器/遠端)/Client(windows 10)

兩端都更新是最好的方法, 但 Server 更新是一個不小工程(如果是上線的Windows Server, 可能要停機); 所以提供關閉 oracle驗證暫時解決方式撐過對方更新前的過渡期, 下方說明.

修改 Client 群組原則

本機群組原則:
本機群組原則編輯器 -> 系統管理範本 -> 認證委派 -> 加密Oracle補救 ->選擇保護層級
Windows 10 更新CredSSP 遠端桌面無法直接登入Tips: 要打開 <<本機群組原則編輯器>> 在window的搜索輸入 : gpedit.msc 可以快速找到
保護層級有3:
  • 強制更新的用戶端 – 用戶端應用程式將無法回復為不安全的版本,並且使用 CredSSP 的服務將不接受未修補的用戶端。
  • 已降低 – 用戶端應用程式將無法回復為不安全的版本,但使用 CredSSP 的服務將會接受未修補的用戶端。
  • 易受攻擊 – 支援回復為不安全的版本,並且使用 CredSSP 的服務將會接受未修補的用戶端。
至於要如何選擇,必須視你的 server 與 client 有無修補來決定; 請參下方關係表.


整個遠端與用戶端的關係如下表:
看你的 server 與 client 修補與否及群組原則的設定, 查表就知道可否遠端.
Server遠端
UnpatchedForce updated clientsMitigatedVulnerable
Client用戶端
UnpatchedAllowedBlockedAllowedAllowed
Force updated clientsBlockedAllowedAllowedAllowed
MitigatedBlockedAllowedAllowedAllowed
VulnerableAllowedAllowedAllowedAllowed
所以你的遠端主機如果還沒更新,就只能將原則設定成  Vulnerable(易受攻擊)了.

關閉Windows自動更新

張貼者:2018年8月28日 上午2:52Vin Yan   [ 已更新 2018年8月28日 上午3:02 ]

Q:一開始 Windows 作業系統預設設定為自動更新,這樣會導致每次的更新都產生出更新檔,因為這些更新檔的容量較大,會造成占用硬碟空間的情況。

A:
為了避免這種情況,可以從系統的服務來關閉Windows Update,避免系統自動更新,關閉的步驟如下:

1. 點選鍵盤上的:windows鍵+R,輸入services.msc,即可開啟系統的服務。

2. 找到Windows Update,滑鼠點選右鍵,並選擇停止。



Apache日誌:logrotate 系統輪替工具設定

張貼者:2018年8月28日 上午2:36Vin Yan


1.預設的 logrotate 設定:

logrotate 主要在進行 log 檔的輪替功能,就是指將舊的登錄檔更改名稱,然後建立一個空的登錄檔。
輸入以下指令確認 logrotate 設定:
vi /etc/logrotate.d/httpd

Apache 2.2 的預設設定值如下:
/var/log/httpd/*log {
    missingok    //如果記錄檔不存在或有誤,會忽略錯誤,繼續進行
    notifempty    //如果記錄檔是空白, 不會做輪替
    sharedscripts    //所有的 log檔 都 rotate 後,統一執行一次腳本
    delaycompress    //延後壓縮直到下一次 rotate
    postrotate
    /sbin/service httpd reload > /dev/null 2>/dev/null || true
    endscript
}

再依照需求進行修改,可參考下面的參數解說

註:
/systemctl reload httpd.service > /dev/null 2>/dev/null || true
因 Apache 2.4 呼叫方式不同而有所差異。

2.設定 logrotate 實現 log 輪替

logrotate 的設定檔是 /etc/logrotate.conf,為設定 logrotate 的預設參數,而 /etc/logrotate.d/ 目錄下建立需要 rotate 的記錄檔,每項服務一個檔案,這樣對日後維護及管理也會較方便。

logrotate.d 參數說明

create建立新檔案來儲存, owner 及 group 是 root,權限是 600
daily、weekly、monthly、yearly每日、周、月、年整理一次記錄檔
missingok、nomissingok如果記錄檔不存在不會輸出錯誤,如果將進行rotate的檔案遺失,則忽略錯誤繼續進行下一個;值為 nomissingok ,檔案遺失時會出現警告
notifempty如果記錄檔是空白, 不會做輪替
compress使用 gzip 壓縮舊記錄檔
size 10M如果記錄檔大過 10MB 便會做輪替
delaycompress表示延後壓縮直到下一次 rotate
rotate 6檔案保留的數量,為 "0" 的時候,進行 rotate 時,則直接刪除前一份
dateext在檔案上加入日期,如:YYYYMMDD


3.設定之後,須重啟 Apache


4.測試 logrotate

若要測試 logrotate 設定是否成功可以下以下指令:
logrotate -f /etc/logrotate.conf

logrotate.conf 為 logrotate 設定檔。
指令意旨為對在/etc/logrotate.d/下,有設定 logrotate 的服務強制執行一次 rotate。

執行後,可以到 /var/log/httpd 查看 log 是否有 rotate 成功。

使用小畫家幫圖片打馬賽克

張貼者:2018年8月10日 下午12:37John Liou   [ 已更新 2018年8月10日 下午12:39 ]

有時候會想要在圖片上加上馬賽克, 是電腦又沒有灌上影像處理軟體, 這時候小畫家就可以派上用場了.

1.首先開啟要加上馬賽克的圖片,我這次是要把天氣方塊加上馬賽克,點擊《選取》把範圍圈選起來
要加上馬賽克的圖片

2.接著點擊調整大小
點擊調整大小

3.會出現一個對話框,在紅框內填上10,其餘地方不用動
調整大小2

4.接著你就看到所選的範圍被縮小了
選擇範圍已縮小

5.接著點擊調整大小,從右下角往右下拉至原圖大小.
拉至原圖大小

這樣就可以看到馬賽克的效果了. done.

windows排程

張貼者:2015年9月17日 上午1:00Wan Susan   [ John Liou 已於 2015年9月17日 上午1:00 更新 ]

Q:如何檢查windows排程
A:
1.請開啟控制台

2.輸入排程進行搜尋
排程

3.點擊排程工作
排程

4.查詢排程
排程

修改圖片亮度

張貼者:2015年9月9日 上午12:39Wan Susan   [ John Liou 已於 2015年9月9日 上午12:43 更新 ]

Q:如何修改圖片亮度
A:
這次遇到的問題是因為背景色太暗造成Logo不夠突出,所以要修改Logo亮度。
在此介紹一個非常方便的免費影像處理軟體「PhotoScape」,這款軟體在操作上非常簡單,筆者常用來修改圖片大小、色彩、亮度,今天就要介紹怎麼修改亮度。

1. 開啟PhotoScape。

2. 點擊相片編修。
圖片亮度

3. 開啟圖檔。

4. 點擊圖片亮度,選擇變亮,設定為強。
圖片亮度

5. 如果覺得不夠亮,可以直接點擊「亮度,色彩」,設定變亮的%,您可以喜好設定,並可即時預覽修改後的效果。
圖片亮度

6. 亮度調好就可儲存圖片。

修改前
圖片亮度

修改後
圖片亮度

Logo是不是明亮不少了呢?而且步驟也不會很複雜,有機會再介紹PhotoScape的其它功能。

如何修改Moodle中檔案的大小限制

張貼者:2015年7月31日 上午12:44Wan Susan   [ Amber Li 已於 2018年8月15日 上午9:10 更新 ]

Q如何修改Moodle中檔案的大小限制?
Q:如何修改上傳檔案的最大容量限制?

A:請考下列步驟:

Windows

  1. 打開「php.ini」檔(可利用PSPad開啟)
  2. 搜尋「post_max_size」
  3. 依照您的需求設定大小(e.g.post_max_size 50M)
  4. 搜尋「upload_max_filesize」
  5. 依照您的需求設定大小(e.g.upload_max_filesize 50M)
  6. 存檔
  7. 重啟Apache:最簡單的做法就是到「工作管理員 > 服務」中點擊右下方的服務,找到Apache後按右建重新啟動
Linux
1.尋找檔案php.ini
    $ whereis php.ini
2.找到檔案位置 /etc/php.ini ,進行編輯
    $ vi /etc/php.ini
3.利用 " / "搜尋 post_max_size 與 upload_max_filesize 的位置
4.按下" i " 插入編輯
5.設定(依需求設定大小),例:
    post_max_size = 1024M
    upload_max_filesize = 1030M   # 要大於 post_max_size 的數值
6.按Esc 離開,寫入存檔 ":wq" 
8.重啟Apache 
   /etc/init.d/httpd restart 
PS: 
這3個數值是有關連的,數值大小必須是 memory_limit > post_max_size > upload_max_filesize .
and 
PHP Default: 128M > 8M > 2M

Moodle 平台設定
路徑:網站管理 -> 安全 -> 網站管理規則 (Site administration -> Security -> Site policies)
請使用管理員帳號登入,即可修改「上傳檔案大小的最大值」(Maximum uploaded file size)。
Moodle 設定上傳檔案size限制
ie: 網站 上傳的限制 1G.

不過修改完檔案大小後,可能會出現使用者上傳的檔案太大,所以逾時(time out)的情形,但那又是另一個問題了,下次再說明。

1-10 of 18