Apa itu Pure-FTPD ?
Pure-FTPD merupakan program untuk menjalankan server FTP. Banyak varian FTP Server, namun yang terbaru yaitu Pure-FTP dan juga lebih aman. Misalkan, ketika user iddle dalam beberapa menit kedepan, maka secara otomatis user akan terputus dengan FTP Server.
Instalasi
Akses melalui SSH dan gunakan root privileges dan edit beberapa konfigurasi di dalam pure-ftpd.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | [root@iaasweb ~]# yum -y update [root@iaasweb ~]# yum -y install pure-ftpd [root@iaasweb ~]# nano /etc/pure-ftpd/pure-ftpd.conf # If you want to enable PAM authentication, uncomment the following line #PAMAuthentication yes # PureDB user database (see README.Virtual-Users) PureDB /etc/pure-ftpd/pureftpd.pdb # Disallow anonymous connections. Only accept authenticated users. NoAnonymous yes # Restrict users to their home directory ChrootEveryone yes [root@iaasweb ~]# systemctl enable pure-ftpd && systemctl start pure-ftpd Created symlink from /etc/systemd/system/multi-user.target.wants/pure-ftpd.service to /usr/lib/systemd/system/pure-ftpd.service. [root@iaasweb ~]# systemctl status pure-ftpd ● pure-ftpd.service - Pure-FTPd FTP server Loaded: loaded (/usr/lib/systemd/system/pure-ftpd.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2022-11-21 04:53:01 EST; 4s ago Main PID: 18331 (pure-ftpd) CGroup: /system.slice/pure-ftpd.service └─18331 pure-ftpd (SERVER) Nov 21 04:53:01 iaasweb.iaas.web.id systemd[1]: Starting Pure-FTPd FTP server... Nov 21 04:53:01 iaasweb.iaas.web.id systemd[1]: Started Pure-FTPd FTP server. |
Create User/Group FTP
FTP biasanya digunakan untuk mengupload file website ataupun source code lainnya, maka untuk itu kita akan membuat user dan group serta menyesuaikan direktori sesuai dengan direktori file websitenya.
1 2 3 4 | [root@iaasweb ~]# groupadd pftpgroup [root@iaasweb ~]# useradd iaasftp -g pftpgroup -d /dev/null -s /sbin/nologin [root@iaasweb ~]# mkdir /var/www/iaasweb.iaas.web.id/ftp [root@iaasweb ~]# chown -R iaasftp:pftpgroup /var/www/iaasweb.iaas.web.id/ |
Create Virtual User
Konfigurasi Virtual User akan meliputi sebagai berikut:
- Membuat virtual user vftpiaas
- Kemudian, assign ftp user iaasftp kedalam virtual user vftpiaas
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | [root@iaasweb ~]# pure-pw useradd vftpiaas -u iaasftp -d /var/www/iaasweb.iaas.web.id/ -m Password: Enter it again: [root@iaasweb ~]# pure-pw mkdb [root@iaasweb ~]# pure-pw show vftpiaas Login : vftpiaas Password : $6$IAASENCRYPTED1M1 UID : 1000 (iaasftp) GID : 1000 (pftpgroup) Directory : /var/www/iaasweb.iaas.web.id/ftp/./ Full name : Download bandwidth : 0 Kb (unlimited) Upload bandwidth : 0 Kb (unlimited) Max files : 0 (unlimited) Max size : 0 Mb (unlimited) Ratio : 0:0 (unlimited:unlimited) Allowed local IPs : Denied local IPs : Allowed client IPs : Denied client IPs : Time restrictions : 0000-0000 (unlimited) Max sim sessions : 0 (unlimited) |
SFTP Connection Error Received unexpected end-of-file from SFTP server
Jika mengalami error seperti itu, silahkan comment baris Subsystem sftp /usr/lib/openssh/sftp-server dan ganti menjadi script dibawah ini
1 2 3 | [root@iaasweb ~]# nano /etc/ssh/sshd_config Subsystem sftp internal-sftp [root@iaasweb ~]# systemctl restart sshd && systemctl restart pure-ftpd |