文档章节

搭建FTP服务器

最新更新消息
 最新更新消息
发布于 2015/11/14 11:33
字数 1280
阅读 78
收藏 8
点赞 0
评论 0

安装vsftpd

1.下载源代码vsftpd-2.0.5.tar.gz

2.编译源程序,可参考帮助文件INSTALL

#tar zxvf vsftpd-2.0.5.tar.gz

#cd vsftpd-2.0.5

#make

#make install

3.安装配置文件

#cp vsftpd.conf /etc

#cp RedHat/vsftpd.pam /etc/pam.d/ftp

4.编缉配置文件/etc/vsftpd.conf

5.启动服务器

#/usr/local/sbin/vsftpd &


配置文件

listen=YES                       服务器独立运行

服务器默认配置文件,不允许其他用户登录,只能匿名登录,匿名登录需要先建/var/ftp目录

finger                           用户信息查看工具

finger ftp                       确认是否有ftp这个用户


为匿名用户可登录,要创建ftp用户和/var/ftp目录

#mkdir /var/ftp

#chown root.root /var/ftp

#chmod og-w /var/ftp

为使vsftpd开机自动进行,在/etc/rc.local添加/usr/local/sbin/vsftpd &

#netstat -tnl                    查看本地已启动的服务

vsftpd可以以两种方式运行

让vsftpd独立运行,关闭xinetd的方式

#chkconfig vsftpd off

vsftpd的配置文件

anonymous_enabled=YES            #允许匿名登录

local_enable=YES                 #允许本地用户登录

write_enable=YES                 #允许客户端写

local_umask=022                  #本地用户新建文件的umask值

anon_upload_enable=YES           #允许匿名用户上传文件

anon_mkdir_write_enable=YES      #允许匿名用户创建目录

dirmessage_enable=YES            #允许使用目录的消息

ftpd_banner=Welcome to redhat    #登录欢迎词

ls_recure_enable=YES             #允许客户端使用ls -R命令

listen=YES                       #监听模式

修改配置文件后,重新启动vsftpd服务

#killall -9 vsftpd               强行终止

#/usr/local/sbin/vsftpd &        启动

#id redhat                       查看redhat用户信息(组id,所属组)

#mkdir /var/ftp/incoming         #为匿名用户开放上传incoming目录

#chgrp ftp incoming

#chmod g+w incoming


chroot环境 (用户不能改变主目录,不能查看主目录外的其他目录,可以隐藏主目录的位置)

/etc/vsftpd.conf:

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

如果把chroot_local_user=YES,则本地所有的用户都变成chroot环境,它的默认值为NO。


/etc/vsftpd.chroot_list: (锁定主目录的用户列表)

redhat

chiaitlab


#killall -HUP vsftpd


用户控制

#vi /etc/vsftpd.conf添加

userlist_enable=YES              启用用户列表

userlist_file=/etc/ftpusers      定义用户列表文件位置

userlist_deny   =YES             拒绝列表的用户

=NO              只允许列表的用户登录

要达到上面同样的效果,还可以修改/etc/pam.d/vsftpd文件。默认为拒绝列表的用户:

auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers  onerr=succeed

只要把上面的deny改成allow就可以允许列表的用户。

#vi /etc/ftpusers

编缉用户列表,将要进行控制的用户添加进去,一行一个用户

#ldd vsftpd     显示依赖的共享库

默认编译安装没有支持PAM模块,通过ldd /usr/sbin/vsftpd看是否在依赖于libpam.so.0,如果有证明服务支持PAM。


通过光盘RPM安装(第二张)

#rpm -ivh vsftpd-2.0.4-1.2.i386.rpm

配置文件及用户列表在/etc/vsftpd目录下

pam服务名 /etc/pam.d/vsftpd

vsftpd在/usr/sbin/vsftpd

ftp默认拒绝id 500以下的用户登录


虚拟账号

对于用DB库存储用户及密码,先看系统是否有相应软件包

#rpm -qa | grep db4

db4-devel              第三张盘

db4                    第一张盘

db4-utils              第4张盘


1.建虚拟账号users.txt

tom

123

jack

123

用户密码各占一行

#db_load -T -t hash -f users.txt /etc/vsftpd/vsftpd_login.db

#chmod 600 /etc/vsftpd/vsftpd_login.db

2.修改/etc/pam.d/vsftpd 增加(将其他注释掉,否则有可能会出现虚拟用户无法登陆的错误)

auth        required   pam_userdb.so       db=/etc/vsftpd/vsftpd_login

