teleport服务 Nginx配置

Teleport服务端默认WEB服务端口为7190,可以在TP服务器前面架设一个Nginx:

  • 可以将端口映射为默认端口,更好记;
  • 可以配置为使用域名方式访问你的TP服务;
  • 可以配置成HTTPS方式访问,更安全。

普通配置

从TP v3.x开始,部分页面使用了websocket 进行实时通讯,因此,Nginx的配置文件需要做一些额外调整,下面是一个示例(以Nginx服务与TP服务在同一台主机上为例):

复制代码
[root@server nginx]# cat nginx.conf

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;
server {
    listen 80;
    server_name www.your-teleport-domain.com;
    location / {
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_pass       http://127.0.0.1:7190;

      # 以下三行是websocket需要的
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }
  }

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}
复制代码

如果Nginx与TP服务不在同一台主机上,那么还要记得在Nginx服务所在主机上为TP服务器开启相应的端口转发,默认的需要52089/52189/52389三个端口,具体的端口值,请检查你的TP服务核心配置文件 core.ini 。

配置为HTTPS

为提升安全性,可以将 nginx 配置为 https 方式访问。要这样做,需要将 nginx 的配置文件做如下修改:

复制代码
# ...其他内容...

  server {
    listen 443;
    server_name www.your-teleport-domain.com;

    ssl on;
    ssl_certificate_key path/to/your/server-private-key.pem
    ssl_certificate path/to/your/server-cert.pem

    location / {
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_pass       http://127.0.0.1:7190;

      # 以下三行是websocket需要的
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }
  }

# ...其他内容...
复制代码

其中,ssl_certificate_key 和 ssl_certificate 是你的服务端证书的私钥和服务端证书.

 

posted @   星火撩原  阅读(159)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2020-11-22 Nginx虚拟主机
2020-11-22 Nginx访问控制
2020-11-22 Nginx配置下载站点
2020-11-22 Nginx日志配置及状态监控
2020-11-22 Nginx配置解析
点击右上角即可分享
微信分享提示

目录导航