แนะนำ ffDiaporama โปรแกรมนำภาพถ่ายมาทำภาพยนตร์ (Movie creator)

แนะนำ ffDiaporama โปรแกรมนำภาพถ่ายมาทำภาพยนตร์ (Movie creator) Movie creator from photos and video clips with ffDiaporama ตัวอย่าง http://ftp.psu.ac.th/pub/cc/2557cop1/ccadmintour2014.mp4 (392M) โปรแกรม ffDiaporama เป็นโปรแกรมทำภาพยนตร์จากภาพถ่ายและคลิปวิดีโอ มีทั้งเวอร์ชั่นที่ใช้งานบน linux และ Windows มีเว็บไซต์อยู่ที่นี่ URL: http://ffdiaporama.tuxfamily.org/ โดยทั่วไปวิธีติดตั้งโปรแกรมเพิ่มใน linux mint คือ เลือก Menu > Software Manager แต่โปรแกรม ffDiaporama นั้นมันเป็นเวอร์ชั่น 1.5 ซึ่งยังขาดความสามารถในการแปลง (render) จัดได้ว่ามันไม่ทันสมัย (outdated!) จึงจำเป็นต้องติดตั้งด้วยวิธี command line จากเว็บไซต์ของผู้พัฒนาโปรแกรมโดยตรง (Launchpad on the ffDiaporama-stable PPA) ทำคำสั่งนี้เพื่อเพิ่มชื่อ server ต้นทางที่เก็บโปรแกรม sudo add-apt-repository ppa:ffdiaporamateam/stable จะได้ผลลัพธ์แบบนี้ mint@mint-PSU ~ $ sudo add-apt-repository ppa:ffdiaporamateam/stable You are about to add the following PPA to your system: This PPA supplies stable packages of ffDiaporama 2.1 For more information on ffDiaporama see : http://ffdiaporama.tuxfamily.org More info: https://launchpad.net/~ffdiaporamateam/+archive/stable Press [ENTER] to continue or ctrl-c to cancel adding it เมื่อกด Enter แล้วจะได้แบบนี้ Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –homedir /tmp/tmp.JiNHX5a3T2 –no-auto-check-trustdb –trust-model always –keyring /etc/apt/trusted.gpg –primary-keyring /etc/apt/trusted.gpg –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 77296259 gpg: requesting key 77296259 from hkp server keyserver.ubuntu.com gpg: key 77296259: public key “Launchpad PPA for ffDiaporama Team” imported gpg: Total number processed: 1 gpg:               imported: 1  (RSA: 1) สั่งอัปเดตรายการซอฟต์แวร์ sudo apt-get update ติดตั้งโปรแกรม sudo apt-get install ffdiaporama จะได้ผลลัพธ์แบบนี้ mint@mint-PSU ~ $ sudo apt-get install ffdiaporama Reading package lists… Done Building dependency tree Reading state information… Done The following packages were automatically installed and are no longer required: ffdiaporama-data libqimageblitz4 Use ‘apt-get autoremove’

Read More »

วิธีตรวจสอบเว็บไซต์ที่โดน Hack #15

