Category: Operating System

  • update fail2ban after DNS query attack

    หลังจากทิ้งไว้นานกว่า 1 ปี ในที่สุดการโจมตีในลักษณะของการ DOS attack สำหรับ DNS Server ก็กลับมาอีกรอบ

    วันนี้ (2013-12-11) คุณ สงกรานต์ก็ post ข้อความในกลุ่ม PSU Sysadmin บน facebook ว่า DNS Server หลายๆเครื่องที่อยู่ภายในเครือข่ายของ PSU มี traffic เกิดขึ้นมากผิดปกติ และมากกว่าตัว DNS Server หลักของมหาวิทยาลัยเอง {ns1,ns2}.psu.ac.th ซึ่งตัว DNS Server ทั้งสองโดยทั่วไปแล้ว เนื่องจากเป็นเซิร์ฟเวอร์ที่ให้บริการเป็นหลักให้กับเครื่องคอมพิวเตอร์ทั้งหมดภายในมหาวิทยาลัย ก็ควรที่จะมี traffic สูงกว่า DNS Server ตัวอื่นๆ แต่เมื่อเครื่อง DNS Server อื่นๆมี traffic สูงกว่า ก็พอที่จะบอกได้คร่าวๆล่ะว่า มีเหตุการณ์ผิดปกติเกิดขึ้นแน่ๆ

    ในจำนวน server เหล่านั้น มีเครื่องเซิร์ฟเวอร์ที่ผมดูแลอยู่ด้วย เป็นเครื่องที่ใช้สำหรับสอน นศ. ในรายวิชา Linux Server Admin. ซึ่งหัวข้อหนึ่งที่นศ.จะต้องเรียน ก็คือการติดตั้งและให้บริการ Name Service ซึ่งเครื่องเซิร์เวอร์เครื่องนี้ นอกจากจะใช้เป็นตัวอย่างในการ setup แล้ว ยังทำหน้าที่เป็น 2nd DNS ให้กับ domain ของ นศ. ทั้งหมดด้วย (นศ. มี domain ของตัวเองคนละ 1 domain)

    logfile ที่เกิดจากการ query มีขนาดมากกว่า 2GB จากการเก็บ log ของการ query ในช่วงเวลาประมาณ 3 วันครึ่ง (เริ่ม 2013-12-08 16:25 จนถึง 2013-12-11 12:40) เมื่อเทียบกับ log ปกติมีขนาดประมาณ 1-2 MB สำหรับการเก็บ log ในช่วง 1 สัปดาห์

    หรือถ้าเทียบในแง่ของจำนวนของการ query ในช่วง 3 วันที่ผ่านมามีการ query ประมาณ 18 ล้านครั้ง เมื่อเทียบกับการ query ปกติประมาณ 15,000 ครั้งต่อสัปดาห์

    การโจมติมาจากใหนบ้าง?

    7778377 95.211.115.114
    3870621 93.170.4.34
    2596494 94.198.114.135
    2581297 95.211.216.168
    331584 199.59.161.6
    53137 216.246.109.162
    47351 205.251.194.32
    46793 205.251.193.79
    41119 156.154.166.38
    39572 156.154.166.37
    39501 54.230.130.116
    36855 205.251.198.179
    34079 42.112.16.162
    31690 134.255.243.100
    28662 205.251.197.226
    27481 212.118.48.20
    23435 204.188.252.146
    20565 82.221.105.131
    20477 89.184.81.131
    19036 95.141.37.197
    17404 72.20.56.200
    14156 206.72.192.13
    11510 82.221.105.139
    10387 5.135.14.245

    ตัวเลขในคอลัมน์แรกคือจำนวนครั้งที่มีการ query และในคอลัมน์ที่สองเป็น ip address

    query อะไรบ้าง? ถ้าดูข้อมูลคร่าวๆก็จะได้

    08-Dec-2013 06:58:54.295 client 192.99.1.168#9118: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.296 client 192.99.1.168#19072: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)

    08-Dec-2013 06:58:54.297 client 192.99.1.168#31887: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.297 client 192.99.1.168#41984: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.297 client 192.99.1.168#58743: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.297 client 192.99.1.168#31137: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.300 client 192.99.1.168#28542: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)
    08-Dec-2013 06:58:54.300 client 192.99.1.168#2480: view theworld: query: adrenalinessss.cc IN A +E (172.30.0.85)

    และถ้าแยกตามการ query ก็จะได้

    17489596 adrenalinessss.cc
    543618 ilineage2.ru
    40400 dnsamplificationattacks.cc

    คอลัมน์แรกเป็นจำนวนครั้งของการ query และคอลัมน์ที่สองเป็น domain ที่มีการ query

    จาก config ของ bind9 บนตัว server ที่ setup เอาไว้ทุก query ที่ส่งมาจากภายนอกเครือข่ายของมหาวิทยาลัย มายัง domain ที่อยู่ในรายการข้างบนทั้งหมด จะถูก refused กลับไป

    เอ่อ: _ควรจะ_ refused กลับไป -_-”

    โดยการกำหนด option recursion ให้มีค่าเป็น “no” — config ตัวนี้สำหรับ debian (และ ubuntu?) จะอยู่ในไฟล์ /etc/bind/named.conf.options เพราะถ้า DNS server ไม่ได้ทำหน้าที่เป็น DNS Cache Server ก็ไม่ควรกำหนดให้ค่านี้เป็น yes

    สาเหตุที่มีบรรทัด “เอ่อ: _ควรจะ_ refused กลับไป” ข้างบน เพราะผมเพิ่งพบว่า ค่า config บน server ที่ผมดูแลอยู่มันยัง set ค่าให้เป็น yes อยู่ … เพราะต้องการให้ นศ. ทดสอบการ query จากภายนอกเครือข่าย PSU Net. แล้วลืม set ค่ากลับให้ถูกต้อง

    เพราะฉะนั้นในช่วงหลายวันที่ผ่านมาตัว Server ที่ผมดูแลอยู่ ก็ทำหน้าที่ช่วย DNS Amplification Attack ให้กับ bot ภายนอกอยู่ครับ -_-”

    ประเด็นหนึ่งที่อาจจะเป็นปัญหา สำหรับ DNS Server ภายในเครือข่ายมหาวิทยาลัย สงขลานครินทร์ ที่อาจจะเจอปัญหานี้ก็คือ DNS Server ที่ setup เอาไว้ในหน่วยงาน นอกจากจะใช้เป็น Authorized DNS Server สำหรับ domain ของตัวเองแล้ว DNS ตัวเดียวกันก็ยังทำหน้าที่เป็น DNS Cache Server สำหรับเครื่องคอมพิวเตอร์อื่นๆภายในเครือข่ายของหน่วยงานตนเองด้วย ซึ่งหน้าที่ทั้งสองนี้ควรจะแยกออกจากกัน

    ถ้ายังจำเป็นที่จะต้องใช้ร่วมกัน ก็อาจจะต้องกำหนด view (สำหรับ DNS Server ที่ใช้ bind9) ที่แตกต่างกัน เพื่อให้บริการการ resolve address แบบ DNS Cache Server ให้กับคอมพิวเตอร์ที่อยู่ภายในเครือข่ายของตนเอง และ ไม่ให้บริการการ resolve address อื่นๆ นอกเหนือจาก domain ของหน่วยงานเอง สำหรับเครื่องคอมพิวเตอร์อื่นๆ ที่อยู่นอกเครือข่ายของหน่วยงาน

    ถ้ามีเวลาเดี๋ยวจะกลับมาเขียนเรื่องนี้อีกรอบ แต่ตอนนี้ขอกลับไปเรื่องของ fail2ban ต่อ

    ผมเคยเขียนเรื่องของการ setup fail2ban เพื่อใช้สำหรับการตอบโต้การโจมตีแบบ DOS ซึ่งอยู่ที่นี่ http://sysadmin.psu.ac.th/2012/11/29/using-fail2ban-for-dns-brute-force-attack/

    ซึ่งจะว่าไปก็เป็นวิธีที่ยังมีปัญหาในตัวมันเองอยู่ เพราะการที่จะตอบโต้ได้ เราก็จะต้องรู้ก่อนว่าการโจมตีเป็นแบบใหน หรือในที่นี้ก็คือ domain ที่ query สำหรับการโจมตีคืออะไร

    มีวิธีการที่จะแก้ปัญหานี้โดยใช้ fail2ban ใหม? ผมยังไม่แน่ใจนัก (พอจะมี idea คร่าวๆ แต่ยังไม่ได้เริ่ม implement idea จริงๆ เลยยังไม่รู้ว่าจะใช้ได้จริงใหม)

    แต่ถ้าจะใช้เครื่องมือที่มีอยู่เพื่อแก้ปัญหาในขณะนี้ก่อน นั่นคือ การโจมตีที่เกิดขึ้น มีการ query กับหลายๆ domain ตามนี้

    17489596 adrenalinessss.cc
    543618 ilineage2.ru
    40400 dnsamplificationattacks.cc

    เราจะปรับปรุง config ของ fail2ban ให้รับมือกับจำนวน domain ที่เพ่ิมขึ้นได้อย่างไร?

    ก็โดยการแก้ไข filter โดยเปลี่ยนส่วนของ failregex ให้เป็นแบบนี้ครับ

    failregex = client <HOST>#.+: view theworld: query: ilineage2.ru
    client <HOST>#.+: view theworld: query: apidown.com
    client <HOST>#.+: view theworld: query: adrenalinessss.cc
    client <HOST>#.+: view theworld: query: isc.org
    client <HOST>#.+: view theworld: query: dnsamplificationattacks.cc
    client <HOST>#.+: view theworld: query: fkfkfkfa.com

    ส่วนของ config ไฟล์อื่นๆ และ ส่วนอื่นของ named-query-dos.conf  ก็ยังเหมือนเดิม อ้างอิงตามบันทึกที่แล้วนะครับ

    หลังจากแก้ไขแล้ว เพื่อที่จะ update config ใหม่ สิ่งแรกที่ควรทำ ถ้าหากว่าไฟล์ query.log มีขนาดใหญ่มากก็คือ copy+compress  ไฟล์ query.log เดิมเก็บไว้ก่อน แล้วค่อย restart ตัว fail2ban เพราะว่า ถ้าจะ restart fail2ban เลย ตัว fail2ban จะต้อง process logfile ทั้งหมดใหม่ก่อน ซึ่งจะใช้เวลานานมาก ซึ่งในกรณีของผมไฟล์ขนาด 2GB ทำให้ดูเหมือนกับว่า fail2ban ไม่ยอมทำงานหลังจาก restart แล้ว จนกระทั่งผมตรวจสอบ regex pattern ใหม่จนแน่ใจว่าเขียนถูกต้องแล้ว 2-3 รอบ ถึงจะมาเอะใจเรื่องของขนาดของ logfile ครับ

    วิธีการจัดการกับ query.log file สามารถทำตามขั้นตอนได้ตามนี้ครับ

    $ cd /var/log/named
    $ sudo service bind9 stop; sudo mv query.log query.log.save; sudo service bind9 start
    $ sudo bzip2 query.log.save &
    $ sudo service fail2ban restart

    ซึ่งคาดว่าจะหยุด bot ที่ใช้ในการโจมตีในตอนนี้ได้ชั่วคราว จนกว่าจะมีการ query โดยใช้ domain ใหม่ซึ่งไม่ปรากฏอยู่ใน list เพิ่มขึ้นมา

    ซึ่งตอนนั้น … ค่อยว่ากันอีกที -_-“

  • การเพิ่ม Wireless Profile PSU WiFi (802.1x) บน Windows 8/8.1

    “บทความนี้ไม่ใช่บนความใหม่ แค่เป็นวิธีลงบน Windows 8/8.1 เท่านั้นนะครับ ใครชำนาญแล้วให้ข้ามไปได้เลยครับ”

    ทำตามขั้นตอนดังนี้ครับ

    1. เปิดหน้า Network and Sharing Center เลือก Set up a new connection or network2013-12-10_132923

    2. เลือก Manually connection to a wireless network2013-12-10_133122

    3. ให้ตั้งค่าดังรูป
    2013-12-10_133236
    *ขอแนะนำให้ใส่ชื่อ Network name ตัวเล็กตัวใหญ่แป๊ะ ๆ นะครับ มีวรรค 1 วรรคหน้า ( ด้วยนะครับ

    4. หลังจากนั้นให้เลือก Change connection settings
    2013-12-10_133259
    *ถ้ามันบอกว่ามีอยู่แล้วให้ลบ profile ทิ้ง วิธีลบด้วย command line อ่านบทความได้ที่นี่ครับ
    (http://sysadmin.psu.ac.th/2013/12/10/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%88%E0%B8%B1%E0%B8%94%E0%B8%81%E0%B8%B2%E0%B8%A3-wireless-profile-%E0%B8%9A%E0%B8%99-windows-88-1-%E0%B8%9C%E0%B9%88%E0%B8%B2%E0%B8%99-command-line/)

    5. เลือก Tab Security จากนั้นเลือกหัวข้อ Settings2013-12-10_133352

    6. ให้ ติก Verify the server…. ออก จากนั้นกด OK
    2013-12-10_133440

    7. จากนั้นเลือก Advance Settings ต่อ
    2013-12-10_133527

    8. ให้ติกในส่วนของ Specify authentication mode : และเลือกให้ authen แบบ User authentication ในกรณีที่เป็นเครื่องส่วนตัวสามารถเลือก Save credentials (Save Username Password) จะได้ไม่ต้องกรอกทุกครั้งที่ต่อครับ 
    2013-12-10_133646
    * ในการ Save credentials ในกรณีเปลี่ยนรหัสผ่านต้องมาเปลี่ยนที่นี่ด้วยครับไม่งั้น Windows จะ authen ผิดถี่จนระบบ PSU Passport ทำการ lock account ของท่านครับ (ระบบจะปลด lock อัตโนมัติหลังจากหยุด login จากทุกระบบ 20-30 นาทีโดยประมาณ)

    9. หน้าจอสำหรับ Save credentials
    2013-12-10_133747

    10. เป็นอันเสร็จ ปิดหน้าต่างที่เปิดไว้ให้หมดครับ แล้วลองกลับไปเชื่อมต่อใหม่อีกครั้งก็จะขึ้นหน้าให้ Login ดังรูปครับ ถ้าหน้าตาต่างจากนี้แสดงว่า Set ผิดครับ
    2013-12-10_134049

  • การจัดการ Wireless Profile บน Windows 8/8.1 ผ่าน Command line

    “บางท่านอาจประสบปัญหาลบ Wireless Profile บน Windows 8/8.1 ไม่ได้ไม่รู้จะทำอย่างไร”

    ผมจึงเสนออีก 1 วิธี คือการลบผ่าน Command Line ดังนี้

    1. เปิดโปรแกรม CMD ขึ้นมาตามปกติ

    2. ในกรณีที่ต้องการดูว่าตอนนี้มี Profile อะไรบ้างให้สั่งคำสั่ง

    netsh wlan show profile
    2013-12-10_132414

    * หมายเหตุ : สำหรับคนที่ผูก account ไว้กับ Microsoft ทาง Microsoft จะมีการจำ Profile ไว้บน Cloud ให้เวลาท่านลงเครื่องใหม่ หรือนำ account ไปใช้กับเครื่องอื่น ถ้าเข้า SSID ไหนที่ต้องใส่รหัสผ่าน สามารถเข้าได้เลยโดยไม่ต้องใส่รหัสผ่าน (งงอยู่หลายครั้งว่าทำไมไม่ขึ้นให้ใส่รหัสผ่าน) ก็ไม่ต้องแปลกใจ แต่ในส่วนของ 802.1x ยังไงก็ต้องตั้งใหม่อยู่ดีครับ (มันไม่ได้จำทุก ๆ SSID นะครับ ไม่รู้มันเลือกยังไง)

    3. ทำการสั่งคำสั่งลบ Profile นั้น ๆ ดังนี้

    netsh wlan delete profile “xxxx”2013-12-10_132448

    เท่านี้ก็สามารถเพิ่มข้อมูล Profile ใหม่ได้แล้วครับ

    *แถม : สำหรับคนที่ต่อติดแล้แต่อยากกลับไปแก้ Wireless Profile ที่ตั้งค่าไว้ให้เข้าไปแก้ได้ตามรูปครับ

    1. เปิด Wifi Status ผ่านหน้า Network and Sharing Center
    2013-12-10_135742

    2. คลิกเลือก Wireless Properties จากนั้นจะปรากฎหน้าการตั้งค่า Profile จะแก้อะไรก็แก้ได้เลยครับ
    2013-12-10_135455

  • ติดตั้ง VPN บน Windows 8.1 ภายใน 6 ขั้นตอน (นิกาย L2TP)

    เอาว่า ใครอยากติตตั้งง่าย ลองดู (เชื่อมั่นใน L2TP ว่าจะอยู่รอดได้)

    1.คลิกขวาที่ System Tray ตรง Connection แล้วเลือก Open Network and Sharing Center
    01

     

    2.คลิก Set up a new connection or network

    02

    3.คลิก Connect to a workplace03

    4. คลิก Use my Internet connection (VPN)

    04

    5. ใส่
    Internet Address : vpn.psu.ac.th
    Destination name: PSU-VPN05

     

    6. เวลาจะใช้ ก็เลือก PSU-VPN

    06

     

     

  • How to: install Owncloud (Easy method)

    • สำหรับ Ubuntu 12.04 เท่านั้น
    • เปิด terminal
    • พิมพ์คำสั่ง (ไม่ต้องพิมพ์ $)

    $wget -q -O - http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/Release.key|sudo apt-key add -

    wget -nv https://download.owncloud.org/download/repositories/stable/xUbuntu_12.04/Release.key -O Release.key
    apt-key add - < Release.key
    • ต่อด้วย

    $sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/ /' >> /etc/apt/sources.list.d/owncloud.list"

    sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/xUbuntu_12.04/ /' >> /etc/apt/sources.list.d/owncloud.list"
    apt-get update
    apt-get install owncloud
    • ปิดท้าย

    $sudo apt-get update
    $sudo apt-get install -y owncloud

    • ต่อด้วยคำสั่ง

    $sudo /etc/init.d/apache2 restart

    • เปิดเว็บ http://localhost/owncloud เพื่อสร้าง user ที่เป็น admin ชื่ออะไรก็ได้ตามสะดวก และตั้งรหัสผ่านให้เรียบร้อย คลิก Advanced เพื่อดูค่าอื่นๆ เช่น โฟลเดอร์ที่ใช้เก็บข้อมูล การตั้งค่าฐานข้อมูลว่าจะใช้อะไร แบบง่ายนี้ขอใช้ sqlite ไปก่อนเพื่อความรวดเร็ว คลิก Finish Setup
    • ระบบจะล็อคอินเป็น user ที่สร้างให้คนแรกโดยอัตโนมัติ
    • ที่เหลือ ... ขอให้สนุกครับ

    ที่มา
    http://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud
    https://download.owncloud.org/download/repositories/stable/owncloud/

  • How to install mathtex.cgi ubuntu 12.04

    1. ติดตั้ง texlive-full , dvipng,  imagemagick
      $sudo apt-get install -y texlive-full dvipng imagemagick
    2. ดาวน์โหลด mathtex.zip
      $wget http://www.forkosh.com/mathtex.zip
    3. สร้างไดเร็คทอรี่ mathtex
      $mkdir mathtex
    4. cd mathtex
    5. unzip ../mathtex.zip
    6. compile mathtex.c ด้วยคำสั่ง
      $cc mathtex.c -DLATEX=\"$(which latex)\" -DDVIPNG=\"$(which dvipng)\"  -o mathtex.cgi
    7. sudo mv mathtex.cgi /usr/lib/cgi-bin
    8. sudo chown :www-data /usr/lib/cgi-bin
    9. sudo chmod g+w /usr/lib/cgi-bin
    10. เพิ่มข้อความต่อไปนี้ในแฟ้ม /etc/apache2/sites-enabled/000-default ภายใน Directive VirtualHost ถ้าใส่ตามนี้คืออนุญาติเครือข่ายภายในมหาวิทยาลัยเท่านั้นเข้าถึงได้
      ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
      <Directory /usr/lib/cgi-bin>
          Options +ExecCGI
          Order deny,allow
          Deny from all
          Allow from 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
      </Directory>
    11. restart apache
      $sudo service apache2 restart
    12. ทดสอบเรียกใช้งานได้ที่ http://yourhostname/cgi-bin/mathtext.cgi?x
    13. texlive เป็นโปรแกรมที่ทดแทน latex ใช้สร้างสมาการทางคณิตศาสตร์
    14. ใน WordPress มีปลั๊กอินชื่อ Youngwhan’s Simple Latex สามารถเรียกใช้ mathtex นี้ได้ทันที โดยปกติจะเซ็ตไว้ให้ใช้ shared host ภายนอกมหาวิทยาลัย
    15. ทดสอบเรียกใช้งาน E=mc^2 ได้ผลเป็น
    16. ตัวอย่างอื่นๆ สำหรับสมการแปลกๆ Example
    17. จบ…. ขอให้สนุกครับ

    ที่มา

    • https://help.ubuntu.com/community/LaTeX
    • http://www.forkosh.com/cgi-bin/weblist.cgi?-t=weblist&-o=php&-f=sources/mimetexquickstartweb.php
  • Config PHP Fast CGI เพื่อใช้งาน PHP ใน IIS 7 ครับ

    สวัสดีครับ

    วันนี้กระผมจะมาแชร์ประสบการณ์ในการ Config PHP Fast CGI เพื่อใช้งานเวบไซต์ PHP ใน IIS 7 ครับผม

    0. เริ่มต้นด้วยขั้นตอนการ Add Role Service ครับ

    cgi1

    รูปที่ 1 แสดงการ Add Role Service

    1. เลือกติดตั้ง CGI และกดเลือก Next ครับ

    cgi2

    รูปที่ 2 แสดงขั้นตอนการติดตั้ง

    2. เมื่อลง CGI เสร็จเรียบร้อยก็จะขึ้นหน้าต่าง Installation Succeeded ครับ

    cgi3

    รูปที่ 3 แสดงหน้าต่างหากติดตั้ง CGI สำเร็จ

    3.ลง PHP 5.2.6 ครับ

    cgi4

    รูปที่ 4 แสดงการติดตั้ง php

    4. เลือก Drive ที่จะติดตั้ง PHP หลังจากนั้นคลิก Next

    cgi5

    รูปที่ 5 แสดงที่จัดเก็บ PHP

    5. เลือก IIS FastCGI

    cgi6

    รูปที่ 6 แสดงการติดตั้ง FastCGI

    6. เป็นอันติดตั้ง PHP สำเร็จ

    cgi7

    รูปที่ 7 แสดงการติดตั้ง PHP สำเร็จ

    7. แก้ไขค่า ใน Folder PHP

    cgi8

    รูปที่ 8 แสดงการเข้าไปแก้ไขค่าใน php

    8. ตรงบรรทัด fastcgi.impersonate ให้เอา ; ออกและ แก้ไขดังนี้

    fastcgi.impersonate = 1

    cgi9

    รูปที่ 9 แสดงการเข้าไปแก้ไขค่าใน php ต่อ

    9. แก้ไขค่าบรรทัดนี้โดยเอา ; ออก และแก้ไขดังนี้  cgi.fix_pathinfo=1

    cgi10

    รูปที่ 10 แสดงการเข้าไปแก้ไขค่าใน php ต่อ

    10. แก้ไขค่าบรรทัดนี้โดยเอา ; ออกและแก้ไขดังนี้ cgi.force_redirect = 0

    cgi11

    รูปที่ 11 แสดงการเข้าไปแก้ไขค่าใน php ต่อ

    11.แก้ไขค่าบรรทัดนี้โดยเอา ; ออกและแก้ไขดังนี้ open_basedir = c:\inetpub

    cgi12

    รูปที่ 12 แสดงการเข้าไปแก้ไขค่าใน php ต่อ

    12.หลังจากนั้นกด Ctrl+S หรือ กด Save ครับ

    cgi13

    รูปที่ 13 แสดงการบันทึกหลังจากแก้ไขค่าเสร็จเรียบร้อย

    13. จากนั้นเข้า cmd เข้าไปในโฟลเดอร์ที่เก็บ PHP

    cd c:\php5

    php -info

    มันจะแสดงรายละเอียดของ php ที่เราได้ติดตั้งไปทั้งหมด

    cgi14

    รูปที่ 14 แสดงรายละเอียดของ php

    14. หลังจากนั้น config IIS7 เพื่อใช้ php โดยไปที่ Handler Mapping

    cgi15

    รูปที่ 15 แสดงการเข้าไปตั้งค่าใน Handler Mapping

    15. เลือก Add Module Mapping

    cgi16

    รูปที่ 16 แสดงการเข้าไปตั้งค่าใน Handler Mapping ต่อ

    16.จากนั้นกรอกข้อมูลดังนี้

    Request path :> *.php

    Module:> FastCgiModule

    Excutable :> C:\PHP5\php-cgi.exe

    Name :> FastCGIPHP

    cgi17

    รูปที่ 17 แสดงการแก้ไขค่าใน Module

    17. คลิก Yes เพื่อสร้าง FastCGI Application

    cgi18

    รูปที่ 18 แสดงสถานะหลังจากแก้ไขค่าเสร็จเรียบร้อย

    18. หลังจากนั้นเข้าไปใน ไดเรกทอรี่ C:\inetpub\wwwroot และสร้าง info.php จากนั้นนำ source code นี้ใส่เข้าไป

    <?php phpinfo(); ?> เพื่อตรวจสอบว่าสามารถใช้งาน php ได้แล้วหรือยังครับ หากประสบผลสำเร็จจะมีลักษณะดังรูปด้านล่าง

    cgi19

    รูปที่ 19 แสดงหน้าจอเมื่อรันแล้วประสบผลสำเร็จ

    เสร็จสิ้นกระบวนการในส่วนของการ config php ให้สามารถใช้งานได้ใน IIS7 ครับ

    Chio

  • Configuration Tomcat 7+ IIS 7 เพื่อสร้างเวบไซต์ด้วย JSP และ PHP

    สวัสดีครับ

    วันนี้ผมจะมาแชร์ในส่วนของการนำ Tomcat 7 รันคู่กับ IIS7 นะครับ ใน Window Server ให้ติดตั้ง .Net Framework 3.5 ขึ้นไปครับ

    ส่วนของ Tomcat 7

    1. เข้าไปดาวน์โหลด Tomcat 7 ที่ http://tomcat.apache.org/download-70.cgi เลือกในส่วนของ Core: 32-bit/64-bit Windows Service Installer เพื่อความสะดวกในการติดตั้งครับ

    Untitled

     

    รูปที่ 1 แสดง Status ของ Tomcat Server 7

    2. เมื่อทดลองรันที่หน้า Web Browser จะได้ผลลัพธ์ดังนี้ครับ  พิมพ์ว่า localhost:8080

    .Untitled

    รูปที่ 2 แสดงผลัพธ์หลังจากทดลองรัน Apache Tomcat 7

    3. ทดลองรัน IIS7 ผ่าน Web Broeser ครับ โดยพิมพ์ว่า localhost:80

    iis

    รูปที่ 3 แสดงผลลัพธ์หลังจากทดลองรัน IIS 7 ครับ

    4.เปลี่ยน Default Site ให้เป็นรันใน Port อื่น

    Chio1

    รูปที่ 4 แสดงการเปลี่ยน Default Port ให้รันใน Port 82

    5. เข้าไปโหลดตัว Connector ที่เวบไซต์นี้ครับ http://tomcatiis.riaforge.org/ และติดตั้งตัว Connector

    6. เลือก Sites–> Handler Mappings –> Add Manage Handler

    7. ช่อง Request ใส่ *  , Type –> BonCodeIIS BonCodeCallHandler , ช่อง Name ใส่ BonCodeForAll

    รายละเอียดทั้งหมด สามารถดูได้จาก Video ชุดนี้ครับ  http://www.youtube.com/watch?v=yVKiNAkhav8

    Chio..

  • วิธีการติดตั้ง OpenVPN 2.3.16 สำหรับ Windows

    [Update 16/06/60]

    วิธีการติดตั้งเป็นขั้นตอนง่าย ๆ ครับดังนี้ครับ

    1. ดาวน์โหลดไฟล์ติดตั้ง OpenVPN (โปรดเลือกให้ตรงกับ Windows Version ที่ตัวเองใช้อยู่ครับ)

    [วิธีดูว่า Windows เป็น Version อะไร]

    2014-10-23_205005

    [Link สำหรับ Windows XP 32bit]
    http://ftp.psu.ac.th/pub/openvpn/openvpn-install-2.3.16-I001-i686.exe

    [Link สำหรับ Windows XP 64bit]
    http://ftp.psu.ac.th/pub/openvpn/openvpn-install-2.3.16-I001-x86_64.exe

    [Link สำหรับ Windows Vista/7/8/8.1/10 32bit]
    http://ftp.psu.ac.th/pub/openvpn/openvpn-install-2.3.16-I601-i686.exe

    [Link สำหรับ Windows Vista/7/8/8.1/10 64bit]
    http://ftp.psu.ac.th/pub/openvpn/openvpn-install-2.3.16-I601-x86_64.exe

    2. ทำการติดตั้ง OpenVPN 2.3.16 (ให้รันให้ตรงกับไฟล์ที่โหลดมาครับ สำหรับ Windows Vista/7/8/8.1 64bit) โดยคลิกขวา Run as Admin ดังรูป (จากนั้น Next ๆ ติดตั้งตามปกติ)


    • ในกรณีที่เป็น Windows 10 (บาง Version) จะติด Windows SmartScreen ดังรูปให้กด More info แล้วเลือก Run anyway ดังรูป

    2016-03-23_131341

    2016-03-23_131408

    3. ดาวน์โหลดไฟล์ Config VPN และ PSU Cert

    http://ftp.psu.ac.th/pub/openvpn/openvpncer.zip

    3.1) แตก Zip File ดังรูป

    2014-10-23_205426

    3.2) จะได้ไฟล์ 2 ไฟล์ ให้ทำการ copy ไฟล์ดังกล่าวไว้

    2014-10-23_205511

    3.3) ทำการวางไฟล์ทั้งสองใน c:\Program Files\OpenVPN\config

    pic3

    4. จากนั้นทำการตั้งค่าให้ Run as Administrator ทุกครั้งที่เปิดใช้ OpenVPN GUI ที่
    c:\Program Files\OpenVPN\bin ดังรูป

    2016-03-23_132008
    หรือสามารถรันตรง ๆ ได้ดังนี้ (ผลเหมือนกัน แต่แนะนำให้ตั้งค่าไว้เลยแบบรูปข้างบน จะได้ไม่ต้องมา Run as administrator ทุกครั้ง เหมือนรูปข้างล่างนี้)

    2014-10-23_211144

    [TIP]

    วิธีการเพิ่ม shotcut ไว้ที่ taskbar บน Windows 8.1

    2014-09-19_104434

    วิธีการเพิ่ม shotcut ไว้ที่ taskbar บน Windows 10

    2016-03-23_132311

    วิธี Re-Check ว่าได้  IP VPN แล้วหรือยัง

    1. ตรวจสอบโดยเอาเมาส์ไปวางบน icon ดังรูปแล้วสังเกตุเบอร์ IP ในช่อง Assigned IP :

    2014-09-19_104905

     

    2. เปิด Web Browser พิมพ์ URL : http://server-dev.psu.ac.th/checkipvpn ตรวจสอบว่า IP ตรงกับข้อ 1 หรือไม่ ถ้าตรงแสดงว่าสามารถใช้งาน VPN ได้แล้วครับ

    2014-09-19_105017

    วิธีตรวจสอบว่าแบบละเอียดว่าโปรแกรมทำงานเป็นปกติหรือไม่

    (บางครั้งถึง icon เขียวก็ไม่ได้บอกว่าจะใช้ได้) ถ้าปรากฎข้อความดังภาพแสดงว่าเส้นทางการเชื่อมต่อสมบูรณ์

    2014-10-23_210631