基于Flask的简易webtelnet和webssh

2020-02-25 作者:

Chinese version README of the Github repo – flask-remote-terminal.

简而言之,一台具备多用户支持的,仅限使用telnet/ssh,访问远程固定地址的,web终端。

演示截图:


有啥稀罕的

  • 只可访问远程地址,非本机终端
  • 目前仅限telnet(支持十几年前老设备用)和ssh访问,代码中也可增加其他协议,但始终受控
  • 仅限访问固定远端地址(IP/域名),代码config可配,一旦服务运行后不可更改
  • 服务端session存储pid和fd等,用于多用户支持


参考项目


需求如此“扭曲”,何解

通过web终端去管理一台特定的中转机,其多数端口是(在特定时间段内)代理到真正需要管理的目标机。具体需求如下:

  • 同多数web terminal一样,浏览器即开即用,免安装
  • 只允许访问特定地址(中转机),避免被抓肉鸡
  • 只允许使用telnet和ssh进行连接,不可自选其他客户端命令,在此基础上允许用户自行输入用户名和端口号
  • 只用于远程连接,在用户exit退出终端后,也无法回到shell操作提供该服务的server
完整阅读本篇»

OpenWRT配置FRPC实现公网访问

2020-02-23 作者:

This post talks about running frpc (Github), the client of my favorite reverse proxy toolset, on an OpenWrt powered router, to expose one or more specific port of an local/intranet ip address onto public access.

在目前主流网络运营商大多不提供公网IP的大环境下,FRP套装搭配一台低配云主机,是最普遍也相对稳定的ddns替代方案。

长期以来,笔者使用的都是x64(amd64 on Centos/Ubuntu)和arm(树莓派)版本的frp release,启动配置上都是走的linux systemd。今天算另辟蹊径,要介绍一下在一台EX6200v2刷机的OpenWRT上跑frpc,接通阿里云的frps,来实现公网访问内网。

【注】其中frps也即服务端的配置,有两种情况:

  1. 如果同样是在openWRT上运行frps,那安装方法跟接下来的frpc是一回事。
  2. 如果跟我一样,云端走frps做转发用,张大妈上几乎每个博主都截图讲一遍,我是用CentOS命令行操作的,不在此赘述了,有需要联系。

 

在openwrt上运行frpc,要用到的资源来自于这两个Github工程,openwrt-frpluci-app-frpc

第一步,先搞清路由器的CPU架构。

本文用到的是NETGEAR EX6200v2,经查板载高通IPQ4018,4核Cortex A7 Neon。如果是用Intel处理器的软路由,那就更好办,直接省去查cpu的这一步。

当然,从ssh登进路由器确认,也是一种办法。

第二步,查看路由器的存储空间是否够安装FRPC,然后去github release下载相应的ipk安装包。

从返回结果看,可用空间还有7.3M,frpc安装包尺寸3.6M,还是可以安装。前提是ipk要放在临时分区也就是/tmp(猜测这货是内存虚拟硬盘吧)中。

完整阅读本篇»

METAR和TAF解读练习

2019-12-15 作者:

As a flight simmer, interpretation of METAR and TAF info is a must. When I get used to read those codes, it seems delivering pretty much weather information precisely, efficiently and up to date (than a normal forecast app).

今晚预告有雪,这会儿周日半下午,拿附近机场的METAR和TAF练习一下。

先看METAR。

ZBAD是新的大兴机场,该条信息发布UTC时间15日07点整,按北京时间就是12月15号15点。风向50°(东北风)风力1 m/s大致应该是2 knots吧,可以说基本没风。能见度8000米,NSC是No Significant Cloud(没啥云)。当前温度3℃,露点-6℃,修正海压1026 hPa也即高度表拨正值30.30 英寸汞柱。

再看TAF。

AMD是Amended(经过修正的),发布于UTC时间15日03点41分,转换北京时间11点41分;预报区间是15号14点到16号14点。风向转到150(东南风),风速加大到4 m/s,倒也不算大。能见度8000米不变,云依然没多少。最高温度5℃将在15号14点,最低温度-6℃发生在16号早上5点。

关键在BECMG段,意思是Becoming(将变为),晚上23点到24点,能见度下降到2700米,小雪、薄雾。在16号凌晨4点~早8点,偶发能见度下降到800米,有中雪和冻雾。

下边的ZBAA就是常来常往的首都机场,跟大兴预报内容很接近,除了具体的温度和风向数值等。

完整阅读本篇»

手机练习待命航线

2019-12-05 作者:

