Ubuntu中有关Ftp服务器到架设


google一下Ubuntu下Ftp的软件有好多种,各种的一些大致特点:
wu-Ftp:比较老牌,但针对它的攻击比较多,设置比较麻烦,但功能比较强大。( 参考)
proFtpd:能实现wu-Ftp以及server-U的所有功能。安全性也较高,但比起vcFtpd配置稍显复杂。
vsftpd:功能强大,配置也比较简单

选vsftod是因为它安全、速度快
选proFtpd偶尔看到webmin支持他,所以就用了,因为方便。
选Serv-U理由windows普遍,Serv-U方便,但最大问题是盗版,所以现在不大用了

1.下载安装vsftpd文件:
在终端中输入:sudo apt-get install vsftpd
2.认识vsftp.conf文件:
在/etc/找到vsftpd.conf文件,首先备份该文件,终端输入: sudo cp /etc/vsftpd.conf /etc/vsftpd.backup,然后就可以修改该文件了。
修改前注意下,如果你是root用户下,则不用考虑,否则要注意修改文件到权限,因为默认该文件只在root用户下可以修改,其他用户只读,在终端中输入:sudo chmod 666 /etc/vsftpd.conf
然后现在可以开始修改vsftpd.conf配置文件了。终端输入:vi /etc/vsftpd.conf,显示如下:
#############################################################################
# Example config file /etc/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
#
# Run standalone?  vsftpd can run either from an inetd or as a standalone
# daemon started from an initscript.
listen=YES //是否运行独立
#
# Run standalone with IPv6?
# Like the listen parameter, except vsftpd will listen on an IPv6 socket
# instead of an IPv4 one. This parameter and the listen parameter are mutually
# exclusive.
#listen_ipv6=YES
#
# Allow anonymous FTP? (Disabled by default)
anonymous_enable=YES //是否允许匿名登陆
#
# Uncomment this to allow local users to log in.
local_enable=YES //是否允许本地用户登录
#
# Uncomment this to enable any form of FTP write command.
#write_enable=YES  //是否允许FTP被写入
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
#local_umask=022 //设置文件到权限,
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES //是否开放匿名用户的上传权限,该权限只有在全局可写参数被激活的
            //前提下,当然你也得为Ftp用户创建一个可写到目录
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES  //是否开放登录用户创建文件夹权限
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES  //登录用户切换目录时,是否显示目录下.message的内容
#
# If enabled, vsftpd will display directory listings with the time
# in  your  local  time  zone.  The default is to display GMT. The
# times returned by the MDTM FTP command are also affected by this
# option.
use_localtime=YES  //是否展示文件夹创建到详细时间信息
#
# Activate logging of uploads/downloads.
xferlog_enable=YES //是否启动上传和下载的日志功能
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES  //是否启用FTP数据的端口20的连接请求
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES  //是否开启改变文件拥有者
#chown_username=whoever  //改变上传文件的所有者,注意,不建议使用root作为上传文件的拥有者
#
# You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/vsftpd.log  //改变上传和下载的日志的存放路径,
                   //默认路径为/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format.
# Note that the default log file location is /var/log/xferlog in this case.
#xferlog_std_format=YES   //是否使用标准的ftp xferlog日志文件格式
#
# You may change the default value for timing out an idle session.
#idle_session_timeout=600 //设置空闲用户会话中断时间
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120  //设置数据连接超时时间
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure //设置该Ftp为唯一的用户
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES  //是否接受异步ABOR请求
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that on some FTP servers, ASCII support allows a denial of service
# attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
# predicted this attack and has always been safe, reporting the size of the
# raw file.
# ASCII mangling is a horrible feature of the protocol.
#ascii_upload_enable=YES  //是否允许使用ASCII格式来上传和下载
#ascii_download_enable=YES  //注意,默认是开启,但是开启可能存在潜在到攻击危险
#
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service. //欢迎信息
#
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES //是否允许禁止匿名用户使用某些邮件地址
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails //禁止邮件列表的路径
#
# You may restrict local users to their home directories.  See the FAQ for
# the possible risks in this before using chroot_local_user or
# chroot_list_enable below.
#chroot_local_user=YES //本地所有帐户都只能在自家目录
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
//您可以指定一个显式列出本地用户chroot()到他们的主目录。
//如果chroot_local_user是Yes,那么这个列表变成一个列表用户不是chroot()。
#chroot_local_user=YES
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES  
#
# Debian customization(定制)
#
# Some of vsftpd's settings don't fit the Debian filesystem layout by
# default.  These settings are more Debian-friendly.
#
# This option should be the name of a directory which is empty.  Also, the
# directory should not be writable by the ftp user. This directory is used
# as a secure chroot() jail at times vsftpd does not require filesystem
# access.
secure_chroot_dir=/var/run/vsftpd/empty //安全的目录
#
# This string is the name of the PAM service vsftpd will use.
pam_service_name=vsftpd  //PAM服务使用到名字
#
# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
rsa_cert_file=/etc/ssl/private/vsftpd.pem //指定RSA证书位置用于SSL加密连接。


