I have NGINX configured like this as a reverse proxy for http requests:
server {
listen 80;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:3000;
}
}
Я также хочу прокси ssh (порт 22) запросов. Могу ли я добавить еще один блок сервера, например, в тот же файл конфигурации:
server {
listen 22;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:22;
}
}
Так что конечный результат таков:
server {
listen 80;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:3000;
}
}
server {
listen 22;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:22;
}
}
ТИА,
Оле
nginx
действует какhttp
прокси. Если вы установите для него обратный прокси-порт 22, он не позволит вам передавать трафик SSH - толькоhttp
трафик на сервер SSH, который, очевидно, потерпит неудачу.