简述SSH和Openssh

1.ssh和telnet的区别

telnet:TCP/23
    缺陷:认证过程是明文
         数据传输明文
         
ssh: Secure SHell, TPC/22

       认证和数据传输都是加密的,属于C/S架构

ssh --> SSH(商业)
OpenSSH(开源)

客户端
    Linux: ssh
    Windows: putty,SecureCRT(商业),SSHSecureShellClient,Xmanager
    
服务器端:
    sshd

2.openssh是ssh的开源实现

openssh (ssh,sshd)

ssh(/etc/ssh_config)
sshd(/etc/sshd_config)

/etc/ssh 目录结构

目前的CentOS都只支持ssh v2:
ssh_host_{dsa/ecdsa/ed25519/rsa}_{key}.pub

服务端配置文件
/etc/sshd_config

配置文件中的参数:

Port 监听端口
ListenAddress 监听地址
LoginGraceTime 最多等待多长时间登陆
MaxAuthTries 最多错误次数
MaxSessions 最多连接数

注意:ssh配置修改后需要重启服务

/etc/ssh_config

1.基于口令的认证:
ssh -i USERNAME REMOTE_HOST ['COMMAND
    -p
    -X 
    -Y
    
2.基于密钥的认证:
客户端主机:
    1.生成一堆密钥
        ssh-keygen -t {rsa|dsa..} [-f output_keyfile] [-p PORT]
    2.将公钥传输至服务器端某用户的家目录下的.ssh/authorized_keys文件中
        使用文件传输工具传输(ssh-copy-id,scp)
        scp {options} SRC DEST
            -r
            -p
            -a
        sftp SRC DEST (服务器之间只要支持ssh,且配置中支持sftp即可以直接用sftp链接)
        ssh-copy-id -i pubkey_file USERNAME@HOSTNAME
    3.测试登陆
    
安全要点:
1.密码应该经常换
2.使用非默认端口
3.限制客户端登陆地址
4.禁止管理员登陆
5.仅允许有限制用户登陆
6.使用基于密钥的认证


    

你可能感兴趣的:(linux,OpenSSH)