วันพฤหัสบดีที่ 3 กรกฎาคม พ.ศ. 2557

ติดตั้ง Ubuntu 13.10 Desktop บน Vmware เพื่อลง CactiและWeather Map (ตอนที่3)

หลังจากเตรียม LAMP Server เรียบร้อแล้ว มาต่อกันเลย

ทำการติดตั้งโปรโตคอล snmp และ snmpd
ซึ่งมีโปรแกรม snmpwalk เอาไว้ติดต่อสื่อสารกับ SNMP Manager
#apt-get install snmp snmpd

ตรวจสอบการทำงานของโปรโตคอล snmp
#snmpwalk –c public –v1 localhost
#snmpwalk -c public -v1 172.21.51.254   <<----สามารถทดสอบกับเครื่องคอมพิวเตอร์ที่เราต้องการทดสอบว่าสนับสนุนโปรโตคอล snmp หรือไหม่  ถ้ามีผลลัพธ์คล้ายกับรูปแสดงว่าสามารถ walk เอาข้อมูลได้


ตั้งค่าให้ snmp ให้เครื่องคอมพิวเตอร์อื่น ๆ สามารถเข้ามา walk ข้อมูลได้
#pico /etc/snmp/snmpd.conf
ให้เพิ่ม # เป็น  #agentAddress udp:127.0.0.1:161
ให้ลบ # เป็น  agentAddress udp:161,udp6:[::1] ดังรูป

สำหรับค่า rocommunity [community string] คล้ายๆกับรหัส เพื่อป้องกันการเข้ามา walk เอาข้อมูลอุปกรณ์จากบุคคลภายนอกที่ไม่ได้รับอนุญาต  โดย default คือ public



ทำการติดตั้ง snmp-mibs-downloader
#apt-get install snmp-mibs-downloader
นำเข้า mibs โดยใช้คำสั่ง
#pico /etc/snmp/snmp.conf
ให้เพิ่ม # เป็น #mibs

ในที่สุดก็พร้อมติดตั้ง Cacti

ทำการการติดตั้ง Cacti และ Cacti Spine
#apt-get install cacti cacti-spine
แจ้งเตือนมีการเปลี่ยนแปลงค่า


แจ้งเตือนการตั้งค่า MySQL

แจ้งเตือนกำหนดรหัสผ่านของ Mysql server : testmysql!!


แจ้งเตือน กำหนดรหัสผ่านสำหรับฐานข้อมูล Cacti : testmysql!!

แจ้งเตือน ยืนยันรหัสผ่าน

แจ้งเตือน เลือกเว็บเซริฟเวอร์ เป็น apache2


ขั้นตอนการติดตั้ง Cacti ผ่านเว็บเบราเซอร์ พิมพ์ที่ช่อง URL : http://localhost/cacti


เลือก New Install และ Next ตามลำดับ

ตรวจสอบแพ็คเกจที่จำเป็นติดตั้งให้ครบ เมื่อตรวจสอบว่าครบถ้วนเลือก Finish

















เมื่อทำการติดตั้งเสร็จสิ้น ระบบจะเข้าสู่หน้าจอ Login ให้กรอกชื่อผู้ใช้
ชื่อผู้ใช้ เริ่มต้นคือ user: admin / pass: admin

เมื่อ Login เข้าระบบแล้ว ระบบจะบังคับให้เปลี่ยนรหัสผ่านใหม่

ให้กำหนด เป็น testadmin!! / testadmin!!
เมื่อทำการกำหนดรหัสผ่านใหม่เรียบร้อยแล้ว จะได้หน้าจอ ดังรูป


ขั้นตอนการเพิ่มอุปกรณ์สำหรับตรวจสอบการทำงานของอุุปกรณ์เครือ่าย
ให้เลือกเมนู  Device > Add

กรอกข้อมูลอุปกรณ์ Description , Hostname , Host Template ส่วนอื่นๆ ให้ใช้ค่าเริ่มต้น
เมื่อกรอกข้อมูลครบแล้วให้กดปุ่ม Create

ถ้า Cacti สามารถเรียกข้อมูลพื้นฐานจากโปรโตคอล SNMP ได้แสดงว่าสามารถใช้งานได้



การเลือกพอร์ตเน็ตเวิร์คสำหรับการตรวจสอบอุปกรณ์เครือข่าย
คลิ๊กที่ Create Graphs for this Host