จาก วิธีตรวจสอบเว็บไซต์ที่โดน Hack #7 : การตรวจสอบ Windows Server ที่ถูก Hack ด้วย PowerShell ซึ่งเป็นกระบวนการตรวจสอบ Windows Server ซึ่งโดนเจาะด้วยช่องโหว่ JCE ของ Joomla ก็มีคนถามว่า จะมีกระบวนการแก้ไขป้องกัน เหมือนกับที่ทำกับ Apache ซึ่งแสดงใน วิธีตรวจสอบเว็บไซต์ที่โดน Hack #12 : เทคนิคการตั้งค่า Apache Web Server เพื่อให้ปลอดภัยจากช่องโหว่ ตอนนี้มีคำตอบแล้วครับ เทคนิคนี้ ใช้ผ่าน Internet Information Services (IIS) Manager โดยการแก้ไข Request Filtering ในระดับ Web Server เลย โดยดำเนินการตามวิธีการต่อไปนี้ เรียก Command ด้วย การกดปุ่ม Windows + R แล้ว พิมพ์ inetmgr แล้วกดปุ่ม Enter คลิกเว็บเซิร์ฟเวอร์ของเครื่องที่ต้องการใน Connection Tab (ตัวอย่างในภาพ คลิกที่ WUNCAWEBSEC) ต่อไป ภายใต้หัวข้อ IIS ให้ Double-Click ที่ Request Filtering คลิกที่ Rules tab เพิ่มกฏสำหรับ JCE Bot ซึ่ง ไม่ต้องการให้ PHP ทำงานภายใต้ URL ซึ่งมีข้อความว่า “images/stories” โดย ไปที่ Action ด้านขวามือ แล้ว คลิกที่ Add Filtering Rules … แล้วใส่ข้อมูลตามภาพ แล้วคลิกปุ่ม OK เพิ่มกฏสำหรับ Upload โฟลเดอร์ ซึ่ง ไม่ต้องการให้ PHP ทำงานภายใต้ URL ซึ่งมีข้อความว่า “upload” โดย ไปที่ Action ด้านขวามือ แล้ว คลิกที่ Add Filtering Rules … แล้วใส่ข้อมูลตามภาพ แล้วคลิกปุ่ม OK ผลที่ได้ใน Rules tab ทดสอบผลการทำงาน สมมุติเดิมโดนวางไฟล์ Backdoor ไว้ที่ http://localhost/corin/images/stories/backdoor.php แต่เมื่อตั้ง Rules ดังกล่าวแล้ว จะทำให้ Hacker ไม่สามารถเรียกใช้งาน PHP ที่วางไว้ใน images/stories ได้ โดยจะได้ Error เช่นนี้ วิธีนี้มีข้อดีคือ สามารถป้องกันการใช้งาน PHP ใน images/stories (และใน upload โฟลเดอร์) แต่ยังสามารถเรียกไฟล์ภาพและไฟล์อื่นๆได้ตามปรกติ เช่น http://localhost/corin/images/stories/clownspin.gif ลองใช้งานดูครับ 😉

Read More »

How to: PSU OpenVPN Ubuntu 14.04/15.04/15.10/Linux Mint 17/17.1/17.2

ติดตั้ง net-workmanager-openvpn คลิก Ubuntu Button แล้วพิมพ์ netw เลือก Network Connections ได้ดังภาพ คลิก Add ได้ดังภาพ เลือก OpenVPN แล้วคลิก Create… กรอกการตั้งค่าต่างๆ ดังภาพ โดยสามารถโหลด PSUCAcert.cer ได้จาก http://netserv.cc.psu.ac.th/documents/doc_download/269-vpnpackageforallwin7 http://ftp.psu.ac.th/pub/openvpn/openvpncer.zip โหลดมาแล้วให้คลายซิบแล้วแยกเอาไฟล์ PSUCAcert.cer ออกมา กรอก User name และ Password ของตัวเอง คลิก Advanced เลือกดัังภาพ กด OK ออกมาแล้วคลิกที่ IPv4 Settings ตั้งค่าตามภาพ คลิก IPv6 Settings ตั้งค่าตามภาพ กลับมาแท็บ VPN คลิก Save… ได้ดังภาพ คลิก Close เหลือบมองมุมขวาบนจะมีรูปภาพ หรือ ให้คลิกที่รูปนี้แล้วเลือก VPN Connection -> PSU รอจนมีข้อความดังภาพปรากฎที่มุมบนขวา เป็นอันเสร็จ สำหรับ Linux Mint 17 ติดตั้ง network-manager-openvpn-gnome แทน นอกนั้นเหมือนกัน เพิ่มเติม เพื่อให้สามารถคลายแฟ้ม vpn_package_for_all_xp-vista-7.exe ได้ต้องติดตั้งโปแกรมเหล่านี้เพิ่มเติม p7zip-rar, p7zip-full, unace, unrar, zip, unzip, sharutils, rar, uudeview mpack, arj, cabextract, file-roller โดยพิมพ์คำสั่ง sudo apt-get install p7zip-rar p7zip-full unace unrar zip unzip sharutils rar uudeview mpack arj cabextract file-roller จบจริงๆ … ขอให้สนุกครับ

Read More »

วิธีการเขียน Script ตรวจสอบ Server Performance สำหรับเครื่อง Linux Server

