ssh安全远程管理
1.什么是ssh
SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
2.ssh的登录验证模式
2.1 账号密码验证
2.2密钥对验证
3.ssh操作
Linux主机之间的密钥对登录验证。
1. 客户端生成密钥对文件。
ssh-keygen -t rsa -b 2048 4
-t指定加密类型(rsa/dsa等) 。
-b指定密钥对加密长度。
询问1:执行过程中会询问保存位置,- -般默认保存在当前用户家目录下的. ssh/目录下。
询问2:是否对密钥文件进行加密
加密:若加密,则在调用密钥文件时需要先验证密钥的密码,密码正确才能使用密钥文件。
不加密:若不加密,则密钥文件可以直接被调用,整个登录验证过程无需输入任何密码,即为免密登录。
2. 将公钥文件.上传至服务器端。
ssh-copy-id用户名@服务器IP地址。
#该用户名和要用来登录服务器的用户名一致。
3. 客户端尝试登录服务器。
ssh用户名@服务器IP地址。
#密钥对验证优先级大于账户密码验证。
一个服务器可以保存对个公钥
如果是windows往服务器传公钥的时候 需要在~/.ssh目录 创建authrized_keys文件 ,然后将文件写入进去
4.ssh配置参数
4.1 禁止使用密码登录
建议生产环境中将庄户密码登录功能关掉
配置文件 : /etc/ssh/sshd_config
PasswordAuthentication no
重启服务 service sshd restart
4.2 禁止使用root远程登录
需要增加一个用户 useradd zhangsan 设置密码 passwd
root在系统中是一个可以为所欲为的角色,我们可以在平时的操作中用普通用户操作,在有需要修改一些系统设置的
时候再从普通用户切换到root用户,这样可以最大限度的避免因为误操作而对系统造成破坏,同时也可以避免黑客在
暴力破解后直接使用root用户登录系统,一般在远程登录管理上我们会禁止直接使用root用户登录。
配置文件: /st/sslsshd config.
选项:。
PermitRootLogin no。
4.3 修改默认端口,限制SSH监听IP
修改默认端口: ssh 作为一个用来远程管理服务器的工具,需要特别的安全,默认情况下使用TCP的22端口,若不进行修改,很容易被利用遭到攻击,所以我们一般都会修改端口,尽量修改- . 个高位端口(范围1-65535)。配置文件: /etc/ssh/sshd config.选项:。
Port 59527。
ssh -p端口用户名@服务器IP
限制ssh监听IP:有些服务器则安全级别更高.些,不允许使用外网直接登录,只有通过局域网才能登录,我们可以在机房里设置其中一台能够被外网远程连接,其他的主机都通过这个机器进行远程连接即可。配置文件: /etc/ssh/sshd .config.选项:。
ListenAddress 192. 168. 88.100。
最新文章
- 【纯css】左图右文列表,左图外框宽度占一定百分比的正方形,右上下固定,右中自动响应高度。支持不规则图片。
- PHPstorm的数据库功能
- IIS跳转html页面自动识别是PC端还是手机端
- Nginx+uwsgi安装配置
- js 单例模式笔记
- 数据存储与IO(一)
- PeopleTools预警程序制作
- 黄聪:C#图片处理封装类(裁剪、缩放、清晰度、加水印、生成缩略图)有示例(转)
- SASS学习笔记_01
- slot的含义
- PHP设计模式——代理模式
- [一]Head First设计模式之【策略模式】(鸭子设计的优化历程)
- 【译】 AWK教程指南 6在AWK程序中使用Shell命令
- android开发步步为营之68:Facebook原生广告接入总结
- IE下全局对象报 脚本错误提示“对象不支持此属性或方法”解决方案
- C#高级编程三十天----泛型结构,泛型方法,泛型托付
- struct2利用相关的Aware接口
- 问题11:web前端开发规范手册(转)
- python os.path.isfile函数
- 使用Python-Libvirt GUI 实现KVM 虚拟机 界面化管理