1) FTP协议

FTP(FileTransfer Protocol,文件传输协议)用于管理计算机之间的文件传送。FTP

是Internet 上使用非常广泛的一种通讯协议,它是由支持Internet 文件传输的各种规则

所组成的集合,这些规则使Internet用户可以把文件从一个主机拷贝到另一个主机上。

若将文件从远程计算机拷贝到本地计算机上,称为“下载(download)”文件;将文件

从本地计算机拷贝到远程计算机上,称为“上传(upload)”文件。

FTP采用客户机/服务器方式。使用时,启动FTP客户端程序与远程主机建立连接,

然后向远程主机发出传输命令,远程主机在收到命令后就给予响应,并执行正确的命令。

一个完整的FTP文件传输需要建立两种类型的连接,一种为文件传输下达命令,

称为控制连接,另一种实现真正的文件传输,称为数据连接。

服务器端一个FTP进程可以同时为多个客户进程提供服务。服务器进程由两部分

组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。

Red Hat Linux 9自带的FTP服务器软件为vsftpd。

(2) MAIL服务

MAIL服务是互联网的又一重要服务,是人们在网络上进行联系的主要手段,通过

mail服务器,邮件被传送到世界各地。

1.  FTP服务器的配置

(1) 安装vsftp服务器

进入软件文件夹

[root@lab root]# cd /root/labsoft

安装vsftpd软件包

[root@lab labsoft]#rpm –ivh vsftpd-1.1.3-8.i386.rpm

(2) 配置vsftp配置文件

进入/etc目录

[root@lab labsoft]# cd /etc

编辑vsftpd.conf文件

[root@lab etc]# vi vsftpd/vsftpd.conf

配置文件的主要内容如下:根据你的需要配置,其中红色的需要重点注意

原始内容  我们配置的内容  说明

anonymous_enable=YES    是否允许匿名ftp,如否选择NO

local_enable=YES    是否允许本地用户登录

write_enable=YES    是否开放本地用户的写权限

local_umask=022    设置本地用户的文件的掩码是022,

默认值是077

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

#anon_mkdir_write_enable

=YES

anon_mkdir_write_enable

=YES

是否允许匿名用户创建新文件夹

dirmessage_enable=YES    是否显示目录说明文件,默认是

YES但需要手工创建.message 文件

xferlog_enable=YES    激活上传下载日志

connect_from_port_20=YE

S

启用FTP 数据端口的连接请求

(ftp-data).

#chown_uploads=YES

#chown_username=

whoever

是否改变上传文件的属主,如果是

需要输入一个系统用户名,可以把

上传的文件都改成root属主

#xferlog_file=/var/log/vsftp

d.log

传输日志的路径和名字默认是

/var/log/vsftpd.log

xferlog_std_format=YES    是否使用标准的ftp xferlog模式

#idle_session_timeout=600    设置默认的断开不活跃session 的

时间

#data_connection_timeout=

120

data_connection_timeout=

120

设置数据传输超时时间

#nopriv_user=ftpsecure    运行vsftpd需要的非特权系统用户

默认是nobody

#ascii_upload_enable=YES

#ascii_download_enable=

YES

是否使用ascii 码方式上传和下载

文件

#ftpd_banner=Welcome

to blah FTP service.

定制欢迎信息

#deny_email_enable=YES

#banned_email_file=

/etc/vsftpd.banned_emails

是否允许禁止匿名用户使用某些邮

件地址,如果是,输入禁止的邮件

地址的路径和文件名

#chroot_list_enable=YES

#chroot_list_file=

/etc/vsftpd.chroot_list

chroot_list_enable=YES

chroot_list_file=

/etc/vsftpd.chroot_list

还 需要 手工 创建

/etc/vsftpd.chroot_list,并

是否将系统用户限止在自己的

home目录下,如果选择了yes那么

chroot_list_file=/etc/vsftpd.chroot_li

st中列出的是不chroot的用户的列

且加入需要限制的用户

pam_service_name=vsftpd    设置PAM认证服务的配置文件名

