V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
DopaminePlz
V2EX  ›  编程

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

  •  
  •   DopaminePlz · 2021-08-17 21:16:21 +08:00 · 1668 次点击
    这是一个创建于 1198 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

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

    谢谢!

    6 条回复    2021-08-18 08:06:57 +08:00
    UnknoownUser
        1
    UnknoownUser  
       2021-08-17 21:58:12 +08:00 via Android
    搜索宝塔面板
    delectate
        2
    delectate  
       2021-08-17 21:58:24 +08:00
    你需要“宝塔”。
    cmdOptionKana
        3
    cmdOptionKana  
       2021-08-17 22:05:03 +08:00   ❤️ 1
    都是一个普通网站的最基本功能,因此学习建站就可以了。

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

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

    另外,ruby 、Javacript 、Go 、PHP 等各种语言都各自有非常简单的网站框架,也可以挑一个来学。
    pod
        4
    pod  
       2021-08-17 22:48:39 +08:00
    webshell ?
    secondwtq
        5
    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
        6
    DopaminePlz  
    OP
       2021-08-18 08:06:57 +08:00 via Android
    @secondwtq 突然想起来自己的 VPS 上有用到,用来下载 OCSERV 用户证书
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1053 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:10 · PVG 06:10 · LAX 14:10 · JFK 17:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.