分享
 
 
 

也凑一篇关于FTP服务器vsftpd的文章

王朝other·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

一、Vsftpd的基本信息:

官方网站:http://vsftpd.beasts.org/

作者:Chris Evans

最新版本:vsftpd-2.0.3(我装的版本:vsftpd-2.0.1-5,还蛮新的嘛:P)

FAQ: ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-1.2.2/FAQ

ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.0.3/FAQ

在线文档/源代码:ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.0.3/

vsftpd是一个符合GPL协议的FTP服务器软件,适合在类UNIX系统中运行,包括Linux,较其他FTP服务器而言,vsftpd在安全性、可靠性以及速度上技胜一筹。采用vsftpd的典型网站有:

ftp.redhat.com 主要出于速度要求而采用vsftpd

ftp.openbsd.org 主要出于安全性而采用vsftpd

ftp.suse.com

vsftpd的典型特点有:

·支持虚拟IP配置

·支持虚拟用户

·standalone或inetd两种模式(区别见后)

·强大的针对单个用户的设置功能

·支持带宽控制

·支持针对单个IP的设置

·支持针对单个IP的限制

·支持IPv6

·集成SSL加密功能

·等等

如果你要配置的FTP服务器追求以下要求:

→安全性

→高性能

→可靠性

那么vsftpd就是你的正确选择。实际上vsftpd适合于大部分的应用,即使有时它可能会缺少某一个你所需要的特性,这也往往可以通过外部如组件PAM或xinetd/tcp_wrappers来提供。在这点上,vsftp很好的符合了UNIX的模块化思想,它自己就是一个模块化的组件。最后,移植到vsftpd上可能会意味着失去某些现有服务器提供的诡异而多余的功能,但是这应该是完全值得的。SAC小组、IBM公司及RedHat公司都推荐vsftpd,就算不信我的话,那么他们的话总该信吧?

还有,你知道为什么它叫vsftpd吗?它的真名是Very Secure FTP Daemon,从名字就可以看出它的特点,当然信不信就由你了。

二、vsftpd的下载安装:

好,假设你已经相信了我前面的话并且从它的官方网站上下了一个vsftpd的RPM安装包。。。哎,其实在Fedora Core release 3的安装盘中就有vsftpd的RPM安装包的,不过下了也没关系,并不比找安装盘也更费时。当然如果你机器上在装系统的时候就已经装了vsftpd的话,那就有点冤了,很简单,用下面的命令来看有没有安装vsftpd:

# rpm –qa | grep vsftpd

如果已经安装上vsftpd了,则会返回其版本信息,否则没有任何信息返回。

推荐一个比较全的关于vsftpd安装及配置的网站:http://www.vsftpdrocks.org/ 英文不太差的兄弟都可以直接去那里,不用浪费时间再往下看了。

还有一个台湾人写的网页,虽然稍早了点,但还是很有参考价值的:

http://linux.vbird.org/linux_server/0410vsftpd.php

剩下来的兄弟,废话不多说,开始安装。Vsftpd有三种安装方式:

√源代码安装

√通过FreeBSD包安装

√通过RPM安装

由于FC3安装盘中自带的是RPM包,从官方网站上也可以方便的下到RPM包,最重要的是RPM包非常容易安装,所以我选择第三种安装方法。

1、 提供vsftpd安装RPM包的网站有:

官方网站:ftp://vsftpd.beasts.org/users/cevans/

Redhat's rpm collection (http://rhn.redhat.com/ )

