网络总结-ssh
ssh简介
SSH(Secure Shell)是一种加密网络协议,用于在不安全的网络中安全地远程登录服务器和执行命令
| 功能 | 说明 |
|---|---|
| 远程登录 | 像操作本地电脑一样控制远程服务器 |
| 加密传输 | 所有数据(密码、命令、文件)全程加密 |
| 端口转发 | 把远程端口映射到本地(如前面讲的 MySQL 隧道) |
| 文件传输 | 配合 SCP/SFTP 传文件 |
| 命令执行 | 批量管理多台服务器 |
ssh使用
远程登录
ssh 用户名@服务器IP
#指定端口(如果不是默认22)
ssh -p 2222 root@123.45.67.89
#使用密钥登录(推荐,更安全)
# -i 指定私钥文件
ssh -i ~/.ssh/id_rsa root@123.45.67.89
端口转发
把远程服务映射到本地端口:
# 格式:ssh -L 本地端口:目标主机:目标端口 跳板机
ssh -L 3307:localhost:3306 root@阿里云IP
# 效果:访问本地 3307 = 访问远程 MySQL 3306
把本地服务暴露给远程访问:
ssh -R 8080:localhost:3000 root@阿里云IP
navicat使用ssh连接mysql
常规,主机配置localhost,端口配置服务器上的mysql用的端口(navigat会随机使用本地的端口进行转发)
用户名,密码是自己服务器上mysql服务设置的用户名和密码

ssh配置:
主机:服务器外网ip,
端口:使用服务器上开放ssh的端口通常是22
用户名密码:服务器登录用户和密码,阿里云服务器就是自己创建实例设置的。


本地程序使用ssh访问服务器上mysql
手动建立SSH隧道(开发调试)
执行
# 本地13306端口映射到远程3306
ssh -N -L 13306:localhost:3306 root@你的阿里云IP -p 22
应用配置
# application.properties 或 application.yml
spring.datasource.url=jdbc:mysql://127.0.0.1:13306/your_database?useSSL=false&serverTimezone=UTC
spring.datasource.username=your_mysql_user
spring.datasource.password=your_mysql_password
自动SSH隧道(推荐 ⭐)

浙公网安备 33010602011771号