A simple tutorial on how to practice the holding pattern of IFR, with VOR/ADF based holding fix, and calm/strong side wind. Name of the app is “IFR Simulator”, I’m not the author but it does bring me pretty much fun than the social apps or tiktok. It looks simple though, but it requires some calculation on the wind correction, which is always nice by letting me focus on setting the value of heading bug.

↑ 英文版视频教程

最近遇到一个蛮好玩的App,叫做IFR Simulator。

很简单,就是一个姿态仪+航向表;它可以让我练习等待航线、截获航向以及在机场上空晃悠,试一下进近之类。

没有虚拟座舱,没有地景,没有飞机涂装,只有可以随机生成的pattern track、holding fix和wind,加上那俩indicators —— 由于风力的存在,让这玩意变得不那么枯燥,某种意义上还有一点点烧脑。

好玩,推荐之。

完整阅读本篇»

Garmin G1000观察自动ILS进近

2019-11-05 作者:

Well, the ILS approach with autopilot, which means an auto approach on a C172 (in MS Flight Simulator) with many old analog gauges, is not a big deal. The problem is, my manual approach is still kinda bad, lacking of practice within only 1 month learning of flight simulation, I suppose.

So I decide to view the entire approach done by the autopilot, which can be illustrated clearly on the G1000 PFD and MFD, hmm… pls take this as an excuse for me to throw the stress to the AP, anyway it’s a nice chance to learn about the operation of G1000 on runway approach, and big satisfaction to my curiosity as a firmware/software engineer.

还是接着昨天的飞行(雾中飞越英吉利海峡)记录来看,从DOVER VOR station沿航向175向南飞,脱离伦敦空域,进入巴黎空域。

接触到LFAT机场外沿E级管制边界时,ATC要求转向225平行于边界向西南平飞,可以理解为五边的base leg,基线边(或称底边)。

到适当位置,ATC再次通知转向165,用于拦截LFAT Runway 14的ILS进近定位信标(localizer),此后空管不再给任何指示,直至完成降落,或请求复飞。

现在看下ILS approach chart,Runway 14 ILS频率是110.15,course是136°,初始进近高度2000 ft,滑行道(glide slope)开始于6.2 nm,ILS进近决断高度270 ft。

那么我们开工,首先需要确认几个ILS进近参数的设定(下图)。说白了即使纯手动做ILS进近,这几处也非设不可。

  • NAV1导航频率110.15,确认。
  • 跑道14的对应course 136°,确认。
  • HSI上的VOR1变成LOC1(我用半透明紫色标注),说明已经捕捉到localizer信号;没有捕捉到也没关系,如果在伦敦EGMH刚起飞,不要指望那么远就能接收到巴黎LFAT的ILS信号。
  • 捕捉到ILS信号的另外一个标志是HSI左侧出现滑行道指示(我用半透明红色标注),以及绿色小方片。

PS:刚与Lille approach建立联系,NAV1就能收到ILS信号,其实也算覆盖范围很广了。

PPS:不要觉得截图仪表灰蒙蒙的,我在FSX设置了2D仪表半透明,这样方便观察外部,也算弥补开模拟器时视野不好的问题。

完整阅读本篇»

IFR飞越英吉利海峡 | IFR Across Channel

2019-11-04 作者:

This post here talks about the IFR flight (simulation) from Manston Airport (EGMH), East of London to Le Touque Paris-Plage Airport (LFAT) in Le Touque, France, especially, the ILS approach on a Cessna C-172-SP Skyhawk equipped with Garmin G1000. The weather was foggy.

简单来讲,在MS FSX中,使用IFR(仪表飞行规则)从伦敦东部的Manston机场,在迷雾中穿越英吉利海峡,飞抵法国海滨小城勒图凯。

练习的主要内容是:

  • ATC通信,包含滑行,起飞,离场,频率切换,进场,降落等。
  • 相对于老旧模拟仪表,在装备G1000的C172上使用ILS进近。尤其是如何在PFD屏幕上使用HSI的course needle和VSI的绿色小方片来确保自己呆在滑行道中,直至降落。

先大致看整体飞行过程,地图是上为北(磁北)。

  • 从EGMH Runway 28起飞,西向爬升。
  • ATC通知左后转向,面向DOVER(地图上DVR)VOR站点飞去;这里可以一边听ATC指挥,一边把DOVER的频率设到NAV2做参考,不强求正好穿越VOR,以ATC指挥为准。
  • 进入海峡上空,保持ATC要求的航向175°。
  • 经历过几次handoff和频率切换,与LFAT approach建立联系。
  • 使用ILS频率110.15完成LFAT进近,降落到Runway 14。

完整阅读本篇»