62 lines
1.5 KiB
Markdown
62 lines
1.5 KiB
Markdown
---
|
|
title: "ssh 命令"
|
|
date: 2019-10-29T21:10:48+08:00
|
|
lastmod: 2019-10-29T21:10:48+08:00
|
|
keywords: []
|
|
tags: ["ssh", "隧道", "转发"]
|
|
categories: ["shell"]
|
|
---
|
|
|
|
## sshd 常规设置
|
|
- 禁用 root 远程登陆
|
|
```
|
|
PermitRootLogin no
|
|
```
|
|
- 只允许私钥登陆
|
|
```
|
|
PubkeyAuthentication yes
|
|
PasswordAuthentication no
|
|
```
|
|
- 开启端口转发功能
|
|
```
|
|
AllowTcpForwarding yes
|
|
GatewayPorts yes
|
|
X11Forwarding yes
|
|
TCPKeepAlive yes
|
|
ClientAliveInterval 60
|
|
ClientAliveCountMax 3
|
|
```
|
|
|
|
## ssh 参数
|
|
- -f 后台运行
|
|
- -N 仅作端口转发,不执行任何命令
|
|
- -g 绑定端口到全部网卡
|
|
|
|
## 本地定向转发
|
|
- ssh-client 不可达 remote-host, ssh-server 可达 remote-host, ssh 隧道映射 ssh-client 指定端口到 remote-host 指定端口
|
|
- 在 ssh-client 执行
|
|
```bash
|
|
ssh -f -N -g \
|
|
-L [<ssh-client-ip>:]<port on ssh-client>:<remote-host>:<port on remote-host> \
|
|
username@<ssh-server>
|
|
```
|
|
|
|
## 远程定向转发
|
|
- ssh-client 可达 remote-host, ssh-server 不可达 remote-host, ssh 隧道映射 ssh-server 指定端口到 remote-host 指定端口
|
|
- 在 ssh-client 执行
|
|
```bash
|
|
ssh -f -N -g \
|
|
-R [<ssh-server-ip>:]<port on ssh-server>:<remote-host>:<port on remote-host> \
|
|
username@<ssh-server>
|
|
```
|
|
|
|
## 动态转发
|
|
- SOCKS5 代理
|
|
- 在 ssh-client 执行
|
|
```bash
|
|
ssh -f -N -g \
|
|
-D <port on ssh-client> \
|
|
username@<ssh-server>
|
|
```
|
|
|