今天学习了Ubuntu上安装ftp的实例。
1.window上已经安装wamp(windows + apache + mysql + php)
2.window上已安装VMware Workstation
3.虚拟机上安装Ubuntu(Linux操作系统)
4.Ubuntu上安装lamp(Linux + apache + mysql + php)
这里Ubuntu作为服务器(Server),windows作为客户端(Client).
演示步骤如下:
第一步:安装vsftpd
打开"终端窗口",输入"sudo apt-get install vsftpd"-->回车-->安装完成。
root@wuheng-virtual-machine:/# sudo apt-get install vsftpd
第二步:判断vsftpd是否安装成功
打开"终端窗口",输入"sudo service vsftpd restart"重启vsftpd服务-->回车-->vsftpd处于运行状态,说明安装成功。
root@wuheng-virtual-machine:/# sudo service vsftpd restartvsftpd stop/waitingvsftpd start/running, process 5569 注意:这里“process 5569”,表示vsftpd处于运行状态。
第三步:新建"/home/uftp"目录作为用户主目录
打开"终端窗口",输入"sudo mkdir /home/uftp"-->回车-->输入"sudo ls /home"-->回车-->有一个uftp目录,目录新建成功。
root@wuheng-virtual-machine:/# sudo mkdir /home/uftproot@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 uftproot@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=YESuserlist_file=/etc/allowed_usersseccomp_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).rootdaemonbinsyssyncgamesmanlpmailnewsuucpnobody注意:上面标识红色的,表示这些用户都不能访问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 -ltotal 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.htmllrwxrwxrwx 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.gzroot@wuheng-virtual-machine:/var/www/html#第十步,可能出现的问题与解决方案
a.可能出现本地向ftp上传文件,出现上传不了的情况
解决方案:在vsftpd.conf配置文件中,添加:“write_enable=YES local_umask=022”
write_enable=YESlocal_umask=022
这2项表示:可以上传。以确保本地虚拟用户能有读写权限。
参考: