ubuntu vsftpd 设置?ubuntu ip设置
老铁们,大家好,相信还有很多朋友对于ubuntu vsftpd 设置和ubuntu ip设置的相关问题不太懂,没关系,今天就由我来为大家分享分享ubuntu vsftpd 设置以及ubuntu ip设置的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
ubuntu怎么安装vsftpd
ubuntu下vsftpd配置:Linux是一种开源的、安全的操作系统,而且已经深入人心。作为一种流行的发行版本,Ubuntu的使用更为普及。vsftpd作为Linux下一种最为方便的FTP程序,也为人们所推崇。本文讲述的是如何在Ubuntu下安装配置vsftpd。
一、安装vsftp和db4
sudo apt-get install vsftpd sudo apt-get install db4.6-util
二、建立虚拟用户口令库文件
sudo mkdir/etc/vsftpd
新建名为logins.txt的用户口令文件,
sudo gedit/etc/vsftpd/logins.txt
奇数行为用户名。偶数行为密码,如下用户User1的密码为123456,User2的密码为12345
User1 123456 User2 12345 admin admin
三、生成vsftpd的认证文件
使用db_load命令生成认证文件:
db4.6_load-T-t hash-f/etc/vsftpd/logins.txt/etc/vsftpd/vsftpd_login.db
将vsftpd_login.db的权限设为只对root可读写,即600
chmod 600/etc/vsftpd/vsftpd_login.db
四、建立虚拟用户所需的PAM配置文件
在/etc/pam.d目录中建立vsftpd.vu内容如下
sudo gedit/etc/pam.d/vsftpd.vu auth required/lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required/lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
五、建立虚拟用户所需的系统用户和主目录
sudo useradd jtmvi-d/www-s/bin/false sudo chown jtmvi.jtmvi/www sudo chown jtmvi.jtmvi/www/User1 sudo chown jtmvi.jtmvi/www/User2 sudo chmod 700/www
六、设置vsftpd.conf配置文件
(记得先备份)
sudo cp/etc/vsftpd.conf/etc/vsftpd.conf_old#备份 gedit/etc/vsftpd.conf listen=YES anonymous_enable=NO dirmessage_enable=YES xferlog_enable=YES xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES chroot_local_user=YES guest_enable=YES guest_username=jtmvi user_config_dir=/etc/vsftpd_user_conf pam_service_name=vsftpd.vu local_enable=YES
七、对不同的虚拟用户设置不同权限
sudo mkdir/etc/vsftpd_user_conf gedit/etc/vsftpd_user_conf/User1 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/www/User1 gedit/etc/vsftpd_user_conf/User2 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/www/User2 gedit/etc/vsftpd_user_conf/admin write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/www
八、重启vsftpd
/etc/init.d/vsftpd restart
Ubuntu上FTP服务器程序vsftpd安装配置全流程攻略
安装ftp
复制代码
代码如下:
sudo apt-get install vsftpd
配置vsftpd.conf
复制代码
代码如下:
sudo nano/etc/vsftpd.conf
#禁止匿名访问
anonymous_enable=NO
#接受本地用户
local_enable=YES
#允许上传
write_enable=YES
#用户只能访问限制的目录
chroot_local_user=YES
#设置固定目录,在结尾添加。如果不添加这一行,各用户对应自己的目录,当然这个文件夹自己建
local_root=/home/ftp
看网上说加一行pam_service_name=vsftpd,我看我这个配置文件本来就有,就不管了。
添加ftp用户
复制代码
代码如下:
sudo useradd-d/home/ftp-M ftpuser
sudo passwd ftpuser
调整文件夹权限
这个是避免500 OOPS: vsftpd: refusing to run with writable root inside chroot()
复制代码
代码如下:
sudo chmod a-w/home/ftp
sudo mkdir/home/ftp/data
这样登录之后会看到data文件夹,虽然稍麻烦,原因不表了。。查资料这么辛酸已经不易。。
改pam.d/vsftpd
这时候直接用useradd的帐号登录ftp会530 login incorrect
复制代码
代码如下:
sudo nano/etc/pam.d/vsftpd
注释掉
复制代码
代码如下:
#auth required pam_shells.so
重启vsftpd
复制代码
代码如下:
sudo service vsftpd restart
这时就可以用刚才建的ftpuser这个用户登录ftp了,看到的是local_root设置的/home/ftp,并且限制在该目录。
可以在浏览器用访问,也可以用ftp软件比如flashFXP,密码就是ftpuser的密码。
关于用户访问文件夹限制
由chroot_local_user、chroot_list_enable、chroot_list_file这三个文件控制,转别人的一段话:
首先,chroot_list_enable好理解,就是:是否启用chroot_list_file配置的文件,如果为YES表示chroot_list_file配置的文件生效,否则不生效;
第二,chroot_list_file也简单,配置了一个文件路径,默认是/etc/vsftpd.chroot_list,该文件中会填入一些账户名称。但是这些账户的意义不是固定的,是跟配置项chroot_local_user有关的。后一条中说明;
第三,chroot_local_user为YES表示所有用户都*不能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。chroot_local_user为NO表示所有用户都*能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。也可以理解为,chroot_list_file列出的例外情况的用户。
如果客户端登录时候提示以pasv模式连接失败
编辑/etc/vsftpd.conf
最后添加
复制代码
代码如下:
pasv_promiscuous=YES
然后再重启vsftpd服务。
vsftpd 530 Permission denied错误与530 Login incorrect
在linux上搭建完ftp服务器后,用户登录vsftpd出现530 Login incorrect错误与530 Permission denied错误。 530 Permission denied原因是/etc/vsftpd/vsftpd.conf里userlist_enable=YES/etc/vsftpd/user_list含有root名单
2种解决办法:
1.userlist_enable=NO将root从user_list中去掉
530 Login incorrect错误将root从/etc/vsftpdftpusers中去掉。
2.如果是默认安装vsftpd的话,以下是一些文件的位置约定:
/usr/sbin/vsftpd---- VSFTPD的主程序/etc/rc.d/init.d/vsftpd----启动脚本/etc/vsftpd/vsftpd.conf----主配置文件/etc/pam.d/vsftpd---- PAM认证文件/etc/vsftpd.ftpusers----禁止使用VSFTPD的用户列表文件/etc/vsftpd.user_list----禁止或允许使用VSFTPD的用户列表文件/var/ftp----匿名用户主目录/var/ftp/pub----匿名用户的下载目录
如果要更改默认下载目录,修改/etc/vsftpd/vsftpd.conf,加入如下三行: local_root=/ chroot_local_user=YES anon_root=/ local_root表示使用本地用户登录到ftp时的默认目录 anon_root表示匿名用户登录到ftp时的默认目录上面的chroot_list_file是设定锁定登陆用户在其home目录的列表,要在chroot_list_enable=YES情况下才生效。另外,如luo_rc所述,最好不要设置默认目录为/,使用建议使用mount--bind来挂载需要的目录。
如何在ubuntu中安装设置ftp服务器
方法/步骤
1
首先,更新软件源,保证源是最新的,这样有利于下面在线通过apt-get install命令安装ftp。
2
使用sudo apt-get install vsftp命令安装vsftp,安装软件需要root权限,我们使用sudo来暂时获取。
3
安装好ftp后默认是会自动创建ftp用户的,然后我们设置ftp用户的密码,输入
sudo passwd ftp,然后输入密码,再确认密码。
4
创建ftp用户的家目录,使用sudo mkdir/home/ftp命令
5
设置ftp家目录的权限,我这里为方便直接使用sudo chmod 777/home/ftp命令将权限设置为777,当然你可以根据自己需求进行设置。
6
对/etc/vsftpd.conf配置文件进行一定的修改。使用 sudo gedit/etc/vsftpd.conf打开配置文件,如果你喜欢vi或vim编辑器也可以使用它们打开。
7
将配置文件中”anonymous_enable=YES“改为“anonymous_enable=NO”(是否允许匿名ftp,若不允许选NO)
取消如下配置前的注释符号:
local_enable=YES(是否允许本地用户登录)
write_enable=YES(是否允许本地用户写的权限)
chroot_local_user=YES(是否将所有用户限制在主目录)
chroot_list_enable=YES(是否启动限制用户的名单)
chroot_list_file=/etc/vsftpd.chroot_list(可在文件中设置多个账号)
8
然后重启ftp服务,使用命令sudo service vsftpd restart重启ftp服务。
9
测试ftp,复制一些文件到/home/ftp目录下
方法一:在浏览器中输入,网页登录。
方法二:在终端中输入ftp localhost,然后输入用户名与密码实现登录。
10
如果登录ftp总是出现密码错误,可以将/etc/vsftpd.conf配置文件的pam_service_name=vsftpd改为pam_service_name=ftp,即可解决。