#############################################################################
配置完了我们重启服务器:
sudo service vsftpd restart
3.接下来我们配置一下我们到Ftp作为例子实践下:
a.首先我们允许匿名用户上传,将如下两行前的#删除:
    #anon_upload_enable=YES       //允许匿名用户上传
    #anon_mkdir_write_enable=YES // 开启匿名用户的写和创建目录的权限
若要以上两项设置生效,同时还要求:
    1)write_enable=YES
    2)匿名用户对文件系统的上传目录具有写权限,添加如下的配置语句:
    anon_world_readable_only=NO
上面的配置语句用于放开匿名用户的浏览权限.
b.配置基本的性能和安全选项:
  1).设置空闲的用户会话的中断时间
  idle_session_timeout=600  //将在用户会话空闲10 分钟后被中断
  2).设置空闲的数据连接的的中断时间
  data_connection_timeout=120  //将在数据连接空闲2分钟后被中断
  3).设置客户端空闲时的自动中断和激活连接的时间
  accept_timeout=60
  connect_timeout=60  //将使客户端空闲1分钟后自动中断连接,并在中断1分钟后自动激活连接
  4).设置最大传输速率限制
  local_max_rate=50000   //将使本地用户的最大传输速率为50kkbytes/s,
  anon_max_rate=30000    //匿名用户的传输速率为30 kbytes/sec
  5).设置客户端连接时的端口范围
  pasv_min_port=50000
  pasv_max_port=60000//将使客户端连接时的端口范围在50000和60000之间,提高了系统的安全性
  6).设置chroot
  在默认配置中,本地用户可以切换到自家目录以外的目录进行浏览,并在权限许可的范围内进行下载和上传。这样的设置对于一个FTP 服务器来说是不安全的。
  如果希望用户登录后不能切换到自家目录以外的目录,则需要设置chroot 选项,涉及如下选项:
  chroot_local_user
  chroot_list_enable
  chroot_list_file
   有两种设置chroot 的方法:
  (a.设置所有的本地用户执行chroot
  只要将chroot_local_user 的值设为YES 即可,即:
  chroot_local_user=YES
  (b.设置指定的用户执行chroot
  需要如下的设置:
  chroot_local_user=NO
  chroot_list_enable=YES
  chroot_list_file= /etc/vsftpd.chroot_list
  这样,只有/etc/vsftpd.chroot_list 文件中指定的用户才执行chroot
c.配置基于本地用户的访问控制:
  要配置基于本地用户的访问控制,可以通过修改vsftpd的主配置文件/etc/vsftp/vsftpd.conf来进行,有如下两种限制方法:
  1).限制指定的本地用户不能访问,而其他本地用户可访问:
  userlist_enable=NO
  userlist_deny=YES
  userlist_file= /etc/vsftpd.user_list
  使文件/etc/vsftpd.user_list 中指定的本地用户不能访问FTP 服务器,而其他本地用户可访问FTP 服务器。
  2).限制指定的本地用户可以访问,而其他本地用户不可访问
  例如下面的设置:
  userlist_enable= YES
  userlist_deny= NO
  userlist_file= /etc/vsftpd.user_list
  使文件/etc/vsftpd.user_list 中指定的本地用户可以访问FTP 服务器,而其他本地用户不可以访问FTP 服务器。

