Tag Archive: ftp

五月 9th, 2019

1. 如果VPS服务器是linux系统且没有购买或者安装控制面板,例如 cpanel 或者 国产的宝塔面板,那么需要手动安装FTP。

vsftpd是linux上的FTP 服务器,vsftp提供三种登陆方式:匿名登录,本地用户登录,虚拟用户登录

命令如下:

# yum install vsftpd //直接使用yum 命令安装ftp

# service vsftpd start //开启 ftp

# service vsftpd stop // 关闭ftp

简单介绍一下如何配置 vsftpd

一般 vsftpd配置文件 存放在 /etc/vsftpd/vsftpd.conf

2. 如果VPS服务器使用的windwos系统且没有购买或者安装控制面板

需要下载安装ftp服务器 类似这种服务器有 Serv-U 或者是 Filezilla

大家需要在对应的官网下载并安装好,对应的使用教程可以参考官网上的教程

当然 Serv-U 是付费的 Filezilla是免费

Filezilla 可以在 filezilla 官网中下载

选择下载 FileZilla server 也可以在官网上查询对应的教程

3. 如果是已经安装了cpanel 或者 plesk面板 或者是宝塔面板

这些面板默认是已经配置和安装了FTP服务

Cpanel是linux主流的控制面板 当然cpanel面板是付费的,FTP账户信息就是cpanel账户登陆信息,一般安装好cpanel之后使用root权限登陆的是WHM面板,使用WHM面板搜索创建账户 可以创建cpanel账户,该账户就是可以登陆FTP

Plesk面板是windwos主流的面板 也是付费的,ftp账户信息是 plesk面板账户信息

宝塔是免费的 也可以创建FTP账户。相关搭建FTP的介绍,有兴趣的朋友可以参考了解一下 CentOS 6.5下怎样快速搭建FTP服务器

一月 16th, 2018
1. 安装vsftpd
#安装vsftpd
yum install -y vsftpd
#设置开机启动
systemctl enable vsftpd.service
# 重启
service vsftpd restart
# 查看vsftpd服务的状态
systemctl status vsftpd.service
2. 配置vsftpd.conf
#备份配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
#执行以下命令
sed -i “s/anonymous_enable=YES/anonymous_enable=NO/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#anon_upload_enable=YES/anon_upload_enable=NO/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#chown_uploads=YES/chown_uploads=NO/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#async_abor_enable=YES/async_abor_enable=YES/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#ascii_download_enable=YES/ascii_download_enable=YES/g” ‘/etc/vsftpd/vsftpd.conf’
sed -i “s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to FTP service./g” ‘/etc/vsftpd/vsftpd.conf’
#添加下列内容到vsftpd.conf末尾
vi /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf
use_localtime=YES
listen_port=21
chroot_local_user=YES
idle_session_timeout=300
guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/vconf
data_connection_timeout=1
virtual_use_local_privs=YES
pasv_enable=YES
pasv_min_port=10060
pasv_max_port=10070
accept_timeout=5
connect_timeout=1
allow_writeable_chroot=YES
3. 建立用户文件
#第一行用户名,第二行密码,不能使用root为用户名(奇数行用户名,偶数行密码,这里用户名是test,密码为123456)
vi /etc/vsftpd/virtusers
test
123456
4. 生成用户数据文件
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
#设定PAM验证文件,并指定对虚拟用户数据库文件进行读取
chmod 600 /etc/vsftpd/virtusers.db
5. 修改/etc/pam.d/vsftpd文件
# 修改前先备份
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
# 将auth及account的所有配置行均注释掉(每行前面加 #  )
vi /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
# 如果系统为32位,上面改为lib
6. 新建系统用户vsftpd,用户目录为/home/vsftpd
#用户登录终端设为/bin/false(即:使之不能登录系统)
useradd vsftpd -d /home/vsftpd -s /bin/false
chown -R vsftpd:vsftpd /home/vsftpd
7.建立虚拟用户个人配置文件
mkdir /etc/vsftpd/vconf
cd /etc/vsftpd/vconf
#这里建立test虚拟用户配合文件
touch test
#建立用户根目录
mkdir -p /home/vsftpd/test/
#更改用户目录权限
sudo chmod -R 777 /home/vsftpd/test
#编辑chris用户配置文件,内容如下,其他用户类似
vi test
local_root=/home/vsftpd/test/
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
8. 防火墙设置
vi /etc/sysconfig/iptables
#编辑iptables文件,添加如下内容,开放21,10060-10070端口
-A INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
-A INPUT -p tcp –dport 10060:10070 -j ACCEPT
9. 重启vsftpd服务器
service vsftpd restart
10.使用ftp软件连接测试
      只需填写服务器ip,ftp帐号密码,不用填端口
