Posts Tagged ‘FreeBSD’

FreeBSD tip: SUDO Email alert

Posted by อัทศักดิ์ วงศ์กิตตะ on Sunday, May 9th, 2010

แนวคิดคือ Server ที่เราดูแลมี System Admin หลายคนที่สามารถ Access เป็น Root ได้ แล้วเราจะรู้ได้ไงว่า ใคร Login เข้าไปยัง Server ทางออกของผมคือ Allow User ที่ sshd ให้มีแค่ admin เท่านั้นที่เข้าได้ และให้ sudo เป็น root และจะมีอีเมล์แจ้งเตือนมายัง ผู้ดูแล เพื่อทราบว่าเข้าไปทำอะไร

1. sshd ให้แก้ไขไฟล์ /etc/ssh/sshd_config เพิ่ม AllowUsers เช่น
AllowUsers auttasak

2. แก้ไข /usr/local/etc/sudoers ดั่งนี้

Defaults mailto=admin@domain.com,mail_always
root ALL=(ALL) ALL
auttasak ALL=(ALL) NOPASSWD: ALL

หลังจากนั้นให้ทำการ Restart SSH ครับ เมื่อใดที่มีคน sudo จะมีอีเมล์แจ้งไปยัง admin@domain.com แบบนี้ทำให้เราทราบได้ว่ามีคน sudo เป็น root เมื่อใดบ้าง

Use wget on FreeBSD Ports with proxy

Posted by อัทศักดิ์ วงศ์กิตตะ on Wednesday, April 28th, 2010

เพื่อนๆคงเจอปัญหาเมื่อต้องการติดตั้งโปรแกรมผ่าน Ports ของ FreeBSD ซึ้งจะต้องโหลด Source จากต่างประเทษปต่ปัญหาคือ ISP บางเจ้าในไทย Link Inter ช้าเหลือเกิน ทางออกคือใช้ proxy แทน มาดูวิธีเลยครับ

echo "FETCH_CMD=wget" >> /etc/make.conf
echo "FETCH_BEFORE_ARGS=-nc --progress=bar --read-timeout=60" >> /etc/make.conf
 
HTTP_PROXY=http://user:pass@proxy.domain.com:3128/
FTP_PROXY=http://user:pass@proxy.domain.com:3128/
export HTTP_PROXY FTP_PROXY

แค่นี้เพื่อนๆก็สามารถลงโปรแกรมผ่าน wget โดยใช้ Proxy ได้แล้วครับ

Reset MySQL Password for FreeBSD

Posted by อัทศักดิ์ วงศ์กิตตะ on Saturday, February 7th, 2009

วันนี้กำลังลง Apps ให้ลูกค้าครับ พอดีเค้าลง MySQL 4.0 ไว้พอถามไปเค้าบอกว่า ลืม Password MySQL สะงั้น ผมเลยต้อง Reset Password MySQL ใหม่ วิธีก็มีหลายหลากครับ แต่ผมเลือกทางง่ายๆ (สำหรับผม) ลองทำตามกันดูนะครับ :)

1. ทำการดูว่า mysql เรา start process ยังไง
ps auxww | grep mysql

mysql 23572 0.0 0.3 1724 1372 p2 S 1:52AM 0:00.01 /bin/sh /usr/local/bin/mysqld_safe –defaults-extra-file=/var/db/mysql/my.cnf –user=mysql –datadir=/var/db/mysql –pid-file=/var/db/mysql/mail.domain.com.pid
mysql 23591 0.0 4.8 57084 24936 p2 S 1:52AM 0:00.31 /usr/local/libexec/mysqld –defaults-extra-file=/var/db/mysql/my.cnf –basedir=/usr/local –datadir=/var/db/mysql –user=mysql –pid-file=/var/db/mysql/mail.domain.com.pid

2. เรารู้แล้วว่า MySQL Start process ยังไงเราก็stop db + start mysql ผ่าน command

/usr/local/bin/mysqld_safe –defaults-extra-file=/var/db/mysql/my.cnf –user=mysql –datadir=/var/db/mysql –pid-file=/var/db/mysql/mail.domain.com.pid –skip-grant-tables

เราใส่ –skip-grant-tables MySQL จะไม่ตรวจสอบ table mysql ทำให้เราสามารถ Login โดยไม่ต้องใส่ Password ได้

shell# mysql
mysq> use mysql
mysql> UPDATE user SET password=password(‘secret’) WHERE user=’root’;
mysql> exit;

shell#mysqladmin -p shutdown
ใส่ password ใหม่ที่เราตั้งใหม่ คือ secret

3. start mysql ผ่าน rc.d ปกติและใช้ password ใหม่ได้แล้วครับ : )

Apache 2.0 – Name Base VHost

Posted by อัทศักดิ์ วงศ์กิตตะ on Tuesday, July 22nd, 2008