下面来个例子,高安全级别匿名FTP 服务器的配置要求
  仅仅允许匿名用户访问
  不允许本地用户访问
  关闭所有写权限
  不允许匿名用户上传
  设置客户端连接时的端口范围
  设置 匿名用户的最大传输速率限制
  设置空闲的数据连接的的中断时间
  设置客户端空闲时的自动中断和激活连接的时间
  配置每个主机的最大连接数
  配置总的并发连接数
  配置禁止访问的主机
  配置安全日志
  # cat /etc/vsftp/vsftpd.conf
  # Access rights
  anonymous_enable=YES
  local_enable=NO
  write_enable=NO
  anon_upload_enable=NO
  anon_mkdir_write_enable=NO
  anon_other_write_enable=NO
  # Security
  anon_world_readable_only=YES
  connect_from_port_20=YES
  hide_ids=YES
  pasv_min_port=50000
  pasv_max_port=60000
  # Features
  xferlog_enable=YES
  ls_recurse_enable=NO
  ascii_download_enable=NO
  async_abor_enable=YES
  # Performance
  one_process_model=YES
  idle_session_timeout=120
  data_connection_timeout=300
  accept_timeout=60
  connect_timeout=60
  anon_max_rate=50000
  ftpd_banner=This FTP server is anonymous only.

  这里主要是限制主机访问规则
  # cat /etc/xinetd.d/vsftpd
  service ftp
  {
  disable = no
  socket_type = stream
  wait = no
  user = root
  server = /usr/local/sbin/vsftpd
  per_source = 5
  instances = 200
  no_access = 192.168.1.3
  banner_fail = /etc/vsftpd.busy_banner
  log_on_success += PID HOST DURATION
  log_on_failure += HOST
  }
  重启动服务器
  #/etc/rc.d/init.d/vsftpd restart
  完成了,现在你可以试试看是不是和上面说的限制一样了。

  很多FTP服务器都要密码和用户才能下到你要的好东西,你是不是也想要过下这个瘾呢?给别人一个用户名和密码,这个配置其实也很简单。
  虚拟用户(virtual users)的FTP服务器的配置。虚拟用户只能访问为其提供的FTP 服务,虚拟用户不能像本地的实用户那样登录系统而访问系统的其他资源。若用户对FTP
  服务器站内具有写权限并且不允许访问系统的其他资源,则该用户应该使用虚拟用户才能提高系统的安全性。传统的FTP 服务器采用如下的方法实现虚拟用户:
  1、在本地建立普通用户账号并设置密码
  2、将其登录shell 设为不可登录
  3、由passwd/shadow 口令系统进行认证
  vsftpd 的虚拟用户采用了不与系统账户口令文件合二为一的方法,也就是说,为了认证这些虚拟用户vsftpd使用单独的口令库文件(pam_userdb),由可插拔认证模块(PAM)进行认证。使用这种方式更加安全,并且配置更灵活。

  配置简单的虚拟用户FTP 服务器
  1、生成虚拟用户口令库文件
  2、配置生成vsftpd 的认证文件
  3、建立虚拟用户所要访问的目录并设置相应权限
  4、建立配置文件
  //生成虚拟用户口令库文件,为了建立此口令库文件,先要生成一个文本文件
  # cat <<! >logins.txt
  > tom
  > foo
  > fred
  > bar
  > valid
  > lwd
  > dede
  > jy
  > !
  #
  //此文本文件的格式是:
  //单数行为用户名,偶数行为口令,
  //即:用户tom 的口令为foo;用户fred 的口令为bar
  //
  //下面使用db_load 命令生成口令库文件
  # db_load -T -t hash -f ~/logins.txt /etc/vsftpd_login.db
  //修改口令库文件的权限
  # chmod 600 /etc/vsftpd_login.db
  //下面编辑生成虚拟用户所需的PAM 配置文件
  # vi /etc/pam.d/ftp.vu
  //插入如下两行
  auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
  account required /lib/security/pam_userdb.so db=/etc/vsftpd_login
  //保存后退出vi
  //用户也可以用下面的命令从源代码分发包中复制此文件
  // cd /usr/local/src/vsftpd-1.1.3/EXAMPLE/
  // cp VIRTUAL_USERS/vsftpd.pam /etc/pam.d/ftp.vu
  #
  //下面建立虚拟用户所要访问的目录并设置仅virtual 用户访问的权限
  # useradd -d /home/ftpsite virtual
  # chmod 700 /home/ftpsite/
  #
  //在目录中生成测试文件
  # su - virtual -c "echo hello>/home/ftpsite/test_file"
  #
  //下面生成主配置文件
  # vi /etc/vsftpd.standalone.vu.conf
  //在此文件中插入下面的配置语句
  //listen=YES
  //anonymous_enable=NO
  //local_enable=YES
  //write_enable=NO
  //anon_upload_enable=NO
  //anon_mkdir_write_enable=NO
  //anon_other_write_enable=NO
  //chroot_local_user=YES
  //guest_enable=YES //启用虚拟用户
  //guest_username=virtual //将虚拟用户映射为本地virtual 用户
  // 这样虚拟用户登录后才能进入本地用户virtual 的目录/home/ftpsite/
  //pasv_min_port=30000
  //pasv_max_port=30999
  //ftpd_banner=This FTP server is virtual user only.
  //pam_service_name=ftp.vu // 指定PAM 配置文件为ftp.vu
  //插入完毕,保存退出。
  #
  //下面先关闭原来的服务,而后启动新的服务
  # killall vsftpd
  # /usr/local/sbin/vsftpd /etc/vsftpd.standalone.vu.conf &
  //配置结束
