开发者社区> 未来星狒狒> 正文

【Linux搭建创建FTP服务器】---完美解决 - 费元星

简介: 配置大红字文件置顶:   vsftp d.conf 4.5KB     useradd -d /home/bai_du -s /sbin/nologin bai_du 修改访问权限: usermod -d /home/webroot/fourcar.diliulian.com/ -s /sbin/nologin fourcar       在创建FTP服务器之有先命令: ps -ef |grep vsftpd 费元星版权Q【9715234】 查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装。
+关注继续查看
配置大红字文件置顶:
 

vsftp

d.conf

4.5KB
 
 
useradd -d /home/bai_du -s /sbin/nologin bai_du
修改访问权限:
usermod -d /home/webroot/fourcar.diliulian.com/ -s /sbin/nologin fourcar
 
 
 
  1. 在创建FTP服务器之有先命令: ps -ef |grep vsftpd
费元星版权Q【9715234】
查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装。
 
然后再执行:yum install vsftpd -y
进行在线安装vsftpd这个服务。
安装成功以后需要把匿名登陆费元星版权Q【9715234】的这个功能关闭了。
使用命令: vim /etc/vsftpd/vsftpd.conf
然后在里成找到:‍
anonymous_enable=NO
然后再查看一下vsftpd这个服务有没有启动。
使用命令: chkconfig --list
如果你如下图所示一样费元星版权Q【9715234】没有启动。
没有启动使用启动:chkconfig --level 35 vsftpd on
环境:ftp为vsftp。被限制用户名为test。被限制路径为/home/test
建用户:在root用户下:
useradd -d /home/test test //增加用户test,并制费元星版权Q【9715234】定test用户的主目录为/home/test
如果目录已经存在,会有提示,但是不影响用户的权限登陆
passwd test //为test设置密码
更改用户相应的权限设置:
usermod -s /sbin/nologin test //限定用户test不能telnet,只能ftp
usermod -s /sbin/bash test //用户test恢复正常
usermod -d /test test //更改用户test的主目录为/test
限制用户只能访问/home/test,不能访问其他路径
修改/etc/vsftpd/vsftpd.conf如下:
chroot_list_enable=YES //限制访问自身目录
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
 
另外还有一些基础增强选项
在文件末尾加如下的设置:
# new added by netseek
listen_port=5021 ;命令通道端口,默认为21
listen_data_port=5020 ;数据通道端口,默认为20
pasv_enable=YES ;允许被动模式
pasv_min_port=10000 ;被动模式使用端口范围
pasv_max_port=10010
local_max_rate=200000 ;用户宽带限制
chroot_local_user=YES ;禁止用户离开主目录
listen_address=192.168.0.21 ;让他监听ip:192.168.0.21
 
 
编辑 vsftpd.chroot_list文件,将受限制的用户添加进去,每个用户名一行
改完配置文件,不要忘记重启vsFTPd服务器
[root@linuxsir001 root]# /etc/init.d/vsftpd restart
如果需要允许用户修改密码,但是又没有telnet登录系统的权限:
 
usermod -s /usr/bin/passwd test //用户telnet后将直接进入改密界面
 
最后重启一下服务:service vsftpd start
如果出现启动失败则可以使用:/etc/rc.d/init.d/vsftpd restart
成功链接FTP服务器上。
------------------------------------------------------------------------------------------------
遇到的问题:
VSFTP中登录提示 500 OOPS: cannot change directory
首先的解决方法是:
(1)[root@xuyuntao ~]# setsebool -P ftpd_disable_trans 1
Boolean ftpd_disable_trans is not defined (这里我会有这个提示)
[root@xuyuntao ~]# getsebool -a |grep ftp_home
ftp_home_dir --> on (如果此处是off的话执行下边的命令)
[root@xuyuntao ~]#setsebool -P ftp_home_dir 1
执行完之后再去登陆试试。
 
