zoukankan      html  css  js  c++  java
  • Linux系统学习 八、SSH服务—SSH远程管理服务

    1、SSH简介

    ssh(安全外壳协议)是Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议。传输的时候是经过加密的,防止信息泄露,比telnet(明文传递)要安全很多。

    ftp安装(要先加载上光盘镜像文件)

    安装的ftp服务器端

     

    启动服务

     

    查看

     

    创建一个新用户

     

    tcpdump抓包工具

    安装命令

    yum install tcpdump

     

    然后在本地机器上连接虚拟机

     

    应该是有防火墙

    iptables -L

     

    默认Windows当中启动的防火墙,21端口没开着

     

    这边使用命令全部关掉,然后重新监听21端口

    虽然登录失败了,但是并不影响抓包

    用户名:

     

    密码:

     

     

    2、SSH端口

    端口:22

    Linux中守护进程:sshd

    安装服务:OpenSSH

    服务端主程序:/usr/sbin/sshd

    客户端主程序:/usr/bin/ssh

     

     

    3、相关配置文件

    服务端配置文件:/etc/ssh/sshd_config

    客户端配置文件:/etc/ssh/ssh_config

     

    2、SSH加密原理

    对称加密算法

    采用单钥密码系统的加密方法,同一个秘钥可以同时用作信息的加密和解密,这种加密方式称为对称加密,也称为单秘钥加密。

    非对称加密算法又名“公开秘钥加密算法”,非堆成加密算法需要两个秘钥:公开密钥和私有秘钥。

    SSH安全外壳协议(是由非对称加密演变来的)

    它仅仅只是保护了数据传输的过程,在发送前和接收后中了木马等就可能获得数据内容。

     

    在用Xshell连接服务器时就会有直观的显示。

     

     

    3、SSH配置文件

     

    服务器端配置文件

    应该还有一个客户端的配置文件(ssh_config)

    ssh_config在使用过程中,既是一个客户端也是一个服务端,意思是可以允许别人作为客户端通过22端口访问我,我也可以作为客户端去访问别人。

     

    PermitRootLogin yes        允许root的ssh登录(建议普通用户登录)

     

    PasswordAuthentication yes            建议也改成no

    虽然有些设置是被注释掉的,但是事实上有些是默认设置的,注释掉也可以。

    一般建议把端口改掉。

    日志中等级越高记录的信息越少,等级越低记录的信息越详细。

    GSSAPI认证开启后,在用Linux系统管理Linux系统时会有一个验证过程,会等很长时间,需要DNS解析。建议关闭(一般是客户端的配置文件,然后重启service sshd restart)

     

    4、常用SSH命令

    SSH远程管理

    ssh [用户名@ip]

     

    SCP远程复制

    下载:

    scp root@192.168.44.2:/root/text.txt

    上传:

    scp –r /root/123/ root@192.168.44.2/root

     

    5、SSH连接工具

    在Windows中用工具远程连接Linux进行管理。

    SecureCRT工具

    Xshell工具

     

    5、SSH密钥对登录

    保护服务器端的SSH

    1.改端口

    2.防火墙

     

    第一步:创建密钥对,私钥文件:id_rsa,公钥文件:id_rsa.pub(客户机)

    第二步:上传公钥文件到SSH服务器(id_rsa.pub)

    第三步:导入公钥信息,公钥库文件:~/.ssh/authorized_keys

    第四步:使用密钥对验证进行登录

    不需要密码登陆,防止了密码被截获的可能,只要保证私钥文件的安全就可以了

     

    步骤一:

    客户端:

    ssh-keygen –t rsa

    服务器:

    把公钥上传到服务器端

    cat id_rsa.pub >>/root/.ssh/authorized_keys                  输出重定向

    chmod 600 /root/.ssh/authorized_keys

     

    客户端:

     

    创建普通用户

     

    切换到普通用户

    su – user

    返回到root

    exit

     

    我这边一直是以下这种显示

     

    不管是服务器还是本机的PermitRootLogin yes都改了,但是问题依旧没有解决。

    也尝试用普通用户连接,依旧是这种情况。

     

    步骤二

    修改服务器ssh配置文件

    RSAAuthentication yes    开启RSA验证

    PubkeyAuthentication yes      是否使用公钥验证

    AuthorizedKeysFile .ssh/authorized_keys      公钥的保存位置

    PasswordAuthentication on   禁止使用密码验证登录

     

    步骤三

    服务器端关闭SELinux服务

    vi /etc/selinux/config

    重启系统

    服务器端重启ssh服务

    service sshd restart

     

  • 相关阅读:
    Django模板系统
    __new__与__init__的区别
    django中models field详解
    快速入门mysql
    jq2
    jq
    前端 js 部分
    前端 js
    前端 css
    前端 table form
  • 原文地址:https://www.cnblogs.com/Yuuki-/p/11935788.html
Copyright © 2011-2022 走看看