称,该文件存放在/etc/pam.d/目录下

userlist_enable=YES    由于默认情况下

userlist_deny=YES, 所以

/etc/vsftpd.user_list文件中所列出的

用户不允许访问vsftpd服务器

listen=YES    使vsftpd处于独立启动模式

tcp_wrappers=YES    使用tcp_wrappers 作为主机的访问

控制方式

anon_world_readable_only

=NO

开放匿名用户的浏览权限

anon_other_write_enable=

YES

允许匿名用户对服务器上的文件或

文件夹有更名或删除操作的权限

max_clients=200  指定服务器总的并发连接数

max_per_ip=2  指定每个客户机的最大连接数

accept_timeout=120  空闲2分钟后自动中断连接

local_max_rate=80000  本地用户最大传输速率(KB/s)

anon_max_rate=80000  匿名用户最大传输速率(KB/s)

(3) 启动停止服务器

启动服务器

[root@lab etc]# /etc/init.d/vsftpd start 或

[root@lab etc]# service vsftpd start

停止服务器

[root@lab etc]# /etc/init.d/vsftpd stop 或

[root@lab etc]# service vsftpd stop

重新启动服务器

[root@lab etc]# /etc/init.d/vsftpd restart 或

[root@lab etc]# service vsftpd restart

(4) 修改匿名用户上传目录的权限

匿名用户的默认目录是“/var/ftp/pub”。使用下面的命令修改:

[root@lab etc]# chmod +777 /var/ftp/pub

(5) 测试

1)  在Linux下使用ftp命令进行测试

2)  在windows系统下,使用FTP工具测试

2.  mail服务器的配置

(1)  安装Sendmail软件包

进入软件文件夹

[root@lab root]# cd /root/lab/labsoft

安装sendmail软件包

[root@lab labsoft]# rpm –ivh sendmail-8.12.8-4.i386.rpm

[root@lab labsoft]# rpm –ivh sendmail-cf-8.12.8-4.i386.rpm

[root@lab labsoft]# rpm –ivh sendmail-doc-8.12.8-4.i386.rpm

(2)  配置DNS的MX记录

[root@lab labsoft]#vi /var/named/test.com.zone

$TTL 86400

@ IN  SOAdns root.test.com.(

2 ; serial

28800 ; refresh

7200 ; retry

604800 ; expire

86400 ; ttl

)

@ IN  NSdns.test.com.

@ IN  MX5  mail.test.com.

mail  INA 192.168.100.253

根据你的机器和网络的配置,更改地址

(3)  修改Sendmail的配置文件“/etc/mail/sendmail.cf”。

[root@lab labsoft]#vi /etc/mail/sendmail.cf

将该文件中的行:Cwlocalhost

修改为: Cwmail.test.com  test.com

(4)  修改Sendmail的配置文件“/etc/mail/sendmail.mc”。

[root@lab labsoft]#vi /etc/mail/sendmail.mc

将该文件中有以下字符串开头的四行用注释符号“#”注释掉。

“DAEMON_OPTIONS”

(5)  使用下面的命令重新生成配置文件。

[root@lab labsoft]# make –C /etc/mail

(6)  修改/etc/mail/access文件,在该文件中加入下面一行:

[root@lab labsoft] #vi /etc/mail/access

mail.test.com Replay

(7)  由/etc/mail/access 文件生成/etc/mail/access.db ,使用下面的命令:

[root@lab labsoft] #makemap hash /etc/mail/access.db < /etc/mail/access

(8)  启动停止服务器

启动服务器

[root@lab root]# /etc/init.d/sendmail start

停止服务器

[root@lab root]# /etc/init.d/sendmail stop

重新启动服务器

[root@lab root]# /etc/init.d/sendmail restart

(9)  测试服务器

向student用户发信

[root@lab root]#mail student@test.com

切换用户为student

[root@lab root]#su student

以student用户收信

[student@lab root]$mail