account     required   pam_userdb.so       db=/etc/vsftpd/vsftpd_login

3.建虚拟账号目录

#useradd vuser

!!注意,编译安装vsftpd时,首先检查是否安装了pam-devel(FC5在第4张盘),否则编译选项定义了pam,但依然无法使用pam服务,最好用ldd确定一下

4.编缉/etc/vsftpd/vsftpd.conf

anonymous_enable = NO

local_enable =YES

write_enable=YES

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

guest_enable=YES

guest_username=vuser

anon_world_readable_only=NO (用于获得目录列表,安全起见不推荐)

如果登录时出现

500 OOPS: priv_sock_get_result

Connection closed by remote host.

这样的错误。需要升级pam

运行

#yum update pam



Proftpd

#tar jxvf proftpd-1.2.9.tar.gz2

#cd proftpd-1.2.9

#./configure                  生成与系统有关的配置文件

#make                         编译把源程序编译成二进制文件

#make install

#/usr/local/sbin/proftpd

配置文件:/etc/local/etc/proftpd.conf


vi使用技巧:

yy    复制当前行

p     粘贴

/      查找

n     查找下一个

查找与查找下一个配合使用

shift+D                                 在当前行删除光标后的所有字符


#netstat -tnlp                          显示进程及ID


为Grub设置密码,防止用户修改或编缉Grub的引导菜单

#grub-md5-crypt           产生一个md5加密的字符串

#grub-md5-crypt >> /etc/grub.conf

#vi /etc/grub.conf

password --md5 $1#123abckdfj343k        $1#123abckdfj343k为上面生成的加密字符串

这样在启动时,要编缉引导菜单必须输入密码,在引导菜单最后加上 s ,可进入单用户模式。


find / -perm -002        查找文件权限中其他人具有写权限的文件,0表示用户,组不管

find / -perm +6000       查找文件,不管用户,组其他,只要权限中含有6(读写)即满足要求。

-                        表示权限位必须具有的

+                        表示权限位可能有或无


© 著作权归作者所有

共有 人打赏支持
最新更新消息
粉丝 1
博文 39
码字总数 49637
作品 0
崇明
中小型网络的域环境搭建--第五季(搭建FTP服务器)

《接第四季》 根据第一季里的域环境拓扑图,我这次来介绍怎样安装FTP服务器。FTP服务器(File Transfer Protocol Server)是在网络中提供文件存储和访问服务的计算机,它们依照FTP协议提供服...

lijie1977 ⋅ 2016/12/31 ⋅ 0

2-1 Windows软件 --- FTP简单服务器搭建(win7,转载)

2-1 win7下简单FTP服务器搭建 4步win7下简单FTP服务器搭建 (2010-03-16 16:21:05) 转载▼ 标签: 杂谈 分类: win7 本文介绍通过win7自带的IIS来搭建一个只能实现基本功能的FTP服务器,第一次...

zhuran0822 ⋅ 2014/01/22 ⋅ 0

FTP服务器项目搭建实战

FTP服务器项目搭建实战 任务 因部门需求,需要与外界进行数据传输,考虑到数据安全可靠。故决定搭建FTP服务器解决需求。 知识点 两种模式:(推荐使用被动模式) 被动模式: 主动模式: 两种模...

Howad ⋅ 2017/02/06 ⋅ 0

ftp服务器 更加方便的文件传输

上一个星期,我们使用把文件转为虚拟光盘再挂载在服务器上的方法来把文件上传到服务器上,这个方法简直太麻烦了,而且效率低下。 为了能够更加方便的吧文件上传到虚拟机上,我决定在虚拟机上...

liudaolaoda1234 ⋅ 2014/03/23 ⋅ 0

Linux服务之FTP

使用linux搭建FTP服务器不仅功能较windows多,而且在安全性上也是值得放心的。那么如何用linux搭建FTP服务器呢?别着急,耐心看完本文,相信你掌握使用linux操作系统搭建FTP服务器的。用lin...

我爱吃葱花 ⋅ 2014/08/10 ⋅ 0

yum仓库服务器

YUM仓库,可以自动解决依赖关系;相对于rpm安装更为便捷 下图为实验环境:一台YUM服务器,实现yum安装软件,另外一台为客户机 1、在YUM服务上搭建安装vsftpd软件,搭建ftp服务器,存放YUM安装...

未忘初心 ⋅ 01/09 ⋅ 0

CentOS搭建FTP

Centos搭建FTP,yum 傻瓜式搭建,犹如喝水那么简单,按照这方法还不能搭建出来,证明你不是这块料。 1, 安装:vsftpd,可以通过光盘或网络安装 光盘安装:挂载ios镜像,mount /dev/cdrom /m...

