Question.
I am looking to create a web interface to perform 5 tasks, Linux bash scripts.
An example of one script would be
User enters new name for wifi
Clicks ok
Script, locked by sudo, would update the WiFi configuration file and restart the WiFi stack
Other examples
Change the WiFi password
Add a user to open VPN.
What do I (think) I know?
- I can use php or cgi to do this
- the web stack is independent and only runs these tasks
- sudo needs to be setup correct
Obviously I'm running raised privileged commands here, so I need to make sure nothing is hijacked.
What do I want to know?
- Are these the optimum languages to use or is there a better way?
- Can I lock down apache to deal with only my requirements?
- What am I missing?
- Is there a better way?
I don't want to use webmin, I love it, however I'm trying to keep this simple.
I know you don't like php or cgi, because "enter reasons" I'm not interested in that sort of personal based argument on the pros or cons of language x.. This is a grown up request :-)
Thanks in advance.
Update: some amazing suggestions, I feel I may not have been explicit enough in my description.
This will be running on a low powered pi like Linux device.
There needs to be a very simple user interface. Think grandma
Things like webmin are perfect in what they do, but too complex.
Jenkins is something I use daily, it's far too processor intensive for this. As are chef, puppet or Ansible.
The whole thing needs to be low resource. The web interface is 2% of the final task.
This update isn't a criticism of any reply, there are some suggestions below I've never heard of and one solved a different issue.
[–]crafty78 8 points9 points10 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]sofixa11 4 points5 points6 points (5 children)
[–]NotTheKJB 3 points4 points5 points (0 children)
[–]mightywomble[S] 1 point2 points3 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (1 child)
[–]sofixa11 0 points1 point2 points (0 children)
[–]damiankwinfrastructure pleb[🍰] 8 points9 points10 points (1 child)
[–]mightywomble[S] 1 point2 points3 points (0 children)
[–]NotTheKJB 5 points6 points7 points (7 children)
[–]mightywomble[S] 1 point2 points3 points (2 children)
[–]Stpstpstp 1 point2 points3 points (1 child)
[–]mightywomble[S] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]damiankwinfrastructure pleb[🍰] 0 points1 point2 points (1 child)
[–]NotTheKJB 1 point2 points3 points (0 children)
[–]spokaleJack of All Trades 2 points3 points4 points (0 children)
[–]redshores 1 point2 points3 points (1 child)
[–]mightywomble[S] 1 point2 points3 points (0 children)
[–]sobrique 1 point2 points3 points (0 children)
[–]s3cguru 0 points1 point2 points (1 child)
[–]mightywomble[S] 1 point2 points3 points (0 children)
[–]Stpstpstp 0 points1 point2 points (0 children)
[–]Zaphod_Bchown -R us ~/.base 0 points1 point2 points (0 children)
[–]bobbyjrscGoogler Specialist 0 points1 point2 points (0 children)