Friday, August 29, 2008
การเปลี่ยนค่า MAC Address ใน Linux
# บน windows มีโปรแกรมใช้เปลี่ยนเยอะไปหมดแต่ลินุกซ์มันง่ายกว่าอีกแค่คำสั่งนิดเดียว
# ifconfig <NIC> down hw ether <00:00:00:00:00:01>
Sample
# ifconfig eth0 down hw ether 00:00:00:00:00:01
# ifconfig eth0 up
# เมื่อเรารีบูตเครื่องขึ้นมาใหม่ mac ที่เราได้ทำการเปลี่ยนนั้นจะกลับมาเป็นตัวจริง
# แต่ถ้าอยากให้ไม่ต้องคอนฟิกใหม่ต้องเขียนสคริปไว้ตอนบูต
Another way
# ใน ubuntu มี macchanger
# ติดตั้ง และ วิธีการใช้งานก็
$ sudo apt-get install macchanger
$ sudo /etc/init.d/networking stop
$ macchanger --mac=01:23:45:67:89:AB eth0
$ sudo /etc/init.d/networking start
# อย่าลืม restart network card หลังปรับแต่งค่า
Thursday, August 28, 2008
HTTPS บน IIS 6 ด้วย OpenSSL
# ปกติเมื่อเราจะทำ https เราจะไปสร้างที่ windows server เพราะจะมี service เกี่ยวกับ certificate
# แต่บทยังความนี้จะเสนอ การทำ https โดยพึ่งแค่เครื่องเราเครื่องเดียวก็พอ ^^' แต่อาศัย OpenSSL
1. ดาวน์โหลด Win32OpenSSL-0_9_8g.exe
2. ติดตั้งเหมือนโปรแกรมปกติของ windows ทั่วไป
3. ก่อนอื่นเราต้องสร้าง new certificate request โดย
# คลิกขวา My Computer เลือก Manage
# ไปที่ Default Web Site คลิกขวา Properties ไปยังแท๊บ Directory Security
# คลิกที่ปุ่ม Server Certificate… จะปรากฏ Wizard ให้เราทำการสร้าง cer request
# “Create a new certificate” and “Prepare the request now, but send it later”. Next เรื่อยๆ
# กรอกๆ ไปให้เสร็จ เมื่อเสร็จแล้วจะได้ certreq.txt โดย default c:\certreq.txt
4. เมื่อเราสร้างไฟล์ certreq.txt แล้ว ให้เราใช้คำสั่งดังนี้เพื่อจะสร้าง key อาไรของมันนั่นอ่ะ ^^'
# เปิด Command Prompt แล้วพิมพ์ดังนี้
> cd c:\OpenSSL\bin
> openssl genrsa -des3 -out CA.key 1024
Loading 'screen' into random state - done
warning, not much extra random data, consider using the -rand option
Generating RSA private key, 1024 bit long modulus
..............++++++
.......++++++
e is 65537 (0x10001)
Enter PEM pass phrase:
Verifying password - Enter PEM pass phrase:
Verify failure
3940:error:0906406D:PEM routines:DEF_CALLBACK:problems getting password:.\crypto \pem\pem_lib.c:114: 3940:error:0906906F:PEM routines:PEM_ASN1_write_bio:read key:.\crypto\pem\pem_li b.c:367:
# มัน failure เพราะว่า ^^' ใส่เป็น 1234 ซะงั้นมันเลยไม่ผ่าน เปลี่ยนใหม่ให้ซับซ้อนขึ้นอ่ะถึงจาผ่าน
Loading 'screen' into random state - done
warning, not much extra random data, consider using the -rand option
Generating RSA private key, 1024 bit long modulus
.......++++++
..................++++++
e is 65537 (0x10001)
Enter PEM pass phrase:
Verifying password - Enter PEM pass phrase:
# ถ้าใส่คีย์ 2 ครั้งแล้วไม่แสดงข้อความอาไรแสดงว่าผ่านแหละ
# เมื่อผ่านแหละต่อเลยโดยสั่ง
> openssl req -new -key CA.key -x509 -days 1095 -out CA.cer
Using configuration from C:\OpenSSL\bin\openssl.cnf
Enter PEM pass phrase:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:th
State or Province Name (full name) [Some-State]:bkk
Locality Name (eg, city) []:bkk
Organization Name (eg, company) [Internet Widgits Pty Ltd]:home
Organizational Unit Name (eg, section) []:home
Common Name (eg, YOUR name) []:jui
Email Address []:some@hotmail.com
# จาเป็นประมาณเนี๋ย คือ กรอกคีย์ ที่เคยกรอกในตอนแรก และมันจะมี wizard ให้เรากรอกเรื่อยๆ ก็กรอกซะ
# ไม่จำเป็นต้องกรอกเหมือนที่เราสร้าง certreq.txt
# หลังจากกรอก wizard command ด้านบนเสร็จต่อเลยด้วยคำสั่ง
> openssl x509 -req -days 730 -in c:\certreq.txt -CA CA.cer -CAkey CA.key -CAcreateserial -out SelfSignedCert.cer
CA.cer -CAkey
CA.key -CAcreateserial -out SelfSignedCert.cer
Loading 'screen' into random state - done
Signature ok
subject=/CN=home/OU=home/O=home/L=bkk/ST=bkk/C=TH
Getting CA Private Key
Enter PEM pass phrase:
# ผลจาประมาณเนี๋ย คือ มันจาถามคีย์ที่กรอกในตอนแรกเหมือนขั้นทุกขั้นตอน
5. ถ้าทุกอย่างโอเคจะได้ไฟล์ C:\OpenSSL\bin\SelfSignedCert.cer
6. คัดลอก SelfSignedCert.cer ไปไว้ที่ C:\ SelfSignedCert.cer ถ้าจะให้ดีก็คัดลอกไปอยู่ที่เดียวกันกับ certreq.txt
7. กลับไป ข้อ 3 เครื่องหมาย # ที่ 3 คลิกที่ Server Certificate… ทีนี้จะขึ้นไม่เหมือนเดิมแหละให้เลือก
# “Process the pending request and install the certificate”.
# ไปเลือกไฟล์ C:\ SelfSignedCert.cer ที่ได้สร้างไว้ แค่นี้ก็เสร็จแหละ
8. ส่วนถ้าเราต้องการบังคับให้ IIS ใช้เฉพาะ 443 ห้ามใช้ 80 มันก็ต้องติ๊กอาไรเพิ่มนิดหน่อย
# โดยในหน้าเดียวกับที่มีปุ่ม Server Certificate… จะมีปุ่ม Edit.. ที่เราสามารถคลิกมันได้แหละ
# คลิกมันซะ แล้วติ้กให้มีเครื่องหมายถูกที่ “Require secure channel (SSL)”
# แค่เนี๋ยก็จะใช้ http ธรรมดาไม่ได้แหละ
# เสร็จแหละดูผลงานกัน https://localhost/
### เพิ่มเติมปัญหาที่อาจพบเมื่อสั่ง > openssl genrsa -des3 -out CA.key 1024
- อาจจะพบปัญหาดังนี้ หรือ ไม่พบก็ได้ ^^'
- ถ้าขึ้นประมาณว่า "Can not excute" ได้ให้ลอง ดาวน์โหลดเวอร์ชั่นอื่นๆ ดู
- เราต้องใช้ library ของเวอร์ชั่นนั้นๆ นะ ไม่ใช่ลงเวอร์ชั่น ใหม่แต่ไปใช้ library เวอร์ชั่นที่ลงก่อนหน้า - -'
ที่มา : dotnetyuppie.com
การค้นหาไฟล์ใน Rapidshare โดยใช้ Google
"Search Rapidshare by Google."
# เว็บเนี๋ยของเค้าเยอะจริงทำไงถึงจะหาไฟล์จากที่นี้ได้บ้างน้า - -'
# ลองใช้กูเกิ้ลค้นหาโดย how to search file on rapidshare ก็ไปเจอบทความเข้า
# จากเว็บเนี๋ย tech-buzz.net
# How to Search Rapidshare Files using Google
Just go to Google.com and punch “site:rapidshare.de” followed by:
- “inurl:pdf” for Ebooks in PDF Format
- “inurl:avi|wmv|mpg|nva” for Movies
- “inurl:mp3|ogg|wma” for Audio Files
- “inurl:exe” for executable application
- “inurl:zip|rar|7zip|tar” for RAR, ZIP, 7ZIP or TAR compressed archieve
-
Examples:
# If your searching for Google Earth in ZIP format, then you must search for
“site:rapidshare.de inurl:zip google earth” (obviously without the quotes)
# Similarly if your searching for XYZ video, then it should be something like
“site:rapidshare.de nurl:avi|wmv|mpg|nva XYZ”
# มันใช้ไดกับเว็บที่ไว้แชร์ไฟล์ทั่วไปได้ด้วยอ่ะ
# ปัจจัยที่จะค้นหาได้เจอจะ ขึ้นอยู่กับ
1. เว็บ “site:rapidshare.com”
2. ชนิดไฟล์ที่ต้องการ “inurl:pdf”
3. คำที่ได้ค้นหา OZAWA ^^'
Sample :
# จากการทดลองด้วยตัวเองค้นหาเจอที่ rapidshare.com เว็บอื่นก็พบบ้างไม่พบบ้างจะได้เป็น
# อจึ๋ย part เต็มไปหมด ^^'
# แต่อย่าพึ่งดีใจไป พวกไฟล์ zip มักชอบเข้ารหัสไว้ซะงั้น - -' ก็หาอันที่ไม่เข้ารหัสก็แล้วกัน ^^'
# หรือไม่ก็หารหัสผ่านจากไฟล์ใกล้กันลองดู อ่ะนะเรื่องแบบเนี๋ยพยายามดีจังแฮะ ^^''
# เจริญล่ะประเทศเรา ^^''
การทำโหลดบาร์ ให้วิ่งไปเรื่อย ๆ C#
- สร้าง ProgressForm ซึ่งประกอบไปด้วย Lable, ProgressBar
1. Style เป็น marquee
2. MarqueeAnimationSpeed เป็น 100 (ยิ่งค่าน้อยยิ่งวิ่งเร็วขึ้น)
Thread progressThread = new Thread(delegate()
{
ProgressForm progress = new ProgressForm();
progress.ShowDialog();
});
progressThread.Start();
Loop statement................// งานที่ต้องทำนานๆ เช่น query ข้อมูลจากฐานข้อมูลเป็นต้น
progressThread.Abort();
3. บางทีมันจะไม่วิ่งขึ้นอยู่กับ theme ของระบบเช่น ถ้าใช้ Theme default ของระบบมันก็จะวิ่ง
แต่พวก theme คล้าย vista ไมไม่วิ่งก็ไม่เข้าใจเหมือนกัน
4. ส่วนเรื่องไม่แสดง titlebar ให้ทำประมาณเนี๋ย ControlBox = false และ Text = ""
เพิ่มเติม
- การเอา Titlebar ของ Form ออกมีอีกวิธีคือ ที่ FormBorderStyle เลือก None
- ถ้าเราเลือก Style เป็น Marquee Theme ที่จะทำให้โหลดบาร์วิ่งได้ ทำไมมีแค่ Classsic กับ Defualt ของ xp เองหว่า ส่วน theme ที่ลงเพิ่ม marquee ไม่วิ่งซะงั้น
- ถ้า อยากให้ธีมอื่นวิ่ง คงต้องตั้ง Style เป็น Block และ เพิ่ม และ ลดค่าให้ Loadbar เองซะแหละ
อ่านเพิ่มเติ่ม
- http://www.codetoday.net/Default.aspx?g=posts&t=107
- http://www.codeproject.com/KB/cs/ThreadsinC_.aspx
- http://exceed.cpe.ku.ac.th/wiki/How_to_create_your_own_thread
ที่มา: nattster.siamdev.net เดิมเค้าชื่อ siamdev.net อ่ะ
การตั้งค่า Resize able Form C#
Loagin bar form ด้านบนเนี๋ยตั้งค่าดังนี้
- ฟอร์มไม่แสดง Icon ปรับที่ ControlBox เป็น False
- ฟอร์มต้องไม่มี Title ตั้งที่ Text เป็นค่าว่าง
- ที่สำคัญตั้งไม่ให้ resize ฟอร์มได้ด้วยตั้งที่ FormBorderStyle มีค่าเป็น FixedSingle
สรุป ทำ resizeable form
- ปรับแค่เนี๋ย FormBorderStyle มีค่าเป็น FixedSingle อย่างเดียวก็พอ
- ส่วนอันอื่น เป็นการตั้งคุณสมบัติ ถ้าจะทำเหมือนภาพตัวอย่าง loading form อ่ะนะ
Note:
- อีกวิธีที่จะทำให้ไม่แสดง Titlebar ที่ FormBorderStyle เลือก None
Monday, August 25, 2008
การใช้ Wireshark ให้ดูเฉพาะบางโพรโทคอล
- ภาพเนี๋ยจะเห็นว่าถ้าเราไม่ใส่อาไรตรง Filter: มันก็จะแสดงโพรโทคอลที่ดักจับทั้งหมด
- เราก็หาอาไรไปใส่ให้มันแล้วก็สิ้นเรื่องใช่ปะ ^^'
- จากภาพด้านบนถ้าเราต้องการแสดงเฉพาะบางโพรโทคอลให้ กด Expression... ก็จะได้ดังภาพด้านล่าง
- แล้วทำการเลือกโพรโทคอล แล้วก็ Ok
- จากนั้นจะมีข้อความอยู่ใน Filter: ดังภาพด้านล่าง
- ยังไม่เสร็จจากนั้นเอา mouse ไปวางใน text box ของ Filter: เราก็กด Enter อีกทีก็เป็นอันเสร็จเรียบร้อย
- มันก็จะแสดงเฉพาะโพรโทคอลที่เรากรอง
- ถ้าอยากให้แสดงโพรโทคอบอื่นๆ ด้วยก็ใส่ or หรือ and เข้าไปด้วยระหว่างโพรโทคอลก็ Enter ก็ได้
- หรือ not เช่น ถ้าไม่ต้องการแสดง http และ dns ก็ not http and not dns
- เคยใช้ sniff การ Chat ผ่าน MSN ของเพื่อนนะ แต่ภาษาไทยเรามันเป็นตัวเลขอ่ะ อ่านออกแต่ภาษาอังกฤษ
อ่านเพิ่มเติม
- http://www.avrportal.com/?lang=th&page=capture-filter
- http://www.winpcap.org/docs/docs_41b/html/group__language.html
- http://wiki.wireshark.org/DisplayFilters
การตั้งค่าเกมส์ Wormux แบบ manual
# คือพอดี เล่นๆ อยู่ ไม่รู้จะอยากรู้ไปถึงใหนมือไวไปหน่อย ดันไปเปลี่ยน Options มันซะงั้น ^^'
# เปลียน resolution เกมส์ พอเข้าเกมอีกทีมันไม่สามารถปรับคืนได้เลยภาพมันใหญ่เต็มจอทำอาไรก็ไม่ได้ - -'
Solve :
# แก้ไขโดยเข้าไปใน /home/[user]/.wormux/config.xml แก้ไข width, height
# โปรแกรมอื่นก็เหมือนกันใช้วิธีเดียวกันได้โดยเข้าไปใน home ของตัวเองแล้วแสดงไฟล์ที่ซ่อนอยู่โดย view => show hidden files
การ config phpMyAdmin
# การอื่นเราต้องติดตั้ง mysql server ก่อนนะครับ sudo apt-get install mysql-server
# เราไปดาวน์โหลด phpmyadmin มาแล้วแตกไฟล์พอรันมัน script error ซะงั้น แก้ไขโดย
# /home/jui/public_html/phpMyAdmin/libraries/config.default.php
# หาบรรทัดนี้เลยค่าเริ่มต้นจะเป็นประมาณเนี๋ย
$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user
$cfg['Servers'][$i]['password'] = ''; // MySQL password (only needed
// with 'config' auth_type)
$cfg['Servers'][$i]['nopassword'] = FALSE; // Whether to try to connect without password
$cfg['Servers'][$i]['only_db'] = ''; // If set to a db-name, only
# ซึ่งเราไม่ต้องใส่ password ($cfg['Servers'][$i]['password'] = ''; ) ของ mysql เดี๋ยวใครมาเปิดไฟล์เนี๋ยก็เห็นรหัสผ่านหมดอ่ะดิ ^^'
# เราแค่เปลี่ยน
$cfg['Servers'][$i]['auth_type'] = 'config';
# ให้เป็นแบบเนี่ย
$cfg['Servers'][$i]['auth_type'] = 'http';
# หรือแบบที่เหลือแล้วแต่ชอบ Save รันใหม่ก็จะมีช่องให้ใส่รหัสผ่านแหละ
เมื่อเราสั่ง apt-get แล้วมีปัญหา
sudo aptitude remove webminE: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?Reading package lists... DoneBuilding dependency tree
Reading state information... DoneReading extended state information
Initializing package states... DoneBuilding tag database... Done
E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
- สรุปมันคือ มี โพรเซส เช่น เราเปิด synaptic manager ค้างไว้อาไรประมาณเนี๋ย
- มันเลย atitude หรือ apt-get ไม่ได้
sudo su
sudo rm /var/lib/apt/lists/lock
sudo apt-get update
คำสั่ง ดู Process ใน linux
# เราสามารถรู้ได้ว่า apache2 รันอยู่หรือมี process id อะไรเราดูได้ใน
/var/run/apache2.pid
# การใช้ netstat หาโพรเซสที่เปิดพอร์ตนั้นๆ อยู่
$ netstat -an | grep "0.0.0.0:80"
$ netstat -tnlp | grep "0.0.0.0:80"
# การทำลาย process
$ killall -9 322 ซึ่ง 322 คือ pid (process id)
# การดูโพรเซส
$ ps -aux
Can not start apache port 80, 443 in use
# เมื่อเราสั่งคำสั่ง
$ sudo /etc/init.d/apache2 start
# ผลมันเป็นงี้
* Starting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(98)Address already in use: make_sock: could not bind to address [::]:80
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
# หรือ $ sudo /etc/init.d/apache2 start
* Starting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(98)Address already in use: make_sock: could not bind to address [::]:443
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:443
no listening sockets available, shutting down
Unable to open logs
# หรือ $ sudo /etc/init.d/apache2 restart
* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (no pid file) not running
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
# จากการสังเกตและการทดลองหลายๆ แบบ
- มีบางโพรเซส ใช้พอร์ต 80 อยู่
- ซึ่งลองคิดไปคิดมาเราลง ebox มันคงไม่กินเส้นกันมั้งซะงั้น
- แล้วจะทำไงหาโพรเซสก็ไม่เจอเซงเลยแล้วก็ลองทำหลายวิธีเจอวิธีเนี๋ยใช้ได้เลยแฮะ
- sudo /etc/init.d/ebox stop และทำการถอนมันซะ sudo aptitude remove ebox
- แล้วถอน apache2 ด้วยครับ แล้วค่อยติดตั้ง apache2 ใหม่
- แล้วจึงทำการสั่งให้ apache ทำงาน sudo /etc/init.d/apache2 start
- อย่าพึ่งดีใจไมพอเปิดเครื่องใหม่มัน apache2 start ไม่ได้ซะงั้น
- คิดว่าน่าจะมี script ebox ค้างอยู่ตอน boot ขึ้นมา
- พอรัน webmin ได้เข้าไปดูใน System => Scheduled Cron Jobs
- เจอต้นตอเลยครับ ว่าถามไมแก้แหละ พอรันมาใหม่มันก็เหมือนเดิม มันเป็นยังงี้เอง
/etc/cron.hourly/ebox
/etc/cron.hourly/99purgeEBoxLogs
- ลบ job ebox ออกมันก็ยังเหมือนเดิมเลยแฮะ
- ปัญหาใหม่มันไม่ได้เป็นปัญหากับ appserver ตัวอื่นแหละคงมีปัญหาที่ตัวเอง
- ถ้า apache2 มีการทำ ssl ให้เราทำการ comment config ที่เราได้ทำไว้ในไฟล์
site/available/default และ port.conf
- ดูๆไปมันค่อนข้างมีปัญหาตอนบูตระบบขึ้นมาใหม่เพราะ การจะรัน apache ที่ทำ ssl ต้องมีการใส่ key ฉนั้นตอนบูตจะไปใส่ตอนใหน จึงทำให้มันค่อนข้างจะมีปัญหา
- ถ้าเราจะใช้ ssl เราต้องคอนฟิกหรือปิดคอมเม้น ssl ที่เราคอมเม้นไว้ใน 2 ไฟล์แล้วจึงค่อย restart apache2 ใหม่แล้วจะได้ใส่ key
- แต่ถ้าเราค้าง ssl ไว้ตอนบูตระบบมา https จะใช้ไม่ได้
# Tips
- firefox เวลาจะทดสอบควรลบ cache มันออกก่อนมันชอบหลอกเราซะจริงๆ พวก browser เนี๋ย
- ค่อนข้างมีปัญหาถ้าใช้ https กับเว็บทั่วไป เพราะตอน boot มันจะรันไม่ได้เพราะมันต้องใส่ password ssl
- หรือไม่ก็มีปัญหากับ Scheduled Cron Jobs ที่มันข้างอยู่ของ ebox ซึ่งสามารถดูได้ใน webmin ว่า jobs ที่ตอนบูตมีไรบ้างตามลบเลย
- สรุป คอมเมน ssl ไว้ดีกว่า แต่สามารถใช้ webmin ได้เหมือนเดิมแต่ต้องสร้าง certificate ไว้ให้พร้อมก็พอไม่ต้อง config ssl ใน apache เลย
- สามารถสร้าง cert ได้ตามวิธีใน yelp => Advanced Topics => Install Server Applications แต่ไม่ต้อง config apache2.conf ถ้าไม่ต้องการใช้ https แต่ใช้ webmin https โดยไม่มีปัญหาเพราะมัน คอนฟิกของมันเองไม่เกี่ยวกับเว็บ
- การที่เราจะทำการเพิ่มการคอนฟิก เราควรเพิ่มคอนฟิกใน httpd.conf จะดีกว่าที่จะไปเพิ่มใน apache2.conf
- ถ้าเราจะเพิ่มใน apache2.conf ควรเพิ่มที่ท้ายไฟล์
เช่น ถ้าเราไปเพิ่มประโยคเนี๋ยกลางๆ ไฟล์ Options -Indexes อาจจะใช้ไม่ได้ (Options -Indexes คือ ไม่แสดงไฟล์แบบ Browser...)
# UserDir is now a module by jui
UserDir public_html
<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit
Options -Indexes SymLinksIfOwnerMatch IncludesNoExec
#Options -Indexes
</Directory>
Friday, August 22, 2008
20 วิธีตั้งค่า Apache ให้ปลอดภัย
20 way Secure Apache Configuration.
Here are 20 things you can do to make your apache configuration more secure.
# First, make sure you've installed latest security patches
There is no sense in putting locks on the windows, if your door is wide open. As such, if you're not patched up there isn't really much point in continuing any longer on this list. Go ahead and bookmark this page so you can come back later, and patch your server.
# Hide the Apache Version number, and other sensitive information.
By default many Apache installations tell the world what version of Apache you're running, what operating system/version you're running, and even what Apache Modules are installed on the server. Attackers can use this information to their advantage when performing an attack. It also sends the message that you have left most defaults alone.
There are two directives that you need to add, or edit in your httpd.conf
file:
ServerSignature Off
ServerTokens Prod
The ServerSignature
appears on the bottom of pages generated by apache such as 404 pages, directory listings, etc.
The ServerTokens
directive is used to determine what Apache will put in the Server
HTTP response header. By setting it to Prod
it sets the HTTP response header as follows:
Server: Apache
If you're super paranoid you could change this to something other than "Apache" by editing the source code, or by using mod_security (see below).
# Make sure apache is running under its own user account and group
Several apache installations have it run as the user nobody
. So suppose both Apache, and your mail server were running as nobody
an attack through Apache may allow the mail server to also be compromised, and vise versa.
User apache
Group apache
# Ensure that files outside the web root are not served
We don't want apache to be able to access any files out side of its web root. So assuming all your web sites are placed under one directory (we will call this /web
), you would set it up as follows:
<Directory />* Note that because we set
Order Deny,Allow
Deny from all
Options None
AllowOverride None
</Directory>
<Directory /web>
Order Allow,Deny
Allow from all
</Directory>
Options None
and AllowOverride None
this will turn off all options and overrides for the server. You now have to add them explicitly for each directory that requires an Option or Override.# Turn off directory browsing
You can do this with an Options
directive inside a Directory
tag. Set Options
to either None
or -Indexes
Options -Indexes
# Turn off server side includes
This is also done with the Options
directive inside a Directory
tag. Set Options
to either None
or -Includes
Options -Includes
# Turn off CGI execution
If you're not using CGI turn it off with the Options
directive inside a Directory
tag. Set Options
to either None
or -ExecCGI
Options -ExecCGI
# Don't allow apache to follow symbolic links
This can again can be done using the Options
directive inside a Directory
tag. Set Options
to either None
or -FollowSymLinks
Options -FollowSymLinks
# Turning off multiple Options
If you want to turn off all Options
simply use:
Options None
If you only want to turn off some separate each option with a space in your Options
directive:
Options -ExecCGI -FollowSymLinks -Indexes
# Turn off support for .htaccess files
This is done in a Directory
tag but with the AllowOverride
directive. Set it to None
.
AllowOverride None
If you require Overrides ensure that they cannot be downloaded, and/or change the name to something other than .htaccess
. For example we could change it to .httpdoverride
, and block all files that start with .ht
from being downloaded as follows:
AccessFileName .httpdoverride
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
# Run mod_security
mod_security is a super handy Apache module written by Ivan Ristic, the author of Apache Security from O'Reilly press.
You can do the following with mod_security:
- Simple filtering
- Regular Expression based filtering
- URL Encoding Validation
- Unicode Encoding Validation
- Auditing
- Null byte attack prevention
- Upload memory limits
- Server identity masking
- Built in Chroot support
- And more
# Disable any unnecessary modules
Apache typically comes with several modules installed. Go through the apache module documentation and learn what each module you have enabled actually does. Many times you will find that you don't need to have the said module enabled.
Look for lines in your httpd.conf
that contain LoadModule
. To disable the module you can typically just add a #
at the beginning of the line. To search for modules run:
grep LoadModule httpd.conf
Here are some modules that are typically enabled but often not needed: mod_imap
, mod_include
, mod_info
, mod_userdir
, mod_status
, mod_cgi
, mod_autoindex
.
# Make sure only root has read access to apache's config and binaries
This can be done assuming your apache installation is located at/usr/local/apache
as follows:chown -R root:root /usr/local/apache
chmod -R o-rwx /usr/local/apache
# Lower the Timeout value
By default the Timeout
directive is set to 300 seconds. You can decrease help mitigate the potential effects of a denial of service attack.
Timeout 45
# Limiting large requests
Apache has several directives that allow you to limit the size of a request, this can also be useful for mitigating the effects of a denial of service attack.
A good place to start is the LimitRequestBody
directive. This directive is set to unlimited by default. If you are allowing file uploads of no larger than 1MB, you could set this setting to something like:
LimitRequestBody 1048576
If you're not allowing file uploads you can set it even smaller.
Some other directives to look at are LimitRequestFields
, LimitRequestFieldSize
and LimitRequestLine
. These directives are set to a reasonable defaults for most servers, but you may want to tweak them to best fit your needs. See the documentation for more info.
# Limiting the size of an XML Body
If you're running mod_dav
(typically used with subversion) then you may want to limit the max size of an XML request body. The LimitXMLRequestBody
directive is only available on Apache 2, and its default value is 1 million bytes (approx 1mb). Many tutorials will have you set this value to 0 which means files of any size may be uploaded, which may be necessary if you're using WebDAV to upload large files, but if you're simply using it for source control, you can probably get away with setting an upper bound, such as 10mb:
LimitXMLRequestBody 10485760
# Limiting Concurrency
Apache has several configuration settings that can be used to adjust handling of concurrent requests. The MaxClients
is the maximum number of child processes that will be created to serve requests. This may be set too high if your server doesn't have enough memory to handle a large number of concurrent requests.
Other directives such as MaxSpareServers
, MaxRequestsPerChild
, and on Apache2 ThreadsPerChild
, ServerLimit
, and MaxSpareThreads
are important to adjust to match your operating system, and hardware.
# Restricting Access by IP
If you have a resource that should only by accessed by a certain network, or IP address you can enforce this in your apache configuration. For instance if you want to restrict access to your intranet to allow only the 176.16 network:
Order Deny,Allow
Deny from all
Allow from 176.16.0.0/16
Or by IP:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
# Adjusting KeepAlive settings
According to the Apache documentation using HTTP Keep Alive's can improve client performance by as much as 50%, so be careful before changing these settings, you will be trading performance for a slight denial of service mitigation.
KeepAlive's are turned on by default and you should leave them on, but you may consider changing the MaxKeepAliveRequests
which defaults to 100
, and the KeepAliveTimeout
which defaults to 15
. Analyze your log files to determine the appropriate values.
# Run Apache in a Chroot environment
chroot
allows you to run a program in its own isolated jail. This prevents a break in on one service from being able to effect anything else on the server.
It can be fairly tricky to set this up using chroot
due to library dependencies. I mentioned above that the mod_security
module has built in chroot support. It makes the process as simple as adding a mod_security
directive to your configuration:
SecChrootDir /chroot/apache
There are however some caveats however, so check out the docs for more info.
# Acknowledgments
I have found the book Apache Security to be a highly valuable resource for securing an apache web server. Some of the suggestions listed above were inspired by this book.
# Suggestions
Please post any suggestions, caveats, or corrections in the comments and I will update the post if necessary.
digg this!
ที่มา : petefreitag.com
การแสดงตัวอักษร ASCII (แอสกี) ใน html
& เป็น amp;
< เป็น lt;
> เป็น gt;
* หมายเหตุ เครื่องหมาย # ไม่เกี่ยวแค่ใช้แสดงผลเท่านั้น ,เซมิโคลอนใช้สำหรับบอกว่าจบแอสกีแหละไม่ใช้ก็ได้
# Tag ที่ใช้บ่อยในการจัดรูปแบบให้เป็นแบบที่เราได้วรรคไว้โดย <pre></pre>
Thursday, August 21, 2008
Emulator playstation 2 with PCSX2
- รูปเนี๋ยคือ ติดตั้ง และ ตั้งค่าเสร็จแหละ
- รูปเนี๋ยเป็นการเปิดโปรแกรมครั้งแรกมันจะให้เราทำการคอนฟิกก่อน
- ภาพตอนทำการติดตั้งโปรแกรม .deb จะนานสักหน่อยต้องรอ
- นี่เลยที่ดาวน์โหลด file.deb PCSX2 http://www.pcsx2.net
- หรือ จะทำการคอมไพล์เองล่ะก็ต้องเว็บเนี๋ย link 1 link 2 link 3
- หรือ อีกตัวอันเนี๋ยเลยมีสำหรับ linux ด้วยโหลดปุ๊ปเปิดได้ปั๊ป http://www.epsxe.com/
- มีการตั้งค่าหาไฟล์ bios
- ยังไม่เคยลองโปรแกรมเลยแฮะ ว่าจิงๆ แล้วมันจาเล่นได้ป่าวเนี๋ย ^^'
อื่นๆ
Wednesday, August 20, 2008
Create VCD, DVD on linux with DeVeDe
SemaphoreFullException ใน C#
# มันเกิดจาก bug ของ driver mysql connector for dotnet version ต่ำกว่า 5.2 คือตอนเนี๋ยใช้ 5.1.6 อยู่
# มันจะเกิดปัญหาเมื่อมีการสร้าง connection mysql มากกว่า 1 ตัว
# ขึ้น exception เมื่อทำการปิด application นั้น
# แก้ไขโดยการเปลี่ยน version mysql connector ใหม่ ใช้ 5.2 ขึ้นไป
# ทำการ rebuild โปรเจคใหม่
# ปัญหาเนี๋ยก็ไม่มีแหละ
Saturday, August 16, 2008
How to Install XMMS in Ubuntu 8.04++
2. สั่ง make แหละมันก็ขึ้นประมาณเนี๋ย
make: *** No targets specified and no makefile found. Stop.
3. ที่เป็นแบบเนี๋ยเพราะว่า ไลบรารี่ สำหรับ คอมไฟล์ไม่มีต้องติดตั้งมันก่อน
sudo apt-get install autotools-dev automake1.9 libtool gettext \
libasound2-dev libaudiofile-dev libgl1-mesa-dev libglib1.2-dev \
libgtk1.2-dev libesd0-dev libice-dev libmikmod2-dev libogg-dev \
libsm-dev libvorbis-dev libxxf86vm-dev libxml-dev libssl-dev \
build-essential make
4. ติดตั้งโดย
./configure แบบเนี๋ยจะเรียก xmms ไม่ได้ต้องแบบเนี๋ย ./configure --prefix=/usr
Sample :
./configure --prefix=/usr
make
sudo make install
# Suggestions
1. ดาวน์โหลดโปรแกรมก่อน wget http://xmms.org/files/1.2.x/xmms-1.2.11.tar.gz
2. แตกไฟล์ tar zxf xmms-1.2.11.tar.gz
3. เข้าไปในโฟเด้อที่แตกออกมา
$ cd xmms-1.2.11/
4. คอมไฟล์
$ sudo ./configure --prefix=/usr
make
5. ทำการติดตั้ง
$ sudo make install
# หรือจะให้ง่ายกว่านั้นไปดาวน์โหลด .deb มาลงเลยเพราะมันคอมไฟล์มาให้แหละ
# แต่ต้องลง libary ที่เกี่ยวข้องให้ครบก่อนแค่นั้นเองหาได้จาก google
# เว็บที่มาเค้าแนะนำโปรแกรมอีกตัวที่ใช้เล่น ogg, mp3
$ sudo apt-get install audacious
$ sudo apt-get install audacious-plugins-extra
# แต่ใช้แหละมันไม่แจ่มเท่า xmms นะ
# นิดหนึ่งคือจะแนะนำฟอนท์ไทยใน xmms บน Intrepid-Ibex ใช้ waree จะน่าใช้ที่สุดสำหรับภาษาไทยนะ แต่อันอื่นก็พอใช้นะ ความเห็นส่วนตัวอ่ะนะ
# อีกนิดนะ ไปโหลดตัว .deb ของลิ้งที่มา อันเนั้นเลยก็ง่ายดี
xmms_1.2.10+20070601-1build2_i386.deb
ที่มา : graphics.sci.ubu.ac.th
Wednesday, August 13, 2008
Wireless driver in Ubuntu 8.04
#OS -> Linux ubuntu 8.04.1
# Ubuntu 8.04.1 เนี๋ยตอนติดตั้งแล้วลองทดสอบอุปกรณ์ต่างๆ ที่มี ก็ได้พบว่าเค้ามี driver wireless ให้ด้วย
ซึ่ง 8.04 ไม่มีให้ compaq ต้องใช้ของ dell แทน
# จะพบ wireless เป็น eth1 ซื่งถ้าเราใช้ driver dell จะเป็น wlan0
# ปรากฏว่า สามารถมองเห็น AP (access point) ของผู้ให้บริการ WIFI แต่ไม่สามารถเชื่อมต่อกับเครือข่ายได้ ไม่รู้ว่าปัญหาเกิดจากอะไร - -'
# ซึ่งไม่รู้จะทำอย่างไร เลยใช้สูตรเดิมของ 8.04 คือ ใช้ driver ของ dell ซะเลยปรากฏว่าก็ใช้ได้
# แต่ต้องไป disable driver ที่มันลงมาให้อยู่แล้วก่อนโดยเข้าไปที่
System => Admistration => Hardware Drivers => Disable wireless driver ซะเลย
# ทำการ reboot เครื่องใหม่
# ลองเช็ค wireless โดยใช้ ifconfig wireless จะเป็น wlan0 คือ ใช้ได้แหละ
Monday, August 11, 2008
การเปลี่ยน Screen resolution linux แบบ manual
ที่มา : Original link
# Reference : on Ubuntu 8.04.1
- screen resolution desktop จาก 1280x800 ปรับเป็น 1024x768
- แต่ไม Login resolution ไม่ปรับตามซะงั้น
- ที่ ubuntu forums เค้าบอกให้ทำประมาณเนี๋ย เพิ่ม subsection dispaly
- ที่ไฟล์ /etc/X11/xorg.conf
- เพิ่ม subsection display ภายใต้ section screen
Section "Screen"
Identifier "Default Screen"
Device "NVIDIA Corporation NV43 [GeForce 6600 GT]"
Monitor "17P3"
DefaultDepth 24
[...]
SubSection "Display"
Depth 24
Modes "1024x768" "1280x960" "640x480" "800x600"
EndSubSection
EndSection
ตั้งค่าให้ login ในสถานะ root ได้
# ปกติ Ubuntu แบบ Desktop เข้าจะตั้งค่าเริ่มต้น ไม่ให้เรา login ในสถานะ root ได้
# แต่เราแก้คืนได้โดย
# เรา login เข้าระบบด้วย user ของเราเองก่อนแล้ว
# เข้าไปที่ System => Administration => Login Window => Security
# มองไปด้านล่าง Minimal UID เลือก Allow local system administrator login
# Enable Automatic Login ถ้าติ๊กเลือกและใส่ user ให้มัน เมื่อเราทำการ reboot เข้า ubuntu อีกครั้งมันจะ Login เข้าระบบโดยไม่ทราบ user และ password เลย
# ส่วน Enable Timed Login ถ้าเราเลือกและใส่ user ให้มัน เมื่อเราทำการ Log out แล้วในเวลาที่ตั้งไว้ถ้าไม่ทำอาไรมันจะ login เข้า user ที่เราใส่ให้มันอัตโนมัติ
# ความคิดส่วนตัวนะ ไม่ควรอนุญาตให้ login เป็น root นะในเมื่อเราสามารถใช้ sudo แทนได้อยู่แล้วนิหน่า
Friday, August 8, 2008
สแกนพอร์ตด้วย Port scan ของ linux เค้า
ตรวจหา ARP Spoof packet ด้วย ARPWatch
# คำสั่งสำหรับการติดตั้ง ARPWatch
$ sudo apt-get install arpwatch
# สั่งให้โปรแกรมทำงานด้วยคำสั่ง
$ sudo arpwatch -d -i eth0
# ถ้าเครื่องเราปกติ ไม่มีใครเล่น ARPSpoof กับเครื่องเราผลจะเป็นประมาณเนี๋ย
From: arpwatch (Arpwatch [localhost-name])
To: root
Subject: new station eth0
hostname:
ip address: 192.168.1.1 (gateway)
interface: eth0
ethernet address: 0:2:cf:93:20:a5 (real mac gateway)
ethernet vendor:
timestamp: Friday, August 8, 2008 13:56:06 +0700
# แต่แบบนี้เป็นเหตุการที่ไม่ปกติอาจมีคนโจมตีเครื่องเราด้วย arp poisoning คือ IP หนึ่งๆ ค่า MAC จะมีการเปลี่ยนแปลง ค่อนข้างบ่อยๆ ยังงี้มันน่าสงสัยมั้ยล่ะเนี๋ย
From: arpwatch (Arpwatch [localhost-name])
To: root
Subject: changed ethernet address eth0
hostname:
ip address: [gateway]
interface: eth0
ethernet address: [61:d:79:26:50:3] (fake mac gateway)
ethernet vendor:
old ethernet address: [0:2:cf:93:20:a5] (real mac gateway)
old ethernet vendor: Zygate Communications, Inc.
timestamp: Friday, August 8, 2008 14:03:48 +0700
previous timestamp: Friday, August 8, 2008 14:03:42 +0700
delta: 6 seconds
# ครั้งต่อมาเปลี่ยนอีกแหละ = ='
From: arpwatch (Arpwatch [localhost-name])
To: root
Subject: changed ethernet address eth0
hostname:
ip address: [gateway]
interface: eth0
ethernet address: [62:7d:4:76:17:74] (fake mac gateway)
ethernet vendor:
old ethernet address: [61:d:79:26:50:3]
old ethernet vendor:
timestamp: Friday, August 8, 2008 14:04:12 +0700
previous timestamp: Friday, August 8, 2008 14:04:03 +0700
delta: 9 seconds
arpwatch: reused old ethernet address 192.168.1.1 0:2:cf:93:20:a5 (62:7d:4:76:17:74) eth0
# ถ้าเราโดนโจมตีแบบ Port stealing ผลของ arpwatch จะเป็นประมาณเนี๋ย
arpwatch: bogon 0.0.0.0 0:1e:8c:14:3c:cd (0:0:0:0:0:0) eth0
arpwatch: bogon 0.0.0.0 0:1c:f0:d5:91:a4 (0:0:0:0:0:0) eth0
arpwatch: bogon 0.0.0.0 0:1c:25:55:a2:a5 (0:0:0:0:0:0) eth0
arpwatch: bogon 0.0.0.0 0:1b:11:c:8:3c (0:0:0:0:0:0) eth0
arpwatch: bogon 0.0.0.0 0:2:cf:93:20:a5 (0:0:0:0:0:0) eth0
Thursday, August 7, 2008
ARPSpoof with Ettercap
1. install none graphic
$ sudo apt-get install ettercap
# run by comand ettercap
2. or graphic have user interface
sudo apt-get install ettercap-gtk
# run by command ettercap --gtk or go to "Application" => "Internet" => "ettercap"
3. use program ettercap graphic step by step
# At menu "Sniff" => "Unified sniffing..." Shift+U => Select interface for sniffer
# Then menu in menu bar changed at menu "Hosts" => "Scan for hosts"
# At menu "Host" => "Host List" for show all ip in your subnet
# and at menu "Host List" add victim ip (mitm between 2 machine or more)
- select gateway ip and click "Add to Target 1"
- select victim ip for sniffer and click "Add to Target 2"
# At "Targets" => "Current Targets" to show victim ip for sniffer
Example :
-(target 1) ip 192.168.1.1 , mac aa:aa:aa:aa:aa:aa (gateway)
-(target 2) ip 192.168.1.38 , mac xx:xx:xx:xx:xx:xx (victim)
-(sniffer) ip 192.168.1.55 , mac zz:zz:zz:zz:zz:zz (sniffer)
# At menu Mitm => Arp poisoning... => Optional parameters
## Option 1 "Sniff remote connections." ##
# If you check "Sniff remote connections." and ok for prepare sniffing
(Result Check this for sniffing packet victims to gateway and gateway to victims)
on 192.168.1.1 if use command > arp -a (target 1)
Internet address : 192.168.1.38
Physical address : zz:zz:zz:zz:zz:zz (fake mac, sniffer mac)
Type : dynamic
on 192.168.1.38 if use command > arp -a (target 2)
Internet address : 192.168.1.1
Physical address : zz:zz:zz:zz:zz:zz (fake mac, sniffer mac)
Type : dynamic
192.168.1.38 can not use internet because fake mac gateway ^^'
- u(sniffer) can capture packet send from victim(target 2) to gateway(target 1)
- and can capture packet send from gateway to victim
- packet from gateway can not go to victim
- packet from victim can not go to gateway
- because packet from victim and gateway only to sniffer
- and sniffer not forward to victim or gateway
- if sniffer want forward to victim or gateway must "start sniffer"
- so victim can not use internet ^^'
### Start sniffer
# At menu "Start" if u(sniffer) click "Start" => "Start sniffing"
- packet from victim to gateway forward by sniffer
- packet from gateway to victim forward by sniffer
- victim can use internet and can ping gateway and gateway can ping victim by pass sniffer in middle
- if u(sniffer) want to stop arpspoof at "Mitm" => "Stop mitm attack(s)
- this option can check (befor sniffer run arpspoof) by victim use command arp -a for check real mac gateway
# At menu Mitm => Arp poisoning... => Optional parameters
## Option 2 "Only poison one-way." ##
# If you check "Only poison one-way." and ok
(Result check this for agitate)
(Agitate by send fake mac(victim) on gateway but real mac(gateway) on victims)
on 192.168.1.1 if use command > arp -a (target 1)
Internet address : 192.168.1.38
Physical address : zz:zz:zz:zz:zz:zz (fake mac, sniffer mac)
Type : dynamic
on 192.168.1.38 if use command > arp -a (target 2)
Internet address : 192.168.1.1
Physical address : aa:aa:aa:aa:aa:aa (real gateway mac)
Type : dynamic
- u(sniffer) can capture packet send from gateway(target 1) to victim(target 2)
- because on gateway 192.168.1.38 mac(fake mac sniffer) ^^'
- but can not capture packet send from victim to gateway
- because on victim 192.168.1.1 mac(real mac gateway)
- so Packet from gateway can not go to victim (to sniffer)
- but packet from victim can go to gateway (gateway can't reply)
- and so victim can not use internet because gateway reply incorrect ^^'
# Result
1. Change to use fake mac on victim and gateway
- if u want to change mac gateway on vitim and change mac victim on gateway
- must add gateway to target 1 and victim target 2 and use ## Option 1
2. Change to use fake mac victim on gateway but use real mac gateway on victim
- If u want only to change mac victim on gateway and on victim use real mac gateway
- must add gateway to target 1 and victim target 2 and use ## Option 2
3. Change to use fake mac gateway on victim but use real mac victim on gateway
- If u want only to change mac gateway on victim and on gateway use real mac victim
- must add gateway to target 2 and victim target 1 and use ## Option 2
4. Start sniffing for capture packet from them
- use result 1
- and must click "Start" => "Start sniffing"
5. ARP static should setting on gateway and client ^^' to ok
- ettercap on windows
- download
- ettercap web
Ref : wikipedia.org
Tuesday, August 5, 2008
ป้องกัน ARPSpoof ด้วยการทำ ARP Static
Enviroment : Ubuntu 8.04 , XP
1. การทำ static arp คือ การทำ static mac ของ gateway นั่นเอง (ถ้าเราตั้งค่าที่ client)
- > arp -s [IP-Gateway] [MAC-Gateway]
- # arp -s [IP:Gateway] [MAC:Gateway]
Example
- > arp -s 192.168.1.254 00-1A-2E-EE-AA-10
- # arp -s 192.168.1.254 00:1A:2E:EE:AA:10
Note
- เมื่อทำสำหรับ เมื่อเราสั่ง arp -a ใน windows ก็จะมีคำว่า static และ linux(Ubuntu) จะมีคำว่า PERM จากผลลัพธ์ของคำสั่ง arp -a ถ้าไม่มีแสดงว่าทำไม่สำเร็จ
- การยกเลิกก็ ตัวอย่าง # arp -d 192.168.1.2
- คำอะไรไม่ออกก็ วินโดวส์พิมพ์ arp /? ในลินุกซ์ก็ $ man arp
- ถ้าเราไม่ต้องการเสียเวลามันนั่งพิมพ์ คำสั่งทุกครั้งที่บูตระบบใหม่
- windows ให้เราสร้างไฟล์ .bat แล้วพิมพ์ คำสั่งสำหรับทำ arp static ใส่ แล้วนำไปวางไว้
- C:\Documents and Settings\[User]\Start Menu\Programs\Startup
- หรือ จะเพิ่มเข้าไปใน task schedule กำหนดให้ทำการเมื่อ บูตระบบใหม่
- ใน linux ก็นำคำสั่งสำหรับ linux ไปเพิ่มใน /etc/rc.local ซึ่งเราต้องวางคำสั่งของเราก่อนบรรทัดที่มีคำว่า exit นะครับพี่น้อง
- /etc/init.d/rc.local อันนี้คิดว่าน่าจะใช่เลยสำหรับ Ubuntu 8.04
- เอางี้ดีกว่าใน ubuntu ถ้าเราอยากจะสั่งคำสั่ง อัตโนมัติ ตอนบูตระบบใหม่ เห็นเค้าว่าให้เราสร้าง script คำสั่ง แล้วนำไปวางไว้ที่ /etc/init.d อ่ะครับ
- การสร้าง script คำสั่งสำหรับรัน ตอนบูตระบบ Ubuntu
- สรุป จะให้ปลอดภัยที่สุด ต้องทำทั้ง client และ gateway อ่ะ
Monday, August 4, 2008
ตัวอย่าง Fake Certificate
Sunday, August 3, 2008
Enable service เกี่ยวกับ wireless
# พยายามกด Resfresh ตั้งหลายที มันก็ยังขึ้นข้อความเดิม ^^'
# ดันทุรังอยู่ตั้งนาน ไม่มีอาไรต่างจากเดิมต้องหาข้อมูลก็ได้พบว่า อาจมี service บางตัว disable อยู่
# ถ้าเราไม่สามารถใช้งาน ไวเลสได้แล้วขึ้นประมาณด้านบนแก้ไขโดย enable service ด้านล่าง
Saturday, August 2, 2008
CD & DVD Burner in linux
# ในลินุกซ์โอเอสมีหลายโปรแกรมอ่ะ แต่ ubuntu 8.04 ที่ติดตั้งมาให้พร้อมคือ Brasero
sudo apt-get install brasero
# หรือ ง่ายๆ ก็ Application -> Add/Remove ลงเลย
===============================
K3B
# เชียร์ K3B มากกว่า brasero และ burner ตัวอื่นๆ นะ
# ถึงจา Gnome แต่ก็ชอบ K3B ไม่ยากเกินไป
# รู้สึกว่า k3b จะสร้าง video cd หรือ dvd ได้ด้วยนะ ไม่แน่ใจ แต่เห็น new project มีแบบนี้ด้วย
# ส่วนเรื่อง multisession ไม่แน่ใจว่าทำได้ปะ เห็นก็เห็นแวบๆ นะ
sudo apt-get install k3b
Friday, August 1, 2008
Record your desktop on linux
Popular Posts
-
Font เลือกเป็น Wingdings 2 เครื่องหมายถูก Shift + P เครื่องหมายผิด Shift + O ซึ่งเราสามารถใช้ Font Wingdings 2 ใน OpenOffice เพื่อเพิ่มเครื...
-
คือเครื่องเสียงในบ้าน เป็นแบบมีรู Microphone 3 รูและ AUX (เสียงเข้าเครื่องเสียง) 2 ชุด มีไมค์ 1 ตัวและ AUX 1 ชุดเสียบสาย ปัญหาคือ พอเปิด ไม...
-
ขั้นแรกต้องตั้งค่าซองก่อนโดยไปที่ menu tab Start Mail Merge => Envelopes เลือก template size ได้ตามต้องการ หรือจะกำหนดขนาดเองเลยโดยเลือก ...
-
http://football.sodazaa.com/
-
ที่มา : http://www.pcthailand.com/th/index.php?option=com_content&view=article&id=64:-regedit-&catid=40:2009-07-02-10-59-36...
-
ปัญหาคือ เราเข้าเว็บไซต์ อันนี้แล้ว ปัญหาภาษาไทย มันแสดงเป็นต่างดาวซะงั้น Solved Options => Under the Hood => Web Content ค...
-
คือ จะใช้ printer ที่เค้าแชร์ไว้ แต่มันดันถาม User, password ซะงั้น ทั้งที่ Enable Guest แล้วนะ ไม่รู้ Guest เครื่องนั้นมีใครไปตั้งรหัสให้หร...
-
This summary is not available. Please click here to view the post.
-
อ้างอิง - http://www.sysnetcenter.com/board/index.php?topic=2028.0 <== อ่านเข้าใจง่าย ประเด็นมีอยู่ว่า เพื่อนที่ทำงานแนะนำ AP แบบ ใช้สำ...
-
nvarchar กับ varchar จะต่างกันตรง nvarchar จะเก็บตัวอักษรที่ใช้ code เป็น unicode ได้ ซึ่ง 1 ตัวอักษรจะใช้แค่ 2 byte ในการเก็บส่วน varchar...