May 30, 2008

兩個趣味益智題

兩個趣味益智題目 :
1. 一個數字,去掉前面一個數字後,是13。去掉最後一個數字後,是40。這個數字是什麼?
2. 很奇怪的等式,0比2大,2比5大,5比0大。為什麼?

May 29, 2008

perl - 取得網頁填寫的資料,並寄送Email

#!/usr/bin/perl
$recipient1 = 'ttt@com';
$mail_from = "ttt\@com";
$subject = "客戶回函";
# Print out a content-type for HTTP/1.0 compatibility
print "Content-type: text/html\n\n";
# Get the input
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
# Split the name-value pairs
@pairs = split(/&/, $buffer);
foreach $pair (@pairs)
{
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}

&mail_user;

$mail_to = $FORM{'b5'};
open (MAIL, "|/usr/sbin/sendmail -f '$mail_to' '$recipient1' ")||die "sendmail: $!\n";
print MAIL<<"EOM";
Subject:客戶回函
MIMI-Version:1.0
Content-type:text/plain;charset=big5
這是客戶回函
個人簡介:
---------------------------------------------------------------------
名字 : $FORM{'a1'}
職稱 : $FORM{'a2'}
公司名 : $FORM{'b1'}
地址 : $FORM{'b2'}
電話 : $FORM{'b3'}
傳真 : $FORM{'b4'}
E-Mail : $FORM{'b5'}
EOM
close (MAIL);
print "<body background=/gif/bookback.gif \n";
print " text=\"#000000\" link=\"#0000ff\" vlink=\"#ff0000\" \n";
print "alink=\"#00ff000\">\n";
print "<title>客戶回函</title>\n";
print "<body><center>";
print "<h5><font face=\"Arial\"><a href=\"http://www.simplo.com.tw/\"><strong></strong></a><br>";
print "<hr>\n";
print "</center>";

print " </p>\n";
print " <blockquote>\n";
print "<font size=+1>個人簡介</font><br>\n";
print "<hr><br>\n";
print "名字 : $FORM{'a1'}<br>\n";
print "職稱 : $FORM{'a2'}<br>\n";
print "部門 : $FORM{'a3'}<br>\n";
print "性別 : $FORM{'sex'}<br>\n";
print "<br>\n";
print "<font size=+1>公司簡介:</font><br>\n";
print "<hr><br>\n";
print "公司名 : $FORM{'b1'}<br>\n";
print "地址 : $FORM{'b2'}<br>\n";
print "電話 : $FORM{'b3'}<br>\n";
print "傳真 : $FORM{'b4'}<br>\n";
print "E-Mail : $FORM{'b5'}<br>\n";
print "<br>\n";
print " </blockquote>\n";
print "<br>\n";
print "<center>\n";
print "<hr align=center width=80%>\n";
print "<font size=+1 color=red>感謝您填寫本表單</font>\n";
print "<hr align=center width=80%>\n";

sub mail_user {

$mail_to = $FORM{'b5'};

open (UMAIL, "|/usr/sbin/sendmail -f '$mail_from' '$mail_to'")||die "sendmail: $!\n";
print UMAIL<<"EOM";
Subject:$subject
MIMI-Version:1.0
Content-type:text/plain;charset=big5
Hello $FORM{'a1'},

謝謝您填寫此表單
EOM
close(UMAIL);
}

---------------------------------
###在Subject 之後的兩行可避免發生中文亂碼
MIMI-Version:1.0
Content-type:text/plain;charset=big5

May 22, 2008

USB埠封鎖的12種方法

你知道USB是資安的漏洞嗎?USB埠封鎖的12種方法:
USB的發展讓我們方便很多,不過已經變成企業資料洩密及病毒的來源。
完整內容:http://www.ithome.com.tw/itadm/article.php?c=48641&s=4

此處僅列摘要,完整內容請參考上面網址:

1.停用BIOS的相關設定
在主機板BIOS設定裡,我們可以將USB埠的功能,設定為停用。由於設定上十分容易,做法簡單,因此成為企業經常用來管理USB埠使用的方式。為了防止員工自行進入BIOS重新啟用USB埠的功能,一般在完成設定之後,IT人員會同時設定BIOS的管理密碼,往後只有IT人員才能進入、更改設定。

2.黏上易碎貼紙
用易碎貼紙控管USB埠,好處在於只要透過肉眼,就可以分辨電腦的連接埠是否曾經使用過,常用於訪客將筆記型電腦攜入之前,大門口的管理人員會在該臺電腦的 USB埠與網路埠,黏貼一張易碎貼紙,確認訪客在進入企業內部的這段時間,是否曾經透過這些連接埠連接周邊裝置,或者存取資料。

3.移除主機板上的跳接器
移除主機板上的跳接器(Jumper),同樣是為了停用主機板上的USB埠功能。不同於在BIOS將USB埠功能設定停用,移除跳接器之後,USB埠的功能達到真正的完全失效,不但無法讀取USB裝置,同時不會透過USB埠供電給連接在電腦上的USB周邊裝置。

