centos修改ftp目录
① 求助CentOS高手:为/data/www/ 目录 配置ftp
你是不是把ftp根目录指向到新建的ftpwww用户的宿主目录下了?创建新用户后用户宿主目录下是有隐藏的几个配置文件的
② 如何对CentOS FTP服务配置
vsftpd作为FTP服务器,在linux系统中是非常常用的。下面我们介绍如何在centos系统上安装vsftp。
什么是vsftpd
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。
安装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的登录。
③ CentOS系统下如何配置FTP
启动命令:/etc/rc.d/init.d/vsftpd start 这时候可以使用ftp客户端连接。 vsftpd的权限貌似和系统权限有挂钩。 下面是抄来的配置解释vsftpd的配置 ,例如root等。 vsftpd.user_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问。 vsftpd.conf:位于/etc/vsftpd目录下。来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。 (1)CentOS系统用户登录控制 local_enable=YES,允许本地用户登录。 banned_email_file=/etc/vsftpd.banned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpd.banned_emails)。 (2)CentOS系统用户权限控制 write_enable=YES,开启全局上传权限。 local_umask=022,本地用户的上传文件的umask设为022(系统默认是077,一般都可以改为022)。 chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。 chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpd.chroot_list)。 nopriv_user=ftpsecure,指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的独立用户。这是vsftpd系统推荐选项。 async_abor_enable=YES,强烈建议不要启用该选项,否则将可能导致出错! ascii_upload_enable=YES;ascii_download_enable=YES,默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的请求,启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。 注意:启用ascii_download_enable选项会让恶意远程用户们在ASCⅡ模式下用“SIZE/big/file”这样的指令大量消耗FTP服务器的I/O资源。 这些ASCⅡ模式的设置选项分成上传和下载两个,这样我们就可以允许ASCⅡ模式的上传(可以防止上传脚本等恶意文件而导致崩溃),而不会遭受拒绝服务攻击的危险。 (3)CentOS系统用户连接和超时选项 idle_session_timeout=600,可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。 data_connection_timeout=120,设定默认的数据连接超时时间。 dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。 xferlog_enable=YES,启用记录上传/下载活动日志功能。 xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log。 以上,我们就完成了CentOS系统中FTP的配置工作。
④ CentOS系统下如何配置FTP(一)
启动命令:/etc/rc.d/init.d/vsftpd start
这时候可以使用ftp客户端连接.
vsftpd的权限貌似和系统权限有挂钩.
下面是抄来的配置解释vsftpd的配置
vsftpd.user_list:位于/etc目录下.该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问.
vsftpd.conf:位于/etc/vsftpd目录下.来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置.
(1)CentOS系统用户登录控制
⑤ 怎么修改centos ftp匿名登录的路径
如果是默认安装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来挂载需要的目录。
⑥ centos linux FTP 怎么改变匿名用户的默认路径 急急急 在线等
修改配置文件/etc/vsftpd/vsftpd.conf中的 “anon root = ” ,把等号后改为 /var/ftp/A 就OK了!
⑦ centos里怎样设置同一个用户登陆不同的ftp站点时,主目录分别为/var/ftp,/var/f
将用户的家目录设置为你指定的目录。
⑧ 关于Linux(CentOS) ftp的小疑问。。。
不知道你用的什么服务,如果是vsftp的话,需要修改配置里需要开启所有用户创建目录和写的开关:
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_upload_enable=YES
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
⑨ CentOS如何配置ftp server
首先安装proftp,# yum install proftp
之后配置
1、配置Ftp允许Root登录
修改/etc/ftpusers,去掉root
2、如果希望实现Root用户Ftp后可以切换到/目录
一般用户只能切换到自己的主目录,修改/etc/proftpd.conf文件,在DefaultRoot
一行前面增加一行
DefaultRoot / root
重新启动proftpd服务即可。
改变匿名登录的不想登录到默认的 /var/ftp目录
就要把/etc/passwd文件中的
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
中的默认目录改变了即可。
3、Ftp具有写入功能请在/etc/proftpd.conf文件中的<Global>段中改为如下:
<Limit STOR>
AllowAll
</Limit>
才可以。
4、Ftp改为PASV模式
在我们红旗dc 5.0中的设置是在proftpd.conf中添加如下两条语句即可。
MasqueradeAddress ip地址
#该参数设置在client发pasv指令时,server返回给client的pasv地址串中应该包含的连接地址,
#该地址通常是防火墙的外部地址(作rdr的地址)
PassivePorts 端口号
设置好之后重启一下ftp服务。
FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个是数据传送的连接。FTP服务程序一般会支持两种不同的模式,一种是Port模式,一种是
Passive模式(PasvMode),我先说说这两种不同模式连接方式的分别。
先假设客户端为C,服务端为S.
*Port模式:*
当客户端C向服务端S连接后,使用的是Port模式,那么客户端C会发送一条命令告诉服务端S(客户端C在本地打开了一个端口N在等着你进行数据连接),当服务端S收
到这个Port命令后
就会向客户端打开的那个端口N进行连接,这种数据连接就生成了。
*Pasv模式:*
当客户端C向服务端S连接后,服务端S会发信息给客户端C,这个信息是(服务端S在本地打开了一个端口M,你现在去连接我吧),当客户端C收到这个信息后,就可以向服
务端S的M端口进行连接,连接成功后,数据连接也建立了。
从上面的解释中,两种模式主要的不同是数据连接建立的不同,对于Port模式,是客户端C在本地打开一个端口等服务端S去连接建立数据连接;而Pasv模式就是服务端
S打开一个端口等待客户端C去建立一个数据连接。
关于ftp的pasv模式,有一种情况:
如果是通过iptables转发到内网的一台服务器,默认只能用port模式,此时,可以增加两个iptables模块,以实现pasv模式:
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
放入/etc/rc.local即可。(网关服务器上设置,或在配置了iptables的机器上设置)
当然,通过修改proftpd.conf,指定允许的端口也可以,但这个会有限制,就是pasv port端口是固定的,假设数量是51000-510011,则只能提供给最多11个用户,否则就没有端口可以分配了。但加载模块则没有这个问题。