[tor-commits] [flashproxy/master] Add GNU/Linux bundle instructions.

dcf at torproject.org dcf at torproject.org
Wed Dec 12 20:27:42 UTC 2012


commit 33f9cf2e358b3aa34a5a56298df2786e9447b53c
Author: David Fifield <david at bamsoftware.com>
Date:   Wed Dec 12 12:24:23 2012 -0800

    Add GNU/Linux bundle instructions.
---
 doc/bundle-gnulinux.txt |  129 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 129 insertions(+), 0 deletions(-)

diff --git a/doc/bundle-gnulinux.txt b/doc/bundle-gnulinux.txt
new file mode 100644
index 0000000..93bdb30
--- /dev/null
+++ b/doc/bundle-gnulinux.txt
@@ -0,0 +1,129 @@
+== Creating a Debian VM
+
+Set up Debian VMs for building bundles. You need one for i386 and one
+for amd64.
+
+http://cdimage.debian.org/debian-cd/6.0.6/i386/iso-cd/debian-6.0.6-i386-netinst.iso
+http://cdimage.debian.org/debian-cd/6.0.6/i386/iso-cd/SHA256SUMS
+http://cdimage.debian.org/debian-cd/6.0.6/i386/iso-cd/SHA256SUMS.sign
+
+http://cdimage.debian.org/debian-cd/6.0.6/amd64/iso-cd/debian-6.0.6-amd64-netinst.iso
+http://cdimage.debian.org/debian-cd/6.0.6/amd64/iso-cd/SHA256SUMS
+http://cdimage.debian.org/debian-cd/6.0.6/amd64/iso-cd/SHA256SUMS.sign
+
+Verify the digests.
+	http://www.debian.org/CD/verify
+If you are using Debian, you can get the signing key by installing the
+debian-keyring package (apt-get install debian-keyring). Add
+	--keyring /usr/share/keyrings/debian-role-keys.gpg
+to the gpg --verify command.
+
+	$ gpg --verify SHA256SUMS.sign SHA256SUMS
+
+	$ sha256sum debian-6.0.6-i386-netinst.iso
+	2b4bcd9e782dfd6a5af9cac3e981be375652b2e5579402405eaf84ac4fe3754f  debian-6.0.6-i386-netinst.iso
+	$ grep netinst SHA256SUMS
+	2b4bcd9e782dfd6a5af9cac3e981be375652b2e5579402405eaf84ac4fe3754f  debian-6.0.6-i386-netinst.iso
+
+	$ sha256sum debian-6.0.6-amd64-netinst.iso
+	41d74134bf967b65d0b61a314ee07dfb539e03502ca69d9d3be8ab3b01da02d2  debian-6.0.6-amd64-netinst.iso
+	$ grep netinst SHA256SUMS
+	41d74134bf967b65d0b61a314ee07dfb539e03502ca69d9d3be8ab3b01da02d2  debian-6.0.6-amd64-netinst.iso
+
+Create the disk images.
+
+	$ qemu-img create -f qcow2 debian-6-i386-bundle.hda 10G
+	$ qemu-img create -f qcow2 debian-6-amd64-bundle.hda 10G
+
+Then boot the VM. You need your normal user to be in the "kvm" group for
+this to work (sudo usermod -a -G kvm user).
+
+	$ kvm -hda debian-6-i386-bundle.hda -cdrom debian-6.0.6-i386-netinst.iso
+	$ kvm -hda debian-6-x86_64-bundle.hda -cdrom debian-6.0.6-i386-netinst.iso
+
+Choose "Install" when it boots. Here are settings:
+
+	English
+	United States
+	American English
+	Hostname: debian
+	Domain name:
+	Root password:
+	User full name: bundle
+	User name: bundle
+	User password: password
+	Any time zone
+	Guided - use entire disk
+	All files in one partition
+	Any mirror
+	popularity-contest: no
+	Software select: uncheck all but "Standard system utilities"
+	GRUB on MBR: yes
+
+Packages to install:
+
+	sudo apt-get update
+	sudo apt-get upgrade
+	sudo apt-get install git make python-m2crypto zip
+
+== Browser bundle
+
+Clone and build the flashproxy source.
+
+	$ git clone https://git.torproject.org/flashproxy.git
+	$ cd flashproxy
+	$ make dist
+
+Within the VM, download the 32-bit or 64-bit obfsproxy bundle from
+https://www.torproject.org/projects/obfsproxy. The instructions below
+are for the 32-bit (i686) version.
+
+https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz
+https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz.asc
+
+https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-linux-x86_64-2.4.6-alpha-2-dev-en-US.tar.gz
+https://www.torproject.org/dist/torbrowser/linux/tor-obfsproxy-browser-gnu-linux-x86_64-2.4.6-alpha-2-dev-en-US.tar.gz.asc
+
+Extract the bundle.
+
+	$ gpg --verify tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz.asc
+	$ tar xzvf tor-obfsproxy-browser-gnu-linux-i686-2.4.6-alpha-2-dev-en-US.tar.gz.asc
+	$ cd tor-browser_en-US
+
+Copy files into the bundle.
+
+	$ cp ~/flashproxy/dist/flashproxy-client-VERSION/{flashproxy-client,flashproxy-reg-email,flashproxy-reg-http} App
+	$ cp -r /usr/lib/pymodules/python2.6/M2Crypto App
+	$ mkdir -p Docs/FlashProxy
+	$ cp ~/flashproxy/dist/flashproxy-client-VERSION/{doc/*,README,LICENSE} Docs/FlashProxy
+
+Make the second half of Data/Tor/torrc look like this (i.e., keep
+the generic configuration, but change the obfsproxy-specific stuff).
+Basically you are concatenating the normal flashproxy-client torrc, but
+changing "./flashproxy-client" to "./App/flashproxy-client".
+
+UseBridges 1
+# The address and port are ignored by the client transport plugin.
+Bridge websocket 0.0.1.0:1
+LearnCircuitBuildTimeout 0
+CircuitBuildTimeout 60
+# Change the second number here (9000) to the number of a port that can
+# receive connections from the Internet (the port for which you
+# configured port forwarding).
+ClientTransportPlugin websocket exec ./App/flashproxy-client --register :0 :9000
+
+Re-zip the bundle. The "alpha" number should be independent of the
+obfsproxy bundle's alpha.
+
+	$ cd ..
+	$ tar czvf tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz tor-browser_en-US
+
+Test running the bundle. Extract into a separate directory, double-click
+the icon to unzip, and run TorBrowser_en-US.app.
+
+	$ mkdir tmp
+	$ cp tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz tmp
+	$ cd tmp
+	$ tar xzvf tor-flashproxy-browser-gnu-linux-i686-2.4.6-alpha-1-dev-en-US.tar.gz
+	$ cd tor-browser_en-US
+	$ ./start-tor-browser





More information about the tor-commits mailing list