4.用熱熔膠堵住
這是一種破壞性的封鎖方式,當填充物灌入USB埠接孔時,USB埠介面也會隨之損壞,而永久無法使用。

5.插上專用介面卡或硬體鎖
有一些現成的硬體產品,能夠幫助企業管理USB埠的使用。市面上有一種介面卡型式的產品,裝在主機板上的PCI插槽之後,USB等周邊連接埠的功能就會失效。

6.利用群組原則集中控管
企業可以透過設定群組原則物件原則(GPO)的方式,在AD伺服器的管理介面執行相關的設定,接著將政策派送到內部的所有員工電腦,就可以關閉周邊裝置的使用權限。不只是USB儲存裝置,企業也可以使用相同方式控管光碟機、LS-120,以及軟碟機的使用。

7.修改電腦內的特定登錄機碼
對於連接過USB儲存裝置的電腦,可以利用修改登錄機碼設定的方式,禁止員工在電腦上使用USB儲存裝置。開啟Windows的登錄編輯程式,在「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service\USBSTOR」的項目下找到Start 數值,點選開啟之後,將數值由預設的3,修改為4,就能將USB儲存裝置設定為禁用。

8.刪除USB儲存裝置的驅動程式
適用於未曾連接過任何USB儲存裝置的電腦。在「C:\WINDOWS\inf」路徑下,可以找到usbstor.inf、usbstor.PNF兩個安裝資訊檔案,這是Windows系統用來辨識USB儲存裝置的驅動程式。
我們可以針對這兩個檔案設定存取權限,修改檔案名稱,或者直接刪除檔案,就可以讓讓員工無法在自己電腦上使用USB儲存裝置。

9.採用周邊裝置控管產品的解決方案
這類產品通常會透過安裝在使用者電腦上的代理程式實施管理,而且能夠整合Windows AD、LDAP等目錄服務,讓同一部門、相同群組的電腦套用相同的政策做管理,省去個別調整設定的麻煩。

10.將重要檔案予以加密
控管的對象以檔案為主,而非USB埠本身,當資料寫入USB儲存裝置的時候,可以透過應用程式執行加密,限制擁有解密金鑰的人才能開啟該檔案,防止USB儲存裝置遺失之後,裡頭存放的機密資料遭到盜取。

11.藉助SSL VPN或終端服務
幾家廠商的SSL VPN設備提供一種稱為虛擬桌面的應用服務,當員工從外部網路連接上線之後,電腦上的螢幕畫面就會自動切換成虛擬桌面,任何存取或修改資料的動作都必須在此區域進行。

12.建置DLP解決方案
DLP是更進一步的機密資料安全保護方案,功能上不但包含周邊裝置控管的功能,更結合資料過濾的方式,從檔案內容著手,在不影響USB埠功能的情況下,將含有機密內容的資料攔阻下來,不允許複製到USB儲存裝置,或者透過網路傳送出去。

May 21, 2008

Substr 與 Instr

Example : String "one two three/four/five/"
Need to get before first "/" word->"three"

substr : get part of string by your parameter.
instr : return the position that match you input parameter.
instr('abcb','b',-1) -> search the 'b' location from the end to start , return from start to end position.

select trim(substr(substr('one two three/four/five/',1,instr('one two three/four/five/','/')-1),instr(substr('one two three/four/five/',1,instr('one two three/four/five/','/')-1),' ',-1))) from dual;

May 19, 2008

網頁, METADATA 與收尋引擎

1. 使用<META>標記宣告禁止索引與連結
除了可以使用robots.txt的方式來調整之外,另一種方式是以HTML的<META>標記語法做設定,告知網路蜘蛛不要產生網頁的索引及庫存。

<META>語法範例一
<HTML>
<HEAD>
<META NAME="robots" CONTENT="noindex,nofollow">
<TITLE>...</TITLE>
</HEAD>
<BODY>...

將上述<META>起始的語法放置在網頁<HEAD>區段中,這個頁面就不會搜尋到,NAME的部份使用「robots」即可阻擋所有的網路蜘蛛,也可以指定特定名稱,例如Googlebot或Yahoo! Slurp,就可阻擋特定網站蜘蛛。CONTENT可指定noindex、nofollow等兩個屬性,noindex意指不可對本頁進行索引動作, nofollow指的是否可使用本頁的超連結再延伸出去擷取搜尋。

2. 增加排名方式則為:
網頁的header中要有DESCRIPTION與KEYWORDS的meta,並且要夾雜關鍵字在其中,如:
<meta name="DESCRIPTION" content="你要的關鍵字">
<meta name="KEYWORDS" content="你要的關鍵字,你要的關鍵字,你要的關鍵字">
您的關鍵字一定要在這兩個meta中出現。

網頁中的標題文字(如<title>我是標題文字</title>)要包含關鍵字,最好是出現兩次以上。

TEMP tablspace and tempfile

When backup,restore,revocer database , tempfile can be excluded .
TEMP tablespace alway in no-logging mode and no checkpoints.

When move a database from one A machine to B machine with difference disk label and file directory, tempfile can be bypass to copy from A machine to B machine.