裸男子 ⋅ 2016/01/13 ⋅ 0

请问软件公司web服务器,程序员与前端的代码管理模式是怎样的

小弟自己开了个web软件公司,之前也没有在正规的团队里工作过。公司刚开始自己搭建了CentOs做服务器,我一个PHP程序,另一个合伙人做前端。一开始他做完页面给我。我加工后FTP上传服务器,这...

俊杰sang ⋅ 2014/08/22 ⋅ 2

centos 搭建FTP服务器

近期准备把windows 上的ftp停用了,既然一门心思学CENTOS 正好也有这个需求,那就边学习边搭建一个FTP服务好了,正好实践一下。 rpm -qa |grep vsftp #查看本机是否安装了ftp服务 如果没有安...

good_joe ⋅ 2016/05/08 ⋅ 0

搭建 vsftpd FTP服务器

如果你想在你的Linux/Unix服务器上搭建一个安全、高性能、稳定性好的FTP服务器,那么vsftpd可能是你的首选应用。vsftpd意思为“very secure FTP daemon(非常安全的FTP进程)”,是一个基于GPL...

Oscarfff ⋅ 2015/12/06 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringCloud 微服务 (六) 服务通信 RestTemplate

壹 通信的方式主要有两种,Http 和 RPC SpringCloud使用的是Http方式通信, Dubbo的通信方式是RPC 记录学习SpringCloud的restful方式: RestTemplate (本篇)、Feign 贰 RestTemplate 类似 Http...

___大侠 ⋅ 14分钟前 ⋅ 0

React创建组件的三种方式

1.无状态函数式组建 无状态函数式组件,也就是你无法使用State,也无法使用组件的生命周期方法,这就决定了函数组件都是展示性组件,接收Props,渲染DOM,而不关注其他逻辑。 无状态函数式组...

kimyeongnam ⋅ 21分钟前 ⋅ 0

react 判断实例类型

今天在写组件的时候想通过判断内部子元素不同而在父元素上应用不同的class,于是首先要解决的就是如何判断子元素的类型。 这里附上一个讲的很全面的文章: https://www.cnblogs.com/onepixel...

球球 ⋅ 27分钟前 ⋅ 0

Centos7备份数据到百度网盘

一、关于 有时候我们需要进行数据备份,如果能自动将数据备份到百度网盘,那将会非常方便。百度网盘有较大的存储空间,而且不怕数据丢失,安全可靠。下面简单的总结一下如何使用 bypy 实现百...

zctzl ⋅ 41分钟前 ⋅ 0

开启远程SSH

SSH默认没有开启账号密码登陆,需要再配置表中修改: vim /etc/ssh/sshd_configPermitRootLogin yes #是否可以使用root账户登陆PasswordAuthentication yes #是都开启密码登陆ser...

Kefy ⋅ 44分钟前 ⋅ 0

Zookeeper3.4.11+Hadoop2.7.6+Hbase2.0.0搭建分布式集群

有段时间没更新博客了,趁着最近有点时间,来完成之前关于集群部署方面的知识。今天主要讲一讲Zookeeper+Hadoop+Hbase分布式集群的搭建,在我前几篇的集群搭建的博客中已经分别讲过了Zookeep...

海岸线的曙光 ⋅ 52分钟前 ⋅ 0

js保留两位小数方法总结

本文是小编针对js保留两位小数这个大家经常遇到的经典问题整理了在各种情况下的函数写法以及遇到问题的分析,以下是全部内容: 一、我们首先从经典的“四舍五入”算法讲起 1、四舍五入的情况...

孟飞阳 ⋅ 今天 ⋅ 0

python log

python log 处理方式 log_demo.py: 日志代码。 #! /usr/bin/env python# -*- coding: utf-8 -*-# __author__ = "Q1mi""""logging配置"""import osimport logging.config# 定义三种......

inidcard ⋅ 今天 ⋅ 0

mysql 中的信息数据库以及 shell 查询 sql

Information_schema 是 MySQL 自带的信息数据库,里面的“表”保存着服务器当前的实时信息。它提供了访问数据库元数据的方式。 什么是元数据呢?元数据是关于数据的数据,如数据库名或表名,...

blackfoxya ⋅ 今天 ⋅ 0

maven配置阿里云镜像享受飞的感觉

1.在maven目录下的conf/setting.xml中找到mirrors添加如下内容,对所有使用改maven打包的项目生效。 <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.al......

kalnkaya ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部