mirror of
https://github.com/joshp23/PEWS.git
synced 2026-01-13 17:08:50 +01:00
2.3 KiB
2.3 KiB
PHP Easy WebFinger Server
Features
Server
- Fully spec compliant webfinger server
- Can accept json objects as requests
- Single or multiple domain use
Server-Manager
- Robust API for adding and removing new hosts and resource accounts
- API for altering resource data (currently add or remove alias, WIP)
- Authoritative and secure
- Easy user management
Quick Start
For single domain use
- Copy
.well-known/webfingerinto the root of your webserver. - Add a new host and account resource file to
./well-known/webfinger/storefolling the example provided and according to Webfinger specs.
For multiple domain use
- Copy this repo as
PEWSto your host server, and make it readable by your webserver. ex:/var/www/PEWS - Add a new host and account resource file to
./well-known/webfinger/storefolling the example provided and according to Webfinger specs. - Copy
PEWS/assets/pews.confto/etc/apache2/conf-available/pews.confand make any changes necessary. - In the terminal issue the command
a2enconf pewsand follow instructions.
Both:
The PEWS section of a PEWS resource file is not a part of the general Webfinger spec, and is therefore not sent out in a general inquiry. This section is used for PEWS-manager authentication and authorization.
- Set
classtouseroradmin. - Set a new password. If set by hand, this password will be hashed when first checked. Alternatively, a user can send a
POSTrequest with the following parameters to set a new password:updatePass:user@domain.compass:pewpewpasswordnewPass:YourFancyNEwPassword
If a user is class:admin then this user can alter the password of other users by adding auth:admin-name@example.com to the above post data, sending their own password as pass:password.
TODO
- Finish api for adding, removing, and editing resource
links - Additional storage options? (sqlite, etc.)
- Manager interface
- Add in server-manager API examples (it's in the code... for now)
- Strictly link-based resource capabilities (only account/user objects work for now)
Tips
Dogecoin: DARhgg9q3HAWYZuN95DKnFonADrSWUimy3