The solution is to drop the tempfile and recreate it, while keeping the TEMP tablespace:

SQL> alter database tempfile 'D:\oracle\oradata\Amar\temp01.dbf' drop including datafiles;

Database altered.

Physically delete that file from the path.

SQL> alter tablespace temp add tempfile 'D:\oracle\oradata\Amar\temp01.dbf' size 100 m;

May 16, 2008

Sharepoint - 檔案上載大小限制

Sharepoint 2007 上載檔案時, 遭遇 "由於您所送出的表單無法超過網站管理員所允許的最大長度"錯誤訊息, 解決方式為:
到管理中心->應用程式管理 -> Web 應用程式一般設定 , 將上限加大即可

May 15, 2008

Sharepoint - 備分與還原

在 Sharepoint 的 8001 建立一個與 8000 一模一樣的網站.
使用 WSS 專用的 STSATM 指令,進行網站 8000 的備份,再還原至新增網站 8001!STSADM 網站指令放在 C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\ 之下.
備份網站備份之指令為 stsadm.exe -o backup -url http://server:8000 -filename backup.dat
還原網站備份之指令為 stsadm.exe -o restore –url http://server:8001 -filename backup.dat

May 13, 2008

Sharepoint - 管理員已經封鎖下列檔案

於 Sharepoint 上傳文件時, 遭遇 "管理員已經封鎖下列檔案" 錯誤訊息.
原因為:
Sharepoint server 在安全性上的考量,會封鎖如 exe , bat 等等的資料類型上傳 .
若ㄧ定需要允許上傳,則透過 Sharepoint 管理中心-> 作業 -> 安全性設定 -> 被拒的檔案類型, 即可進行變更

May 12, 2008

linux sar

SAR 範例:
取得本月20號 11:00:00~19:00:00 的 CPU/Memory/IO 方式.
CPU -> sar -u -s 11:00:00 -e 19:00:00 -f /var/log/sa/sa20
Memory -> sar -r -s 11:00:00 -e 19:00:00 -f /var/log/sa/sa20
IO -> sar -d -s 11:00:00 -e 12:00:00 -f /var/log/sa/sa20

取得本月18號 整天 I/O 資料
IO -> sar -u -f /var/log/sa/sa18

May 7, 2008

Good and usful Metalink Notes

Applications FAQ

Cloning

Oracle Applications with Oracle Application Server

  • Note Id:186981.1 Oracle Application Server with Oracle E-Business Suite Release 11i FAQ
  • Note Id:233436.1 Installing Oracle Application Server 10g with Oracle E-Business Suite Release 11i
  • Note Id:295606.1 Oracle Application Server 10g with Oracle E-Business Suite Release 11i Troubleshooting

Autoconfig

Oracle Applications and Database

  • Note Id:362203.1 Oracle Applications Release 11i with Oracle 10g Release 2 (10.2.0)

Oracle Applications And RAC

DMZ with Oracle Applications

SSL and Oracle Applications
  • Note Id:123718.1 11i: A Guide to Understanding and Implementing SSL for Oracle Applications
  • Note Id:340178.1 Enabling SSL with Oracle Application Server 10g and the E-Business Suite
Shared APPL_TOP and Application Tier Filesystem

Patching

Concurrent Managers

System Administration

Troubleshooting

Portal with Oracle Applications

Single Sign-On with Oracle Applications

Online hot backup

Using OS Level copy command to backup oracle database
1. Make sure database in archive log mode.
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /ora/ora920/archlog/PROD
Oldest online log sequence 41288
Next log sequence to archive 41294
Current log sequence 41294
SQL>

If not archive log mode , modify init parameter file , add following parameter
log_archive_start = true
log_archive_dest_1 = "location=/ora/ora920/archlog/PROD"
log_archive_format = PROD_%t_%s.arc

2. Bring tablespace one by one to backup mode(Exclude temp tablespace).
alter tablespace xxx begin backup;

or
bring whole database to backup mode.
alter database begin backup;

3. Copy all datafile to backup disk.

4. Bring tablespace one by one to end-backup(Exclude temp tablespace).
alter tablespace xxx end backup;

or
bring whole database to end-backup mode.
alter database end backup;

5. Generating after end backup redo log.
alter system archive log current;
or
alter system switch logfile;

6. Copy all archived logs that generated during backup period to backup disk.

May 6, 2008

將 AD 帳號全部 disabled

Const ADS_PROPERTY_UPDATE = 2
' multiple users
Set objOU = GetObject("ldap://cn=Users,dc=king,dc=com,dc=tw/")
' Filter on user objects.'objOU.Filter = Array("user")
' Enumerate user objects.
For Each objUser In objOU
'msgbox("name:"+objUser.name)
On Error Resume Next
objUser.Put "AccountDisabled", True
' Save changes.
objUser.SetInfo
Next
msgbox("Finished!")


若尋找單一 帳號, 可用
Set oUser = GetObject("WinNT://simplo-tw/brian_chang,user")
msgbox(oUser.AccountDisabled)
'True 表示帳號停用狀態中