- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Ubuntu 用VSFTP搭建FTP服务器设置教程由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
1、安装vsftpd 。
终端输入sudo apt-get install vsftpd 。
安装之后会在/home/下建立一个ftp目录,访问下可以看到一个空白内容的ftp空间.
默认设置下需要匿名用户不可以登录 。
2、设置 vsftpd.conf文件 。
修改之前最好先备份这个文件:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.old 。
参数意义:
Anonymous_enable=yes (允许匿名登陆) 。
Dirmessage_enable=yes (切换目录时,显示目录下.message的内容) 。
Local_umask=022 (FTP上本地的文件权限,默认是077) 。
Connect_form_port_20=yes (启用FTP数据端口的数据连接)* 。
Xferlog_enable=yes (激活上传和下传的日志) 。
Xferlog_std_format=yes (使用标准的日志格式) 。
Ftpd_banner=XXXXX (欢迎信息) 。
Pam_service_name=vsftpd (验证方式)* 。
Listen=yes (独立的VSFTPD服务器)* 。
功能:只能连接FTP服务器,不能上传和下传 。
注 。
:其中所有和日志欢迎信息相关连的都是可选项,打了星号的无论什么帐户都要添加,是属于FTP的基本选项 。
开启匿名FTP服务器上传权限:
Anon_upload_enable=yes (匿名帐号开放上传权限) 。
Anon_mkdir_write_enable=yes (匿名帐号可创建目录的同时可以在此目录中上传文件) 。
Write_enable=yes (开放本地用户写的权限) 。
Anon_other_write_enable=yes (匿名帐号可以有删除的权限) 。
Anon_world_readable_only=no(开启匿名服务器下传的权限) 。
普通用户FTP服务器的连接(独立服务器)配置:
Local_enble=yes (本地帐户能够登陆) 。
Write_enable=no (本地帐户登陆后无权删除和修改文件) 。
功能:可以用本地帐户登陆vsftpd服务器,有下载上传的权限 。
注:在禁止匿名登陆的信息后匿名服务器照样可以登陆但不可以上传下传 。
用户登陆限制进其它的目录,只能进它的主目录:
设置所有的本地用户都执行chroot 。
Chroot_local_user=yes (本地所有帐户都只能在自家目录) 。
设置指定用户执行chroot 。
Chroot_list_enable=yes (文件中的名单可以调用) 。
Chroot_list_file=/任意指定的路径/vsftpd.chroot_list 。
注意:vsftpd.chroot_list 是没有创建的需要自己添加,要想控制帐号就直接在文件中加帐号即可 。
限制本地用户访问FTP:
Userlist_enable=yes (用userlistlai 来限制用户访问) 。
Userlist_deny=no (名单中的人不允许访问) 。
Userlist_file=/指定文件存放的路径/ (文件放置的路径) 。
注 。
:开启userlist_enable=yes匿名帐号不能登陆 。
安全选项 。
Idle_session_timeout=600(秒) (用户会话空闲后10分钟) 。
Data_connection_timeout=120(秒) (将数据连接空闲2分钟断) 。
Accept_timeout=60(秒) (将客户端空闲1分钟后断) 。
Connect_timeout=60(秒) (中断1分钟后又重新连接) 。
Local_max_rate=50000(bite) (本地用户传输率50K) 。
Anon_max_rate=30000(bite) (匿名用户传输率30K) 。
Pasv_min_port=50000 (将客户端的数据连接端口改在 。
Pasv_max_port=60000 50000—60000之间) 。
Max_clients=200 (FTP的最大连接数) 。
Max_per_ip=4 (每IP的最大连接数) 。
Listen_port=5555 (从5555端口进行数据连接) 。
查看谁登陆了FTP,并杀死它的进程 。
ps –xf |grep ftp 。
kill 进程号 。
3、配置本地组访问的FTP 。
首先创建用户组 test和FTP的主目录 。
groupadd test 。
mkdir /tmp/test 。
然后创建用户 。
useradd -G test –d /tmp/test –M usr1 。
注 。
:G:用户所在的组 。
d:表示创建用户的自己目录的位置给予指定 。
M:不建立默认的自家目录,也就是说在/home下没有自己的目录 。
useradd –G test –d /tmp/test –M usr2 。
接着改变文件夹的属主和权限 。
chown usr1.test /tmp/test ----这表示把/tmp/test的属主定为usr1 。
chmod 750 /tmp/test ----7表示wrx 5表示rx 0表示什么权限都没有 。
这个实验的目的就是usr1有上传、删除和下载的权限,而usr2只有下载的权限没有上传和删除的权限 。
主配置文件vsftpd.conf要确定local_enable=yes、write_enable=yes、chroot_local_usr=yes这三个选项是有的哦.
4、配置独立FTP的服务器的非端口标准模式进行数据连接 。
在VSFTPD_CONF中添加Listen_port=33333 。
5、配置单独的虚拟FTP,使用虚拟FTP用户,并使建立的四个帐户中有不同的权限 。
(两个有读目录的权限,一个有浏览、上传、下载的权限,一个有浏览、下载、删除和改文件名的权限) 。
1>配置网卡 。
第一块网卡地址是10.2.3.4 掩码是255.255.0.0 。
ifconfig eth0:1 211.131.4.253 netmask 255.255.255.0 up 。
2>写入/etc/sysconfig中(为了重起后IP地址不会丢失) 。
cd /etc/sysconfig/network-scripts 。
cp ifcfg-eth0 ifcfg-eth0:1 。
vi ifcfg-eth0:1在其中修改内容如下 。
DEVICE=eth0:1 。
BROADCAST=211.131.4.255 。
HWADDR=该网卡的MAC地址 。
IPADDR=211.131.4.253 。
NETMASK=255.255.255.0 。
NETWORK=211.131.4.0 。
ONBOOT=yes 。
TYPE=Ethernet 。
wq退出 。
3>进入vsftpd.conf所在的文件夹cp vsftpd.conf vsftpd2.conf 。
修改vsftpd.conf添加以下信息 。
Listen_address=10.2.3.4 。
修改vsftpd2.conf添加以下信息 。
Listen_address=211.131.4.253 。
Ftpd_banner=this is a virtual ftp test 。
到此虚拟的FTP服务器建立好了 。
4>建立logins.txt 。
vi /tmp/logins.txt 。
添加入下信息:
longlei------------用户名 。
longlei------------密码 。
zhangweibo 。
zhangweibo 。
jinhui 。
jinhui 。
lxp 。
lxp 。
格式:一个用户名,一个密码 。
5>建立访问者的口令库文件,然后修改其权限 。
db_load –T –t hash –f /tmp/logins.txt /etc/vsftpd_login.db 。
6>进如/etc/pam.d/中创建 。
在中添加如下信息 。
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login 。
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login 。
7>在/var/ftp/创建目录并改变其属性和它的属主 。
useradd -d /var/ftp/test qiang 。
chmod 700 /var/ftp/test 。
在目录中添加test_file测试文件 。
8>进入vsftpd2.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=qiang------将虚拟用户映射为本地用户 。
Listen_port=5555 。
Max_client=10 。
Max_per_ip=1 。
Ftpd_banner=this is a virtual server and users 。
Pam_service_name=ftp.vu 。
注:在主配置文件中给的权限越低,在后面分用户管理的时候对用户的权限划分的空间就越大,因为主配置文件最高的限制服务先读主配置文件,然后再读用户的配置文件 。
配置完成时候执行/etc/init.d/vsftpd restart重启ftp服务器即可 。
到此虚拟USER就建好了 。
9>在VSFTPD_CONF所在的目录中创建virtaul文件目录,并在文件目录中创建以你用户名命名的配置文件 。
Longlei zhangweibo jinhui lxp 。
在longlei中添加:
Anon_world_readable_only=no 。
在lxp中添加 。
Anon_world_readable_only=no 。
这样此两个用户就有了浏览目录的权限了 。
在jinhui中添加 。
Anon_world_readable_only=no 。
Write_enable=yes 。
Anon_upload_enable=yes 。
此用户就有了上传、下载和浏览的权限 。
在zhangweibo中添加 。
Anon_world_readable_only=no 。
Write_enable=yes 。
Anon_upload_enable=yes 。
Anon_other_write_enable=yes 。
此用户就有了上传、下载、删除文件目录、修改文件名和浏览的权限 。
10>修改vsftpd2.conf 。
加入user_config_dir=/vsftpd.conf所在的目录/virtual 。
重起服务器就搞定了 。
VSFTPD_CONF中的所有配置信息 。
Anonymous_enable=yes (允许匿名登陆) 。
Dirmessage_enable=yes (切换目录时,显示目录下.message的内容) 。
Local_umask=022 (FTP上本地的文件权限,默认是077) 。
Connect_form_port_20=yes (启用FTP数据端口的数据连接)* 。
Xferlog_enable=yes (激活上传和下传的日志) 。
Xferlog_std_format=yes (使用标准的日志格式) 。
Ftpd_banner=XXXXX (欢迎信息) 。
Pam_service_name=vsftpd (验证方式)* 。
Listen=yes (独立的VSFTPD服务器)* 。
Anon_upload_enable=yes (开放上传权限) 。
Anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录中上传文件) 。
Write_enable=yes (开放本地用户写的权限) 。
Anon_other_write_enable=yes (匿名帐号可以有删除的权限) 。
Anon_world_readable_only=no (放开匿名用户浏览权限) 。
Ascii_upload_enable=yes (启用上传的ASCII传输方式) 。
Ascii_download_enable=yes (启用下载的ASCII传输方式) 。
Banner_file=/var/vsftpd_banner_file (用户连接后欢迎信息使用的是此文件中的相关信息) 。
Idle_session_timeout=600(秒) (用户会话空闲后10分钟) 。
Data_connection_timeout=120(秒) (将数据连接空闲2分钟断) 。
Accept_timeout=60(秒) (将客户端空闲1分钟后断) 。
Connect_timeout=60(秒) (中断1分钟后又重新连接) 。
Local_max_rate=50000(bite) (本地用户传输率50K) 。
Anon_max_rate=30000(bite) (匿名用户传输率30K) 。
Pasv_min_port=50000 (将客户端的数据连接端口改在 。
Pasv_max_port=60000 50000—60000之间) 。
Max_clients=200 (FTP的最大连接数) 。
Max_per_ip=4 (每IP的最大连接数) 。
Listen_port=5555 (从5555端口进行数据连接) 。
Local_enble=yes (本地帐户能够登陆) 。
Write_enable=no (本地帐户登陆后无权删除和修改文件) 。
这是一组 。
Chroot_local_user=yes (本地所有帐户都只能在自家目录) 。
Chroot_list_enable=yes (文件中的名单可以调用) 。
Chroot_list_file=/任意指定的路径/vsftpd.chroot_list (前提是chroot_local_user=no) 。
这又是一组 。
Userlist_enable=yes (在指定的文件中的用户不可以访问) 。
Userlist_deny=yes 。
Userlist_file=/指定的路径/vsftpd.user_list 。
又开始单的了 。
Banner_fail=/路径/文件名 (连接失败时显示文件中的内容) 。
Ls_recurse_enable=no 。
Async_abor_enable=yes 。
One_process_model=yes 。
Listen_address=10.2.2.2 (将虚拟服务绑定到某端口) 。
Guest_enable=yes (虚拟用户可以登陆) 。
Guest_username=所设的用户名 (将虚拟用户映射为本地用户) 。
User_config_dir=/任意指定的路径/为用户策略自己所建的文件夹 (指定不同虚拟用户配置文件的路径) 。
又是一组 。
Chown_uploads=yes (改变上传文件的所有者为root) 。
Chown_username=root 。
又是一组 。
Deny_email_enable=yes (是否允许禁止匿名用户使用某些邮件地址) 。
Banned_email_file=//任意指定的路径/xx/ 。
又是单的 。
Pasv_enable=yes ( 服务器端用被动模式) 。
User_config_dir=/任意指定的路径//任意文件目录 (指定虚拟用户存放配置文件的路径) 。
如需要使用本地用户登陆关闭来宾用户,必须设置如下命令:
anonymous_enable=no 。
guest_enable=no 。
local_enable=yes 。
write_enable=yes 。
local_umask=022 。
chroot_list_enable=yes 。
chroot_list_file=/etc/vsftpd.chroot_list (如没有则自己创建) (在etc/vsftpd.chroot_list 填入需要登陆的本地用户名) 。
6、解决vsftpd的中文乱码问题 。
先安装源中的vsfpd,然后把所有的功能都配置完后,再解决中文乱码问题 。
因为删除源的vsftpd后它的/init.d/vsftpd与/vsftpd.conf是不会删除的,可以为我们打好铺垫,不然你会发现很无奈的!如果 你是直接编译安装,附件给出会给出我的init.d/vsftpd与vsftpd.conf文件,把他们覆盖到/etc下吧.
开始做编译的准备工作,准备编译环境需要的库包 。
sudo apt-get build-dep vsftpd 。
这里使用先安装源里的vsftpd,然后卸载 。
sudo apt-get install vsftpd 。
apt-get remove vsftpd 。
下载附件并解压包 。
tar -zxvf vsftpd-2.0.6 。
cd vsftpd-2.0.6 。
sudo su :使用root用户开始编译 。
make #编译命令,如果无错误出现,表示成功 。
make install #安装 。
如果安装中出现找不到目录的话,就建立那个缺的目录就好了 。
基本上都会提示缺少/man8和/man5目录的,建立后在重新make install 。
下边就来测试下效果修改配置文件,加入 。
charset_filter_enable=YES #开启字符过滤 。
charset_client=GB2312 #客户端字符设置为简体中文 。
好了现在把服务开启测试下吧 。
sudo /etc/init.d/vsftpd restart 。
在win下上传一个中文文件,看看效果吧,然后在把配置文件中关于字符的关掉,重起服务,在看吧. 。
最后此篇关于Ubuntu 用VSFTP搭建FTP服务器设置教程的文章就讲到这里了,如果你想了解更多关于Ubuntu 用VSFTP搭建FTP服务器设置教程的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
谁能解释一下 Server.MapPath(".")、Server.MapPath("~")、Server.MapPath(@"之间的区别\") 和 Server.MapPath("/")? 最佳答案
我不知道,为什么我们要使用 Server.UrlEncode() & Server.UrlDecode()?!在 QueryString 中我们看到 URL 中的任何内容,那么为什么我们要对它们进行编
我已经通过 WHM 在我的一个域上安装了 ssl 证书。网站正在使用 https://xyz.com . 但是它不适用于 https://www.xyz.com .我已经检查了证书,它也适用于 www
我已经使用 WMI 检测操作系统上是否存在防病毒软件,itz 正常工作并通过使用命名空间向我显示防病毒信息,例如 win xp 和 window7 上的名称和实例 ID:\root\SecurityC
我们有 hive 0.10 版本,我们想知道是否应该使用 Hive Server 1 或 Hive Server2。另一个问题是连接到在端口 10000 上运行的 Hive 服务器,使用 3rd 方工
我想在 C++ 中使用 Windows Server API 设置一个 HTTPS 服务器,我使用了示例代码,它在 HTTP 上工作正常,但我就是不能让它在 HTTPS 上工作。 (我不想要客户端 S
我写了一个非常基本的类来发送电子邮件。我用 smtp 服务器对其进行了测试,它工作正常,但是当我尝试使用我公司的交换服务器时,它给出了这个异常: SMTP 服务器需要安全连接或客户端未通过身份验证。服
我的应用程序包含一个“网关”DataSnap REST 服务器,它是所有客户端的第一个访问点。根据客户端在请求中传递的用户名(基本身份验证),请求需要重定向到另一个 DataSnap 服务器。我的问题
我有一个 Tomcat 服务器和一个 Glassfish4 服务器。我的 Servlet 在 Tomcat 服务器上启动得很好,但在 Glassfish4 服务器上给我一个“HTTP Status 4
我在 vmware 上创建了一个 ubuntu 服务器。我用它作为文件服务器。如果我通过托管虚拟机的计算机进行连接,则可以访问它。我无法从同一网络上的其他计算机执行此操作。提前致谢! 最佳答案 首先确
如何重启 Rails 服务器?我从 开始 rails server -d 所以服务器是分离的 我知道的唯一方法就是去做ps 辅助 | grep rails 并 kill -9关于过程#但是像这样杀死进
我实际上正在尝试找到编写一个简单的 XMPP 服务器的最佳方法,或者找到一个占用空间非常小的服务器。我只关心XMPP的核心功能(状态、消息传递、群组消息传递)。目前还在学习 XMPP 协议(proto
我实际上正在尝试找到编写简单 XMPP 服务器的最佳方法,或者找到一个占用空间非常小的方法。我只关心 XMPP 的核心功能(统计、消息、组消息)。目前也在学习 XMPP 协议(protocol),所以
我们正在尝试从 Java JAX-RS 适配器访问 SOAP 1.1 Web 服务。 我们正在使用从 WSDL 生成的 SOAP 客户端。 但是当解码 SOAP 故障时,我们得到以下异常: ... C
目前,我和许多其他人正在多个平台(Windows、OS X 和可能的 Linux)上使用 Python HTTP 服务器。我们正在使用 Python HTTP 服务器来测试 JavaScript 游戏
我有一个连续运行的服务器程序(C#/.NET 2.0 on Linux with mono),我想从 PHP 脚本连接到它以在网站上显示状态信息。 目的是创建一个(某种)实时浏览器游戏(无 Flash
所以我有一个单页客户端应用程序。 正常流程: 应用程序 -> OAuth2 服务器 -> 应用程序 我们有自己的 OAuth2 服务器,因此人们可以登录应用程序并获取与用户实体关联的 access_t
我们刚刚将测试 Web 服务器从 Server 2008 升级到 Server 2012 R2。我们有一个部署我们网站的批处理脚本。当它将站点推送到服务器时,它现在失败了。奇怪的是,我可以使用相同的发
建议一些加载SpagoBI服务器的方法,我尝试了所有方法来解析spagobi服务器。在 Catalina 中,错误是 - * SEVERE: Unable to process Jar entry [
当我们点击应用程序服务器(apache tomcat)时,它会创建一个线程来处理我们的请求并与 tomcat 连接,建立连接,tomcat 创建另一个线程来处理请求并将其传递给连接,连接线程将其传递给
我是一名优秀的程序员,十分优秀!