参考
另一个实例:
#################用户登陆控制##############
  #接受匿名用户
  anonymous_enable=YES
  #匿名用户login时不询问口令
  no_anon_password=YES
  #匿名用户主目录
  anon_root=(none)
  #接受本地用户
  local_enable=YES
  #本地用户主目录
  local_root=(none)
  #如果匿名用户需要密码,那么使用banned_email_file里面的电子邮件地址的用户不能登录
  deny_email_enable=YES
  #仅在没有pam验证版本时有用,是否检查用户有一个有效的shell来登录
  check_shell=YES
  #若启用此选项,userlist_deny选项才被启动
  userlist_enable=YES
  #若为YES,则userlist_file中的用户将不能登录,为NO则只有userlist_file的用户可以登录
  userlist_deny=NO
  #如果和chroot_local_user一起开启,那么用户锁定的目录来自/etc/passwd每个用户指定的目录(这个不是很清楚,很哪位熟悉的指点一下)
  passwd_chroot_enable=NO
  #定义匿名登入的使用者名称。默认值为ftp。
  ftp_username=FTP
  
  #################用户权限控制###############
  #可以上传(全局控制).
  write_enable=YES
  #本地用户上传文件的umask
  local_umask=022
  #上传文件的权限配合umask使用
  #file_open_mode=0666
  #匿名用户可以上传
  anon_upload_enable=NO
  #匿名用户可以建目录
  anon_mkdir_write_enable=NO
  匿名用户其它的写权利(更改权限?)
  anon_other_write_enable=NO
  如果设为YES,匿名登入者会被允许下载可阅读的档案。默认值为YES。
  anon_world_readable_only=YES
  #如果开启,那么所有非匿名登陆的用户名都会被切换成guest_username指定的用户名
  #guest_enable=NO
  所有匿名上传的文件的所属用户将会被更改成chown_username
  chown_uploads=YES
  匿名上传文件所属用户名
  chown_username=lightwiter
  #如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录
  chroot_list_enable=YES
  #允许使用"async ABOR"命令,一般不用,容易出问题
  async_abor_enable=YES
  管控是否可用ASCII 模式上传。默认值为NO。
  ascii_upload_enable=YES
  #管控是否可用ASCII 模式下载。默认值为NO。
  ascii_download_enable=YES
  #这个选项必须指定一个空的数据夹且任何登入者都不能有写入的权限,当vsftpd 不需要file system 的权限时,就会将使用者限制在此数据夹中。默认值为/usr/share/empty
  secure_chroot_dir=/usr/share/empty
  
  ###################超时设置##################
  #空闲连接超时
  idle_session_timeout=600
  #数据传输超时
  data_connection_timeout=120
  #PAVS请求超时
  ACCEPT_TIMEOUT=60
  #PROT模式连接超时
  connect_timeout=60
  
  ################服务器功能选项###############
  #开启日记功能
  xferlog_enable=YES
  #使用标准格式
  xferlog_std_format=YES
  #当xferlog_std_format关闭且本选项开启时,记录所有ftp请求和回复,当调试比较有用.
  #log_ftp_protocol=NO
  #允许使用pasv模式
  pasv_enable=YES
  #关闭安全检查,小心呀.
  #pasv_promiscuous+NO
  #允许使用port模式
  #port_enable=YES
  #关闭安全检查
  #prot_promiscuous
  #开启tcp_wrappers支持
  tcp_wrappers=YES
  #定义PAM 所使用的名称,预设为vsftpd。
  pam_service_name=vsftpd
  #当服务器运行于最底层时使用的用户名
  nopriv_user=nobody
  #使vsftpd在pasv命令回复时跳转到指定的IP地址.(服务器联接跳转?)
  pasv_address=(none)
  
  #################服务器性能选项##############
  #是否能使用ls -R命令以防止浪费大量的服务器资源
  #ls_recurse_enable=YES
  #是否使用单进程模式
  #one_process_model
  #绑定到listen_port指定的端口,既然都绑定了也就是每时都开着的,就是那个什么standalone模式
  listen=YES
  #当使用者登入后使用ls -al 之类的指令查询该档案的管理权时,预设会出现拥有者的UID,而不是该档案拥有者的名称。若是希望出现拥有者的名称,则将此功能开启。
  text_userdb_names=NO
  #显示目录清单时是用本地时间还是GMT时间,可以通过mdtm命令来达到一样的效果
  use_localtime=NO
  #测试平台优化
  #use_sendfile=YES
  
  ################信息类设置################
  #login时显示欢迎信息.如果设置了banner_file则此设置无效
  ftpd_banner=欢迎来到湖南三辰Fake-Ta FTP 网站.
  #允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
  dirmessage_enable=YES
  #显示会话状态信息,关!
  #setproctitle_enable=YES
  
  ############## 文件定义 ##################
  #定义不能更改用户主目录的文件
  chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
  #定义限制/允许用户登录的文件
  userlist_file=/etc/vsftpd/vsftpd.user_list
  #定义登录信息文件的位置
  banner_file=/etc/vsftpd/banner
  #禁止使用的匿名用户登陆时作为密码的电子邮件地址
  banned_email_file=/etc/vsftpd.banned_emails
  #日志文件位置
  xferlog_file=/var/log/vsftpd.log
  #目录信息文件
  message_file=.message
  
  ############## 目录定义 #################
  #定义用户配置文件的目录
  user_config_dir=/etc/vsftpd/userconf
  #定义本地用户登陆的根目录,注意定义根目录可以是相对路径也可以是绝对路径.相对路径是针对用户家目录来说的.
  local_root=webdisk #此项设置每个用户登陆后其根目录为/home/username/webdisk
  #匿名用户登陆后的根目录
  anon_root=/var/ftp
  
  #############用户连接选项#################
  #可接受的最大client数目
  max_clients=100
  #每个ip的最大client数目
  max_per_ip=5
  #使用标准的20端口来连接ftp
  connect_from_port_20=YES
  #绑定到某个IP,其它IP不能访问
  listen_address=192.168.0.2
  #绑定到某个端口
  #listen_port=2121
  #数据传输端口
  #ftp_data_port=2020
  #pasv连接模式时可以使用port 范围的上界,0 表示任意。默认值为0。
  pasv_max_port=0
  #pasv连接模式时可以使用port 范围的下界,0 表示任意。默认值为0。
  pasv_min_port=0
  
  ##############数据传输选项#################
  #匿名用户的传输比率(b/s)
  anon_max_rate=51200
  #本地用户的传输比率(b/s)
  local_max_rate=5120000
  
  ########################################
  别外,如果要对每个用户进行单独的控制,只需要在user_config_dir中建立username文件,内容为数据传输和用户权利里面设置个人的合适的选项,用户自定义文件同样适合用pam支持的虚拟用户
  附: FTP 数字代码的意义
  110 重新启动标记应答。
  120 服务在多久时间内ready。
  125 数据链路埠开启,准备传送。
  150 文件状态正常,开启数据连接端口。
  200 命令执行成功。
  202 命令执行失败。
  211 系统状态或是系统求助响应。
  212 目录的状态。
  213 文件的状态。
  214 求助的讯息。
  215 名称系统类型。
  220 新的联机服务ready。
  221 服务的控制连接埠关闭,可以注销。
  225 数据连结开启,但无传输动作。
  226 关闭数据连接端口,请求的文件操作成功。
  227 进入passive mode。
  230 使用者登入。
  250 请求的文件操作完成。
  257 显示目前的路径名称。
  331 用户名称正确,需要密码。
  332 登入时需要账号信息。
  350 请求的操作需要进一部的命令。
  421 无法提供服务,关闭控制连结。
  425 无法开启数据链路。
  426 关闭联机,终止传输。
  450 请求的操作未执行。
  451 命令终止:有本地的错误。
  452 未执行命令:磁盘空间不足。
  500 格式错误,无法识别命令。
  501 参数语法错误。
  502 命令执行失败。
  503 命令顺序错误。
  504 命令所接的参数不正确。
  530 未登入。
  532 储存文件需要账户登入。
  550 未执行请求的操作。
  551 请求的命令终止,类型未知。
  552 请求的文件终止,储存位溢出。
  553 未执行请求的的命令,名称不正确。
vaftp参考手册
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值