ติดตั้ง ftp server + lib-pam-radius + authen psu-passport และ ldaps

จาก Wiki Opensource
รุ่นปรับปรุงเมื่อ 15:23, 16 ธันวาคม 2557 โดย Wiboon.w (พูดคุย | เรื่องที่เขียน) (หน้าที่ถูกสร้างด้วย 'ติดตั้ง ftp server + lib-pam-radius + authen psu-passport และ ldaps<br/><br/>ปรับปรุงครั้ง...')
(ต่าง) ←รุ่นปรับปรุงก่อนหน้า | รุ่นล่าสุด (ต่าง) | รุ่นปรับปรุงถัดไป→ (ต่าง)

ติดตั้ง ftp server + lib-pam-radius + authen psu-passport และ ldaps

ปรับปรุงครั้งล่าสุดวันที่ 16-12-2557
เขียนโดย วิบูลย์

วิธีทำ
1. ติดตั้ง ubuntu server 14.04.x ในขั้นตอน Install ให้เลือกแพ็กเกจ OpenSSH และ LAMP

2. อัปเดต OS
sudo apt-get update
sudo apt-get dist-upgrade

3. ลบแพ็กเกจเก่าๆที่ไม่ใช้แล้วที่เกิดจากการอัปเดต
sudo apt-get autoremove
และ
แก้ปัญหา locale error
แก้โดย ใช้คำสั่ง locale-gen ตัวอย่าง
sudo locale-gen en_US en_US.UTF-8 th_TH th_TH.UTF-8
sudo dpkg-reconfigure locales

4. ติดตั้ง FreeRADIUS
ทำขั้นตอนตามเอกสารการติดตั้ง PSU-radius บน ubuntu
wget http://ftp.psu.ac.th/pub/psu-radius/psu-radius.tgz -N -P /tmp
tar -zxpvf /tmp/psu-radius.tgz -C /tmp
cd /tmp/psu-radius
sudo bash install-psu-radius.sh
และ
ทำ reboot server

5. ติดตั้ง vsftpd
wget http://ftp.psu.ac.th/pub/psu-installer/install-psu-vsftpd.sh -N -P /tmp
cd /tmp
sudo bash install-psu-vsftpd.sh
ตรวจสอบผล /etc/vsftpd.conf ดูที่ท้ายไฟล์ ตัวแปรที่ต้องใช้
#PSU-vsftpd-2557-12-16
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
ทดสอบสร้าง user
sudo useradd -m -b {HOME_DIR} -s /bin/bash {username}
เช่น
sudo useradd -m -b /home -s /bin/bash boy
sudo passwd boy
และ
# ถ้าให้ใช้ ftp อย่างเดียว ไม่ให้ ssh เข้าเครื่อง ให้ใช้ -s /etc/nologin
# Disallow non-root logins when /etc/nologin exists.
sudo useradd -m -b /home -s /etc/nologin bobby
sudo passwd bobby
ทดสอบใช้งาน ftp
ftp localhost

6. ติดตั้ง lib-pam-radius
wget http://ftp.psu.ac.th/pub/psu-installer/install-psu-pam-radius.sh -N -P /tmp
cd /tmp
sudo bash install-psu-pam-radius.sh
ตรวจสอบผล
/etc/pam_radius_auth.conf
/etc/pam.d/sshd
/etc/pam.d/vsftpd
ทดสอบสร้าง user
sudo useradd -m -b {HOME_DIR} -s /bin/bash {RADIUS username}
เช่น
sudo useradd -m -b /home -s /bin/bash user1.a
ไม่ต้องตั้ง password นะ เพราะตรวจสอบผ่าน RADIUS
และ
# ถ้าให้ใช้ ftp อย่างเดียว ไม่ให้ ssh เข้าเครื่อง ให้ใช้ -s /etc/nologin
# Disallow non-root logins when /etc/nologin exists.
sudo useradd -m -b /home -s /etc/nologin user2.a
ทดสอบใช้งาน ftp
ftp localhost

7. ถ้าต้องการแก้ไขไฟล์ที่เกี่ยวข้องกับ freeradius เพื่อเลือก database
/etc/freeradius/imap-authen.sh เพื่อเลือก database
ค่า default เลือกตรวจสอบ username ของ PSU-Passport ผ่าน web service
AUTHEN_PSU_PASSPORT="YES"
หากต้องการ เลือกตรวจสอบ username ของ LDAPS ให้ตั้งค่านี้
AUTHEN_AD_LDAP="YES"
แล้วแก้ไขไฟล์ /etc/freeradius/check-ad-ldap.php