zoukankan      html  css  js  c++  java
  • Linux--FTP和MAIL服务器

    

    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

  • 相关阅读:
    词法分析程序
    关于编译原理
    超神c语言文法
    linux基本命令
    用bat来注册ocx
    当web配置文件 appSettings配置的东西越来越多时,可以拆开了。
    MVC的URL路由规则
    ASP.NET MVC 中如何实现基于角色的权限控制
    查cc攻击
    关于session介绍
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299401.html
Copyright © 2011-2022 走看看