พอไปอ่านกระทู้ใน thaibsd.com เลยกะต่อยอดเล็กน้อย หลังจากที่ติดตั้ง “Apache2.0 + PHP5 on FreeBSD” ก็ถึงครามาทำ Name Base Vhost ในรูปแบบของผม พูดถึงเรื่อง Vhosts มันทำได้หลายแบบ แต่ที่เราทำกันบ่อยๆก็ Name Base Host และ IP Base VHost

อะไรคือ “Name Base Vhost” ขอกล่าวถึง HTTP Protocol ละกันครับ เวลาที่ IE, Firefox ในเครื่องเ้้ราซึ่งเค้าเรียกรวมกันว่า Browser เข้าไปเว็บๆหนึ่ง เช่น เข้าไปที่ http://howtoconfig.com/index.php Browser ของเราก็จะสร้าง tcp connect ไปยัง IP ปลายทาง port 80 และส่ง
Continue reading “Apache 2.0 – Name Base VHost” »

แก้ปัญหาลืมรหัสผ่านของ FreeBSD

Posted by กวิน ชัยเลิศ on Tuesday, July 8th, 2008

แก้ปัญหาลืมรหัสผ่านของ root บน FreeBSD ง่ายๆ ตามนี้ครับ

1. Restart FreeBSD (Ctrl+Alt+Delete หรือ กดปุ่ม Reset T_T)
2. พิมพ์ boot -s ที่ Boot: prompt (เพื่อเข้า Single User Mode)
3. Enter (ตอนมีคำถามให้เลือก Shell)
4. ใช้คำสั่ง mount -urw / เพื่อให้สามารถอ่าน/เขียน ไฟล์ได้

mount -urw /

5. ใช้คำสั่ง mount -a (remount ระบบไฟล์ทั้งหมด)

mount -a

6. ใช้คำสั่ง passwd root เพื่อเปลี่ยนรหัสผ่านของ root

passwd root

เพียงเท่านี้ก็สามารถกลับมาใช้ root ได้ตามปกติครับ

Apache2.0 + PHP5 on FreeBSD

Posted by อัทศักดิ์ วงศ์กิตตะ on Wednesday, June 4th, 2008

ผ่านไปพักใหญ่ MySQL Cluster ก็ยังไม่ Start สะทีเลยถือโอกาศมาเขียน docs เรื่องการติดตั้ง Apache + PHP + Mysql ในรูปแบบของผมกันครับ ก่อนอื่นให้ทำการติดตั้ง MySQL ตามเอกสารนี้ครับ

1. ทำการ Update pors ครับ (แนะนำว่าให้ทำบ่อยๆ ใส่ crontab ไว้เลยก็ได้ครับ)

cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile -h cvsup.th.freebsd.org

2. ทำการติดตั้ง Apache 2.0

cd /usr/ports/www/apache20/
make all install clean WITH_SSL_MODULES=yes

Continue reading “Apache2.0 + PHP5 on FreeBSD” »

Install MySQL Server on FreeBSD

Posted by อัทศักดิ์ วงศ์กิตตะ on Wednesday, June 4th, 2008

     สวัสดีครับตอนนี้ว่างเพราะรอ Restore Databse เข้า MySQL Cluster เลยพอมีเวลามาเขียนวิธีติดตั้ง MySQL บน FreeBSD เ้อาง่ายๆละกันนะครับ

1. ทำการ Update ports ของ FreeBSD

cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile -h cvsup.th.freebsd.org

2. ทำการติดตั้ง MySQL Server ผมเลือก Version 5.0 นะครับ

cd /usr/ports/databases/mysql50-server
make all install clean WITH_CHARSET=tis620 WITH_XCHARSET=all WITH_COLLATION=tis620_thai_ci

Continue reading “Install MySQL Server on FreeBSD” »

FreeBSD Kernel Compile How to

Posted by อัทศักดิ์ วงศ์กิตตะ on Saturday, May 31st, 2008

วันนี้มีเหตุต้องลง FreeBSD + Apache 1.3 + Tomcat5 + mod_jk2 ทั้งหมด 4 เครื่อง เลยมาเขียน docs ให้เพื่อนๆ อ่านเรื่อง Kernel ไปก่อนละกันนะครับ

เริ่มต้น FreeBSD หลังจากลงเสร็จต้องทำการปรับแต่ง Kernel ก่อน และ cvsup ให้เป็น version ล่าสุดก่อน โดยผมเลือกใช้ FreeBSD 6.1 ในส่วนของ Kernel จริงๆ ผมก็ไม่ได้ ปรับแต่งอะไรมากครัีบแค่เพิ่มค่าบางค่าให้มันทำงานเป็น web server ได้ดีขึ้น โดยมีขั้นตอนดั่งนี้ครับ

1. ติดตั้ง cvsup โดยผมจะติดตั้งผ่าน pkg_add เมื่อเราใส่ option -r เข้าไป pkg_add จะทำการ download packet ของเรามา install ให้เองครับ

pkg_add -r cvsup-without-gui

หลังจากรอ down โหลดเสร็จ ให้ใช้คำสั่ง rehash freebsd จะทำการ search โปรแกรมที่อยู่ใน $PATH ใหม่ครับ
Continue reading “FreeBSD Kernel Compile How to” »