zoukankan      html  css  js  c++  java
  • linux 搭建 telnet + tftp

    centos 6 以上,默认telnet 、 tftp都没有装,这里列举安装步骤以及会出现的问题:

     1、查看是否安装了相关软件:

      rpm -qa|grep -E "telnet|xinetd"

      显示结果含有以下三个软件,则表示已经安装,否则需要安装缺失的软件
      telnet-server-0.17-60.el7.x86_64
      telnet-0.17-60.el7.x86_64
      xinetd-2.3.15-13.el7.x86_64

    2、安装缺失的软件:
      sudo yum install telnet telnet-server xinetd

    3、注册使用服务:
      sudo systemctl enable telnet.socket
      sudo systemctl start telnet.socket
      sudo systemctl enable xinetd
      sudo systemctl start xinetd

       4、开启防火墙的23端口:
      具体防火墙使用可以参见:http://www.cnblogs.com/moxiaoan/p/5683743.html

      sudo firewall-cmd --zone=public --add-port=23/tcp --permanent  
      sudo service firewalld restart  

    5、备注:虚拟机如果和主机进行测试
     需要将网络模式修改为2. Bridged Adapter,具体参见:http://blog.csdn.net/ixidof/article/details/12685549
    ---------------------------------------------------------------------------------------------------------------------
    安装tftp服务器:
     
    需要安装xinetd、tftp、tftp-server3软件
     
    1、如果能上网,通过yum安装:
     
    sudo yum install xinetd
     
    sudo yum install tftp
     
    sudo yum install tptp-server
     
    2、如果不能上网,可以直接安装提供的rpm包:
     
    sudo rpm -ivh xinetd-2.3.14-18.fc9.i386.rpm
     
    sudo rpm -ivh tftp-0.48-3.fc9.i386.rpm
     
    sudo rpm -ivhtftp-server-0.48-3.fc9.i386.rpm
     
     
     
    配置tftp服务器:
     
    修改/etc/xinetd.d/tftp文件
     
    disable=yes 改为  disable=no
     
    server_args=-s /var/lib/tftpboot  改为  server_args=-s /tftpboot/ -c
     
     
     
    修改/etc/sysconfig/selinux文件
     
    SELINUX=disabled  (系统默认是enforcing)要改成disabled
     
     
     
    chmod 777 /tftpboot  修改/tftpboot文件夹的权限
     
     
     
    启动  service xinetd restart
     
     
     
    查看tftp服务是否开启:
     
    netstat -a | grep tftp
     
    显示结果为  udp    0  0 *:tftp    *:*  表示服务已经开启,tftp配置成功
     
     
     
    把openwrt-ar71xx-wp543-squashfs-4M-factory.img 文件复制到目录/tftpboot 下
     
     
     
    在目录/home/x(目录名)下:
     
    启动tftp服务器  sudo in.tftpd -l /tftpboot
     
    tftp 192.168.0.26(本机的IP地址)
     
    tftp>get a(文件名)  在服务器上下载文件
     
    tftp>put a(文件名)  上传文件到服务器上
     
    tftp>q            退出
     
     
     
    启动tftp服务器:
     
    service tftpd-hpa stop      停止tftp服务器
     
    service tftpd-hpa start    开启tftp服务器
     
    service tftpd-hpa stutus    查看tftp运行状态
     
    service tftpd-hpa restart  重启tftp服务器

    (注意:文件传输后文件的权限会发生变化)
     
     
     
    进入TFTP操作:
     
    connect:连接到远程tftp服务器
     
    mode:文件传输模式
     
    put:上传文件
     
    get:下载文件
     
    quit:退出
     
    verbose:显示详细的处理信息
     
    tarce:显示包路径
     
    status:显示当前状态信息
     
    binary:二进制传输模式
     
    ascii:ascii 传送模式
     
    rexmt:设置包传输的超时时间
     
    timeout:设置重传的超时时间
     
    help:帮助信息
     
    ? :帮助信息
     
     
     
    -g 表示下载文件 (get)

    -p 表示上传文件 (put)
     
    -l 表示本地文件名 (local file)
     
    -r 表示远程主机的文件名 (remote file)

    
    

    例如,要从远程主机192.168.1.2上下载 embedexpert,则应输入以下命令:
     
    tftp -g -r embedexpert 192.168.1.2
     
     
     
    出现的一些问题及原因(解决方法):
     
    1、Transfer time out.   
     
      tftpd服务没有启动
     
    2、Error code 0:Permission denied
     
        可能是由SELinux造成的,在FC3和FC3以后的FC版本中SELinux默认的都是开启的,现在要关掉它。
     
        修改文件/etc/sysconfig/selinux,设定SELINUX=disabled,然后重启电脑即可
     
      或者  执行命令system-config-securitylevel打开“安全级别配置”对话框,将SELinux(S)选项中“强制”改为“允许”
     
    3、Error code 1:File not found
     
        指定的文件夹不存在;或tftpd启动参数中没有指定-c选项,允许上传文件
     
    4、Error code 2:Only absolute filenames allowed
     
      /etc/xinetd.d/tftpd文件的设置没设好,只需要将server_args=  改为你自己设定  的服务器文件夹就行了
     
    5、Error code 2:Access violation
     
        上传的文件要有相应的可读写(覆盖)的权限才能上传,要对文件的权限进行修改  chmod 777 a(文件名)

     
  • 相关阅读:
    DOS命令大全 1 attrib,delete等 外部 内部 命令都有
    css图像映射
    简单的css样式控制分页效果
    (转)AjaxPro实现机制探讨——Ajax是如何调用服务器端C#方法?
    学习笔记ADO.Net方面
    一个挺好用的数据库操作类
    .net开发人员应该知道(二)
    js与C#之间相互调用的一些方法
    JS 事件大全
    .net开发人员应该知道(一)
  • 原文地址:https://www.cnblogs.com/lpblogs/p/7435738.html
Copyright © 2011-2022 走看看