登录ftp服务器
已经登录tom的家目录下了
以上的虚拟用户jene和john共用映射的tom家目录的 3.5.8 若用自己各自的目录 vi vsftpd.conf anonymous_enable=NO(修改配置)禁用匿名用户登录 write_enable=YES (默认开启)允许使用任何可以修改文件系统的FTP的指令 local_enable=YES(默认开启)启用本地用户登录设置 chroot_local_user=YES (自建配置)将所有本地用户限制在家目录中 pam_service_name=juser.pam(默认开启)配置vsftpd使用的PAM模块为vsftpd user_config_dir=/opt/vsftpd/juser_dir (自建配置)设置虚拟帐号的主目录为/vsftpd_login # mkdir /opt/vsftpd/juser_dir //建虚拟账号主目录 # cd /opt/vsftpd/juser_dir //切换到这个新建的配置文件夹下 # touch jene 创建jene配置文件 # touch john 创建john配置文件
为各虚拟用户建立独立的配置文件
# vi jene anon_world_readable_only=YES 只读,不能下载 anon_world_readable_only=no 表示用户可以浏览FTP目录和下载文件 guest_enable=yes 开启虚拟帐号登录 guest_username=ftp_jene 设置虚拟用户jene对应的系统帐号为ftp_jene local_root=/opt/jene 用户登入时,所在目录 anon_world_readable_only=no 不允许匿名用户浏览器整个服务器的文件系统 anon_max_rate=50000 限定传输速率为50KB/s # vi john guest_enable=yes 开启虚拟帐号登录 guest_username=ftp_ john 设置虚拟用户john对应的系统帐号为ftp_john local_root=/opt/john 用户登入时,所在目录 anon_other_write_enable=YES 允许匿名账号具有删除、改名权限 anon_mkdir_write_enable=yes 允许创建文件夹,不能删除目录 anon_upload_enable=yes 开启匿名帐号的上传功能 anon_world_readable_only=no 不允许匿名用户浏览整个服务器的文件系统 anon_max_rate=100000 限定传输速度为100KB/s重启vsftpd服务
#service vsftpd restart
linux文件权限分成“属主”、“属组”和“其他人”这三种,如果“其他人”没有可读权限,那anon_world_readable_only这个参数就起效了,对于目录来说,如果“其他人”没有可读权限,且anon_world_readable_only=YES,则匿名用户无法浏览该目录下的所有内容(看上去像个空目录),而对于文件来说,如果“其他人”没有可读权限,且anon_world_readable_only=YES,则匿名用户无法下载该文件。
4、修改selinux外网是可以访问上去了,可是发现没法返回目录(使用ftp的主动模式,被动模式还是无法访问),也上传不了,因为selinux作怪了。
修改selinux:
执行以下命令查看状态:
执行上面命令,再返回的结果看到两行都是off,代表,没有开启外网的访问
[root@linuxidc ~]# setsebool -P allow_ftpd_full_access on [root@linuxidc ~]# setsebool -P ftp_home_dir on这样应该没问题了(如果,还是不行,看看是不是用了ftp客户端工具用了passive模式访问了,如提示Entering Passive mode,就代表是passive模式,默认是不行的,因为ftp passive模式被iptables挡住了,下面会讲怎么开启,如果懒得开的话,就看看你客户端ftp是否有port模式的选项,或者把passive模式的选项去掉。如果客户端还是不行,看看客户端上的主机的电脑是否开了防火墙,关吧)
FileZilla的主动、被动模式修改:
菜单:编辑→设置
[root@linuxidc ~]# chkconfig vsftpd on
6、修改FTP默认端口 6.1登录服务器,打开vsftp.conf文件 # vim /etc/vsftpd/vsftpd.conf 在文件末尾增加listen_port=2121 pasv_enable=yes pasv_min_port=30000 pasv_max_port=30999 listen_port=2121 6.2打开/etc/services文件 [plain] view plain copy # vim /etc/services 找到ftp选项并将21修改成你设置的端口,本文为2121 # 21 is registered to ftp, but also used by fsp ftp 2121/tcp ftp 2121/udp fsp fspd 6.3 重启vsftp服务 # /etc/init.d/vsftpd restart 使用netstat -utlpn | grep vsftp命令查看设置的端口,确认是否成功 # netstat -utlpn | grep vsftp tcp 0 0 0.0.0.0:2121 0.0.0.0:* LISTEN 33004/vsftpd tcp 0 0 192.168.11.6:30954 0.0.0.0:* LISTEN 33006/vsftpd 6.4 防火墙加上允许策略: # vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2121 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 2120 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 30000:30999 -j ACCEPT