เมื่อเลือก Create Graphs for this Host  หน้าจอจะแสดงรายละเอียดอุปกรณ์เครือข่ายว่ามีพอร์ตสำหรับที่จะตรวจสอบอะไรบ้าง  จากภาพให้เลือกพอร์ตที่มีสถานะ Up เพื่อทำการตรวจสอบปริมาณการวิ่งของข้อมูล  เมื่อทำการเลือกพอร์ตที่ต้องการแล้วให้กด Create

เมื่อ Create เสร็จแล้วจะแสดงผลลัพธ์ดังภาพ


ทำการสร้างกราฟ
ให้เลือก เมนู  Graph Trees > Default Trees > Add


เลือก Tree Item Type เป็น Host
เลือก Host เป็น ชื่ออุปกรณ์เครือข่ายที่เราเพิ่มเข้ามา


ให้เลือกแท็บ Graphs > Default Trees > Host nGate ARC

รอ 5 นาที Cacti จะสร้างกราฟเองอัตโนมัติ



เสร็จแล้ว ให้ทำการเพิ่มคำสั่งใน crontab ให้พิมพ์ crontab –e แล้วพิมพ์คำสั่งต่อไปนี้ลงไป

*/5 * * * * www-data php /usr/share/cacti/site/poller.php > /dev/null 2>&1

บันทึกแล้วทำการรีสตาร์ต crontab ด้วยคำสั่ง
#/etc/init.d/cron restart

ทำการตรวจสอบคำสั่งใน crontab ว่าสามารถทำงานได้หรือไม่
#php /usr/share/cacti/site/poller.php
ถ้าไม่พบ Error ก็แสดงว่าสำเร็จ

เย้เรียบร้อยแล้ว มาได้ ครึ่งทางแล้วครับ








วันพุธที่ 2 กรกฎาคม พ.ศ. 2557

ติดตั้ง Ubuntu 13.10 Desktop บน Vmware เพื่อลง CactiและWeather Map (ตอนที่2)

ระบบปฏิบัติการ Ubuntu จะให้สิทธิ์ผู้ที่ลงระบบ เป็นผู้ดูแลสูงสุด หรือ Super User

เมื่อทำการ Login เข้าระบบเรียบร้อยแล้วให้ทำการตรวจสอบเครือข่าย แล้วพิมพ์คำว่า terminal เพื่อทำการตรวจสอบหมายเลขไอพีของเครื่อง
พิมพ์คำสั่ง
$ ifconfig


จากหน้าจะพบ eth0  ซึ่งเป็นแลนด์การ์ดใบเดียว  
ไอพีเครื่องให้ดูที่  inet addr:172.21.50.204 mask 255.255.254.0

ตรวจสอบว่า Vm สามารถติดต่อกับเครื่องคอมพิวเตอร์เกต์เวย์ได้
$ ping 172.21.51.254

ทำการ Login เป็น Super User เพื่อทำการอัพเดทแพ็กเกจให้ใหม่ที่สุดจาก Repository
$sudo su
[sudo] password for testadmin: ใส่รหัสที่กำหนด
root@ubuntu:/home/testadmin#

ทำการ Update Package
#apt-get update
#apt-get upgrade

การตั้งค่า Date-Time
#date  ดูวัน เวลาของเครื่อง
# ln -sf /usr/share/zoneinfo/Asia/Bangkok /etc/localtime
ทดสอบ

#ls –l /etc/localtimels


#ntpdate time1.nimt.or.th



ทำการติดตั้ง Secue Shell 
เพื่อให้สามารถ Remote เข้ามาทำงานจากระยะไกลได้
#apt-get install openssh-server
สามารถทดสอบการใช้งาน
 openssh-server โดยใช้โปรแกรม SSH Secure Shell หรือ Putty ก็ได้


ทำการติดตั้ง Tasksel  
เป็นซอฟแวร์ช่วยในการติดตั้งแพ็กเกจต่าง ๆ ของ Ubuntu
#apt-get install tasksel

ทำการติดตั้ง LAMP Server
ทำการเรียก tasksel ขึ้นมาเพื่อเลือก ออพชั่นที่ต้องการ
#tasksel
เลือก Basic Ubuntu Server และ LAMP Server

เมื่อถึงขั้นตอนการติดตั้ง MySQL ระบบจะให้เรากำหนด รหัสเพื่อเข้าใช้ฐานข้อมูล MySQL
รหัสสำหรับผู้ใช้ root : testmysql!!

