Ubuntu安装vsftpd
时间:2010-05-26 来源:galaxylancer
如果您用的是Fedora 或Redhat 系统,可以用下面的命令在线安装;
[root@localhost ~]# yum install vsftpd如果是debian 类系统,可以用apt 来在线安装;(Ubuntu为此类,由于我的版本旧,这个方法没成功,只能根据失败提示的url,到site上去下载)
[root@localhost ~]# apt-get install vsftpd/etc/vsftpd.conf修改配置
1)安装Ubuntu vsftpd
Ubuntu安装软件倒不是件困难的事,输入:sudo apt-get install Ubuntu vsftpd可能会提示你使用光盘,放进去再按回车就行了。安装了之后会在/home/下建立一个ftp目录。这时候你可以试着访问下ftp://IP地 址。应该可以看到一个空白内容的ftp空间。默认设置下匿名用户可以下载,但不能写入或是上传
2)设置 Ubuntu vsftpd.conf文件
现在我们要让匿名用户无法访问,并且得输入Linux上的用户密码后才能访问到他们自己目录里的内容。首先找到设置Ubuntu vsftpd的文件,位置在/etc/ vsftpd.conf修改之前最好先备份下这个文件:sudo cp /etc/ vsftpd.conf /etc/ vsftpd.conf.old然后可以改动了:
- #不让匿名用户使用
- #anonymous_enable=YES
- #本地用户可用
- local_enable=YES
- #可用写操作
- write_enable=YES
- #不需要显示某目录下文件信息
- #dirmessage_enable=YES
- #加点banner提示
- ftpd_banner=Hello~~
- #FTP服务器最大承载用户
- max_clients=100
- #限制每个IP的进程
- max_per_ip=5
- #最大传输速率(b/s)
- local_max_rate=256000
- #隐藏帐号
- hide_ids=YES
好了,重启下ftp 服务器看看效果重启后还是和原来一样对吗?呵呵,这是默认的ftp目录在做鬼,我们把它删除,再看看。怎么样?要你输入用户名和密码了吧。
新的问题
1.输入用户名密码后显示的位置是在用户的根目录下,而我们的WEB内容是在public_html目录里
2.用户可以跳到任何其他目录(非常危险..)要解决这些问题我们还得设置下Ubuntu vsftpd.conf
- #启动chroot列表(Change root)
- chroot_list_enable=YES
- #指定列表位置(我这用的是默认地址)
- chroot_list_file=/etc/Ubuntu vsftpd.chroot_list
- 接下来我们得在Ubuntu vsftpd.chroot_list上写进去我们要限制哪些用户,不让他们“漂移”..
现在有用户linyupark,所以只要sudo nano一下,往里面写就行了这样我们已经解决第2个问题了,登陆的用户只能在它的用户文件夹里活动,下面我们要更狠一点,让他只能在 public_html里活动依然还是找Ubuntu vsftpd.conf
#这句默认设置里是没有的,自己加user_config_dir=/etc/自己定义一个设置个别用户用的文件夹地址根据自己设置的地址,建立一 个相应的文件夹,然后往里面建立和用户名相同的文件,nano一下:#本地用户的根地址,假设用户是linyuparklocal_root=/home /linyupark/public_html好咯,重启下服务器。
1. 如果某些命令需要高级权限执行的,要在执行命令前加上 sudo
2. 查看ftp的根目录可以用这个命令 finger ftp
3. 启动ftp: sudo vsftpd
4. 关闭ftp: pkill vsftpd
5. 查看vsftpd是否启动了可以用 pgrep vsftpd 或者列出所有进程 ps -d
6. 查看ftp默认的根目录: more /etc/passwd | grep ftp
7. 修改ftp默认的根目录: gedit /etc/passwd ,把其中的ftp项修改成自己需要的.
8. 赋予那个组: sudo chown root:root ftp , ftp为目录