Ubuntu下的LAMP和vsftpd配置
写在前头
很难想象我竟然起了一个这么 ordinary 的 tilte,事实上标题里说的这个问题已经虐了我一个晚上,尤其是 vsftpd,当初在树莓派上配置过 vsftpd,隐约记得没有多长时间就配好了。结果隔了半年再次尝试 vsftpd 的时候,这货狠狠地抽了我一巴掌,死活配不对,尤其是用户那一块儿,简直烦死了。好不容易折腾好了,马克一下,防止下次被虐。
环境说明
写这篇文章的时候没在学校,手上只有一台弱不经风的 air,小心翼翼地在虚拟机里装了 Ubuntu Server 12.04。网卡用了桥接模式,所以虚拟机里的系统得到的是类似 192.168.1.xxx 这样的 IP。其他的就没什么好说的了。
先换个源
北京地区的推荐北京交通大学或者搜狐的源,速度超快哦~如果你在教育网的话那就随意了,清华、北理工、华中科大等等速度都好得不得了。
以北交源为例,从这个页面查看源地址,然后修改 sources.list。
修改之前,先备份一下
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
然后放心大胆地修改 sources.list 即可
sudo vim /etc/apt/sources.list
LAMP 安装
LAMP 是指 Linux、Apache、MySql 和 PHP。安装过程很简单,麻烦的是配置。首先在终端里运行下面的命令进行 LAMP 的安装
sudo apt-get install apache2 mysql-server mysql-client php5 php5-gd php5-mysql
安装过程中需要设置 mysql 的 root 密码,这个很重要,请千万记牢! 由于 LAMP 大部分操作与/var/www 目录相关,为了方便,修改该目录的权限为普通用户可访问。
sudo chmod 777 /var/www/
phpmyadmin 的安装
phpmyadmin 可以让我们方便的通过 web 管理服务器上的 mysql 数据库。
sudo apt-get install phpmyadmin
在安装过程中会要求选择 Web server:apache2 或 lighttpd,选择 apache2 然后会要求输入一个密码,建议和 mysql 的 root 密码设置成一样的。 然后把 phpmyadmin 的目录链接到/var/www 里面
sudo ln -s /usr/share/phpmyadmin /var/www
到此,LAMP 和 phpmyadmin 的安装就完成了,这时候在浏览器中输入虚拟机的 IP 地址,可以看到“It works!“的提示,说明 Apache 已经正常工作了。进入 phpmyadmin 目录,就像这样 192.168.1.xxx/phpmyadmin,就可以看到 phpmyadmin 的首页了,用户名 root,密码用前面几步输入的 root 密码就可以登录啦。
万恶的 vsftpd
本来是想弄成多用户的,每个用户只能操作自己目录内的文件,但是操作的时候遇到了一些问题,waiting for update 我们的应用场景是有多个 FTP 用户,分别对应着不同的 Home 目录,并且彼此只能在各自的目录内进行操作。
先安装
sudo apt-get install vsftpd
然后我们建立一个 ftp 用户,比如叫 ftpuser
sudo useradd ftpuser
sudo passwd ftpuser
为 ftpuser 建立用户目录
sudo mkdir /home/ftpuser
改变权限
sudo chown -R ftpuser /home/ftpuser
用户部分处理完,我们开始配置 vsftpd
sudo vim /etc/vsftpd.conf
参考下面的配置
#禁止匿名用户登录
anonymous_enable=NO
#本地用户可用
local_enable=YES
#可用写操作
write_enable=YES
#权限掩码(设置上传的文件为所有用户可读写,这样Apache就有读写权限了)
local_umask=000
#不须要显示某目录下文件信息
dirmessage_enable=NO
#加点登录后的提示语句
ftpd_banner=Hello~~
重启 vsftpd,上面的配置就生效啦~
sudo /etc/init.d/vsftpd restart