(2)[root@xuyuntao ~]# setsebool -P ftpd_disable_trans 1
如果此命令执行成功的话,
[root@xuyuntao ~]service vsftpd restart
再试试
 
 
(3)如果还不行的话就试试下边的方式吧
如果还是不行的话再使用下面完全方式:
[root@linux115 vsftpd]# setsebool allow_ftpd_full_access 1
[root@linux115 vsftpd]# setsebool allow_ftpd_use_cifs 1
[root@linux115 vsftpd]# setsebool allow_ftpd_use_nfs 1
[root@linux115 vsftpd]# setsebool -P ftp_home_dir 1
[root@linux115 vsftpd]# setsebool httpd_enable_ftp_server 1
[root@linux115 vsftpd]# setsebool tftp_anon_write 1
[root@linux115 vsftpd]# service vsftpd restart
 
这是我遇到的问题,仅供大家参考。
 
 
防火墙遇到的问题2:
临时的解决方法是执行如下命令:
 
[root@localhost soft]# modprobe ip_nat_ftp
 
长久方案:
但当你重新启动服务器则iptables规则失效,又会出现相同的情况,所以我们需要修改/etc/sysconfig/iptables-config文件,
[root@localhost soft]# vi /etc/sysconfig/iptables-config
 
我们需要把
IPTABLES_MODULES=""
修改为:
IPTABLES_MODULES="ip_nat_ftp"
这样重启服务器之后就不必再每次都执行mobprobe啦。
 
 
遇到的的问题3:
ftpuser登录ftp后上传文件或新建目录,如果出现“550 create directory operation failed”
是SELinux(Security-Enhanced Linux----是美国国家安全局对于强制访问控制的实现, 是Linux 上最杰出的新安全子系统.)安装机制搞的鬼.只要disable SELinux就可以了.
PS: 关闭SELinux方法
[root@CenOS ~]# vim /etc/selinux/config
将 SELINUX=XXX -->XXX 代表级别
改为
SELINUX=disabled
重启就OK了!
 
 
 
问题4:
解决vsftpd连接错误425 Security: Bad IP connecting
www.111cn.net 更新:2014-03-18 编辑:mengchu9 来源:转载
今天在linux机器上安装了一个vsftpd服务器,结果在连接时出现425 Security: Bad IP connecting错误了,经过一上午的搜索总结出一此问题解决办法。
错误提示
425 Security: Bad IP connecting
主要是需要在/etc/vsftpd/vsftpd.conf文件中添加如下一行:
代码如下
复制代码
pasv_promiscuous=YES service vsftpd restart
pasv_promiscuous选项参数说明:
此选项激活时,将关闭PASV模式的安全检查。该检查确保数据连接和控制连接是来自同一个IP地址。小心打开此选项。此选项唯一合理的用法是存在于由安全隧道方案构成的组织中。默认值为NO。
合理的用法是:在一些安全隧道配置环境下,或者更好地支持FXP时(才启用它)。
如果不行,将Subsystem sftp /usr/libexec/openssh/sftp-server
改为Subsystem sftp internal-sftp
systemctl restart sshd.service
 
 
 
 
 
Linux下如何修改用户默认目录
1、切换到root用户,直接修费元星版权Q【9715234】改/etc/passwd文件,找到你的用户名你一行,如下图所示修改路径,然后保存即可。
2、切换到root用户,使用usermod命令,例如usermod -d /tmp test (test为你的用户名),使用该命令请确保该用户下没有运行的软件或进程
最后切换到普通账户,就会看到费元星版权Q【9715234】当前默认目录已经更改了。
费元星版权Q【9715234】
 
 
FTP允许root登录
[root@localhost vsftpd]# cat ftpusers
# Users that are not allowed to login via ftp
#root
 
[root@localhost vsftpd]# cat user_list
 
未来星开发团队--狒狒 QQ:9715234

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
linux搭建vsftp服务
linux运维记录之搭建vsftp服务(day1)
388 0
Linux 搭建0-1
教你使用 服务器
72 0
linux服务器创建用户、授权操作
linux服务器创建用户、授权操作、创建用户组、授权可读写权限
31 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20350 0
如何搭建 Linux ECS 服务器并将部署自己项目到服务器上
1. 搭建Linux系统云服务器 2. 详解 Nginx 配置详解 3. 将自己的项目部署到服务器上
147 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18629 0
+关注
未来星狒狒
费元星
85
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载