Opened 2 years ago

Closed 2 years ago

Last modified 22 months ago

#22923 closed defect (fixed)

Create a Virtual Machine for Tor Browser Crash Dumps

Reported by: tom Owned by: tpa
Priority: Medium Milestone:
Component: Internal Services/Tor Sysadmin Team Version:
Severity: Normal Keywords:
Cc: gk, nmago, yawning Actual Points:
Parent ID: #23624 Points:
Reviewer: Sponsor:

Description

As the initial experiment for the Crash Reporter GSOC, we intend to run (at least) two instances of https://github.com/electron/mini-breakpad-server

  • One instance will be a modified version that only ACCEPTS submissions.
  • One instance will be a modified version that only lets you VIEW submissions.

We'll run both on .onions, but the latter will be set up with Hidden Service authentication.

We may want to run two more (to segregate Alpha from Release) but I don't think we'll need to.

As far as packages needed on the machine: it's TBD. 'npm' and 'grunt' look like certainties though.

And as far as resources: I don't think we'll need much except a healthy amount of disk space. This is an in-progress project so hopefully we can grow this space and capacity if needed.

Submission will be over .onion so direct external internet access it not necessary.

I don't think we need our own VM if it's easy to have us share, but please assume that several members of the Tor Browser machine will need access to login and fiddle with the server/machine.

For now, please set it up with me having access, but down the road we'll probably revoke my access and move it over to GeKo.

Child Tickets

Change History (12)

comment:1 Changed 2 years ago by weasel

Can you get more specific on what you mean with 'healthy amount of disk space'?

comment:2 in reply to:  1 Changed 2 years ago by tom

Replying to weasel:

Can you get more specific on what you mean with 'healthy amount of disk space'?

Ah, 100GB, if that won't be difficult? If it is, can we shoot for at least 30GB free after the OS takes it's share?

comment:3 Changed 2 years ago by weasel

Thanks. I'll see what I can come up with.

comment:4 Changed 2 years ago by yawning

Cc: yawning added

comment:5 Changed 2 years ago by weasel

This would be easier with a bit more extra HW. I asked execdir if we can order some.

comment:6 Changed 2 years ago by nmago

Mini-Breakpad-Service (MBS) test install instructions

#NodeJS install
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential

#Grunt install:
sudo npm --global install grunt

#Clone repository
git clone https://github.com/nmago/mini-breakpad-server

#MBS-View Service
cd mbs-view/
npm install .
grunt
cd ../
#test start (on 1127 port by default)
sudo node mbs-view/lib/app.js

#MBS-Submit Service
cd mbs-submit/
npm install .
cd ../
#test start (on 1127 port by default)
sudo node mbs-submit/lib/app.js

Last edited 2 years ago by nmago (previous) (diff)

comment:7 in reply to:  6 Changed 2 years ago by weasel

Replying to nmago:

Mini-Breakpad-Service (MBS) test install instructions

#NodeJS install
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

I'm at a loss for words. Are you fscking kidding!?

comment:8 Changed 2 years ago by weasel

Tom, is this VM still something you want, even if we won't run insane things as root?

comment:9 in reply to:  8 Changed 2 years ago by tom

Replying to weasel:

Tom, is this VM still something you want, even if we won't run insane things as root?

Yes =) From irc:

https://packages.debian.org/stretch/nodejs <- 4.8.2 - I believe this version should include npm with it

So let's try:

sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
sudo npm --global install grunt

And hopefully those will succeed?

If they do I will hopefully be able to do the rest for a regular user account.

comment:10 Changed 2 years ago by tom

weasel> do we have a role account for this already? if not, what should be its name and who should be in the group that can access it?

tbb-crashes

me, geko, arthur, mcs, brade

comment:11 Changed 2 years ago by weasel

Resolution: fixed
Status: newclosed

We now have a crispum.torproject.org, a tb-crashes role account that the relevant people should have access to.

Please install service related things into /srv/tb-crashes.torproject.org, not the user's home directory.

If you need more services on the host, please file new tickets.

comment:12 Changed 22 months ago by tom

Parent ID: #23624
Note: See TracTickets for help on using tickets.