zoukankan      html  css  js  c++  java
  • 远程访问及控制

    1、SSH 简介
    SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复
    制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用
    户口令,语 TELNET(远程登录)等应用相比,SSH 协议提供了更好的安全性。

    默认监听端口:TCP 22
    2、OpenSSH 安装包
    默认安装 Linux 系统时自动安装,若未安装,安装光盘中的如下 rpm 包:
    openssh-5.3p1-94.el6.x86_64.rpm
    openssh-askpass-5.3p1-94.el6.x86_64.rpm
    openssh-clients-5.3p1-94.el6.x86_64.rpm
    openssh-server-5.3p1-94.el6.x86_64.rpm

    • 服务名称:sshd
    • 服务端主程序:/usr/sbin/sshd
    • 服务端配置文件:/etc/ssh/sshd_config
    • 客户端配置文件:/etc/ssh/ssh_config

    3、服务端OpenSSH配置

    #Port 22 //默认端口号TCP22
    #AddressFamily any //指定地址簇,any、inet(ipv4)、inet6(ipv6)
    #ListenAddress 0.0.0.0 //监听IP地址
    Protocol 2 //使用ssh协议第二版
    #LoginGraceTime 2m //等待登录时长
    #PermitRootLogin yes //默认允许root登录
    #StrictModes yes //接受连接请求前对用户目录和权限进行宿主化和权限检查
    #MaxAuthTries 6 //最大认证次数
    #MaxSessions 10 //每个网络允许打开最大会话的最大数量
    #PubkeyAuthentication yes //启用密钥对验证
    AuthorizedKeysFile .ssh/authorized_keys //指定公钥库位置
    #PermitEmptyPasswords no //不允许空密码用户登录
    PasswordAuthentication yes //启用密码验证
    GSSAPIAuthentication no
    UseDNS no //禁用反向解析
    AllowUsers amber zhangsan@192.168.200.1
    AllowUsers:用户 amber 在任何客户端均可登录;用户 zhangsan 只允许在 IP 地址为192.168.200.1的客户端登录。且仅允许此二用户通过 ssh 协议远程登录。
    DenyUsers:禁止用户 lisi 登录
    注意:AllowUsers 不要与 DenyUsers 同时使用

    4、使用 SSH 客户端程序
    (1)ssh 命令(远程安全登录)
    格式:ssh user@host (若客户机与主机用户名相同,可省去 user@)
    端口选项:-p 22
    2)scp 命令(远程安全复制)
    格式 1:scp user@host:file1 file2
    格式 2:scp file1 user@host:file2
    3)sftp 命令(安全 FTP 上传下载)
    格式:sftp user@host

    5、构建密钥对验证的 SSH 体系
    (1)第一步:客户端生产密钥对
    ssh-keygen 命令
    可用的加密算法:RSA 或 DSA或ECDSA
    [root@localhost ~]# ssh-keygen -t rsa //生产密钥对
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:36uJgYQMoPkbxhKWY2P5OoE+qy4RzNsXC+utVFIW1UA root@localhost.localdomain
    The key's randomart image is:
    +---[RSA 2048]----+
    |. .oEo |
    |.oo . . |
    |*O. o |
    |**++oo |
    |ooBo=.+ S |
    |o+o=o+ . . . |
    | *o.o . . . . |
    |. =. . o . . |
    |=o .. . o.. |
    +----[SHA256]-----+

    (2)第二步:
    方法一:
    客户端将生产的公钥上传到服务端
    服务端导入公钥文本
    方法二:ssh-copy-id 命令
    客户端:[amber@Server-SSH ~]$ rm -f .ssh/authorized_keys

    6、TCP Wrappers保护
    (1)保护机制的实现方式
    方式 1:通过 tcpd 主程序对其他服务程序进行包装
    方式 2:由其他服务程序调用 libwrap.so.*链接库
    (2)TCP Wrappers 保护的条件
    必须是采用 TCP 协议的服务
    函数库中必须包含 libwrap.so.0(可用 ldd 命令查看)
    示例:
    [root@localhost ~]# which sshd
    /usr/sbin/sshd
    [root@localhost ~]# ldd /usr/sbin/sshd | grep libwrap
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f52aec9a000)
    (3)访问控制策略的配置文件
    /etc/hosts.allow //若IP存在则同意
    /etc/hosts.deny //若IP存在则拒绝
    两个文件都不存在的IP也会同意
    (4)配置项及格式
    (1)格式:
    服务列表                  客户机地址列表
    多个服务 例:vsftpd,sshd          多个地址 例:192.168.1.1,192.168.1.10
    所有服务 ALL               所有地址 ALL
                        通配符? 例:192.168.1.?,192.168.2.1??
                        通配符* 例:192.168.1.1*
                        网段地址 例:192.168.1.或192.168.1.0/255.255.255.0
    (2)通配符
    1>通配符?:每一个?表示 1 位任意数字。如 192.168.1.1?表示
    192.168.1.10~192.168.1.19;192.168.1.1??表示 192.168.100~192.168.1.199
    2>通配符*:表示任意位数,也可为空。如 192.168.1.1*表示 192.168.1.1、
    192.168.1.10~192.168.1.19、192.168.1.100~192.168.1.199

  • 相关阅读:
    CSS中z-index的层级树概念
    随记
    PHP 随笔
    linux 相关
    Nginx 虚拟主机 VirtualHost 配置
    PHP 杂记
    Composer 资料
    PHP Yii架构学习
    java 日志技术汇总(log4j , Commons-logging,.....)
    Java 随笔
  • 原文地址:https://www.cnblogs.com/wzy01/p/11364338.html
Copyright © 2011-2022 走看看