服务-telnet

基础服务管理:
    特点:支持并发 7X24小时不间断 交互式|tcp/ip scoket
    socket文件:“套接字”,是建立网络连接的时候使用。在连接建立成功时,程序两端都会产生一个sock文件,通过socket文件进行所需的会话。一般情况下,scok文件用于本地连接
    socket类型:
       流式socket(sock stream):是一种面向连接的服务,针对于tcp/ip协议的程序
       数据报socket( scok dgram):是一种面向无连接的服务,针对的是udp协议的程序


    Linux中,服务分为两大类:
    1、依赖服务
    特点:没有自己独立的启动脚本;依赖域xinted服务;依赖服务需要启动xinetd服务
    eg:telnet、tftp...

    xinted服务:extended internet daemon(扩展的网络守护进程),作用:管理一些轻量的小型服务,它会唤醒所管理的依赖服务;它本身是一个独立的服务

    2、独立服务
    特点:有自己独立的启动脚本;不依赖任何服务
    /etc/rc.d/init.d/xxxx
    /etc/init.d/xxx


    client——>server(serivce)
    IP(找到相应主机)+端口号(找到相应的服务)

    端口号的设定:
    端口号都是正整数
    范围:065535
    1255:知名服务的端口;ftp(21) telent(23) web(80)ssh(22)...
    256~1023:通常都是类unix系统占用用来提供特定的服务
    10245000:客户端产生的随机端口
    >5000:为互联网中预留端口

    /etc/service 保存系统服务的默认端口

    思路:
    1、关闭防火墙和selinux
    2、配置yum源【本地yum源】
    3、安装软件三步曲(查看软件是否安装|确认是否安装成功|查看软件的文件列表)
    4、了解该服务的配置文件 man 5 xxx.conf
    5、根据需求通过修改配置文件完成服务的搭建
    6、启动服务|开机自启动
    7、测试验证

    环境:
    vm1:10.1.1.1|node1.uplook.com (server端)
    vm2:10.1.1.2|node2.uplook.com (client端)
    vm3:10.1.1.3|node3.uplook.com (client端)
    vm4:10.1.1.4 windows(client端)

