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

    一:配置服务端

    添加测试账号,aaa

    1:服务监听选项

    [root@localhost ~]# setenforce 0

    注意:如果不关闭selinux,不能修改端口号

    [root@localhost ~]# vi /etc/ssh/sshd_config

    修改

         17 Port 22                 \监听的端口

         19 ListenAddress 192.168.10.10        \监听的IP

         23 Protocol 2             \sshv2版本

        129 UseDNS no          \禁用dns反向解析

    [root@localhost ~]# systemctl restart sshd

    客户端登陆验证

    linux客户端  

    [root@localhost Packages]# ssh root@192.168.10.10

    注意:服务端可以修改端口号,但在远程连接时,服务器要关防火墙

    [root@localhost ~]# ssh -p 16666 root@192.168.10.10

    windows客户端

    使用xshell

    2:用户登录控制

    [root@localhost ~]# vi /etc/ssh/sshd_config

    修改

         48 LoginGraceTime 2m         \允许一次登录花费登陆验证的时间

         49 PermitRootLogin no         \为了后面的实验,不禁用root,在前面加#注释掉

         51 MaxAuthTries 6            \登陆次数(输错密码的次数)

         78 PermitEmptyPasswords no      \禁止空密码用户登录

    43 #StrictModes yes如果StrictModesyes必需保证存放公钥的文件夹的与登陆用户名是相同的

           AllowUsers zhangsan aaa lisi@192.168.10.20   \只允许或拒绝时用,添加。lisi只能从10.20登陆

    [root@localhost ~]# systemctl restart sshd

    客户端登陆验证

    [root@localhost ~]# ssh zhangsan@192.168.10.10

    注:allowusers会限制你登陆的用户,所以后面试验中所有希望ssh登陆的用户,都要在这里添加,包括密钥对登陆的用户,如果不想限制,可以不用添加该行。

     

    二:使用ssh客户端程序

    1):客户端的操作

    [root@localhost ~]# ssh aaa@192.168.10.10

    aaa@192.168.10.10's password:

    [aaa@localhost ~]$ ifconfig

    [aaa@localhost ~]$ exit

    [root@localhost ~]# scp root@192.168.10.10:/etc/passwd /usr/ccc.txt     \下载,在AllowUsers中添加root

    [root@localhost ~]# scp -o port=16666 root@192.168.10.10:/etc/passwd /opt/bbb.txt

    root@192.168.10.10's password:

    passwd                                        100% 1668     1.6KB/s   00:00    

    [root@localhost ~]# scp -r /usr/src/text.html root@192.168.10.10:/usr     \上传

    [root@localhost ~]# scp -P 16666 -r /opt/aaa.txt root@192.168.10.10:/opt/vvv.txt

    root@192.168.10.10's password:

    text.html                                     100%    0     0.0KB/s   00:00

    3)客户端的sftp操作

    [root@localhost ~]# sftp aaa@192.168.10.10

    Connecting to 192.168.10.10...

    aaa@192.168.10.10's password:

    sftp> cd /opt

    sftp> ls

    sftp> put /etc/profile    \上传到了aaa的宿主目录下,普通用户只能将数据上传到宿主目录,

                            root可以上传到其他地方直接用cd切换目录

    Uploading /etc/profile to /home/aaa/profile

    /etc/profile                                  100% 1796     1.8KB/s   00:00    

    sftp> ls

    profile   

    sftp> get profile   \下载,下载到当前位置

    sftp> bye

    注释:如果远程服务器修改了端口号,可用下列方法登录sftp

    [root@localhost ~]# sftp -o port=8888 root@192.168.10.101

    [root@localhost ~]# sftp -P 8888 root@192.168.10.101

    4):Xshell工具

    打开win2008

    安装Xshell

    注意:

    rz命令可以上传文件

    sz命令可以下载文件:sz /etc/passwd

    如果这个命令不能用,就yum  install lrzsz

    三:构建密钥对验证ssh体系

    1服务器端设置登陆验证方式

    [root@localhost ~]# vi /etc/ssh/sshd_config

    修改(都是默认值,不用修改)

          PasswordAuthentication yes

          PubkeyAuthentication yes

          AuthorizedKeysFile      .ssh/authorized_keys       \指定公钥数据库

    [root@localhost ~]# systemctl restart sshd

    2:在客户端创建密钥对

    [root@localhost ~]# useradd bbb

    [root@localhost ~]# passwd bbb

    [root@localhost ~]# su bbb

    [bbb@localhost root]$ ssh-keygen -t rsa     \创建密钥

    [bbb@localhost root]$ ls -lh ~/.ssh/id_rsa*

    -rw-------. 1 bbb bbb 1.7K 12月  3 17:00 /home/bbb/.ssh/id_rsa

    -rw-r--r--. 1 bbb bbb  407 12月  3 17:00 /home/bbb/.ssh/id_rsa.pub

    3:将公钥文件上传到服务器

    [bbb@localhost root]$ scp ~/.ssh/id_rsa.pub root@192.168.10.10:/tmp

    4:在服务器中导入公钥文本

    [root@localhost ~]# useradd aaa

    [root@localhost ~]# passwd aaa

    [root@localhost ~]# mkdir -p /home/aaa/.ssh/      \想登陆谁的账号,就导入到谁里面

    [root@localhost ~]# cat /tmp/id_rsa.pub >> /home/aaa/.ssh/authorized_keys

    [root@localhost ~]# tail -l /home/aaa/.ssh/authorized_keys

    [root@localhost ~]# ls -l /home/aaa/.ssh/authorized_keys

    5:在客户端使用密钥对验证

    [bbb@localhost root]$ ssh aaa@192.168.10.10   \在服务器上allowusers中要添加aaa账号

    [aaa@localhost ~]$ ifconfig

    [aaa@localhost ~]$ ls -l /home/aaa/.ssh/authorized_keys

    [aaa@localhost ~]$ tail -l /home/aaa/.ssh/authorized_keys

    [aaa@localhost ~]$ exit

    四:TCP Wrappers访问控制 (TCP封装)

    [root@localhost ~]# ldd /usr/sbin/sshd | grep "libwrap"

    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f7f1d588000)

    [root@localhost ~]# vi /etc/hosts.allow

    添加

    sshd:61.63.65.67 192.168.10.*

    [root@localhost ~]# vi /etc/hosts.deny

    添加(大小写不区分)

    sshd:ALL

  • 相关阅读:
    js 获取和设置css3 属性值的实现方法
    API的自动化测试
    删除html标签或标签属性以及样式
    JS+CSS实现数字滚动
    video元素和audio元素相关事件
    SDT v0.0.1 上线
    safari浏览器fixed后,被软键盘遮盖的问题—【未解决】
    js中DOM事件探究
    使用Web存储API存取本地数据
    剑指offer(Java版)第七题:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail和deleteHead, 分别完成在队列尾部插入结点和在队列头部删除结点的功能。
  • 原文地址:https://www.cnblogs.com/ccshi/p/13151912.html
Copyright © 2011-2022 走看看