FTP 是网站服务器必备服务之一,个人感觉也要比 SSH 的 SSH Secure File Transfer 灵活易用一些。这里简单记录一下我在 Ubuntu Server 上安装 vsftp 服务的流程和配置。
1、安装
sudo apt-get install vsftpd |
默认情况下可以匿名访问 /home/ftp 目录,但仅仅也只是访问并无其它权限。
2、配置
sudo vi /etc/vsftpd.conf |
使用 vi 编辑 vsftpd 的配置文件,由于服务器只有我一个人使用和维护,所以不需要建立 vsftpd 虚拟用户,直接使用系统帐户登录(即 SSH 登录名密码来登录)FTP ,那么配置文件中只需要开启如下几项即可:
- listen=YES
- anonymous_enable=NO
- local_enable=YES
- write_enable=YES
- local_umask=022
- local_root=/var/www
- max_clients=3
- dirmessage_enable=YES
- use_localtime=YES
- xferlog_enable=YES
- idle_session_timeout=600
- data_connection_timeout=120
- secure_chroot_dir=/var/run/vsftpd/empty
- pam_service_name=vsftpd
- rsa_cert_file=/etc/ssl/private/vsftpd.pem
其余配置参数全部用“#”注释掉,值得一提的是上述:
- local_root=/var/www
- max_clients=3
是原配置文件中没有,我额外添加的两项,第一项是将 FTP 客户端登录固定到 /var/www 目录,第二项是客户端连接最大数。
以上所有数字型的参数都是可以根据需要灵活改动的。也可以直接下载我写好的配置文件:vsftpd.conf.zip
3、重启服务
sudo /etc/init.d/vsftpd restart |
非常简单的就安装配置完毕了,接下来可以使用 FTP 客户端登录连接到服务器的 /var/www 目录,但并没有锁定在 /var/www 目录,也可以切换到其它目录进行上传下载的操作,前提是这些目录有足够的访问权限。
其它相关命令:
重新安装
sudo apt-get --reinstall install vsftpd |
卸载并清除配置文件
sudo apt-get -purge remove vsftpd |
启动 vsftp
sudo service vsftpd start |
或
sudo /etc/init.d/vsftpd start |
重启
sudo /etc/init.d/vsftpd restart |
停止 vsftp:
sudo service vsftpd stop |
或
sudo /etc/init.d/vsftpd stop |
创建 vsft 虚拟用户、用户组和目录的方法等实践过了再记录