实现了Apache多用户的虚拟主机设置,那么一般这些用户都会选择用ftp上传的方式来管理自己的web内容,这就需要我们再为他们开设FTP服务。
Ubuntu自带的FTP服务器是vsftpd,好文推荐里也转了两篇这方面的内容,本人通过实践再奉献一篇,呵呵
安装vsftpd,用来实现ftp服务。
sudo apt-get update
sudo apt-get dist-upgrade
上面用来更新。下面进行安装。
sudo apt-get install vsftpd
安装完毕后,编辑链接文件vsftpd.conf,方法如下:
sudo vi /etc/vsftpd.conf
打开后,如果提示只读,不可更改,则需要用如下命令更改权限。
chmod 777 /etc/vsftpd.conf
改好后,按照下面进行设置。
# 服务器以 standalong 模式运行,如果以 root 用户直接启动 vsftpd 进程,则必须。
# 注销语句以 xinetd 方式运行
listen=YES
# 上传总开关(全局控制)
write_enable=YES
# 接受匿名用户,默认无密码请求
anonymous_enable=YES
# 接受本地用户
local_enable=YES
# 本地用户上传文件(包括目录)的 umask
# 注意 vsftp 版本,某些旧版的该选项会被 chown_uploads/chown_username 二选项覆盖
local_umask=022
# 允许匿名用户上传文件,配合 anon_umask,否则文件权限皆为默认的 600,用户上传的文件不提供给任何匿名用户下载
anon_upload_enable=YES
# 匿名用户上传文件(包括目录)的 umask
# 注意点同 local_umask
anon_umask=022
# 允许匿名用户创建目录,配合 anon_umask 实现目录可写,否则依我(aBiNg)看,实际用处很小
anon_mkdir_write_enable=YES
# 允许匿名用户删除/重命名文件等操作
#anon_other_write_enable=YES
# 为 YES 则进入目录时显示此目录下由 message_file 选项指定的文本文件(默认为 .message)的内容
dirmessage_enable=YES
# 使用上传/下载日志,日志文件默认为 /var/log/vsftpd.log,可以通过 xferlog_file 选项修改
xferlog_enable=YES
# 使用 port 模式连接,并启用 20 端口
connect_from_port_20=YES
# 改变用户上传文件的所有者
#chown_uploads=YES
#chown_username=whoever
#xferlog_file=/var/log/vsftpd.log
# 日志使用标准 xferlog 格式
#xferlog_std_format=YES
# 用户登陆后 idle 时间,超过设置超则被踢出服务器
#idle_session_timeout=600
# login 时的欢迎信息
ftpd_banner=Welcome to blah FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
# 若为 NO,则记录在 chroot_list_file 选项所指定的文件(默认是 /etc/vsftpd.chroot_list)中的用户将被
# chroot 在登录后所在目录中,无法离开。如果为 YES,则所记录的用户将不被 chroot。
chroot_local_user=YES
# 设置为 YES 则下面的控制有效
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
我将anonymous_enable=NO,即不允许匿名登录ftp;write_enable=YES可写
更改完配置文件后,重启ftp服务
sudo /etc/init.d/vsftpd restart
直接用ftp工具连接过去,输入ubuntu用户名和密码即可直接到/home/user目录。
可以自己创建系统用户,并用相应的用户名进去
比如 我用命令创建用户,并设置目录为/home/ftpLogin,将它加入到root组:
useradd -m -d /home/ftpLogin -G root ftpLogin
passwd ftpLogin
输入密码
再重启ftp服务
sudo /etc/init.d/vsftpd restart
再用ftp工具连过去,输入用户ftpLogin及密码即可。
相关链接:
http://www.w3pop.com/learn/view/p/2/o/1/doc/ubuntu_vsftpd/
http://www.wangyutang.com/2009/04/install-and-config-ubuntu-server810-with-apache-ssh-ftp/