ssh使用

仅学习总结所用

ssh是什么

  • SSH:Secure Shell 安全外壳协议
  • 建立在应用层基础上的安全协议
  • 可靠,专为远程登录回话和其它网络服务提供安全性的协议
  • 有效防止远程管理过程中的信息泄露问题
  • SSH客户端适用于多种平台
  • SSH服务端几乎支持所有UNIX平台

服务器安装SSH服务

# yum install -y openssh-server #安装
# service sshd start #启动ssh服务
# ps -ef | grep ssh  #查看进程是否启动

客户端安装SSH工具

# yum install -y openssh-clients

客户端连接SSH服务

# ssh [email protected]
输入yes  首次登录须确认服务器公钥的指纹,以防止中间人攻击
输入root用户密码

SSH config 详解

# cd ~/.ssh
# vim config
host "服务器别名"
	HostName 服务器IP地址
	User 服务器用户
	Port 22
例:
host "hh"
	HostName 192.168.40.123
	User root
	Port 22
# ssh hh    可快速连接服务器

如果有多个服务器,写多个host即可(一个host一台服务器)
RedHat中没有.ssh目录,需要新建,命令 mkdir -pm 700 .ssh
注:-p 如果目录已存在不会报错 -m指定权限码

SSH 安全免密码登录: ssh key

  • ssh key 使用非对称加密方式生成 公钥 和 密钥
  • 私钥存放在本地 ~/.ssh 目录
  • 公钥可以对外开发,放在服务器的 ~/.ssh.authorized_keys

Windows平台生成ssh key

打开 Xshell 工具→用户密钥管理者→生成→一直下一步即可
1
2
3
4
5
6

Linux平台生成ssh key

# cd ~/.ssh
# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
27:99:17:53:ce:8c:41:04:6b:c3:4f:cc:e9:3e:63:88 [email protected]
The key's randomart image is:
......

注:ssh-keygen -f ~/.ssh/id_rsa -t rsa

ssh选项 参数意义
b 密钥位数,>=512,缺省1024
f 密钥文件名
t 密钥类型,rsa(默认) 或 dsa
i 导入 SSH/SECSH 格式的密钥

服务器配置authorized_keys

# vim ~/.ssh/authorized_keys 
将客户端生成的公钥复制粘贴到authorized_keys

Linux平台可能还需执行命令 ssh-add 私钥文件 才可登录成功

SSH安全端口

  • 端口安全指的是尽量避免服务器的远程连接 端口别不法分子知道,为此而改变默认服务器端口号的操作
  • 修改 /etc/ssh/sshd_config 配置改变SSH服务端口
# vim /etc/ssh/sshd_config
找到 #Port 22 去掉注释#或加一个端口 Port 1234,这样sshd服务就会监听这两个端口

当然,一般都不会修改端口,我们只需要保证密码足够复杂或使用 ssh key 的方式登录,基本上就可以保证安全了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章