Linux--FTP和MAIL服务器的更多相关文章

  1. LINUX下的Mail服务器的搭建

    电子邮件是因特网上最为流行的应用之一.如同邮递员分发投递传统邮件一样,电子邮件也是异步的,也就是说人们是在方便的时候发送和阅读邮件的,无须预先与别人协同.与传统邮件不同的是,电子邮件既迅速,又易于分发 ...

  2. 巧用花生壳将局域网内的FTP和www服务器发布到互联网

    一.目的:用生壳发布FTP和mail服务器到互连网. 二.网络环境:(出租房多家共用路由器上网,ADSL的1Mbps带宽,动态PPPOE拨号,帐号和密码存储在soho路由器中,路由器自动联机上网,并为 ...

  3. LINUX的SSH下FTP到远程服务器Entering Passive Mode失败解决

    LINUX 系统FTP连接远程服务器经常出现在传输文件或者发出 ls命令时候出现 "Entering Passive Mode "然后就再也无法运作了.该工作主要是因为LINUX的 ...

  4. Linux FTP的安装与配置

    Linux FTP的安装与配置   ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service  ...

  5. 详述Linux ftp命令的使用方法

    转自:http://os.51cto.com/art/201003/186325.htm ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里 ...

  6. Linux FTP的安装与配置(转)

    Linux FTP的安装与配置   ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service  ...

  7. linux FTP安全配置

    linux FTP安全配置 关闭防火墙,selinux安全机制   service iptables stop  setenforce 0 匿名用户 匿名用户只能访问ftp服务器上的/var/ftp/ ...

  8. Linux 自动化部署DNS服务器

    Linux 自动化部署DNS服务器 1.首先配置主DNS服务器的IP地址,DNS地址一个写主dns的IP地址,一个写从dns的地址,这里也可以不写,在测试的时候在/etc/resolv.conf中添加 ...

  9. 在Linux系统下mail命令的用法

    在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...

随机推荐

  1. luogu2252 取石子游戏

    题目描述 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后把石子全部取完 ...

  2. [AHOI2012]铁盘整理

    题目描述 输入输出格式 输入格式: 共两行.第一行为铁盘个数N(1<=N<=50),第二行为N个不同的正整数,分别为从上到下的铁盘的半径R.(1<=R<=100) 输出格式: ...

  3. JavaScript和DOM

    body { margin: 0 } .left { float: left } .right { float: right } .pg-head { height: 48px; background ...

  4. Python中高阶函数讲解

    高阶函数讲解 1. 常规高阶函数 递归函数 格式:def func_name(variable): '''__doc__'''#函数的说明文档 if 条件表达式:#限制递归退出值 pass retur ...

  5. windows的常用快捷键(实用篇)

    整理一下windows的常用快捷键,有些快捷键老不用都忘记了,这里整理一下方便自己以后忘记时翻阅. 一.Fn键的使用 1.F1帮助 2.F2重命名 3.F3打开搜索 4.F4打开地址栏常用地址 5.F ...

  6. Redis实现单点登录

    http://blog.csdn.net/WuCourage/article/details/77802812

  7. 美链BEC合约漏洞技术分析

    这两天币圈链圈被美链BEC智能合约的漏洞导致代币价值几乎归零的事件刷遍朋友圈.这篇文章就来分析下BEC智能合约的漏洞 漏洞攻击交易 我们先来还原下攻击交易,这个交易可以在这个链接查询到. 我截图给大家 ...

  8. 浏览器本地下拉框查询选择js

    首先需要引用jquery-1.7.2.js. 页面下拉框有对应的数据,此下拉框的查询将不与服务器交互.本地下拉框查询.暂不支持通过键盘上下按键和enter键控制 // JavaScript Docum ...

  9. python while条件和if判断的总练习

    输出123456 89的数字 num =1 while num < 11: if num == 7: pass else: print(num) num = num + 1 输出1-100的奇数 ...

  10. CODEVS3269混合背包+二进制优化

    codevs 3296 http://codevs.cn/problem/3269/ 题目描述 Description 背包体积为V ,给出N个物品,每个物品占用体积为Vi,价值为Wi,每个物品要么至 ...