Confirm password : testmysql!!

แจ้งเตือน มีการเปลี่ยนแปลงการตั้งค่า


เลือกเว็บเซอร์เวอร์ เป็น apache2

เมื่อเสร็จสิ้นขั้นตอนการติดตั้งแพ็คเกจ LAMP Server เรียบร้อยแล้วให้ ตรวจสอบการทำงานของระบบ MySQL Apache และ PHP5
ตรวจสอบการทำงาน Mysql
#mysql –uroot –p
Enter password : testmysql!!

mysql> show databases;
mysql> exit;

ตรวจสอบการทำงานของ Apache
ให้เปิดเบราเซอร์ FireFox แล้วพิมพ์ที่ช่องURL:   http://localhost

ตรวจสอบการทำงานของ PHP5
#cd /var/www/
#pico phpinfo.php

พิมพ์คำสั่ง PHP ดังนี้
<?PHP
    phpinfo();
?>

เปิดเบราเซอร์พิมพ์ URL :  http://locahost/phpinfo.php


ตั้งค่า Time Zone บน php.ini
#pico /etc/php5/apache2/php.ini
ค้นหา date.timezone  เอา ; ออก แล้วพิมพ์
date.timezone = “Asia/Bangkok”
#pico /etc/php5/cli/php.ini
ค้นหา date.timezone  เอา ; ออก แล้วพิมพ์
date.timezone = “Asia/Bangkok”


ทำการติดตั้ง phpmyadmin
#apt-get install phpmyadmin
ใส่รหัส ที่ใช้กับ phpmyadmin
ใส่รหัส ที่ใช้กับ mysql
ยืนยันรหัส mysql
ตรวจสอบการทำงานของ phpmyadmin
เปิดเบราเซอร์พิมพ์ URL : locahost/phpmyadmin

เสร็จขั้นตอนการติดตั้งระบบเบื้องต้นเรียบร้อยแล้ว รอติดตามตอนต่อไปครับ






ติดตั้ง Ubuntu 13.10 Desktop บน Vmware เพื่อลง CactiและWeather Map (ตอนที่1)

ในการทดสอบ Ubuntu +Cacti+Weathermap นั้นแบ่งเป็น 4 ตอน
ตอนที่ 1 ติดตั้ง ตั้งค่า VM ที่จะทดสอบ
ตอนที่ 2 ติดตั้ง LAMP Server 
ตอนที่ 3 ติดตั้ง SNMP + Cacti
ตอนที่ 4 ติดตั้ง Weathermap Plug-in

การติดตั้งและตั้งค่า VMware  Workstation 
     โปรแกรม VMware เป็นโปรแกรมซึ่งใช้ในการสร้าง Virtual Machine (VM) หรือเครื่องคอมพิวเตอร์เสมือน คือเป็นการสร้างเครื่องคอมพิวเตอร์ขึ้นมาอีกเครื่อง หรือหลายๆเครื่อง (ถ้าแรมมากพอ) ภายในเครื่องของเราเอง โดยที่ไม่ต้องกทำการ format เครื่องเพื่อลงระบบใหม่ หรือ หาเครื่องคอมพิวเตอร์เพิ่ม

เข้าสู่หน้าจอโปรแกรม VMware Workstation

เข้าที่เมนู File > New Virtual Mechine   เพื่อเข้าสู่หน้า Wizard

เลือกที่ Install disc image file(iso)
กดปุ่ม Browse  เลือกตำแหน่งเก็บ ISO File ที่ใช้ในการติดตั้งระบบปฏิบัติการ
เลือก
Ubuntu 13.10-desktop-i386.iso

Personalize Linux
Full name : Ubuntu
Confirm : testadmin!!
User name :  testadmin
Password : testadmin!!

Virtul machine name : Ubuntu
Location: ให้เลือกที่เก็บ File 

กำหนด Maximum disk size : 20.0 GB (ค่านี้เป็น Default ปรับแต่งได้)
เลือก * Store virtual disk as a single file

กด Customize Hardware  เพื่อทำการปรับแต่งฮาร์ดแวร์ให้เหมาะสมการกับใช้งาน



การตั้งค่า VMware Workstation

Memory : 1 GB
Processors : 1
New CD/DVD : เลือกไฟล์ที่เราจะทำการ install (ไฟล์ iso)


Network Adapter : Bridged (Automatic)
      Bridged เป็นการต่อ LAN card ของ VM ออกไปที่ LAN card ของเครื่อง Host โดยไอพี ของ VM ที่ใช้งาน
