Jump to content

How To: Set up & host your own Puush server [Linux]

Jade

Edit May 2017: Puush has since moved to ShareX for their client. If you need a serversided application to host your own, check out UploadX.

 

Tagging @colonel_mortis - OP delivered. Can't do this on shared hosting without a flexible host, but if you're serious about a project, might as well host it yourself. ;)

 

Note: I'll be writing a tutorial for this on more distros (specifically Debian and Cent) and for Windows soon. I meant to write this a while back, but before I could finish it, I had issues with my computer and didn't have a chance to reboot. RIP.

 

 

Ubuntu 12.04

Spoiler

(probably safe to assume it will be the same, or similar, on newer versions.) 

Assuming starting with a clean installation, not required.

 

Installing required softwares; node.js, NPM (nodejs package manager, think nodejs apt-get), nodejs utilities, and mongoDB

 

The following commands installs and sets up all the node.js related resources.


cd ~/apt-get install git-coregit clone https://github.com/joyent/node.gitcd nodegit checkout v0.11.13-release./configuremake -j[insert the number of cores you have here, eg 2 for 2 cores.]sudo make installcd ~/ npm install --global formidablenpm install --global mimenpm install --global mongoose

!Important: If you get an error about not having a compiler and/or openssl:


sudo apt-get install build-essential libssl-dev curl git-core openssl

Time to install MongoDB


sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.listsudo apt-get updatesudo apt-get install -y mongodb-orgsudo service mongod stopsudo service mongod start

We're now setting up the actual 'program' that will host the puush server. Should be done under a user that isn't root for security's sake.


cd ~/mkdir puush (you can actually choose the name if you want)cd puushwget https://github.com/mave/puushproxy/zipball/masterunzip masterrm mazermv -f mave*/* ./rm -r mave*nano app.js

Now we have to set up the config. What we're looking to change is the lines below "//Configuration". You can change these to your liking or individual setup. For example, if I used the domain "linusuploads.com", I would have a config that looks something like this. You'll want to set "registerEnabled" to true, so you can register for yourself. The port is also avoidable if you have your site on a webserver already, which I'd assume you do.

A1nO.png

 

 

An example of a working one (taken from my own live server; salt changed, of course):

nWe7.png

 

Now, to launch the server,


screen node app.js

Hopefully it should now show a black box with a blinking cursor. You can detach from the screen by pressing Ctrl+A+D, if you need to. All is well, and in theory, your server should be working.

 

Registration (applicable for all installations.)

Spoiler

Browse to [iP]:[PortDefinedInAppjs]/register - eg: 127.0.0.1:9123/register

Register with your desired credentials. These will be used in the client.

Follow client setup below, then log into Puush application with credentials you just registered.

 

Client setup:

Spoiler
Spoiler

Close Puush. Also making a backup of puush.ini may be a good idea.

Open %appdata%\puush\puush.ini with your favorite text editor. Add these two lines (or edit, if you have them already.)

example:

V8be.png

 

After that is done, re-open Puush and login to your server. Take a screenshot, and it should work. Yaaaaaay.

 

 

 

Edit: Glad to help if anyone needs it, and if you'd rather use the one I host (i.pb-mc.net), PM me.


ProxyServer = ipProxyPort = server
Link to comment
Share on other sites

Link to post
Share on other sites

Woah, dude...I did not know that was possible!

Is there a way to disable the 30dayNoView = Delete policy?

Great guide :) (Might try that with my nas)

My Rig "Jenova" Ryzen 7 3900X with EK Supremacy Elite, RTX3090 with EK Fullcover Acetal + Nickel & EK Backplate, Corsair AX1200i (sleeved), ASUS X570-E, 4x 8gb Corsair Vengeance Pro RGB 3800MHz 16CL, 500gb Samsung 980 Pro, Raijintek Paean

Link to comment
Share on other sites

Link to post
Share on other sites

Woah, dude...I did not know that was possible!

Is there a way to disable the 30dayNoView = Delete policy?

Great guide :) (Might try that with my nas)

This doesn't have that built in. It won't delete unless you delete it on your own.

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...

Tagging @colonel_mortis - OP delivered. Can't do this on shared hosting without a flexible host, but if you're serious about a project, might as well host it yourself. ;)

 

Note: I'll be writing a tutorial for this on more distros (specifically Debian and Cent) and for Windows soon. I meant to write this a while back, but before I could finish it, I had issues with my computer and didn't have a chance to reboot. RIP.

 

 

Ubuntu 12.04

(probably safe to assume it will be the same, or similar, on newer versions.) 

Assuming starting with a clean installation, not required.

 

Installing required softwares; node.js, NPM (nodejs package manager, think nodejs apt-get), nodejs utilities, and mongoDB

 

The following commands installs and sets up all the node.js related resources.

cd ~/apt-get install git-coregit clone https://github.com/joyent/node.gitcd nodegit checkout v0.11.13-release./configuremake -j[insert the number of cores you have here, eg 2 for 2 cores.]sudo make installcd ~/ npm install --global formidablenpm install --global mimenpm install --global mongoose

!Important: If you get an error about not having a compiler and/or openssl:

sudo apt-get install build-essential libssl-dev curl git-core openssl

Time to install MongoDB

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.listsudo apt-get updatesudo apt-get install -y mongodb-orgsudo service mongod stopsudo service mongod start

We're now setting up the actual 'program' that will host the puush server. Should be done under a user that isn't root for security's sake.

cd ~/mkdir puush (you can actually choose the name if you want)cd puushwget https://github.com/mave/puushproxy/zipball/masterunzip masterrm mazermv -f mave*/* ./rm -r mave*nano app.js

Now we have to set up the config. What we're looking to change is the lines below "//Configuration". You can change these to your liking or individual setup. For example, if I used the domain "linusuploads.com", I would have a config that looks something like this. You'll want to set "registerEnabled" to true, so you can register for yourself. The port is also avoidable if you have your site on a webserver already, which I'd assume you do.

A1nO.png

 

 

An example of a working one (taken from my own live server; salt changed, of course):

nWe7.png

 

Now, to launch the server,

screen node app.js

Hopefully it should now show a black box with a blinking cursor. You can detach from the screen by pressing Ctrl+A+D, if you need to. All is well, and in theory, your server should be working.

 

Registration (applicable for all installations.)

Browse to [iP]:[PortDefinedInAppjs]/register - eg: 127.0.0.1:9123/register

Register with your desired credentials. These will be used in the client.

Follow client setup below, then log into Puush application with credentials you just registered.

 

Client setup:

Close Puush. Also making a backup of puush.ini may be a good idea.

Open %appdata%\puush\puush.ini with your favorite text editor. Add these two lines (or edit, if you have them already.)

example:

V8be.png

 

After that is done, re-open Puush and login to your server. Take a screenshot, and it should work. Yaaaaaay.

 

 

 

Edit: Glad to help if anyone needs it, and if you'd rather use the one I host (i.pb-mc.net), PM me.

I'm a noob where do you recommend for me to start I mean what language to learn what to use....

ProxyServer = ipProxyPort = server

  ﷲ   Muslim Member  ﷲ

KennyS and ScreaM are my role models in CSGO.

CPU: i3-4130 Motherboard: Gigabyte H81M-S2PH RAM: 8GB Kingston hyperx fury HDD: WD caviar black 1TB GPU: MSI 750TI twin frozr II Case: Aerocool Xpredator X3 PSU: Corsair RM650

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×