注意:阿里服务器需要在安全组规则中将10060/10070端口,21/22端口加入白名单,不开放端口shell都连不上。
参考地址:http://blog.csdn.net/the_victory/article/details/52192085  原文有写小问题,我做了修改
TAGS: ,
四月 30th, 2017

yum安装vsftpd程序:

yum install vsftpd -y

2、修改配置文件

vi /etc/vsftpd/vsftpd.conf

#虚拟用户配置文件的目录

user_config_dir=/etc/vsftpd/ftpuser

#是否允许anonymous登录FTP服务器

anonymous_enable=NO

#//是否允许本地用户登录FTP服务器,默认是允许

local_enable=YES

#//是否允许用户具有在FTP服务器文件中执行写的权限,默认是允许

write_enable=YES

local_umask=022

anon_upload_enable=YES

virtual_use_local_privs=yes

anon_mkdir_write_enable=YES

anon_world_readable_only=YES

xferlog_enable=YES

connect_from_port_20=YES

listen_port=21

ftp_data_port=20

xferlog_file=/var/log/xferlog

xferlog_std_format=NO

ftpd_banner=Welcome to FTP service

chroot_local_user=yes

listen=YES

userlist_enable=YES

tcp_wrappers=YES

syslog_enable=yes

port_enable=YES

chown_uploads=YES

#设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下

pam_service_name=meizu_ftp

#是否启用来宾用户(也就是启用虚拟用户)

guest_enable=YES

#如果启用了虚拟用户后上传文件修改文件的用户名

guest_username=mzftp

use_localtime=YES

connect_timeout=600

data_connection_timeout=600

idle_session_timeout=600

3、在/etc/vsftpd/下创建存放虚拟用户的认证文件

mkdir /etc/vsftpd/ftpuser

4、为虚拟用户创建对应的文件,如:ftptest

vim /etc/vsftpd/ftpuser/ftptest

local_root=/data/ftpdata/ftp1

anon_world_readable_only=no

write_enable=yes

anon_upload_enable=yes

anon_mkdir_write_enable=YES

anon_other_write_enable=yes

创建ftptest虚拟用户对应的ftp存放目录: mkdir -p /data/ftpdata/ftp1

5、生成虚拟用户的账号密码db数据库文件

vim /etc/vsftpd/login.txt   #奇数行 用户名,双数行 密码

ftptest

test123456

mzwentai

wentai@111.com

db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db

(ps:增加用户是重复这部操作)

6、更改pam认证模块

vim /etc/pam.d/meizu_ftp  #这个文件名要与主配置文件中的pam_service_name指定的一致,最后面的login就是login.db,但是这里的后缀是不需要写的

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login

7、创建用户mzftp ,赋mzftp目录权限 #这个要与主配置文件中的guest_username指定的一致

useradd -s /sbin/nologin mzftp

chown -R mzftp.mzftp /data/ftpdata/ftp1

8、启动服务

service vsftpd start

测试:

在我的电脑上输入 ftp://10.3.135.199 登陆,用户密码登陆ftptest/test123456

新建个文件夹,然后从我的电脑复制个文件,粘贴过去,有权限表示测试成功

TAGS: ,
十月 17th, 2016

Linux主机  cpanel 授权用户
FTP客户端连接时,应用默认21端口时,连接失败

开启
vi /etc/pure-ftpd.conf
….
PassivePortRange          30000 50000