Rpmfind.net(http://www.rpmfind.net/ )

2、 安装vsftpd

# rpm -ivh vsftpd-2.0.1-5.i386.rpm

3、 附我的安装步骤,你可以略过:

本次安装使用的是FC3安装盘里的RPM包,并且为了节省从服务器端下载RPM包这个步骤,使用本地文件夹直接映射到服务器上ISO文件的方式,使用FTP方式安装(呵呵,有意思的是,这个服务器端使用的FTP服务器也是vsftpd)。

在我的root目录下新建两个文件夹,文件名任意,设为tmp和isotmp,用来映射ftp服务器上的文件夹:

mount -t nfs 202.118.239.46:/ftp tmp/

然后进入tmp目录,进到其中的ISO/FC3目录下,

mount -o loop FC3-i386-DVD.iso /root/isotmp

进入/root/isotmp文件夹中,找到其中的vsftpd安装rpm包,开始安装:

#rpm -ivh vsftpd-2.0.1-5.i386.rpm

三、vsftpd的运行:

上面已经安装好了vsftpd,现在要使它运行起来。其实这很简单,配置FTP服务器的真正有技术含量的工作在于怎么修改好它的配置文件,以使你的服务器的运行效率、安全性及稳定性最高。

运行之前需要先了解守护进程的两种运行模式:standalone 及xinetd,vsftpd也提供了standalone和inetd(inetd或xinetd)两种运行模式。简单解释一下,standalone模式是指服务器一次性启动,运行期间一直驻留在内存中,优点是对接入信号反应快,缺点是损耗了一定的系统资源,因此经常应用于对实时反应要求较高的专业FTP服务器。inetd恰恰相反,由于只在外部连接发送请求时才调用FTP进程,因此不适合应用在同时连接数量较多的系统。在最初的vsftpd版本中,为了便于大型服务器限制来自同一个IP的访问数,软件作者推荐使用xinetd模式,但由于下面的两个原因,作者在V1.1.3版本之后推荐standalone模式:

→xinetd模式不够稳定,据许多网站报告,它有时会统计错误并拒绝合法连接。

→standalone模式的功能得到增强,可以自己统计每个IP的连接数,还可

以通过集成tcp_wrappers来控制连接,乃至可以进行针对单个IP的配置。

1、在这里,先使用standalone模式运行vsftpd,步骤如下:

① 打开配置文件vsftpd.conf,设置成standalone模式:

# vi /etc/vsftpd/vsftpd.conf

找到里面的这句话:listen=YES,默认状态是被注释掉的,把注释取消;如果没找到这句话,那就把它加进去。

② 运行FTP服务器:

# /usr/sbin/vsftpd &

然后试试登录:

[root@mmpire ~]ftp localhost

Connected to mmpire.

220 Welcome to mmpire FTP service.:P:P:P

530 Please login with USER and PASS

530 Please login with USER and PASS

KERBEROS_V4 rejected as an authentication type

Name (localhost:root): anonymous

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls

227 Entering Passive Mode (127,0,0,1,220,137)

150 Here comes the directory listing

drwxr-xr-x 2 0 0 4096 Oct 04 2004 pub

drwxr-xr-x 2 0 0 4096 Apr 02 10:43 sadf

226 Directory send OK.

ftp> quit

221 Goodbye.

[root@mmpire ~]

如果你收到了类似的返回信息,那么说明你的vsftpd安装成功了。

2、如果你要使用xinetd模式,为节省篇幅,此处仅给出一个连接:

http://www.vsftpdrocks.org/rpm/

在里面你也许应该注意到这句话,然后作出选择:

I recommend running vsftpd out of either inetd or xinetd.

四、vsftpd的配置:

到了关键时候了,服务器配置能力的高下在这里见分晓。不敢乱写,在这里仅给出配置文件的基本信息以及软件作者推荐的几个配置单。在进入配置文件之前,先说一下本地用户的概念。其实本地用户就是除匿名用户之外的用户,即在服务器里保存着信息(用户名和密码)的用户。在/etc/下有两个文件:vsftpd.ftpusers和vsftpd.user_list,里面有很多用户名,是用来干什么的呢?

¤vsftpd.ftpusers:FTP黑名单,在这个名单上的用户都无法登录FTP服务器。

¤vsftpd.user_list:这个名单的功能根据配置文件vsftpd.conf里的userlist_deny的值不同而不同,如果userlist_deny=YES,则此名单仍为黑名单,即列在其中的用户不能登录;如果userlist_deny=NO或者userlist_deny被注释掉,则这个名单为合法用户名单,在此名单之外的用户名(除anonymous外)都是无效用户名,将不能登录。

注意:当第二个名单为合法名单时,考虑这样的情况:有一个用户名同时在两个名单上,结果会怎样?很简单,类似于bbs里被封了权限的账号一样,将无法登录FTP服务器。

1、配置文件vsftpd.conf

一般在/etc/vsftpd目录下,也有可能在/etc下面,自己找找。里面的条目不少,不过都有详细的英文注解,英文不好的可以去网上找译得好的,这里给出我的理解:

# Example config file /etc/vsftpd/vsftpd.conf

示例配置文件 /etc/vsftpd/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.

这些默认设置是相当宽松的,目的只是让FTP能跑起来,这意味着你需要自己来加一些

限制,以达到你对服务器的安全性、性能及稳定性的要求。

vsftpd.conf.5 里有所有编译时刻确定的默认值。

# 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.

注意:本示例文件并未包含所有vsftpd的设置选项,如有需要,可以参考vsftpd.conf.5

手册,其下载地址为:

ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.0.3/vsftpd.conf.5

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).