จะเป็นคนละไอพีกับเครื่อง Host และสามารถให้เครื่องคอมพิวเตอร์อื่น ๆ ที่อยู่ใน Network สามารถติดต่อกับ VM เครื่องนี้ได้

USB Controller : Present
No Printer : Present
Display : Auto detect


ดำเนินการติดตั้ง Ubuntu

เมื่อทำการติดตั้งเสร็จแล้วจะปรากฏหน้านี้เพื่อให้ทำการ Login เข้าระบบ


การติดตั้ง Web Server For FreeBSD

โปรแกรมที่จะติดตั้งมีดังนี้
1. MySQL
เช็คก่อนว่ามีติดตั้งอยู่หรือเปล่า 
#pkg_ingo|grep ^mysql
คำสั่งติดตั้ง MySQL
#cd /usr/ports/databases/mysql51-server 
#make WITH_CHARSET=utf8 WITH_XCHARSET=all install clean

ทำ soft link ไฟล์ /usr/local/bin/mysqldump ไปยัง /usr/bin/mysqldump เพื่อให้บางโปรแกรมเรียกใช้งานตำแหน่งไฟล์ได้ถูกต้อง
# ln -s /usr/local/bin/mysqldump /usr/bin/mysqldump

กำหนดให้ MySQL ทำงานทุกครั้งตอนบูตเครื่อง
#pico /etc/rc.conf
แก้ไขไฟล์ /etc/rc.conf เพิ่มคำสั่งดังนี้
mysql_enable="YES"

สร้างไฟล์กำหนดค่าของ MySQL
# cp /usr/local/share/mysql/my-medium.cnf /usr/local/etc/my.cnf 
หรือถ้าระบบที่ใช้งานหนัก ๆ ใช้คำสั่งนี้

# cp /usr/local/share/mysql/my-large.cnf /usr/local/etc/my.cnf 
เราสามารถกำหนดค่าต่าง ๆ ได้จากไฟล์ /usr/local/etc/my.cnf
กำหนดค่าเริ่มต้น character ให้เพิ่มคำสั่งด้านล่างไว้ในส่วนของ [mysqld]
character-set-server = utf8 
กำหนดให้เคลียร์ log ที่เกินกว่า 99 วันออก (ค่าที่กำหนดได้ 1-99)
expire_logs_days = 99
กำหนดเวลา time out
wait_timeout = 60
เริ่มการทำงาน MySQL
เมื่อสั่งคำสั่งนี้ครั้งแรกโปรแกรมจะสร้างฐานข้อมูลและไฟล์ต่าง ๆ ของโปรแกรมขึ้นมา (จำเป็นต้องทำคำสั่งนี้ก่อนขั้นตอนต่อไปด้านล่าง)
# /usr/local/etc/rc.d/mysql-server start
กำหนดรหัสผ่าน MySQL ของผู้ใช้ root ให้แทนที่คำว่า NEW-PASSWORD ด้วยรหัสผ่านที่กำหนดขึ้นมาเองสำหรับผู้ใช้ root ของ MySQL (ข้อควรระวังให้จำรหัสผ่านให้ดีเพราะต้องใช้สำหรับกำหนดค่าในบทอื่น ๆ )
# /usr/local/bin/mysqladmin -u root -h localhost password 'NEW-PASSWORD'
การทดสอบว่ารหัสผ่านที่กำหนดไว้ถูกต้องหรือเปล่าให้เราลองเข้า shell ของ MySQL ดูโดยใช้คำสั่งดังต่อไปนี้
# mysql -u root -p'MYSQL-PASSWORD'
โปรแกรมจะถามรหัสผ่าน ถ้าเราใส่รหัสผ่านถูกต้องก็จะเข้าสู่ shell ของ MySQL จะแสดงหน้าจอรับคำสั่ง

คำสั่งตรวจสอบว่า mysql ทำงานหรือไม่
# ps -aux | grep mysql

2.Apache
คำสั่งตรวจสอบว่าติดตั้ง Apache แล้วหรือยัง
# pkg_info | grep apache

คำสั่งติดตั้ง Apache
# cd /usr/ports/www/apache22
# make rmconfig-recursive
# make config
# make SUEXEC_DOCROOT=/usr/local install clean

