SSH是什么
1、 Secure Shell 安全外壳协议
2、 建立在应用层基础上的安全协议
3、 可靠、转为远程登陆会话和其他网络提供安全性的协议
4、 SSH客户端是用于多种平台
服务器安装SSH服务
1、 安装:yum install openssh-server
2、 启动:service sshd start
3、 设置开启运行:chkonfig sshd on
4、 查看进程是否存在:ps -ef |grep ssh
客户端安装SSH工具
1、 win平台使用xshell
2、 Linux平台需要安装客户端软件:yum install openssh-clients
客户端链接SSH服务
1、 在win,打开xshell,新建一个会话:ssh root@192.168.2.20
,输入密码就可以了进来了
2、 在Linux,还是:ssh root@192.168.2.20
SSH config
1、 config为了方便我们管理多个ssh
2、 config存放的路径:~/.ssh/config
3、 config配置语法
4、 关键字:
Host | 别名 |
---|---|
HostName | 主机名 |
Port | 端口 |
User | 用户名 |
IdentityFile | 密钥文件的路径 |
1、 具体的操作
* 首先使用`ssh root@192.168.2.20`登陆,然后`cd ~/.ssh/`
* 此时会发现没有这个config这个文件
* 创建一个config文件:`touch config`
* `vim config`进入这个文件,输入i,进入编辑模式,如图,然后按esc,输入:wq保存退出
![115\_1.png][115_1.png]
* 此时输入:`ssh imooc` 就可以快速链接了,当然了,在配置文件中可以输入不同的别名,这样多的话就方便管理了
SSH安全免密码登陆:ssh key
1、 ssh key使用非对称加密方式生成公钥和私钥
2、 私钥存放的位置在本地 ~/.ssh目录
3、 公钥可以对外公开放,放在服务器的~/.ssh/authorized_keys
4、 Linux平台生成ssh key
* `ssh-keygen -t rsa`
5、 Win
* 在xshell中,工具--新建用户密码生成向导--下一步
* 到输入密钥名称这个得记住imocc\_linux,然后下面的密码可以输入也可以不输入
* 另存为文件就可以
* 然后需要把生成的这个的公钥放到服务器上,进入 `cd ~/.ssh/`
* 发现没有那个文件,这个时候新建一个 `touch authorized_keys`文件
* 用vim打开,把生成的公钥复制进来就可以了,然后保存退出
* 这个时候在xshell中新建一个会话就可以免密码登陆了,如图:
![115\_2.png][115_2.png]
6、 Linux
* 首先`cd ~/.ssh/`
* 开始生成`ssh-keygen -t rsa`,此时输入文件的名字,imooc\_rsa,这个得记住,然后下面的密码可以输入也可以不输入
* 此时ls查看一下就可以看到,如图:
![115\_3.png][115_3.png]
* 此时用`cat imooc_rsa.pub`看到公钥,把这个复制下来
* 还是放入到`touch authorized_keys`文件中,此时这个文件中已经有连个公钥了
* 然后把私钥加入到本地空间中`ssh-add ~/.ssh/imooc_rsa`
SSH安全端口
1、 如何改变SSH服务端口,修改/etc/ssh/sshd_config
配置就可以了
2、 修改Port对应的值就可以了,如图:
3、 服务重启:service sshd restart