anonymous_enable=YES

允许匿名用户访问则设为YES(注意:如果你仅仅注释掉了这句话,那也等效于允许匿名访问)

注:YES、Yes或者yes都可以,但是等号与YES之间不可以有空格,否则FTP服务器无法正常工作。

错误用法: anonymous_enable= YES (不允许中间有空格)

# Uncomment this to allow local users to log in.

local_enable=YES

允许本地用户访问则设为YES,不允许则设为NO或注释掉这句话。

注:所谓“本地用户”是指在系统中保存有用户信息(用户名及密码)的用户,指所有

除匿名用户以外的用户。

# Uncomment this to enable any form of FTP write command.

write_enable=YES

允许写权限则设为YES,注意这是针对所有用户的,即如果设为NO或注释掉这句话,那么

所有用户都将没有可能进行写类的操作。

注1:这里设为YES并不意味着所有用户就可以进行写操作了,后面还有对各种用户的特定

设置。但如果这里设成了NO或被注释掉,那么后面怎么设也没用,所有用户都不可以进行

写操作了。

注2:写类操作包括上传、修改、删除、创建目录等。

# 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

本地用户的默认umask值是077,你可以在这里把它设为022,大多数ftp使用此umask值。

关于umask值,又可以写好多,这里简单介绍一下:

注:umask大概是user mask的意思,登录到服务器的每个用户都有自己的mask,umask

的值决定了这个用户所产生的目录和文件的默认权限。比如mmpire用户的umask值是022,

那么他创建的目录和文件的默认权限分别是755和644,注意目录和文件是被区分开的。

这个转化规则很简单,就是利用下面的这个表:

umask值 文件属性值 目录属性值

0 6 7

1 6 6

2 4 5

3 4 4

4 2 3

5 2 2

6 0 1

7 0 0

其实在linux系统里也有umask,可以通过umask命令来查看:

[root@mmpire vsftpd]#umask

0022

[root@mmpire vsftpd]#su mmpire

[mmpire@mmpire vsftpd]umask

0002

注意到了吧,root用户和mmpire用户的umask值是不一样的,也就决定了他们俩创建的目

录和文件的默认权限是不一样的,你自己算算是多少吧!

# 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

允许匿名用户上传则设为YES,不允许则设为NO或注释掉这句话。

注意:这个设置有效的前提是前面的write_enable设为YES,不然谁也没有写权限,更不

用说匿名用户了。

# Uncomment this if you want the anonymous FTP user to be able to create

# new directories.

anon_mkdir_write_enable=YES

允许匿名用户新建目录则设为YES,不允许则设为NO或注释掉这句话。

# Activate directory messages - messages given to remote users when they

# go into a certain directory.

dirmessage_enable=YES

意思是激活目录消息,当用户访问特定文件时给出提示消息。具体使用方法是:

1,将此值设为YES,如上所示,然后保存vsftpd.conf,重启FTP服务器。

2,比如要使pub目录提示消息,则在pub目录下增加一个.message文件,里面写上"hi!here

are pub!"

3,从用户端登录FTP服务器,进入pub目录时,系统将给出提示:“hi!here are pub!”

# Activate logging of uploads/downloads.

xferlog_enable=YES

需要保存上传/下载的日志则设为YES。日志文件的位置由后面的xferlog_file参数指定,

默认是/var/log/vsftpd.log。

# Make sure PORT transfer connections originate from port 20 (ftp-data).

connect_from_port_20=YES

允许从FTP数据端口20连接则设为YES。

注:一般FTP的数据传输端口都是20,而命令传输端口是21。

# 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

这两条命令必须一起用,且第一个为YES时第二个才有效。如果第一个设为YES,且第二

个设为root,那么所有由匿名用户上传的文件,其所有者就设为root,当然本地用户上传

的文件属性不受影响。

注:比较有意思的是服务器默认有一个系统用户ftp,密码也是ftp,它的权限跟匿名用户

差不多,在这里,它所上传的文件的所有者等属性也会变成root。

# You may override where the log file goes if you like. The default is shown

# below.

xferlog_file=/var/log/vsftpd.log

这是日志文件的位置,日志记载了所有的用户活动。

注:不过据我观察这里似乎只有本地用户的记录,而无匿名用户的记录。

# If you want, you can have your log file in standard ftpd xferlog format

xferlog_std_format=YES

如果需要标准格式的日志,则设为YES。

# You may change the default value for timing out an idle session.