删除前面的注释符(#).

重启pure-ftpd

安装iptables或者csf
这里安装的csf,修改如下:
vi /etc/csf/csf.conf

# Allow incoming TCP ports
TCP_IN = “20,21,22,25,53,80,110,143,443,465,587,993,995,2077,2078,2079,2080,2082,2083,2086,2087,2095,2096,30000:50000”

此栏目添加30000:50000 于结尾

然后重启 service csf restart

接下来测试ftp使用默认21端口就可以连接成功了.

TAGS: , ,
七月 22nd, 2016

很多时候,我们自己创建FTP成功后,测试连接却发现提示”534 Policy requires SSL”错误,对于这种情况,我们该如何解决呢?

解决思路应该如下:

<1>检查SSL证书设置:

图片21

正确设置如下:

图片22

 

<2>检查FTP身份验证(是否启动):

图片23

正确设置如下:

图片24

 

<3>检查FTP授权规则

图片25

正确设置如下(且该用户真实存在):

图片26

 

以上检测均设置正确的话,再次测试就不会出现以上错误了.

TAGS: , ,
七月 22nd, 2016

Win2008系统下:

通过IIS管理器创建的FTP,默认防火墙开启的情况下,是无法连接的.但是,我们同样可以手动添加规则来允许其连接,具体步骤如下:

控制面板>>windows防火墙>>高级设置,如下图:

图片14

“新建入站规则”,如下图:

图片15

 

选择”程序”,下一步,如下图:

图片16

添加程序”C:\WINDOWS\system32\inetsrv\inetinfo.exe”,如下图:

注: 这个程序你可能无法使用直接路径查看到,但是可以直接添加成功!

图片17

图片18

图片19

这里只是添加了名称(必填项),服务器配置可以详细添加描述和名称,如下图:

图片20

这样,开启防火墙,FTP就可以正常连接了.

七月 22nd, 2016

win2008下FTP服务详细配置如下:

<1>开始>>管理工具>>服务器管理器,如下图:

图片1

 

<2>安装IIS/FTP角色

服务器管理器>>”角色”>>”添加角色”>>”下一步”,如下图:

图片2

选择”web服务器(IIS)”,然后选择”FTP服务器”,下一步直至安装成功,如下图:

图片3

图片4

图片5

图片6

 

<3>添加FTP站点

开始>>管理工具>>Internet 信息服务(IIS)管理器>>网站>>右击”添加FTP站点”,如下图:

图片7

图片8

这里可以先指定某个不存在的用户,之后再创建该用户,或者提前创建该用户,皆可!

如下图: 这里未提前创建该用户ftpuser

图片9

 

<4>创建ftpuser用户,如下图:

图片10

这样就算配置成功了.

 

<5>若是临时使用,可以直接先关闭防火墙即可!

连接方式;

  • 浏览器访问 :

图片11

  • 文件管理器下:

图片12

  • exe  ftp客户端工具

图片13

TAGS: ,
七月 18th, 2016

FTP服务器安装及设置

  1. # yum groupinstall “FTP Server” 安装vsftp
  2. # chkconfig vsftpd on 开机启动
  3. # service vsftpd start 重启ftp
  4. # setsebool -P ftp_home_dir on 设置主目录
  5. # yum install mlocate 安装mlocate
  6. # updatedb 更新

 

  1. # vi /etc/sysconfig/iptables

 

编辑修改iptables规则
添加:

  1. -A INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT

 

重启iptables:

  1. # service iptables restart

 

这样即完成了服务器端的ftp设置。

接下来我们创建一个ftp账户:

  1. # useradd -d /var/www/html/test test 创建test用户,并指定其主目录为/var/www/html/test
  2. # passwd test 设置test用户的密码
  3. # chown test /var/www/html/test 更改test用户上传目录的拥有者,否则test用户可能无法上传
  4. # usermod -s /sbin/nologin test 使用户无法通过各种shell登录

 

这样即完成了CentOS 5上ftp服务器的架设及用户的开设。

TAGS: ,
七月 17th, 2016

vsftp 500 OOPS: cannot change directory:/home/

登陆ftp时再输入用户名和密码出现:500 OOPS: cannot change directory:/home/**********

解 决方法:在终端输入 setsebool ftpd_disable_trans 1 然后重启vsftp服务 service vsftpd restart 如果输入上述命令时出现:Could not change active booleans: Invalid boolean 是因为SELinux的问题接着在终端输入:setsebool ftp_home_dir=1 重启vsftp服务即可解决问题

TAGS: ,
七月 15th, 2016

Windows Server 2003启动ftp默认站点提示发生意外错误0x8ffe2740:

查看了下IIS中启动站点提示发生意外错误0x8ffe2740一般都是因为站点绑定的端口被占用了。于是检查了下21端口被什么进程占用着在,cmd命令提示符中运行:

  1. netstat -aon|findstr “21”
  2. TCP     127.0.0.1:21       0.0.0.0:0             LISTENING    1228

端口被进程号为2448的进程占用,继续执行下面命令:

  1. tasklist|findstr “1228”
  2. Serv-U                   1228 Console                 0     32,064 K

原来21端口被Serv-U占用了(网上下的IIS安装包,装好之后Serv-U被自动装上了),并且默认开启启动了。到服务中暂停了Serv-U服务之后(为防止再次启动,设置成默认是禁止状态了)。再启动FTP即OK了。

TAGS: ,