วันนี้จะมาเพิ่มแลนให้ server กันครับเพื่อต่อเนตได้เพิ่มขึ้นอีก
Spec เครื่องที่ทดสอบ
CPU : P4 3.0 Ghz Bus 533 Socket 478
Ram:DDR2 1 Gb
HDD:Ide Samsung 40 GB
M/B:Biostar G31-M4
Lan Card : Tp-Link TG-3269 10/100/100
ก่อนอื่นต้องออกตัวไว้ก่อนนะครับว่าผมไม่ใช่คนที่เก่งอะไรมากมายก็พึ่งจะทำเป็นได้ไม่ถึงเดือนจากเวพแห่งนี้
หัดลง Clear OS ก็หลายรอบทำเสร็จ Format ลงใหม่อยู่มาวันนึงเกิดทะลึ่งอยากใส่กาดร์แลนเพิ่ม
ก็จัดการใส่ซะปรากฏว่าใส่แล้วเครื่องมองไม่เห็นซะงั้นแล้วจะคอนฟิกยังไงละทีนี้ ก็ได้เซิทหาข้อมูลอยู่เป็นวันๆ
ทั้งไทยและฝรั่ง จนได้วิธีมาแต่ก็ไม่รู้ว่ามันเป็นวิธีที่ถูกต้องตามหลักหรือเปล่าแต่มันก็ได้ผลเลยอยากจะแบ่งปันสิ่ง
นี้ให้กับคนที่ยังทำไม่ได้ให้ทำได้กันเพื่อเป็นการตอบแทนน้ำใจเวพแห่งนี้ที่ให้ความรู้ผมจนทำ Server สำเร็จ
เรามาเริ่มกันเลยดีกว่าครับ
อันดับแรกใช้โปรแกรม Putty ล็อกอินเข้าไป
พิมพ์ ifconfig กด Enter เพื่อเชคดูว่าตอนนี้เครื่องเรามีแลนกี่ตัวดังรูปภาพ
ในรูปจะเห็นว่ามี Eth0 กับ Eth1 ซึ่งตอนติดตั้ง Clear OS ครั้งแรกผมได้ใส่การ์ดแลนไป 1ใบ รวมกับ ออนบอด
อีก 1 เลยกลายเป็นสองซึ่งเราสามารถต่อเนตได้แต่ 1 เส้น เพราะอีก 1 พอตแลนจะต้องต่อไปยัง Hub เพื่อให้ใช้เนตได้หลายๆเครื่อง
ให้จำค่า Mac ของกาดร์แลนแต่ละตัวไว้ด้วยนะครับหรือจะจดไว้ก็ได้กันลืมเมื่อดูเสร็จแล้วก็ทำการปิด server ใส่การ็ดแลน
อีกตัวให้เรียบร้อยสายแลนจะต่อรึไม่ต่อก็ได้แล้วเปิดเครื่อง server อีกครั้งนึง
ใช้โปรแกรม Putty ล็อกอินเข้า Server เช่นเคยแล้ว
พิมพ์ ifconfig กด Enter เชคดูอีกครั้งว่ามีการ์แลนเพิ่มขึ้นมารึเปล่าถ้ายังไม่เห็นให้พิมพ์
ifconfig -a กด Enter จะสังเกตุเห็นว่ามี ค่า Mac เพิ่มขึ้นมาอีกค่าซึ่งเป็นของการ์ดแลนตัวใหม่นั้นเอง
ให้จดค่าแมคที่เพิ่มขึ้นมาใหม่เอาไว้ก่อนจากนั้น ใช้โปรแกรม winSCP ล็อกอินเข้า serverc แล้วเข้าไปที่
ect/sysconfig/hwconf
คลิกขวาแล้วเลือกที่ Edit เลื่อนลงไปเรื่อยๆจนเจอ Class Network จะสังเกตุเห็น แลนอยู 1 ตั้วที่
Device=Ethจะไม่มีตัวเลขต่อท้ายก็คือกาดร์แลนที่เพิ่มเข้ามาใหม่นั้นเองให้เราใส่ตัวเลขลงไปต่อจากกาดร์แลนตัวสุดท้าย
ในตัวอย่างผมใส่เป็น Device=Eth2แล้วทำการเซพปิดหน้าต่างออกไปจากนั้นเข้าไปที่
ect/sysconfig/network-scripts เลื่อนลงไปล่างๆจะเห็น ifcfg-eth0 และ ifcfg-eth1
ซึ่งเป็นของการ์ดแลนก่อนหน้านี้ให้เราก็อฟปี้ตัวไหนก็ได้มาไว้ที่เครื่องในตัวอย่างผมก็อปปี้ ifcfg-eth1ลงมาที่เครื่อง
แล้วใช้โปรแกรม Edit + เปิดไฟล์ขึ้นมาจะมีข้อความข้างในดังภาพ
แล้วทำการแก้ไข
Device=Ethที่เราต้องการใช้ในตัวอย่างแก้เป็น Eth2
HWADDR="90:F6:52:E0:0E:30"ใส่ค่า Mac ของกาดร์แลนตัวใหม่ลงไปแทน
แล้วกดที่ Save เราจะได้ไฟล์มาอีก 1ไฟล์ชื่อ ifcfg-eth1.bak ซึ่งเป็นไฟล์ต้นฉบับไฟล์ที่เราแก้ไขจะไม่มี .bak ต่อท้ายนะครับอย่าสับสน
เมื่อเซพเสร็จแล้วให้ทำการ Rename ชื่อเป็น ifcfg-eth2 เพราะเราจะตั้งเป็น Eth2 แล้วทำการโยนไฟล์ขึ้นไปไว้ server ตรงที่เดิม
ect/sysconfig/network-scripts สั่ง reboot เครื่อง server ของเราซึ่งเมื่อ reboot มาแล้วถ้าใครต่อจอไว้กับ server
ก็จะเห็นว่า Eth2 นั้น เฟล ก็ไม่ต้องตกใจนะครับเป็นเพราะค่าคอนฟิกมันไปซ้ำกับ Eth1 ที่เราก็อปปี้มานั้นเอง
เมื่อ reboot มาแล้วให้เข้าไปในหน้า เวพ คอนฟิกของเรา ด้วย Web Browser
https://IP server:81 ล็อกอินเข้าไปแล้วไปที่ Network-----IP Setting ก็จะเห็นมี Eth2เพิ่มขึ้นมาถ้ายังไม่ได้เสียบสายแลน
ก็ทำการเสียบสายให้เรียบร้อยนะครับแล้วคลิกที่ Edit เพื่อทำการคอนฟิกค่าใหม่ลงไป
เสร็จแล้วใช้โปรแกรม Putty ล็อกอินเข้า Server อีกครั้ง
พิมพ์ service network restart กด Enter ถ้าขึ้น OK หมดก็เป็นอันใช้ได้แล้วครับ
สุดท้ายนี้ก็ขอให้เพื่อนเวพ ICT ทุกท่านจงรำๆรวยๆหล่อสวยๆกันทุกคนนะครับ
เกี่ยวกับ Linux Server
วันศุกร์ที่ 6 ธันวาคม พ.ศ. 2556
วิธีติดตั้ง VirtualBox บน ClearOS 5.2 sp1 + phpvirtualbox
วิธีติดตั้ง VirtualBox บน ClearOS 5.2 sp1 + phpvirtualbox
yum groupinstall "Development Tools"
yum install kernel-devel
yum install php-*
service httpd restart
cd /var/tmp
wget http://download.virtualbox.org/virtu...el5-1.i386.rpm
wget http://download.virtualbox.org/virtu...racle_vbox.asc
rpm --import oracle_vbox.asc
rpm --checksig VirtualBox......
yum localinstall VirtualBox-4.0.8....
wget http://download.virtualbox.org/virtu...8.vbox-extpack
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.0.8-71778.vbox-extpack
/usr/sbin/useradd -r -m vbox
/usr/sbin/usermod -a -G vboxusers vbox
สั่งรัน Virtualbox
su vbox -c '/usr/bin/vboxwebsrv -b --logfile /dev/null >/dev/null'
วิธีทำให้ Virtualbox รันทุกครั้งที่เปิดเครื่อง
cd /etc/rc.d
touch /etc/rc.d/start.vboxwebsrv
echo '#!/bin/bash' >> start.vboxwebsrv
echo "su vbox -c '/usr/bin/vboxwebsrv -b --logfile /dev/null >/dev/null'" >> start.vboxwebsrv
chmod +x /etc/rc.d/start.vboxwebsrv
echo '/etc/rc.d/start.vboxwebsrv' >> /etc/rc.d/rc.local
จากนั้นก็ทำการสร้าง VM ใน ClearOS ไ้ด้เลยครับ ต้องใช้คำสั่ง commandline นะครับ ค้นหาเอาเองเด้อ ;D
v
v
v
v
แต่เรามีวิธีสร้าง VM ที่ง่ายกว่านั้นมาฝาก นั้นก็คือ phpvirtualbox ครับ
ติดตั้งกันเลยครับ
wget http://phpvirtualbox.googlecode.com/...lbox-4.0-7.zip
unzip phpvirtualbox....
mv phpvirtualbox-4.0-7/* /var/www/html/
ตั้งพาสกันสักนิด
passwd vbox
New UNIX password: xxxxx
Retype password: xxxxx
แก้ไขไฟล์อีกนิด
vi /var/www/html/config.php --- เปลี่ยนชื่อไฟล์ config.php.example เป็น config.php ก่อน
var $username = 'vbox';
var $password = 'vboxpassword'; --- ใส่พาสที่ตั้งไปก่อนหน้านี้
ทดสอบ log in ผ่านหน้าเว็บกันเลย
http://192.168.x.xxx
user: admin
pass: admin
VirtualBox Network Adapter
Network Adapter ของ VirtualBox นั้นจัดการไม่ยากครับ เพียงแต่ต้องเข้าใจ Concept ของมันเสียหน่อย เนื่องจาก Network บน VirtualBox นั้นได้แบ่งตามลักษณะการเชื่อมต่อเพื่อกำหนดการใช้งานตามสภาพ Network จริง และ Network จำลอง และคุณควรที่จะเรียนรู้มันเพื่อเป็นประโยชน์สำหรับการทำ Lab จำลอง Server ในกรณีต่าง ๆ ได้
Network Adapter ของ VirtualBox ที่เราจะใช้ในการทำ Lab ต่อ ๆ ไปนั้น ผมจะใช้อยู่ 4 ประเภท ซึ่งก็ครอบคลุมการใช้งานเสมือน Network จริงพอดู โดยแต่ละ Guest OS นั้นสามารถมี Network Adapter ได้สูงสุด 4 Adapter และแต่ละประเภทก็มีดังนี้
NAT - เป็น Network ประเภท Network Address Translation กล่าวคือ Guest OS นั้นจะถูกกำหนดให้มี IP Address ขึ้นมา 1 ชุด ซึ่ง IP Address ที่ได้มานั้น ไม่ได้เอามาจาก DHCP ที่ไหน แต่ตัว VirtualBox ได้กำหนดให้กับ Guest OS นั้นเองตาม Network Interface Card ที่ใช้งาน เช่น หากเลือกใช้งาน Adapter 1 Guest OS นั้นก็จะถูกกำหนดให้มี IP Address เป็น 10.0.2.0/24, หากเลือกใช้งาน Adapter 2 Guest OS ก็จะถูกกำหนดให้มี IP Address เป็น 10.0.3.0/24
ซึ่ง Guest OS นั้นจะสามารถออกสู่ Internet ได้เหมือนกับเครื่อง Host OS โดยจะถูกควบคุมจาก VirtualBox's NAT engine ซึ่งคุณไม่จำเป็นต้องไปตั้งค่าใด ๆ ทั้งนั้น โดยค่า Default มันก็จะสามารถแจกจ่าย IP Address ออกมาให้ Guest OS เองได้เลย
Bridged Adapter - เป็น Network ที่เชื่อมต่อระหว่าง Guest OS กับ Network จริงที่ Host OS ใช้งานอยู่ กล่าวคือ Guest OS จะถูกมองว่าเป็นส่วนหนึ่งของ Network จริง หรือเป็นเครื่อง Server ที่มีอยู่จริงใน Network หากมีการแจกจ่าย IP Address ผ่าน DHCP ตัว Guest OS เองก็จะได้รับ IP Address ไปด้วย ซึ่งเหมาะสำหรับการทดสอบในระบบสภาพแวดล้อมจริง กับ Lab ต่าง ๆ ที่อยู่ใน Guest OS
เมื่อเลือก Bridged Adapter ก็จะต้องเลือก Network Card ที่เราใช้งานจริงอยู่ด้วย หากเราเชื่อมต่อผ่านสาย LAN ก็ให้เลือก Network Card ที่กำลังใช้งานกับสาย LAN หรือหากเชื่อมต่อผ่าน Wireless ก็ให้เลือก Network Card ที่กำลังใช้งานกับ WLAN เพราะ Guest OS จะเลือก Network Card ดังกล่าวเป็นตัวกลางสำหรับวิ่งผ่านเข้าออกของข้อมูล ระหว่าง Guest OS กับ Network จริง
Internal Network - เป็น Network ที่ใช้ได้เฉพาะ Guest OS ด้วยกันเองเท่านั้น ไม่สามารถเชื่อมต่อออกมายัง Network ที่ใช้งานอยู่จริงได้
โดยในช่อง Name เราสามารถพิมพ์ชื่อ Network เพื่อกำหนดขอบเขต Network ของ Guest ได้ เช่น หากมี Guest OS 3 ตัวทำงานอยู่ และมี 2 ตัวที่ถูกกำหนดให้ใช้ Internal Network ชื่อว่า intnet1 และ Guest OS อีก 1 ตัวถูกกำหนดให้ใช้ intnet2, กรณีนี้จะมีเพียง Guest OS 2 ตัวเท่านั้นที่สามารถติดต่อสื่อสารกันได้ ส่วน Guest OS อีกตัวจะไม่สามารถติดต่อกับ Guest OS อื่นได้เลย
Host-only Adapter - เป็น Network ที่ใช้สำหรับเชื่อมต่อระหว่าง Host OS และ Guest OS เท่านั้น
Network Adapter ประเภทนี้ จะอาศัย Network Card ที่ถูกสร้างขึ้นมาจาก VirtualBox เอง โดยเมื่อมีการติดตั้ง VirtualBox ครั้งแรก หากเราสังเกต จะมี Network Card ถูกสร้างขึ้นมาบน Host OS ชื่อว่า VirtualBox Host-Only Network ซึ่งตัว Guest OS เองจะเชื่อมต่อกับ Host OS ผ่าน Network Card นี้ ไม่ใช่ Network Card จริงที่ใช้งานอยู่
Guest OS ที่เลือก Host-only Adapter จะได้รับ IP Address มาจาก VirtualBox โดยจะมี Service DHCP สำหรับ VirtualBox เองทำงานอยู่เพื่อแจกจ่าย IP Address ให้กับ Guest OS หรือจะเลือกปิด DHCP แล้วกำหนด IP Address ให้กับ Guest OS เองก็ได้ ผ่านเมนู File > Preferences > Network
สิ่งหนึ่งที่ต้องระวังคือ Guest OS จะต้องมี IP Address ที่อยู่ในเครือข่ายเดียวกับ Host-Only Network Card ด้วย จึงจะสามารถติดต่อกับ Host OS ได้ ซึ่งสามารถตั้งค่า IP Address ของ Host-Only Network ได้ผ่านทางหน้านี้
ในหน้า Network นี้ VirtualBox เองก็สามารถสร้าง Host-Only Network Card ขึ้นมาเพิ่มอีกได้ด้วย
คราวนี้ก็พอจะสามารถจัดการกับรูปแบบ Network ที่ใช้ทดสอบ Lab เกี่ยวกับ Windows Server ที่จะมีในบทความต่อไปได้แล้วนะครับ ถ้าอยากทดสอบก็ลองไปติดตั้ง Windows อะไรก็ได้ แล้วทดสอบ Ping หากันระหว่าง Guest OS, Host OS ดูเอาก็ได้ครับ
การเชื่อมต่อเนตเวิร์คเข้าสู่เครื่อง guest ใน VirtualBox
โดย default แล้ว Virtual Box นั้น เครื่องที่เป็น Guest (OS ที่ run ใน VirtualBox) จะใช้ NAT ในการเชื่อมต่อกับ Network ภายนอก (Network ของเครื่อง Host (OS หลักของเครื่องเราจริงๆ) )
แต่ปัญหาคือมันยอมให้ traffic request ออกด้านนอกได้ แต่มันไม่ยอมให้ traffic request จากด้านนอกเข้ามานี่สิ (คือยอมให้เราเข้าเวบด้านนอกได้ แต่ถ้าเราอยากจะ access ไปที่ web server ที่เราตั้งเอาไว้ใน guest จะยังทำไม่ได้)
วิธีแก้อย่างง่ายๆ คือ ใช้ VBoxManage ในการทำ Port Forwarding ของเครื่อง Host เพื่อไปยังเครื่อง Guest
เริ่มจาก ปิดตัว VirtualBox ซะก่อน (จะแค่สั่ง pause แล้ว save state ก็ได้)
ในเครื่อง Host เข้า Command Line (Cmd)
ถ้าไ่ม่ได้ตั้งค่า path ของ VirtualBox ให้ cd ไปที่ VirtualBox ที่เราลงไว้ เช่น C:\Program Files\innotek VirtualBox
แ้ล้วสั่งคำสั่งต่อไปนี้
1. ตั้งว่าจะใช้โปรโตคอลอะไร
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP
2. ตั้งว่าจะให้ไปเข้า Port อะไรของเครื่อง Guest
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
3. ตั้งว่าจะใช้ port อะไรของเครื่อง Host
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8888
โดย yourguestosname ให้แทนด้วยชื่อ Guest OS ที่ได้ตั้งเอาไว้ เช่นของผมตั้งไว้ว่า GUESTWIN
ส่วนคำว่า http ก็สามารถแทนด้วยชื่อ application อื่นๆที่ต้องการ เช่น ftp
แล้วก็หมายเลขก็ตาม app ที่เราให้บริการ
พอเซตค่าเสร็จก็เปิดให้ VirtualBox ทำงานก็จะพร้อมทำงานได้
จากตัวอย่างคือผมจะเข้า web server ของเครื่ือง Guest ที่เปิด port 80 เอาไว้ โดยสามารถพิมพ์ URL ใน browser ของเครื่อง host คือ http://localhost:8888/index.html เป็นต้น
ระบบที่ผมใช้ทดลอง
Host: Windows XP SP2
Guest: Windows Server 2003 SP2
VirtualBox: Version 1.5.6
แต่ปัญหาคือมันยอมให้ traffic request ออกด้านนอกได้ แต่มันไม่ยอมให้ traffic request จากด้านนอกเข้ามานี่สิ (คือยอมให้เราเข้าเวบด้านนอกได้ แต่ถ้าเราอยากจะ access ไปที่ web server ที่เราตั้งเอาไว้ใน guest จะยังทำไม่ได้)
วิธีแก้อย่างง่ายๆ คือ ใช้ VBoxManage ในการทำ Port Forwarding ของเครื่อง Host เพื่อไปยังเครื่อง Guest
เริ่มจาก ปิดตัว VirtualBox ซะก่อน (จะแค่สั่ง pause แล้ว save state ก็ได้)
ในเครื่อง Host เข้า Command Line (Cmd)
ถ้าไ่ม่ได้ตั้งค่า path ของ VirtualBox ให้ cd ไปที่ VirtualBox ที่เราลงไว้ เช่น C:\Program Files\innotek VirtualBox
แ้ล้วสั่งคำสั่งต่อไปนี้
1. ตั้งว่าจะใช้โปรโตคอลอะไร
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP
2. ตั้งว่าจะให้ไปเข้า Port อะไรของเครื่อง Guest
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
3. ตั้งว่าจะใช้ port อะไรของเครื่อง Host
VBoxManage setextradata "yourguestosname" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8888
โดย yourguestosname ให้แทนด้วยชื่อ Guest OS ที่ได้ตั้งเอาไว้ เช่นของผมตั้งไว้ว่า GUESTWIN
ส่วนคำว่า http ก็สามารถแทนด้วยชื่อ application อื่นๆที่ต้องการ เช่น ftp
แล้วก็หมายเลขก็ตาม app ที่เราให้บริการ
พอเซตค่าเสร็จก็เปิดให้ VirtualBox ทำงานก็จะพร้อมทำงานได้
จากตัวอย่างคือผมจะเข้า web server ของเครื่ือง Guest ที่เปิด port 80 เอาไว้ โดยสามารถพิมพ์ URL ใน browser ของเครื่อง host คือ http://localhost:8888/index.html เป็นต้น
ระบบที่ผมใช้ทดลอง
Host: Windows XP SP2
Guest: Windows Server 2003 SP2
VirtualBox: Version 1.5.6
Posted by KaizerWing at 01:25
สมัครสมาชิก:
บทความ (Atom)