Apache option ตัวเลือกที่ต้องการติดตั้งกำหนดตามการใช้งาน ควรกำหนดตามนี้เพื่อให้รองรับการใช้งานต่าง ๆ ได้คลอบคลุม
ที่เป็นพื้นสีชมพูคือเลือกเพิ่มจากค่าเดิม ตัวเลือกที่สำคัญห้ามลืมคือ SUEXEC และ MYSQL
x THREADS Enable threads support in APR
x MYSQL Enable MySQL support for apr-dbd
x PGSQL Enable PostgreSQL support for apr-dbd
x SQLITE Enable SQLite support for apr-dbd
x SUEXEC Enable mod_suexec

คำสั่งสำหรับตรวจสอบค่าต่าง ๆ ของ Apache ที่ได้ติดตั้งไป
# httpd -V
คำสั่งสำหรับตรวจสอบค่าต่าง ๆ ของ SUEXEC
# suexec -V


แก้ไขไฟล์ /usr/local/etc/apache22/httpd.conf หาบรรทัดต่อไปนี้แล้วกำหนดค่าใหม่ตามด้านล่าง
ServerAdmin azimuthotg@gmail.com
ให้ลบเครื่องหมาย# ข้างหน้าออก 
AddHandler cgi-script .cgi
 ออกจากไฟล์ httpd.conf

กำหนดให้โหลด Accept Filter ในตอนเปิดเครื่อง
#pico /boot/loader.conf    แล้วเพิ่มคำสั่ง
accf_http_load="YES"     บันทึกแล้วออก
ถ้าต้องการโหลด Accept Filter เลยโดยยังไม่ต้องบูตเครื่องใหม่ ใช้คำสั่งดังนี้
# kldload accf_http


กำหนดให้ Apache เริ่มทำงานตอนเปิดเครื่อง

แก้ไขไฟล์ /etc/rc.conf

apache22_enable="YES"

เริ่มการทำงานของ Apache ใช้คำสั่งดังนี้
# /usr/local/etc/rc.d/apache22 start


ตรวจสอบการทำงานของ Apache ใช้คำสั่งดังนี้

# ps -ax | grep httpd


คำสั่งสำหรับตรวจสอบค่าสภาพแวดล้อมของ Apache ใช้คำสั่งดังนี้
# httpd -V

เมื่อเรียกไอพีจากโปรแกรม Browser จะแสดงข้อความว่า It works! แสดงว่า Apache ทำงานแล้ว

3.PHP

คำสั่งทดสอบว่า php รองรับ fastcgi หรือไม่
# /usr/local/bin/php-cgi -v

่ก่อนอื่่นต้องปรับแต่ง Apache22  ใ้ห้รู้จัก PHP5
#pico /usr/local/etc/apache22/httpd.conf

DirectoryIndex index.html     <-- เพิ่ม index.php เข้าไปในบรรทัดนี้

หาบรรทัดข้างล่างนี้
AddType application/x-compress .Z
แล้วเพิ่มบรรทัดข้างล่างเข้าไป
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .html
บันทึกแล้วออก


คัดลอกไฟล์ปรับแต่งค่า PHP
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
แก้ไขไฟล์ /usr/local/etc/php.ini เพื่อความเหมาะสมในการใช้งาน และปิดการทำงานของฟังก์ชั่นบางตัวที่อาจไม่ปลอดภัยต่อระบบ โดยแก้ไขตัวเลือกต่อไปนี้
memory_limit=16M
#register_globals=On
short_open_tag = On
#charset="tis-620"
default_charset="utf-8,tis-620"

user_ini.filename = ".user.ini"
disable_functions = show_source
max_execution_time = 900
post_max_size = 200M
include_path = ".:/usr/local/include/php:/usr/local/share/pear"
extension_dir = "/usr/local/lib/php/20090626"
upload_tmp_dir = "/tmp"
upload_max_filesize = 200M
date.timezone = Asia/Bangkok
session.save_path = "/tmp"
บันทึกแล้วออกจากไฟล์

ทดสอบว่าสามารถใช้งานได้หรือไม่
#pico /usr/local/www/apache22/data/phpinfo.php
แล้วพิมพ์ code ดังนี้
<?php 
phpinfo(); 
?>
บันทึกแล้วรีสตาร์ท
#shutdown -r now


4.PHP-Extension
ยังไม่มีการปรับแต่ง

5.phpMyAdmin
ทำ soft link
#cd /usr/local/www/apache22/data
#ln -s /usr/local/www/phpMyAdmin/ webmysql