ขอนำเสนอ PHP Script และ Terminal linux program สำหรับใช้ Monitor Server Performance สำหรับ Ubuntu Linux ดังนี้ คำสั่งตรวจสอบ Hostname hostname -A วิธีตรวจสอบ Traffic จาก ifconfig ด้วย PHP5 Script <?php //Net Traffic exec(“ifconfig | grep ‘RX bytes'”,$net); $neteth0 = explode(“:”,$net[0]); $netin1 = explode(” “,$neteth0[1]); $netin = $netin1[0]; $netout1 = explode(” “,$neteth0[2]); $netout = $netout1[0]; unset($net); unset($neteth0); unset($netin1); unset($netout1); exec(“cat net.db”,$nethistory); $hnet = explode(“:”,$nethistory[0]); $diff = time()-$hnet[0]; $cnetin = round(($netin-$hnet[1])/$diff,0); $cnetout = round(($netout-$hnet[2])/$diff,0); unset($nethistory); exec(“echo “.time().”:”.$netin.”:”.$netout.” > net.db”); echo date(“d-m-Y H:i:s”,time()).” Traffic In : “.$cnetin.”, Traffic Out : “.$cnetout; ?> วิธีการตรวจสอบ CPU จาก /proc/cpuinfo ด้วย PHP5 Script <?php //CPU exec(“cat /proc/cpuinfo | grep MHz | head -1”,$clockrate); exec(“cat /proc/cpuinfo | grep MHz | wc -l”,$cpucount); $clockrate1 = explode(“:”,$clockrate[0]); $maxcpu = trim($clockrate1[1])*$cpucount[0]; unset($clockrate); unset($clockrate1); unset($cpucount); exec(“vmstat 1 2 | tail -1 | awk ‘{ print $15 }'”,$pcpufree); $pcpuuse = 100-$pcpufree[0]; $cpuuse = round(($pcpuuse*$maxcpu)/100,0); unset($pcpufree); echo “MAX CPU Speed : “.$maxcpu.” MHz\n”; echo “CPU Use : “.$cpuuse.” MHz (“.$pcpuuse.” %)\n”; ?> วิธีการตรวจสอบ Memory จาก free -m ด้วย PHP5 Script <?php //MEM exec(“free -m | grep Mem: | awk ‘{print $2\”:\”$3}'”,$ram); $ramraw = explode(“:”,$ram[0]); $ramtotal = $ramraw[0]; $ramuse = $ramraw[1]; $pramuse = round(($ramuse/$ramtotal)*100,0); unset($ram); unset($ramraw); echo “MAX RAM : “.$ramtotal.” MB\n”; echo “MEMORY Use : “.$ramuse.” MB

Read More »

การสร้างระบบ Load Balance Web Server ด้วยวิธีการ URL Redirect

เราสามารถสร้างระบบ Load Balance Web Server ด้วยวิธีการ URL Redirect โดยสามารถสร้างด้วยภาษาใดก็ได้ แต่จะขอยกตัวอย่างด้วยภาษา PHP ได้ง่าย ๆ ดังนี้ ตัวอย่างไฟล์ server-status ที่ได้ทำการ monitor web server มาเรียบร้อยแล้ว webserver1.testlab UP webserver2.testlab DOWN – เราสามารถใช้คำสั่งดึงไฟล์เพื่อคัดเฉพาะ Web Server ที่สามารถใช้งานได้จริง ๆ ดังนี้ exec(“cat /tmp/server-status | grep UP”,$redirect); – จากนั้นจะทำการ นำรายการ server ทั้งหมดซึ่งอยู่ในตัวแปร $redirect มาทำการสุ่ม ดังนี้ $random = rand(0,(count($redirect)-1); – ก็จะทำเอาเลข server ที่ random ได้ไปเข้ากระบวนการ Redirect ดังนี้ $server = explode(” “,$redirect[$random]); header(‘HTTP/1.1 301 Moved Permanently’); header(‘Cache-Control: no-store, no-cache, must-revalidate’); header(‘Expires: Thu, 01 Jan 1970 00:00:00 GMT’); header(‘Location: https://’.$server[0].’/’); unset($server); ในกรณีที่ต้องการสร้างหน้ารอให้ทำการตรวจสอบว่าในกรณีที่ไม่มีเครื่องให้บริการให้แสดงข้อความ ตัวอย่างดังนี้ if(count($redirect)==0){ echo “Server Unavailable or Maintenance Period”; } ดังที่กล่าวมาทั้งหมดข้างต้นสามารถรวมเป็น script ไฟล์ PHP ได้ดังนี้ <?php exec(“cat /tmp/server-status | grep UP”,$redirect); if(count($redirect)==0){ echo “Server Unavailable or Maintenance Period”; }else{ $random = rand(0,(count($redirect)-1)); $server = explode(” “,$redirect[$random]); header(‘HTTP/1.1 301 Moved Permanently’); header(‘Cache-Control: no-store, no-cache, must-revalidate’); header(‘Expires: Thu, 01 Jan 1970 00:00:00 GMT’); header(‘Location: http://’.$server[0].’/’); unset($server); } unset($redirect); ?> *สามารถอ่านวิธีสร้างไฟล์สำหรับ monitor web serverได้จาก บทความนี้ http://sysadmin.psu.ac.th/2014/06/19/monitor-web-server-wget-shell-script-daemon/

Read More »