今天学习了Ubuntu上安装ftp的实例。php
1.window上已经安装wamp(windows + apache + mysql + php)html
2.window上已安装VMware Workstationmysql
3.虚拟机上安装Ubuntu(Linux操做系统)sql
4.Ubuntu上安装lamp(Linux + apache + mysql + php)apache
这里Ubuntu做为服务器(Server),windows做为客户端(Client).windows
演示步骤以下:bash
第一步:安装vsftpd服务器
打开"终端窗口",输入"sudo apt-get install vsftpd"-->回车-->安装完成。oop
root@wuheng-virtual-machine:/# sudo apt-get install vsftpd
学习
第二步:判断vsftpd是否安装成功
打开"终端窗口",输入"sudo service vsftpd restart"重启vsftpd服务-->回车-->vsftpd处于运行状态,说明安装成功。
root@wuheng-virtual-machine:/# sudo service vsftpd restart
vsftpd stop/waiting
vsftpd start/running, process 5569
注意:这里“process 5569”,表示vsftpd处于运行状态。
第三步:新建"/home/uftp"目录做为用户主目录
打开"终端窗口",输入"sudo mkdir /home/uftp"-->回车-->输入"sudo ls /home"-->回车-->有一个uftp目录,目录新建成功。
root@wuheng-virtual-machine:/# sudo mkdir /home/uftp
root@wuheng-virtual-machine:/# sudo ls /home
第四步:新建用户uftp并设置密码
打开"终端窗口",输入"sudo useradd -d /home/uftp -s /bin/bash uftp"-->回车-->用户新建成功-->
输入"sudo passwd uftp"设置uftp用户的密码-->回车-->输入两次密码-->回车-->密码设置成功
root@wuheng-virtual-machine:/# sudo useradd -d /home/uftp -s /bin/bash uftp
root@wuheng-virtual-machine:/# sudo passwd uftp
注意:这里要输入2次相同的密码。
第五步:使用gedit修改配置文件/etc/vsftpd.conf
打开"终端窗口",输入"sudo gedit /etc/vsftpd.conf"-->回车-->打开了vsftpd.conf文件,向文件中添加"userlist_deny=NO
userlist_enable=YES userlist_file=/etc/allowed_users"和"seccomp_sandbox=NO"-->使文件中的"local_enable=YES"-->保存。
如:
在vsftpd.conf配置文件下面加入以下配置信息
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/allowed_users
seccomp_sandbox=NO
添加后,保存。注意,可能会保存不成功。报错如:“Could not create a backup file while saving “/etc/vsftpd.conf”
个人解决办法,修改vsftpd.conf配置文件的权限。
-rwxrwxrwx 1 root root 5776 Mar 9 22:55 vsftpd.conf
修改完后,保存。该配置文件的权限应当恢复原状。
第六步:使用gedit新建/etc/allowed_users文件
打开"终端窗口",输入"sudo gedit /etc/allowed_users"-->回车-->输入uftp-->保存, 文件建立成功。
root@wuheng-virtual-machine:/# sudo gedit /etc/allowed_users
utfp
第七步:使用gedit查看/etc/ftpusers文件中的内容
打开"终端窗口",输入"sudo gedit /etc/ftpusers"-->回车-->打开这个文件后,看一看有没有uftp这个用户名,若是没有,就直接退出。
若是有就删除uftp,由于这个文件中记录的是不能访问FTP服务器的用户清单。
root@wuheng-virtual-machine:/# sudo gedit /etc/ftpusers
# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
nobody
注意:上面标识红色的,表示这些用户都不能访问FTP服务器,这里没有:uftp用户名,能够直接关掉
第八步:登陆FTP服务器
在windows上先安装FlashFXP
a.站点名称,能够自定义。
b.链接类型:ftp
c.地址,也就是服务器的ip地址,这里服务器的ip地址是:192.168.157.128
root@wuheng-virtual-machine:/# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:cd:21:c3
inet addr:192.168.157.128 Bcast:192.168.157.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fecd:21c3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2451 errors:0 dropped:0 overruns:0 frame:0
TX packets:2833 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:327202 (327.2 KB) TX bytes:2936304 (2.9 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:230 errors:0 dropped:0 overruns:0 frame:0
TX packets:230 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:28208 (28.2 KB) TX bytes:28208 (28.2 KB)
d.端口号:21
e.用户名:uftp (就是咱们以前创建的用户,如第三步,第四步)
f.密码:xxxxx (就是咱们以前设置的密码,如第四步)
第九步:链接ftp
表示链接成功了。
a.客户端
b.服务器
root@wuheng-virtual-machine:/var/www/html# ls -l
total 20
-rw-r--r-- 1 uftp uftp 0 Mar 9 19:40 a.txt
drwxrwxrwx 3 root root 4096 Mar 9 22:57 demo
-rwxrwxrwx 1 root root 11510 Mar 9 19:21 index.html
lrwxrwxrwx 1 root root 21 Mar 3 18:46 phpmyadmin -> /usr/share/phpmyadmin
-rw-r--r-- 1 root root 249 Mar 9 19:21 wh.tar.gz
root@wuheng-virtual-machine:/var/www/html#
第十步,可能出现的问题与解决方案
a.可能出现本地向ftp上传文件,出现上传不了的状况
解决方案:在vsftpd.conf配置文件中,添加:“write_enable=YES local_umask=022”
write_enable=YES
local_umask=022
这2项表示:能够上传。以确保本地虚拟用户能有读写权限。
参考:http://jingyan.baidu.com/article/67508eb4d6c4fd9ccb1ce470.html