kxbin
成功留给有准备的人
BlogJava
首页
新文章
新随笔
聚合
管理
posts - 10, comments - 35, trackbacks - 0
LINUX FTP安装与配置
1.安装vsftpd
Xml代码
yum install vsftpd
2.启动/重启/关闭vsftpd服务器
Xml代码
[root@localhost ftp]# /sbin/service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
OK表示重启成功了.
启动和关闭分别把restart改为start/stop即可.如果是源码安装的,
到安装文件夹下找到start.sh和shutdown.sh文件,执行它们就可以了.
3.与vsftpd服务器有关的文件和文件夹
vsftpd服务器的配置文件的是: /etc/vsftpd/vsftpd.conf
vsftpd服务器的根目录,即FTP服务器的主目录:
[root@localhost ftp]# more /etc/passwd|grep ftp
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
这样你就能看到FTP的服务器的目录在/var/ftp处.如果你想修改服务器目录的路径,
那么你只要修改/var/ftp到别处就行了
4.添加FTP本地用户
有的FTP服务器需要用户名和密码才能登录,就是因为设置了FTP用户和权限.
FTP用户一般是不能登录系统的,只能进入FTP服务器自己的目录中,
这是为了安全.这样的用户就叫做虚拟用户.实际上并不是真正的虚拟用户,
只是不能登录SHELL了而已,没能力登录系统.
Xml代码
/usr/sbin/adduser -d /opt/ftp -g ftp -s /sbin/nologin ftpuser
这个命令的意思是:
使用命令(adduser)添加ftpuser用户,不能登录系统(-s /sbin/nologin),自己的文件夹在
(-d /opt/ftp)),
属于组ftp(-g ftp).然后你需要为它设置密码 passwd ftp.这样就添加了一个FTP用户了.
下面的示例可以帮助你进入FTP服务器了.
要保证自己能读写自己的目录,就要在配置文件vsftpd.conf里设置一下就可以读写了.
Xml代码
local_enable
=
yes
write_enable
=
yes
local_umask
=
022
5.匿名上传下载
修改配置文件即可vsftpd.conf,确定有以下几行,没有自己添加进去就可以了.
Xml代码
anonymous_enable
=
yes
anon_upload_enable
=
yes
anon_mkdir_write_enable
=
yes
anon_umask
=
022
然后你可以新建一个文件夹,修改它的权限为完全开放,任何用户就可以登录这个文件夹,
并上传下载文件:
Xml代码
mkdir /var/ftp/guest
chmod 777 /var/ftp/guest
6.定制进入FTP服务器的欢迎信息
在vsftpd.conf文件中设置:
dirmessage_enable=yes
然后进入用户目录建立一个.message文件,输入欢迎信息即可。
7.实现虚拟路径
将某个目录挂载到FTP服务器下供用户使用,这就叫做虚拟路径.
比如将gxl用户的目录挂载到FTP服务器中,供FTP服务器的用户使用,
使用如下命令即可:
Xml代码
[root@localhost opt]# mount –bind /home/gxl /var/ftp/pub #使用挂载命令
[root@localhost opt]# ls /var/ftp/pub LumaQQ Screenshot.png 桌面
8.打开vsFTPd的日志功能
添加下面一行到vsftpd.conf文件中,一般情况下该文件中有这一行,
只要把前面的注释符号#去掉即可,没有的话就添加,或者修改:
Xml代码
xferlog_file
=/var/log/vsftpd.log
9.限制链接数,以及每个IP最大的链接数
修改配置文件中,例如vsftp最大支持链接数100个,每个IP能支持5个链接:
max_clients=数字
max_per_ip=数字
10.限制传输速度
修改配置文件中,例如让匿名用户和vsftd上的用户(即虚拟用户)
都以80KB=1024*80=81920的速度下载
anon_max_rate=81920
local_max_rate=81920
11.将用户(一般指虚拟用户)限制在自家目录
修改配置文件中,这样用户就只能访问自己家的目录了:chroot_local_user=yes
如果只想某些用户仅能访问自己的目录,其它用户不做这个限制,
那么就需要在chroot_list文件(此文件一般是在/etc/vsftpd/中)中添加此用户.
编辑此文件,比如将test用户添加到此文件中,那么将其写入即可.一般的话,一个用户占一行.
Xml代码
[root@localhost vsftpd]# cat chroot_list
ftpuser
12.绑定某个IP到vsFTPd
有时候要限制某些IP访问服务器,只允许某些IP访问,
例如只允许192.168.0.33访问这个FTP,同样修改配置文件:
listen_address=192.168.0.33
配置vsftpd.conf
Xml代码
anonymous_enable
=
NO
#禁止匿名
local_enable
=
YES
#允许本地登录
write_enable
=
YES
#允许写,如需上传,则必须
local_umask
=
027
#将上传文件的权限设置为:777-local_umask
anon_upload_enable
=
YES
#允许虚拟用户和匿名用户上传
anon_other_write_enable
=
YES
#允许虚拟用户和匿名用户修改文件名和删除文件
dirmessage_enable
=
YES
xferlog_enable
=
YES
#打开日志记录
connect_from_port_20
=
YES
xferlog_file
=/var/log/vsftpd.log #日志存放位置
xferlog_std_format
=
YES
#标准日志格式
idle_session_timeout
=
600
#空闲连接超时
data_connection_timeout
=
120
ftpd_banner
=
Welcome
to ChinaRise FTP service
#欢迎信息
guest_enable
=
yes
#允许虚拟用户
guest_username
=
vsftpdguest
#虚拟用户使用的系统账号
virtual_use_local_privs
=
YES
#虚拟用户拥有本地系统权限
chroot_local_user
=
YES
chroot_list_enable
=
YES
#以上两行将虚拟用户限制在其目录下,不能访问其他目录,或直接用
chroot_local_user
=
YES
listen
=
yes
#监听/被动模式
listen_port
=
21
#监听端口
chroot_list_file
=/etc/vsftpd/vsftpd.chroot_list
#虚拟用户名单保存在文件/etc/vsftpd/vsftpd.chroot_list 中
user_config_dir
=/etc/vsftpd/vsftpd_user_conf
#每个虚拟用户名的更加详细的培植保存在/etc/vsftpd/vsftpd_user_conf 中
虚拟用户其他设置
在/etc/vsftpd/vsftpd.chroot_list 文件中写入允许登陆的虚拟用户名称,
每行一个在/etc/vsftpd/vsftpd_user_conf 文件夹中创建一个
以虚拟用户用户名命名的文件,写:local_root = /var/FTP/子目录名,
然后在/var/FTP下创建一个对应的目录即可
posted on 2012-07-24 11:24
kxbin
阅读(22126)
评论(0)
编辑
收藏
所属分类:
转发
、
Linux
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
win7 64位系统 pl sql 无法解析指定的连接标识符 解决办法
linux oracle10g安装
ORACLE锁机制
Oracle 数据库实例启动关闭过程
ORACLE常用命令
Oracle同义词创建及其作用
oracle创建database link总结
使用INSERT语句向表中插入数据(MSSQLSERVER版)
ORACLE SQL:经典查询练手第五篇
ORACLE SQL:经典查询练手第四篇
你恨一个人是因为你爱他;你喜欢一个人,是因为他身上有你没有的;你讨厌一个人是因为他身上有你有的东西;你经常在别人面前批评某人,其实潜意识中是想接近他。
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(5)
给我留言
查看公开留言
查看私人留言
随笔档案
2012年9月 (1)
2012年7月 (1)
2011年12月 (1)
2011年11月 (3)
2011年9月 (1)
文章分类
AJAX(4)
cvs
FreeMarker(3)
J2EE(12)
javascript(5)
java基础(13)
Linux(41)
MSSQL(1)
myeclipse(4)
MYSQL(15)
ORACLE(61)
Spring(1)
三星i9100(2)
流程引擎(4)
生活趣事(3)
电脑问题解决方案(1)
皕杰报表(7)
转发(59)
软件工程(1)
项目管理(2)
文章档案
2013年4月 (1)
2012年9月 (37)
2012年8月 (12)
2012年7月 (15)
2012年6月 (4)
2012年5月 (4)
2012年4月 (9)
2012年3月 (15)
2012年2月 (5)
2012年1月 (8)
2011年12月 (21)
2011年11月 (7)
2011年10月 (21)
2011年9月 (14)
2010年7月 (5)
2010年2月 (1)
2009年10月 (2)
2009年7月 (1)
2009年5月 (1)
相册
照片
收藏夹
J2EE视屏(3)
大仙的博客
J2EE
Freemarker学习资料
人生代码
流程学习
网站模板
一些简单系统,留着备用!
java技术网站
Hibernate中文论坛
java中文网
大仙的博客
大同Java班
灰狐
Linux
LAMP兄弟连
linux学习网站
linux学习网站
Linux学习资料
平时常去的网站
360doc
cuug网站(oracle+linux)
oracle学习网站
九天音乐网
佛学视频网站
卫星地图
圣贤教育改变命运
月轩博客
男士服饰
账族
数据库
oracle个人博客
oracle个人网站
oracle学习资料
博客园
胡勇博客
电影网站
人人影视
吸血鬼日记第三季
天天电影
电影天堂
视听首发
网站设计
网页模板库
蓝色理想
搜索
最新评论
1. re: getAttribute和getParameter的区别
ky
--ace
2. re: 在javascript中将GBK转UTF-8
阿萨德发
--违反
3. re: getAttribute和getParameter的区别
简明扼要
--森森森
4. re: getAttribute和getParameter的区别 [未登录]
fsf
--fd
5. re: getAttribute和getParameter的区别
请问请问v
--qw
阅读排行榜
1. Linux学习路线图(1407)
2. oracle sql执行过程(645)
3. 关爱自己身体(550)
4. 开始新的旅途(505)
5. 出差结束(462)
评论排行榜
1. Linux学习路线图(2)
2. 转正申请(1)
3. oracle sql执行过程(1)
4. 开始新的旅途(1)
5. 关爱自己身体(0)