วันอังคารที่ 3 มีนาคม พ.ศ. 2558

FTP ด้วย bash shell script

สร้าง bash shell script ให้ดึงไฟล์ .sql.bz2 ใน /home/backup_db ไปไว้ที่ FTP โฟลเดอร์ file_db
  - [host] = hostname หรือ ip server
  - [user] = ftp username
  - [pass] = ftp password

ตัวอย่างไฟล์

#!/bin/sh

cd /home/backup_db

ftp -n [host] << EOF
prompt
user [user] [pass]
cd file_db
binary
mput *.sql.bz2
bye
EOF

exit 0


แก้ปัญหา mysqldump กับ crontab

วิธีการแก้ปัญหา เมื่อสั่ง Crontab สำรองข้อมูล MySQL แล้วไม่ทำงานให้ หรือทำงานแปปเดียว

- ต้องใส่ตัวเรียกเต็มๆของโปรแกรม เช่น /usr/local/bin/mysqldump , /usr/bin/bzip2

ตัวอย่างไฟล์สำรองข้อมูล MySQL

#!/bin/sh

today=$(date '+%d')

/usr/local/bin/mysqldump -uUSER -pPASS --all-database --lock-all-table| /usr/bin/bzip2 -c > /home/backup_db/db-date"$today".sql.bz2

วันจันทร์ที่ 23 กุมภาพันธ์ พ.ศ. 2558

การประยุกต์ใช้ Webmin Samba Ftp Apache และให้ User Authen กับ Radius (Ubuntu14.04)

1. ติดตั้ง webmin  ตามลิงก์ http://sulkiflee-n.blogspot.com/2013/02/webmin-ubuntu.html
#apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
#wget http://prdownloads.sourceforge.net/sourceforge/webadmin/webmin_1.690_all.deb
#dpkg --install webmin_1.690_all.deb

2. ติดตั้ง Apache
#apt-get install apache2
#cd /etc/apache2/mods-enabled/
#ln -s ../mods-available/userdir.load
#ln -s ../mods-available/userdir.conf

3. ติดตั้ง Ftp
#apt-get install vsftpd
แก้ไฟล์ /etc/vsftpd.conf
#nano /etc/vsftpd.conf
local_umask = 002
anonymous_enable=YES
local_enable=YES
write_enable=YES
allow_writeable_chroot=YES
user_sub_token=$USER
local_root=/home/$USER
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
#touch /etc/vsftpd.chroot_list

4. ติดตั้ง Samba
#apt-get install samba samba-common python-glade2 system-config-samba
แก้ไฟล์ /etc/samba/smb.conf
#nano /etc/samba/smb.conf
unix password sync = yes

[aritc]
comment = File Server Share
path = /var/www/html/aritc
browsable = yes
guest ok = yes
read only = no
create mask = 0755

[homes]
comment = User Directories
browseable = no
valid users = %S
writable = yes
create mask = 0755
directory mask = 0755

5. ติดตั้ง pam radius module  ตามลิงก์ http://opensource.cc.psu.ac.th/ติดตั้ง_pam_radius_module_บน_ubuntu
#apt-get install libpam-radius-auth

6. เพิ่ม User ใช้งาน
#sudo useradd -m -b /home -s /bin/bash user1.a
#ln -s /home/user1.a/public_html/ /var/www/html/user1.a

7. การใช้งาน
   - อัพโหลดไฟล์โดยใช้ samba แบบ public รูปแบบ \\ip server
   - อัพโหลดไฟล์ส่วนตัวโดยใช้ Ftp (YRU Authen) รูปแบบ ftp://ip server
     หากต้องการแชร์ ไฟล์ให้คนอื่นเห็น ให้สร้างโฟลเดอร์ public_html แล้วอัพไฟล์ใส่ในนั้น

8. การเรียกดูแบบ URL ผ่าน Browser
   - http://ip server

วันจันทร์ที่ 5 มกราคม พ.ศ. 2558

ตั้งค่าให้ Connect MySQL จากที่อื่นได้ (Ubuntu)

แก้ไขไฟล์  /etc/mysql/my.cnf
nano /etc/mysql/my.cnf

port = 3306  (ตั้งค่า port)
#bind-address = 127.0.0.1  (ใส่ # ข้างหน้า Access ได้จากทุกเครื่อง แต่ไม่ค่อยปลอดภัย)

เสร็จแล้วบันทึก แล้ว restart mysql
/etc/init.d/mysql restart

ขั้นต่อไปต้อง Grant Access ให้ User เพื่อให้ใช้ DB ได้
mysql -u root -p

mysql> GRANT ALL ON ชื่อฐาน.* TO ผู้ใช้@'%' IDENTIFIED BY 'รหัสผ่าน';
mysql> quit

ทดสอบเชื่อมต่อได้เลย

วันจันทร์ที่ 15 ธันวาคม พ.ศ. 2557

การตั้งค่า eth0 ให้ตรงกับ LAN Card (Ubuntu)


ให้ไปแก้ไขที่ไฟล์
nano /etc/udev/rules.d/70-persistent-net.rules

ตัวอย่างไฟล์
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:a9:cc:ec", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"


** หากมี LAN Card หลายช่องจะขึ้น SUBSYSTEM หลายอัน **

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

ตั้งค่า vsftpd Ubuntu Linux 13.10

แก้ Config vsftpd (เพิ่มเติมจาก Sulkiflee.n)
(http://sulkiflee-n.blogspot.com/2013/06/ftp-server-on-ubuntu-1204.html)

local_enable=YES
write_enable=YES
local_umask=022  #เพื่อให้อัพไฟล์แล้วรันได้ 644
chroot_local_user=YES
chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list  #ปิดการใช้งานเพื่อความปลอดภัย
local_root=public_html #ปิด
allow_writeable_chroot=YES #เพิ่ม

การ Config ให้ Apache อ่าน public_html ของ User

สร้าง link ให้ไปอ่านใน Directory ของ User
cd /etc/apache2/mods-enabled/
ln -s ../mods-available/userdir.load
ln -s ../mods-available/userdir.conf

ทำการรีสตาร์ท Apache