今天有一位朋友問我「幫人家架設 Linux 伺服器,以及轉移電子信箱該如何收費」相關的問題,我上網去找了一下,從 Google 的討論群組看到這一則討論: 架設 linux 網站,如何收費?,裡面有一段話,讓我深感認同,這段話就是…
奉勸各位,千萬別給公眾如下的印像:
Linux 很容易 (no! 它比許多人想像的專業多了!)
Linux 很便宜 (no! 專業服務是一分錢一分活的!)
粉久之前寫了一支 Log 分析的程式,可以統計、分析前一天系統的 Log,在這一份報表裡面,總是會看到有一些人使用「暴力法」,嘗試以各種帳號、密碼,藉由 SSH 或 FTP 入侵伺服器! 而我只能看著「前一天」的報表,分析他們用過哪些帳號、統計他們嘗試了幾次…實在有點不是滋味。
突然想到 MySQL 備份的問題,其實 MySQL 本身有一個 “mysqldump” 的指令,可以用來備份/還原資料庫的內容,用這個指令來備份資料通常沒什麼問題,但當你要把資料還原時,除非裡面沒有中文字,否則,中文字的衝碼,經常會導致還原失敗!
解決的方法
方法一: 改用 UTF-8 編碼格式儲存資料,即可繼續使用 mysqldump 指令。
方法二: MySQL 的資料庫放在 [/var/lib/mysql] 下,直接將 [/var/lib/mysql] 下的資料庫目錄用 “tar” 指令備份起來即可(備份及還原前最好先暫停 MySQL 的服務)。
P.S.我已經儘量都把程式及資料庫改成 UTF-8 編碼了,但我還是用 “方法二” 來備份資料的。
程式說明
screen 是一個很方便的程式,可以讓你在同一個畫面開啟多個終端機來操作,即使你要離開電腦,也可以將終端機放到背景執行,下次登入時,再取回來操作。
首先啟動 Screen 程式:
screen
某些終端機視窗會在標題列顯示目前在操作的終端機編號,如果沒有顯示,你也可以輸入:
tty
來了解你目前正在哪個終端機中。
以快速鍵操作
Ctrl + A -> C
新增終端機畫面。
Ctrl + A -> P
切換到上一個編號的終端機畫面。
Ctrl + A -> N
切換到下一個編號的終端機畫面。
Ctrl + A -> Ctrl + A
在兩個終端機之間互相切換。
Ctrl ...
測硬碟速度:
hdparm -tT /dev/hda
UDMA3(ATA33):
# hdparm -X66 -c1 -d1 -m16 /dev/hda
UDMA4(ATA66):
# hdparm -X68 -c1 -d1 -m16 /dev/hda
UDMA5(ATA100):
# hdparm -X69 -c1 -d1 -m16 /dev/hda
轉載自: 中文 PHP 資訊站
在linux中,每個普通用戶都有一個帳戶,包括用戶名、密碼和主目錄等資訊。除此之外,還有一些系統本身創建的特殊用戶,它們具有特殊的意義。其中最重要的是超級用戶,在linux中,它默認用戶名是root。
基本操作
增加一個用戶 newuser :
useradd newuser
passwd newuser
然後根據提示兩次輸入新用戶的密碼,請注意,用useradd增加一個用戶後應該立刻用passwd給新用戶修改密碼,沒有密碼的新帳號將不能使用。在/etc/passwd文件中,沒有密碼的新用戶的記錄是如下一行:
newuser:!!:506:506::/home/newuser:/bin/bash
在這一行裏,用戶的密碼域被設置成了”!!”,這就意味著用戶密碼還沒有設置,用戶不能登陸。(passwd文件的格式是 用戶名:密碼:用戶ID(UID):組ID(GID):全名:用戶目錄:外殼腳本)。
當然你可以用-d參數設置新用戶的主目錄(例如:useradd newuser -d /www),也可以用-g參數為用戶指定新組名(例如:useradd newuser -g linuxusers),你還可以用-G參數把新用戶設成系統其他一些組的成員(例如:useradd newuser -G users,shutdown)。所有這些,你都可以在本站的命令查詢中得到詳細資訊。
附注:相應的,僅僅增加一個新組可以用命令groupadd。
修改現有用戶的帳號:
修改密碼
普通用戶可以用passwd修改自己的密碼,只有管理員才能用passwd username為其他用戶修改密碼。
修改用戶shell設置
使用chsh命令可以修改自己的shell,只有管理員才能用chsh username為其他用戶修改shell設置。注意,指定的shell必須是列入/etc/shells文件中的shell,否則該用戶將不能登陸。
你也可以使用usermod命令修改shell資訊,如下所示:
usermod -s(new shell path)(username)
其中new shell path和username應取相應的值。
修改主目錄設置
usermod -d(new home directory)(username)
如果想將現有主目錄的主要內容轉移到新的目錄,應該使用-m參數,如下所示:
usermod -d -m/www/newuser newuser
修改UID
usermod -u UID username
主目錄中所有該用戶所擁有的文件和目錄都將自動修改UID設置。但是,對於主目錄外該用戶所擁有的文件,只能手工用chown命令修改所有權設置。
修改默認組設置
username -g(group name) or GID username
修改帳號的有效期
如果使用了影子密碼,則可以使用如下命令來修改一個帳號的有效期:
usermod -e MM/DD/YY username
例如把用戶newuser的有效期定為12/31/01:
usermod -e 12/31/01 newuser
刪除或禁止用戶帳號
使用userdel命令刪除現有用戶。例如,下面的命令將刪除bluewind用戶:
usedel bluewind
如果想同時刪除該用戶的主目錄以及其中所有內容,要使用-r參數來遞迴刪除。值得注意的是你無法刪除已經進入系統的用戶,如果想強行完成,需要先killall有關它的進程,然後再運行userdel命令。
如果只是想暫時禁止某個帳號,可以使用下列方法:
- 使用無效的shell。例如使用usermod -s newshell username將用戶的 ...
列出目前的規則
iptables -L -n
刪除 “INPUT” 的第 1 條規則
iptables -D INPUT 1
丟棄來自 192.168.1.203 的封包
iptables -A INPUT -p all -s 192.168.1.203 -j DROP
禁止 192.168.1.203 的用戶以 SSH 登入(Port:22)
iptables -A INPUT -p tcp -s 192.168.1.203 --dport 22 -j DROP
儲存防火牆的設定到 filename
iptables-save > filename
從 filename 讀取防火牆的設定
iptables-restore < filename
「htaccess 驗證方式」可以達到以較簡單的方式來規範網頁目錄的讀取權限,以限制哪些用戶可以進入到網頁的哪一層目錄。
建立用戶驗證檔
建立用戶驗證檔,並新增一組帳號及密碼:
htpasswd -c /usr/local/etc/htusers UserName1
繼續增加一組帳號及密碼到驗證檔:
htpasswd /usr/local/etc/htusers UserName2
建立群組資料檔
群組資料檔的目的是要將多個用戶設為一個群組,請新增或編輯 /usr/local/etc/htgroups,依需求增加類似如下的設定:
Group1:UserName1 UserName2
登入驗證檔
在欲執行用戶驗證的網頁目錄下,建立一個 .htaccess 檔案,驗證的方式可針對使用者或群組。
針對用戶:
AuthName " 請輸入帳號與密碼"
AuthType Basic
AuthUserFile /usr/local/etc/htusers
require user UserName1
上述的最後一行是針對 UserName1 做驗證,你也可以改成:
require valid-user
表示針對 /usr/local/etc/htusers 裡的所有用戶。
針對群組:
AuthName " 請輸入帳號與密碼"
AuthType Basic
AuthUserFile /usr/local/etc/htusers
AuthGroupFile /usr/local/etc/htgroups
require group Group1
問題排除
如果在設定 htaccess 認證方式之後,在進入網頁時,仍然沒有跳出驗證的對話框,則請編輯 /etc/httpd/conf/httpd.conf,搜尋相關的 “AllowOverride” 設定,改成:
AllowOverride All
本文件是參考鳥哥寫的 logfile.sh,我把它改成符合我自己系統的 LOG 分析程式,全面以 Perl 重寫。我自己用了一段時間 (其實也半年了),覺得勉強還可以用,所以公開給大家用看看…
ImageMagick 是個功能強大的圖片工具,讓你讀取、寫入、操作任何熱門的圖片格式,如 GIF、JPEG、PNG、PDF… 等。使用 ImageMagick 可以即時的建立 GIF 的圖片檔案,讓圖形可以更融入網頁等應用介面。你也可以更改圖片的大小、反轉圖形、增強亮度、減少顏色對比、加入額外特殊的效果。圖片可以儲存不同的格式依你的工作需求。