不過,改用過程中發生一件怪事,我的帳號沒有問題,可以用 ssh-key 登入 ssh console / sftp ,但是同事的帳號卻發生 "Server refused our key" 的訊息拒絕連線。
經過一番檢查,原來是 ~/.ssh/authorized_keys 的權限錯了。
我的心得記事,包括 pLog 、 PHP 、 Moodle 、網路管理、電腦科教學、 Wiki ......
不過,改用過程中發生一件怪事,我的帳號沒有問題,可以用 ssh-key 登入 ssh console / sftp ,但是同事的帳號卻發生 "Server refused our key" 的訊息拒絕連線。
經過一番檢查,原來是 ~/.ssh/authorized_keys 的權限錯了。
純筆記!
IP-based Virtual host 可以各自擁有獨立的 SSL 憑證, Name-based Virtual host 則只能共用一個 SSL 憑證。
原因: SSL 為比 http 更底層的協定, Name-based Virtual host 是在 http 層才能分辨,而 SSL 憑證早在這之前就載入了。
若 Virtual host 要同時支援 http 與 https 協定,要當成兩個 Virtual host 設定,分別監聽 80 port 與 443 port ,但是把網址與文件目錄設為相同。至於 access log 與 error log 最好是分開以方便未來利用。
忍無可忍了,只有祭出 RewriteRule 來堵一下:
RewriteEngine on
RewriteRule \.mp3$ - [F,L]
好你個百度mp3音樂盒,再來試試。
不聽宣導勸導的學生,我準備要拿 access_log 出來簽校規 ( 國立內壢高中學生獎懲實施要點補充規定 第四條、第二款 ) 處分了。
Daniel Miessler 的 dmiessler.com 寫了一篇好文章介紹超好用的網管指令 lsof ,以前都不知道,真是受教了。
先記下連結: http://dmiessler.com/study/lsof/ ,找時間要全文翻過來放著用。
伙伴 huihui 發表了一個關閉學生應用程式的電腦教室管理工具。初看到這一段:
……其實用 WMI 加上 Script 就可以達成任務……
天真的我以為是在 AP 裡執行現成的 Windows 命令來達成將學生電腦的 IE 關掉的目的 ( 經過求證,我太天真了
) ,於是便搜尋看看到底是用那個 Windows 命令完成的,結果找到了一個與 linux 上的 kill 命令相似的 Windows 內建命令: taskkill 。使用 taskkill 命令加上其他命令的配合,便可以達成「一口氣關閉整間電腦教室的 IE 瀏覽器」的目的。
這次要用的命令,除了 taskkill 之外,還有 for 與 start 搭配使用。
(閱讀全文)玩批次檔玩到有點興頭了,再做一次修改,試著讓他更好用一點。
不多廢話,純紀錄,直接看程式 doshutdown.bat 如下:
@echo 輸入要關機的電腦編號,每個電腦名稱一列,結束按 Ctrl-Z
for /f %%a in ('type con') do shutdown -s -f -t 0 -m pc403-%%a
pause
這樣,可以把批次檔做個捷徑放在桌面上,執行後輸入要關機的電腦編號,然後按 Ctrl-Z 完成 stdin 的輸入。接下來, for 命令會從 stdout 逐行取出電腦編號交給 do 後面的 shutdown 執行。
這算是第一版的改良版,把編輯檔案與執行結合在一起了。至於第二版,每次要寫命令列參數還是有點麻煩,不如執行後再直接填寫參數方便。
就這樣。
目前學校的郵件主機是使用 amavisd-new 搭配 spamassassin 做 spamfilter 。除了 spamassassin 原本的過濾規則之外, amavisd-new 的設定檔裡面也有一些自訂的過濾規則。其中,過濾附件檔名的規則裡,預設把常見的壓縮檔格式全擋掉了
。於是寄一個 .rar 的檔案,就收到系統如下的回信:
BANNED CONTENTS ALERT
Our content checker found
banned name: multipart/mixed | application/x-msdownload,.rar,104.rar
in email presumably from you (<寄件者>),
to the following recipient:
-> (收件者)
要開放附件可以寄壓縮檔,要修改 /etc/amavisd/amavisd.conf 裡面的兩項設定:
一位同仁因為不堪垃圾郵件困擾,要求關閉他的電子郵件帳號。這裡紀錄一下做法。
最簡單的方法,讓帳戶過期:
usermod -e 2006-01-01 user
這裡是用 usermod 命令,設定帳戶在 2006-01-01 (過去的某一個日期) 過期,這樣,過期就立刻生效,帳戶立刻無法使用。
順便記一下,另一個無效的方法:
passwd -l user
這是在 /etc/passwd 裡面加註帳號鎖定。這只會讓帳號無法經由 telnet / ssh 服務時無法登入。而我們的電子郵件帳號原本就設定成無法登入系統,所以此法無效。
一直以來都忘了做這件事,這回做了之後,順手記一下。
參考連結: 時間與頻率國家標準實驗室 、 鳥哥的 Linux 私房菜之 如何在 Linux 系統自動網路校時?
因為不做 ntp 伺服器,只要安裝 ntp-client 套件即可:
urpmi ntp-client
使用 time.stdtime.gov.tw 的時間校時:
ntpdate time.stdtime.gov.tw
將校準後的時間寫入 BIOS clock :
hwclock -w
這樣就完成校時了。將上述兩個步驟加入 crontab ,於每日早上 6:00 自動校時:
crontab -e
0 6 * * * /usr/sbin/ntpdate time.stdtime.gov.tw;/usr/sbin/hwclock -w
完成!
上次分享了一個 Windwos XP 批次遠端關機,似乎有不少透過 google 搜尋而來的連結。看來,有不少電腦老師很需要啊
。
上次的做法是透過一個外部檔案來列出要關機的電腦,再用 for /F 讀給 shutdown 指令使用。不過,對電腦教室裡每天遇到的情況並不是很適用,沒關機的數目通常不多,要開啟檔案編輯電腦清單,再執行命令的話反而蠻麻煩的。
這裡改用批次檔的參數指定要關機的電腦名稱,對忘記關機數目不多的情況還蠻實用的,批次檔如下:
使用 awk 命令做 Linux 上的帳號批次管理,我已經用很久了。真的很好用
!
剛好今天應教學組長的要求,重設了一個班學生的密碼,順便記下來吧!
以下是我下的指令:
awk -F: '/:207-/
{
cmd="echo newpassword" | passwd --stdin "$1;
print cmd;
system(cmd)
}'
/etc/passwd
這個指令的意思是,從 /etc/passwd 系統帳號檔案裡面抓出 207 班的學生帳號資料,並且把新密碼逐一設定給取出的帳號。
電腦教室下課時,經常一堆小朋友忘記關機就拍拍屁股走人
。以前得逛一趟教室,一一尋找出未關機的電腦來處理。感謝伙伴 huihui 把電腦教室的 Windows 網域建立得非常完善,現在可以在座位上對尚未關機的電腦用 shutdown 指令直接令其關機了。
shutdown -s -f -t 0 -m pcname
- -s :關機 ( shutdwon )
- -f :強迫中止程式執行
- -t 0 : 0 秒後關機,也就是立刻關機啦
- -m pcname :關閉網域上名稱為 pcname 的電腦
透過這一行指令,網域管理員可以立刻強制關閉網域裡的電腦。
但是一個 shutdown 指令只能關閉一部電腦,要關閉多部電腦,那就要借重 for 指令了。
常見的 tarball 大都是 .tar.gz ,也就是用 gzip 格式壓縮打包後的 tar 檔。平常處理時,大都用 tar 程式一次搞定:
tar zcvf package.tar.gz files...
tar zxvf package.tar.gz
這回要在自家網站上裝 Mark 打包的 LifeType APIs 文件,竟然是用 bzip2 壓縮的 tarball ,這回不能偷懶,要認真學習了。總不能老是下載回 Windows 用 winrar 解壓縮後再上傳吧!太麻煩了。
(閱讀全文)在主機上使用 vim 修改程式已經是家常便飯了。經常會遇到的困擾是編修 utf-8 格式的文件在 vim 裡會變成亂碼。
當初是用 google 找到解決方案的,不過忘記在那裡找到的 :P 。雖然我不認識你,但是我謝謝你!
把方法記下來如下:
(閱讀全文)