idle_session_timeout=60

意思是如果某个用户在60s之内没有活动,则断开这个用户的连接。

注:用户活动包括上传、下载、操作文件、切换目录等。

# You may change the default value for timing out a data connection.

data_connection_timeout=120

意思是如果一个数据通道超时120s以上,则断开这个数据连接。

注:这里跟上面的超时不一样,上面是用户未做任何活动,而这里是用户在下载

或上传数据时,数据连接可能由于网络原因而间断,当超过这里设的时间时服务

器就自动断开这个连接。

# 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=ftpscure

最好在系统里设置一个单独而且没有任何特权的用户来运行FTP服务器,这样能保证你

的系统更安全,不会因为FTP服务器被入侵而损害到整个系统的其他部分。不过我试过

更改此选项,但并未成功:设为系统中已有的mmpire用户后,进到mmpire中还是无法

启动FTP服务器,可能是由于我装vsftpd的时候用的是root用户的缘故。

# 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

开启支持早期FTP客户端“async ABOR”命令的能力,我不清楚这个命令的具体意思,

似乎是异步传输请求?不过软件作者不推荐把这个值设为YES,因为它可能会带来安全

上的问题。但禁用它可能会影响到一些用老FTP客户端连接服务器的用户,你自己考虑吧!

# 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 turning on ascii_download_enable enables malicious remote parties

# to consume your I/O resources, by issuing the command "SIZE /big/file" in

# ASCII mode.

# These ASCII options are split into upload and download because you may wish

# to enable ASCII uploads (to prevent uploaded scripts etc. from breaking),

# without the DoS risk of SIZE and ASCII downloads. ASCII mangling should be

# on the client anyway..

#ascii_upload_enable=YES

#ascii_download_enable=YES

这两个值分别控制ASCII模式的上传与下载。系统默认情况下不支持ASCII模式,因为

服务器在这种模式下容易受到恶意攻击。你可以仅仅打开ASCII模式的上传功能而不

允许ASCII模式的下载,这样也还算是比较安全的。

注:

1.通过FTP传送的文件分为两类:文本文件(ASCII)和二进制文件(BINARY)。文本

文件的内容遵循ASCII的定义,由定义好的ASCII码组成,可以被显示和编辑。二进制

文件是指除文本文件以外的所有文件格式。不同操作系统之间的文本文件格式一般会

有一些差别,比如Linux下的换行符与Windows的就不一样,所以当FTP在进行ASCII

文件的传输时,可能会自动进行一些格式转换,而对于二进制文件来说,ftp不进行任

何转换。由此可知,当ASCII文件按二进制方式传输时,至多只是一些换行符未被替

换,大致内容还是对的,(128位ASCII码是通用的),使用编辑器如UltraEdit就可以

自动转换,所以问题不大,但决不能将二进制文件按ASCII方式传输,因为二进制文件

往往是可执行文件,一旦内容稍被修改就会导致无法使用。

默认情况下,vsftpd会在表面上允许客户使用ASCII传输模式,而实际上忽略了这个请

求,仍然以二进制模式传输,从上面可以知道,这并不会造成文本文件无效,最多只

会有一些小缺陷而已。

2.关于DoS攻击,参看中国IT认证实验室的文章:

http://www.chinaitlab.com/www/special/ciwddos.asp

# You may fully customise the login banner string:

ftpd_banner=Welcome to mmpire FTP service.:P:P:P

在这里设置你的FTP服务器的进站欢迎词,发挥你的想像力,用字符画画。

# You may specify a file of disallowed anonymous e-mail addresses. Apparently

# useful for combatting certain DoS attacks.

#deny_email_enable=YES

这个email列表列出了所有禁止访问的邮件地址,据作者说可以有效防止DoS攻击,

当匿名用户登录时将被要求使用邮件地址来作为密码,而如果使用的是在这个列表

里的email地址,服务器将拒绝这个连接要求。

注:

1,如果设为YES,那么下面的banned_email_file也需要设置,用以指向包含所有

非法邮件地址的文件。

2,我不知道那些使用vsftpd的网站是怎么实现这个功能的,不过据我测试,一些声

称需要匿名用户使用邮件地址作为密码的FTP服务器,实际上输入任意密码都可以,

只要不是在拒绝邮址目录的条目,都可以登录进去。

3,在Wu-FTP、Serv-U等FTP服务器中都可以检测匿名用户输入的密码是否为邮件

地址格式,即是否含有@字符。更先进的vsftpd理应支持,等我以后知道了再补充,