demo1:telnet依赖服务搭建
            telnet:远程管理的服务 windows;linux下不建议使用
            原因:传送用户名和密码是明文传送,不安全  tcp 23

            需求:vm1上搭建一个telent服务,目的是使用远程主机可以管理
            步骤:
            1、关闭防火墙和selinux
            1> service iptables stop 临时关闭
               chkconfig iptables off 永久关闭(开机不自动启动)

            2> # setenforce 
            usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]
            # setenforce 0   临时放到permissive模式
            # getenforce 查看selinux状态
            # vim /etc/selinux/config   永久关闭(重启生效)
            SELINUX=disabled  关闭


            [root@node1 Desktop]# service iptables status
            iptables: Firewall is not running.
            [root@node1 Desktop]# getenforce 
            Disabled

            2、配置yum源
            # yum makecache
            ....
            Metadata Cache Created

            省略

            3、软件三步曲
            1> 查看软件是否安装
            # yum list|grep telnet
            This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
            telnet.x86_64                           1:0.17-47.el6_3.1                    vm 
            telnet-server.x86_64                    1:0.17-47.el6_3.1                    vm 

            # yum list|grep xinetd
            This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
            xinetd.x86_64                           2:2.3.14-39.el6_4                    vm 

            2> 安装相关软件
            # yum -y install xinetd telnet-server
            3> 确认是否安装成功并且查看软件列表
            # rpm -q xinetd
            xinetd-2.3.14-39.el6_4.x86_64
            # rpm -q telnet-server
            telnet-server-0.17-47.el6_3.1.x86_64

            # rpm -ql xinetd
            /etc/rc.d/init.d/xinetd   启动脚本
            /etc/xinetd.conf    主配置文件
            /etc/xinetd.d/  子配置文件的存放目录

            # rpm -ql telnet-server
            /etc/xinetd.d/telnet   telnet服务的子配置文件
            /usr/sbin/in.telnetd    二进制命令

            4、了解配置文件
            1> 了解xinetd服务的主配置文件   # man 5 xinetd.conf
            # cat /etc/xinetd.conf |grep -v ^#|grep -v ^$
            defaults
            {
                log_type    = SYSLOG daemon info 使用syslog程序记录日志
                log_on_failure  = HOST  失败日志,记录客户端的主机
                log_on_success  = PID HOST DURATION EXIT 成功日志,记录客户端pid host..
                cps     = 50 10 50表示每秒50个连接;10表示连接上限后等待10s再次连接
                instances   = 50  连接实例50个,最大连接数
                per_source  = 10  每个IP最大连接数
                v6only      = no  不支持ipv6
                groups      = yes 确定服务进程组ID
                umask       = 002 默认掩码
            }
            includedir /etc/xinetd.d  加载外部目录

            2> 了解telent服务的配置文件
            # cat /etc/xinetd.d/telnet |grep -v ^#
            service telnet
            {
                flags       = REUSE   标记
                socket_type = stream   tcp/ip   
                wait        = no 不等待;服务以多线程的方式运行,并发;yes表示单线成
                user        = root 以root用户身份启动
                server      = /usr/sbin/in.telnetd
                log_on_failure  += USERID 登录失败日志记录用户uid
                disable     = yes yes代表关闭服务;no代表开启
            }

            5、根据需求通过修改配置文件完成服务的搭建
            需求:client端通过telnet工具远程管理server主机
            vim /etc/xinetd.d/telnet
            service telnet
            {
                flags       = REUSE
                socket_type = stream        
                wait        = no
                user        = root
                server      = /usr/sbin/in.telnetd
                log_on_failure  += USERID
                disable     = no  yes该为no
            }

            6、启动服务|开机自启动
            [root@node1 ~]# netstat -nltp|grep 23
            [root@node1 ~]# /etc/init.d/xinetd status
            xinetd is stopped
            [root@node1 ~]# /etc/init.d/xinetd start
            Starting xinetd:                                           [  OK  ]
            [root@node1 ~]# netstat -nltp|grep 23
            tcp        0      0 :::23                       :::*                        LISTEN      4188/xinetd
            7、测试验证
            # telnet 10.1.1.1
            Trying 10.1.1.1...
            Connected to 10.1.1.1.
            Escape character is '^]'.
            Red Hat Enterprise Linux Server release 6.5 (Santiago)
            Kernel 2.6.32-431.el6.x86_64 on an x86_64
            login: root    默认情况下,不允许root登录
            Password: 
            Login incorrect

            login: redhat
            Password: 
            [redhat@node1 ~]$ ls


            需求1:只允许10.1.1.210.1.1.6
            telnet——>xinetd——>xinetd.conf——>/etc/xinetd.d/telent
            service telnet
            {
                flags       = REUSE
                socket_type = stream        
                wait        = no
                user        = root
                server      = /usr/sbin/in.telnetd
                log_on_failure  += USERID
                disable     = no
                only_from   = 10.1.1.2 10.1.1.6
            }

            需求2:只允许10.1.1.0/24网段访问,但是除了10.1.1.254
            service telnet
            {
                flags       = REUSE
                socket_type = stream        
                wait        = no
                user        = root
                server      = /usr/sbin/in.telnetd
                log_on_failure  += USERID
                disable     = no
                only_from   = 10.1.1.0/24
                no_access   = 10.1.1.254
            }
            需求31、控制该服务最多只能3个连接,每个ip只能1次连接
            2、控制只能在工作日访问9:30-12:0014:00-17:30
            3、指定日志记录到/var/log/telnet.log里
            4、更改telnet服务的默认端口为10086

            service telnet
            {
                flags       = REUSE
                socket_type = stream        
                wait        = no
                user        = root
                server      = /usr/sbin/in.telnetd
                log_on_failure  += USERID
                disable     = no
                instances   = 3
                per_source  = 1
                access_times    = 9:30-12:00 14:00-17:30
                log_type    = file /var/log/telnet.log
                port        = 10086
            }

            注意:
            1、修改端口号必须修改/etc/services文件里相对应服务的端口号(man 有)
            2、/etc/services文件里服务的端口号对我们访问服务有影响;client登录需要加10086;local登录不需要加10086

            思考:telnet服务默认不让root登录,如果想允许root登录怎么办?
            /etc/securetty

            作业1:
            根据搭建telnet服务的步骤,搭建tftp服务
            tftp:简单的文件传送 udp 69 
            要求:
            1、只允许工作时间9:30-12:0014:00-17:30访问
            2、只允许10.1.1.210.1.1.254主机访问
            3、每个IP最多连接2次,最大连接数为3
            4、修改端口号为10069
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值