Difference between revisions of "TODO"

From Georgia Tech Student Wiki
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
  +
[[File:Oscar pawn shop.jpg|thumb]]
  +
{{COI}}
  +
{{Infobox
  +
| name = {{{name|{{PAGENAME}}}}}
  +
| image = {{{image|}}}
  +
| caption1 = {{{caption|}}}
  +
  +
| label1 = Former names
  +
| data1 = {{{former_names|}}}
  +
  +
| header2 = General information
  +
  +
| label3 = Status
  +
| data3 = {{{status|}}}
  +
}}
  +
  +
== Setup automated backups ==
  +
See: https://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki
  +
  +
==== Database backups ====
  +
For example, use automysqlbackup and send the daily/weekly backups to an aws s3 bucket
  +
  +
Maybe follow [https://marcelog.github.io/articles/simple_daily_mysql_backup_to_s3.html this tutorial]or similar. Also, would be nice to keep daily backups for past month, but then only weekly longer than that. Not sure how to do that, but I'm sure it's been done before.
  +
  +
'''Note: the s3 bucket needs to be secure as it contains logins'''{{Citation needed}}
  +
  +
==== Alright, that's done. Now I need to probably test the process of loading from the backups to make sure it is working ====
  +
Also, need to create a backup of the LocalSettings.php configuration file. And the /images directory once ppl start uploading files here...
  +
  +
==== Create repo with full configuration scripts/instructions to restore the wiki from a backup. ====
  +
probably will more the wiki to a cheaper lightsail server soon, since it's using <800Mb of ram, hopefully 1Gb will be enough. and in a year, probably will handoff the server to someone else
  +
  +
==== Page / data backups ====
  +
Another option is to Export or Publish the mediawiki and upload the data to a public git repo.
  +
  +
Ideally, the wiki could also be published to static-pages hosted by GitHub pages
  +
  +
That way, there will always be a read-only copy of all the pages
  +
  +
Looking at using https://www.mediawiki.org/wiki/Parsoid to translate xml dumps to html
  +
  +
Alternatively, https://github.com/openzim/mwoffliner is basically a web-scraper so it's kinda dumb to webscrape your own server but whatever
  +
 
== Make sections for 1st year FAQ ==
 
== Make sections for 1st year FAQ ==
  +
Looks like someone already started: http://gt-student-wiki.org/mediawiki/index.php/First_Year_FAQ
   
 
== Setup email server ==
 
== Setup email server ==
 
Done; gmail account created
 
Done; gmail account created
  +
  +
Update: no longer friends with gmail, aws ses is my new best friend
   
 
== Secure secret keys ==
 
== Secure secret keys ==
 
https://www.mediawiki.org/wiki/Manual:Securing_database_passwords
 
https://www.mediawiki.org/wiki/Manual:Securing_database_passwords
  +
  +
==== Also, configure SSL ====
  +
Should be fairly easy to do (using AWS route 53 rn)
  +
  +
... Ok, this is done. I mostly followed https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-using-lets-encrypt-certificates-with-lamp#link-the-lets-encrypt-certificate-files-in-the-apache-directory-lamp (using the Route 53 hosted zone to add the TXT stuff to) but had to make a few changes to the apache2 configuration. Right now it seems to work, and it auto-redirects http to https. I had to edit the default 000 configuration and add ServerName and ServerAlias, and ran certbot --apache. I really need to put a step-by-step tutorial or something for myself and others so I remember how to do it...
  +
  +
There was also one thing in the config that I forgot about: https://www.mediawiki.org/wiki/Manual:$wgServer, had to change it to https or editing wouldn't work (got REST error)
  +
  +
===== Renewing Let'sEncrypt certificate =====
  +
run: sudo certbot --preferred-challenges dns certonly --manual -d 'gt-student-wiki.org,*.gt-student-wiki.org'
  +
  +
As prompted, update TXT entries in AWS Route 53
  +
  +
You can use a website like [https://mxtoolbox.com/SuperTool.aspx?action=txt%3a_acme-challenge.gt-student-wiki.org&run=toolpage this one]to check if that worked.
  +
  +
Then, reload apache: sudo service apache2 restart ...and then check for a new expiration date for the cert using browser
   
 
== Configure account creation ==
 
== Configure account creation ==
Line 11: Line 73:
 
==== Require GT emails to create an account ====
 
==== Require GT emails to create an account ====
 
Something similar to this: https://www.mediawiki.org/wiki/Topic:Rg8scj0rl4iqulmg
 
Something similar to this: https://www.mediawiki.org/wiki/Topic:Rg8scj0rl4iqulmg
  +
  +
==== also, require account to edit lmfao ====

Latest revision as of 22:34, 31 December 2021

Oscar pawn shop.jpg
General information

Setup automated backups[edit | edit source]

See: https://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki

Database backups[edit | edit source]

For example, use automysqlbackup and send the daily/weekly backups to an aws s3 bucket

Maybe follow this tutorialor similar. Also, would be nice to keep daily backups for past month, but then only weekly longer than that. Not sure how to do that, but I'm sure it's been done before.

Note: the s3 bucket needs to be secure as it contains logins[citation needed]

Alright, that's done. Now I need to probably test the process of loading from the backups to make sure it is working[edit | edit source]

Also, need to create a backup of the LocalSettings.php configuration file. And the /images directory once ppl start uploading files here...

Create repo with full configuration scripts/instructions to restore the wiki from a backup.[edit | edit source]

probably will more the wiki to a cheaper lightsail server soon, since it's using <800Mb of ram, hopefully 1Gb will be enough. and in a year, probably will handoff the server to someone else

Page / data backups[edit | edit source]

Another option is to Export or Publish the mediawiki and upload the data to a public git repo.

Ideally, the wiki could also be published to static-pages hosted by GitHub pages

That way, there will always be a read-only copy of all the pages

Looking at using https://www.mediawiki.org/wiki/Parsoid to translate xml dumps to html

Alternatively, https://github.com/openzim/mwoffliner is basically a web-scraper so it's kinda dumb to webscrape your own server but whatever

Make sections for 1st year FAQ[edit | edit source]

Looks like someone already started: http://gt-student-wiki.org/mediawiki/index.php/First_Year_FAQ

Setup email server[edit | edit source]

Done; gmail account created

Update: no longer friends with gmail, aws ses is my new best friend

Secure secret keys[edit | edit source]

https://www.mediawiki.org/wiki/Manual:Securing_database_passwords

Also, configure SSL[edit | edit source]

Should be fairly easy to do (using AWS route 53 rn)

... Ok, this is done. I mostly followed https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-using-lets-encrypt-certificates-with-lamp#link-the-lets-encrypt-certificate-files-in-the-apache-directory-lamp (using the Route 53 hosted zone to add the TXT stuff to) but had to make a few changes to the apache2 configuration. Right now it seems to work, and it auto-redirects http to https. I had to edit the default 000 configuration and add ServerName and ServerAlias, and ran certbot --apache. I really need to put a step-by-step tutorial or something for myself and others so I remember how to do it...

There was also one thing in the config that I forgot about: https://www.mediawiki.org/wiki/Manual:$wgServer, had to change it to https or editing wouldn't work (got REST error)

Renewing Let'sEncrypt certificate[edit | edit source]

run: sudo certbot --preferred-challenges dns certonly --manual -d 'gt-student-wiki.org,*.gt-student-wiki.org'

As prompted, update TXT entries in AWS Route 53

You can use a website like this oneto check if that worked.

Then, reload apache: sudo service apache2 restart ...and then check for a new expiration date for the cert using browser

Configure account creation[edit | edit source]

Require GT emails to create an account[edit | edit source]

Something similar to this: https://www.mediawiki.org/wiki/Topic:Rg8scj0rl4iqulmg

also, require account to edit lmfao[edit | edit source]