1
0
Fork 0
file-manager/README.md

80 lines
2.1 KiB
Markdown
Raw Normal View History

2016-10-09 13:55:47 +08:00
# file-manager
A basic node.js file manager.
## Features
2016-10-09 14:10:38 +08:00
- [x] [Simple authentication](https://github.com/ambrosechua/file-manager#key)
2016-10-09 13:55:47 +08:00
- [x] Directory browsing
- [x] Filesize
- [ ] Permissions
- [ ] Owner
- [x] Folder creation
- [x] File uploads
- [ ] Bulk file uploads
2016-11-07 19:13:22 +08:00
- [ ] Large file uploads (sharded)
2016-10-09 13:55:47 +08:00
- [ ] File/folder renaming
- [x] Bulk file/folder selection
- [x] Delete
2016-10-09 14:25:45 +08:00
- [ ] Recursive directory delete
2016-10-09 14:43:58 +08:00
- [ ] Move
- [ ] Copy
2016-10-09 13:55:47 +08:00
- [x] Download archive
- [ ] Change permissions
2018-03-11 08:20:31 +08:00
- [x] Remote commands
2021-05-07 17:56:29 +08:00
2016-10-09 14:10:38 +08:00
## Screenshots
2021-05-07 17:56:29 +08:00
These screenshots are not up-to-date.
2018-03-12 19:17:47 +08:00
2016-10-09 20:29:40 +08:00
![](https://ambrose.makerforce.io/file-manager/login1.png)
2016-10-09 14:10:38 +08:00
![](https://ambrose.makerforce.io/file-manager/upl2.png)
![](https://ambrose.makerforce.io/file-manager/ls1.png)
![](https://ambrose.makerforce.io/file-manager/rm1.png)
![](https://ambrose.makerforce.io/file-manager/dl1.png)
2016-10-09 13:55:47 +08:00
## Usage
2018-03-12 19:17:47 +08:00
```zsh
2021-05-07 17:56:29 +08:00
docker run --rm -it -v $PWD:/data -p 8080:8080 serverwentdown/file-manager
2018-03-12 19:17:47 +08:00
```
OR
2016-10-09 13:55:47 +08:00
```zsh
2021-05-07 17:56:29 +08:00
git clone https://github.com/serverwentdown/file-manager.git ~/path/to/file-manager
2016-10-09 13:55:47 +08:00
node ~/path/to/file-manager/index.js
# or
2021-05-07 17:56:29 +08:00
npm i -g https://github.com/serverwentdown/file-manager.git
2016-10-09 13:55:47 +08:00
file-manager
```
## Options
2021-05-07 17:56:29 +08:00
The following environmental variables can be used to configure `file-manager`.
2016-10-09 13:55:47 +08:00
2021-05-08 01:54:37 +08:00
### SESSION_KEY=
Express session key, generate something random.
2018-03-11 23:15:39 +08:00
### SHELL=
2018-03-11 08:20:31 +08:00
2021-05-07 17:52:28 +08:00
Enable the shell feature, which allows users to start a login shell (when set to `login`) or the binary specified by this option (example: `/bin/bash`). Be careful when enabling this feature as anyone with access to this portal can execute any command on your machine.
2018-03-11 08:20:31 +08:00
2018-03-11 23:36:59 +08:00
### CMD=
2021-05-07 17:56:29 +08:00
Set to something other than "false" to enable running single commands in the default shell, usually `/bin/sh`. Be careful when enabling this feature as anyone with access to this portal can execute any command on your machine.
2018-03-11 23:36:59 +08:00
2016-10-09 14:10:38 +08:00
### PORT=
2016-10-09 13:55:47 +08:00
2016-10-09 14:10:38 +08:00
Listen on $PORT. Default: 8080
2016-10-09 13:55:47 +08:00
2016-10-09 14:10:38 +08:00
### KEY=
2016-10-09 13:55:47 +08:00
2021-05-07 17:56:29 +08:00
Setting this variable enables authentication using TOTP (RFC6238). $KEY is a base32 encoded shared secret. This key is only a weak means of protection as it is succeptable to brute-force. You can generate one from [here](http://www.xanxys.net/totp/) or manually.