如果你知道,请告诉我,谢谢:mmpire@gmail.com

# (default follows)

#banned_email_file=/etc/vsftpd.banned_emails

这条命令必须在上一条为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_list_enable=YES

# (default follows)

#chroot_list_file=/etc/vsftpd.chroot_list

这两个命令必须与chroot_local_user一起使用:

1,当chroot_local_user=NO时,用户名在/etc/vsftpd.chroot_list文件里的用户将被

限制在自己的目录里,而无法访问除自己目录以外的目录。本地用户一般在

“/home/用户名/”目录下。

2,相反当chroot_local_user=YES时,用户名不在/etc/vsftpd.chroot_list文件里的

用户将被限制。

注:匿名用户只能在“/var/ftp/”目录下,不受上面的设定影响。

注:默认情况下没有vsftpd.chroot_list文件,需要自行添加,每行一个用户名即可,

注:vsftpd服务器通过调用chroot()函数来实现用户的目录更改操作,而不是直接调

用系统的函数,这样据说可以提高安全性。

# 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

允许用户以递归方式来显示目录下的内容则设为YES。

注:以递归方式显示对用户来说比较方便,具体命令为:ls -R

用户可以一次性查看当前目录下的文件和子目录,以及子目录里面的文件和子

目录,如此递归下去...显然,如果是一个大的FTP服务器,那么这个过程可能会

很漫长,很耗资源,所以只推荐小型服务器使用。

pam_service_name=vsftpd

指定PAM身份确认服务的配置文件为vsftpd,指的是/etc/pam.d/vsftpd这个文件。

注:PAM是由SUN公司提出的一种身份认证机制,广泛应用于类UNIX系统中,

可用于telnet、login、ftp等服务的用户认证。欲详细了解请看下面这篇文章:

http://blog.chinaunix.net/article.php?articleId=12239&blogId=60

#userlist_enable=YES

与这个选项相关的有userlist_deny和userlist_file,关系很复杂,简单描述一下:

1,userlist_file的值指定一个文件,里面按行存放着一些用户名。

2,首先,如果userlist_enable=NO或被注释掉,那么其他两项无效。

3,否则,再看userlist_deny,如果为YES,则userlist_file文件是一个黑名单;

如果为NO,则为白名单(即不在此文件中的用户名无法登录)。

注:均指本地用户。

#enable for standalone mode

listen=YES

如果要使用standalone模式则设为YES。这两个模式前面已经讲过,不再赘述。

#tcp_wrappers=YES

TCP_Wrappers是一种数字过滤工具,可以用来实现访问控制和网络记录。

1,控制对系统提供的由inetd启动的服务的访问;

2,对访问/etc/inetd.conf文件中的服务请求进行记录;

跟前文一致,不推荐使用inextd模式来运行FTP服务器。

注:新版本vsftpd的standalone模式已经支持tcp_wrappers,见后面“针对单个IP的配置”。

2、推荐配置实例

①standalone运行模式下的针对InternetSite应用的配置文件vsftpd.conf:

# Standalone mode

listen=YES

max_clients=200

max_per_ip=4

# 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

②针对单个IP的配置:

设置过程:

1, 在配置文件vsftpd.conf中加入:

tcp_wrappers=YES

2, 重启FTP服务器,单IP配置功能其实已经启动,试一试?

3, 在/etc/hosts.allow文件中加入这么一句:

vsftpd: 173.26.100.36: DENY

这是msmouse的IP地址,呵呵,他就登不上FTP服务器了。

4, 这还没完全发挥单IP配置的强大功能,再加上下面这条:

vsftpd: 173.26.100.31: setenv VSFTPD_LOAD_CONF /etc/vsftpd_mmpire.conf

这里的意思是:对于从173.26.100.31这个IP发过来的连接请求,使用特定的配置文件,这里指定是/etc/vsftpd_mmpire.conf文件,你预见到它的强大用处了吗?

注:这里使用了tcp_wrappers数字过滤工具。当用户试图登录FTP服务器时,服务器先调用tcp_wrappers,tcp_wrappers可以根据用户的IP进行特定配置,配置文件在/etc/hosts.allow中,注意这是tcp_wrappers的配置文件而不是vsftpd的。由于新版本vsftpd在standalone模式下也支持此工具,xinetd模式就更没有什么优势了。

还有几个配置实例,这里不一一详述,可以到这里下载:

ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.0.3/EXAMPLE/

五、没实际配过有用的FTP服务器,错误遗漏之处还请指教!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有