ผมก็ปวดหัวกับปัญหานี้ มาหลายวันแล้วเหมือนกัน ก็ตั้งแต่ วันที่ 7 ม.ค. 52 อยู่ดี ๆ Patch Server ของ Asiasoft
FTP 203.144.132.11 เริ่มมีปัญหา อาการ refused connection บ่อยมาก จนเกิดอาการ ไม่สามารถ Download Patch
ของค่าย Asiasoft ได้สะดวก ได้บ้าง ไม่ได้บ้าง แล้วแต่ลมฟ้า อากาศ จะเื้อื้ออำนวย เมื่อได้แจ้งไปทาง Asiasoft ก็มีการ
ตอบกลับมาว่า Server และระบบ Network ของทางบริษัท ปกติทุกประการ เมื่อได้ยินคำตอบแบบนี้แล้ว ก็มีทางเลือกให้
สองทางคือ ให้ลูกค้าเลิกเล่นเกมส์ค่ายนี้ เพราะทนปัญหาที่เกิดขึ้นไม่ไหว ทนเสียงลูกค้าบ่นในร้านไม่ไหว หรือจะลองมาทำ
Patch Server เป็นของตัวเองไปซะเลย ถึงจากยากซะหน่อย ก็เป็นทางเลือกนึง ทำไงได้บริษัท ไม่ช่วย เราก็ต้องพึ่งตัวเองก่อน
ขั้นตอนในการทำ Patch Server หรือ FTP Server เพื่อเก็บแพทเกมส์ แล้ว redirect ให้เกมส์ค่าย Asiasoft มา Patch จาก Server ที่เราสร้างขึ้นมาเอง
หมายเหตุ : วิธีการต่าง ๆ จะอ้างอิงจาก Ubuntu MultiWAN Server จากทาง Hadyai Internet นะครับ
ถ้าเป็น Server OS ตัวอื่น จะต้องนำไปประยุกต์ใช้งานเองนะครับหมายเหตุ อีกครั้ง : บทความนี้เป็นเพียงการเสนอแนะ ในการแก้ปัญหา ไม่เกี่ยวข้องกับทาง Asiasoft ใด ๆ
ทาง Hadyai Internet จะไม่รับผิดชอบความเสียหายหากเกิดขึ้นจากการทำตามบทความนี้
คุณจะต้องยอมรับความเสี่ยงที่อาจจะเกิดขึ้นเอง
ถ้ายอมรับหมายเหตุด้านบนแล้ว ก็มาเริ่มกันได้
ขั้นตอนในการติดตั้งมีดังนี้ครับ
1. ติดตั้งโปรแกรม vsftpd
ทำการติดตั้งโปรแกรม vsftpd โดยใช้คำสั่ง apt-get install vsftpd จะได้
root@ubuntu:~#
apt-get install vsftpdReading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
update-inetd
The following NEW packages will be installed:
update-inetd vsftpd
0 upgraded, 2 newly installed, 0 to remove and 43 not upgraded.
Need to get 121kB of archives.
After this operation, 537kB of additional disk space will be used.
Do you want to continue [Y/n]?
Get:1
http://mirror1.ku.ac.th intrepid/main update-inetd 4.30 [15.1kB]
Get:2
http://mirror1.ku.ac.th intrepid/main vsftpd 2.0.7-0ubuntu1 [106kB]
Fetched 121kB in 0s (129kB/s)
Preconfiguring packages ...
Selecting previously deselected package update-inetd.
(Reading database ... 55695 files and directories currently installed.)
Unpacking update-inetd (from .../update-inetd_4.30_all.deb) ...
Selecting previously deselected package vsftpd.
Unpacking vsftpd (from .../vsftpd_2.0.7-0ubuntu1_amd64.deb) ...
Processing triggers for man-db ...
Setting up update-inetd (4.30) ...
Setting up vsftpd (2.0.7-0ubuntu1) ...
Adding system user `ftp' (UID 112) ...
Adding new user `ftp' (UID 112) with group `nogroup' ...
Not creating home directory `/home/ftp'.
* Starting FTP server: vsftpd
...done.
root@ubuntu:~#
โปรแกรมจะทำการ add user ftp group nogroup และสร้าง directory /home/ftp ไว้ให้
2. ปรับแต่งไฟล์ /etc/vsftpd.conf
listen=YES
listen_address=192.168.200.1 <<< หมายเลข IP LAN ของ Server
listen_port=21
anonymous_enable=YES
local_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key3. เพิ่ม user t3upload สำหรับเกมส์ Audition
เนื่องจากเกมส์ Audition จะใช้ user t3upload และ password dW1msPAS ในการติดต่อเพื่อ download patch
ดังนั้นเราจะต้องสร้าง user t3upload ขึ้นมา เพื่อให้เหมือนกับที่โปรแกรมใช้งาน โดยทำดังต่อไปนี้
ใช้คำสั่ง
useradd -g nogroup -d /home/ftp -s /bin/false t3upload ในการเพิ่ม user
ใช้คำสั่ง
passwd t3upload ในการตั้ง password (จะต้องตั้งเป็น dW1msPAS เท่านั้น)
root@ubuntu:~#
passwd t3uploadEnter new UNIX password: <<พิมพ์ dW1msPAS>>
Retype new UNIX password: <<พิมพ์ dW1msPAS อีกครั้ง>>
passwd: password updated successfully
root@ubuntu:~#
4. ปรับแต่ง config เพื่อความปลอดภัยของระบบ
เพิ่มบรรทัด t3upload ไว้ในไฟล์ /etc/vsftpd.chroot_list
เพิ่มบรรทัด /bin/false ไว้ในไฟล์ /etc/shells
เปลี่ยน owner directory /home/ftp เป็น user ที่ต้องการเพื่อใช้ upload file
เช่น
chown xxxkung.xxxkung /home/ftp เป็นต้น
จะทำให้สามารถใช้ user xxxkung ในการ upload file ได้ ผ่าน WinSCP
5. ทำการ Redirect host 203.144.132.11 มายัง Server ของเรา
ใช้คำสั่ง
iptables -A OUTPUT -t nat -d 203.144.132.11 -p tcp --dport 21 -j DNAT --to-dest 192.168.200.1:21*
*ปรับเปลี่ยน ip lan ของ server ตามที่ได้ตั้งไว้
ใช้คำสั่ง
iptables -D OUTPUT -t nat -d 203.144.132.11 -p tcp --dport 21 -j DNAT --to-dest 192.168.200.1:21เพื่อยกเลิกการ redirect
=============================================================
เมื่อสร้าง Patch Server ของเราเองเสร็จเรียบร้อยแล้ว ก็ทำการ download file จาก patch server มาติดตั้งใน
Server ของเรา โดย download จาก
ftp://203.144.132.11/ เลือกเฉพาะไฟล์ที่จำเป็น และใช้งานเท่านั้น
แล้วก็ upload ใส่ Server ของเรา
เพียงเท่านี้เราก็จะได้ Patch Server เป็นของตัวเอง