linux下安装vsftp(二)

安装vsftpd

1、以管理员(root)身份执行以下命令

yum install vsftpd
2、设置开机启动vsftpd ftp服务

chkconfig vsftpd on
3、启动vsftpd服务

service vsftpd start
管理vsftpd相关命令:

停止vsftpd:  service vsftpd stop

重启vsftpd:  service vsftpd restart

配置防火墙

打开/etc/sysconfig/iptables文件

vi /etc/sysconfig/iptables
在REJECT行之前添加如下代码

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
保存和关闭文件,重启防火墙

service iptables start
配置vsftpd服务器

默认的配置文件是/etc/vsftpd/vsftpd.conf,你可以用文本编辑器打开。

vi /etc/vsftpd/vsftpd.conf
添加ftp用户

下面是添加ftpuser用户,设置根目录为/home/wwwroot/ftpuser,禁止此用户登录SSH的权限,并限制其访问其它目录。
1、修改/etc/vsftpd/vsftpd.conf
将底下三行
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
改为
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
3、增加用户ftpuser,指向目录/home/wwwroot/ftpuser,禁止登录SSH权限。
useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser
4、设置用户口令
passwd ftpuser
5、编辑文件chroot_list:
vi /etc/vsftpd/chroot_list
内容为ftp用户名,每个用户占一行,如:
peter
john
6、重新启动vsftpd
service vsftpd restart
另外,如果觉得以后管理ftp用户名嫌麻烦,可以使用centos官方发布的脚本管理。地址如下:
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
出现的错误
1、500 OOPS: cannot change directory
解决方法:
在终端输入命令:
setsebool -P ftpd_disable_trans 1
service vsftpd restart
就OK了!
原因:这是因为服务器开启了selinux,这限制了FTP的登录。

#sshd启动,报错Received unexpected end-of-file from SFTP server
vi /etc/ssh/sshd_config

将Subsystem      sftp    /usr/libexec/openssh/sftp-server 
改为Subsystem       sftp    internal-sftp 

service sshd restart

  

posted @ 2017-12-06 17:50  Adtuu  阅读(177)  评论(0编辑  收藏  举报