不懂就问:实现这些功能需要学习哪些知识?

2021-08-17 21:16:21 +08:00
 DopaminePlz

非计算机专业科班,学校里学过 C 语言(甚至汇编语言),自学过数据结构(跨专业考研失败,说多了都是泪),工作后在家里折腾过软路由、NAS 进而学习到一些 LINUX (基本命令和基本编程)和计算机网络(路由和交换)方面的知识。现在因工作需要,想开发一个简易的前端和后端程序,实现以下功能:

  1. WEB 界面含登陆界面,用用户名和密码登入;

  2. 登入界面后,出现几个按钮,点击不同的按钮,则执行 LINUX 服务器上的命令并在文本区反馈(比如执行服务器上的脚本,对采集到的数据进行统计,甚至允许开启部分防火墙规则等);

  3. 服务器记录该用户的登陆和执行命令方面的操作(包括用户名、时间和执行动作);

  4. 用户名和密码管理通过 SSH 进入服务器完成( WEB-UI 不需要此项功能)。

请问该学习哪些方面的知识?用那些编程语言或者框架实现好一些?

谢谢!

1500 次点击
所在节点    编程
6 条回复
UnknoownUser
2021-08-17 21:58:12 +08:00
搜索宝塔面板
delectate
2021-08-17 21:58:24 +08:00
你需要“宝塔”。
cmdOptionKana
2021-08-17 22:05:03 +08:00
都是一个普通网站的最基本功能,因此学习建站就可以了。

对于无基础的人来说,一般后端可以学习 Python 的 Flask 。前端只简单学一点 html 就可以,为了好看可以再学一点 CSS 。

关于 Flask,有一份非常优秀,也小有名气的教程: https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

另外,ruby 、Javacript 、Go 、PHP 等各种语言都各自有非常简单的网站框架,也可以挑一个来学。
pod
2021-08-17 22:48:39 +08:00
webshell ?
secondwtq
2021-08-17 22:51:13 +08:00
这个我来做可能会用垃圾佬的思路来做

比如我的服务器的登录功能,目前是使用 nginx 配置 HTTP Basic Authentication + HTTPS 实现的,因为需求简单(只有我一个人用),所以用着感觉还蛮好 :)

执行命令可以用大便系统 nginx-extras 包里面带的 Lua 和 Perl 之类的脚本。或者 Python 标准库 http.server 模块简单糊一个。反正只要提供 HTTP 服务肯定得装 nginx,Python 也肯定有。

前端简单写个 HTML,CSS 都不用,框架也不用。数据 fetch 回来直接 document.getElementById("xxx").innerText =

日志就不太清楚了。

主要是因为懒,懒得写各种 boilerplate,写完了还不一定安全。
DopaminePlz
2021-08-18 08:06:57 +08:00
@secondwtq 突然想起来自己的 VPS 上有用到,用来下载 OCSERV 用户证书

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/796409

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX