Set your own "supercomputer cluster" in Ubuntu"

Source: Internet
Author: User
In this article, I will step by step guide you to set up your own "supercomputer cluster", and use JohntheRipper to crack encrypted targets on multiple computers through the tumpicluster platform. Of course, this should all be aimed at academic research. Blessed are friends with quad-core processors on computers.

In this article, I will step by step guide you to set up your own "supercomputer Cluster", through the Ubuntu MPI Cluster platform, with John the Ripper, attackers can crack encrypted targets on multiple computers. Of course, this should all be aimed at academic research.

Blessed are friends with quad-core processors on computers. Although the "john" binary code in the Ubuntu Software Library was originally intended only for single-core running, my settings will try to make it more efficient and less time-consuming on Quad-core computers.

 

The starting point of this article is to make the problem easy to understand, so that ordinary users can easily understand, so I decided not to involve NIS, NFS, BIND or other complex technologies. You do not have to spend a few days reading the textbooks or manuals about Linux system administrators. you can also easily create and use computer cluster systems at home. My application is based on Ubuntu 10.04 Server, because it is the most commonly used Linux tool so far and also a version with a long-term mechanism. it can be applied until 2015.

Preface

The cluster implementation solution mentioned in this article does not pose a threat to the running environment with high practicability and security.


Background

I found that I had to start by cracking an old password that had been forgotten for many years. After collecting several computers at hand, I began to try to make them work together.

The birth of this article is the product of extreme frustration, excessive caffeine, and the entire sleepless night.

Basic requirements

At least two computers running Ubuntu Linux 10.04 and connected to the Internet are required.

John doesn't need much bandwidth.

Server Configuration

Server requirements

A static IP address or IP address reserved in DHCP.

Required software packages

The following software packages are required:

? Libmp ich1.0-dev-MPICH static library and development File

? Libmp ICH-mpd1.0-dev-MPICH static library and development File

? Libmp ICH-shmem1.0-dev-MPICH static library and development File

? Openssh-server-security framework (SSH) tool to secure remote computer access

? Mpich2-implementation of MPI information transfer interface standards

? Mpich2-doc-MPICH2 documentation

? John-powerful password cracking tool

? Build-essentials? Information statistics list of required software packages
Www.linuxidc.com @ server :~ $ Sudo apt-get install libmp ich1.0-dev libmpich-mpd1.0-dev libmpich-shmem1.0-dev mpich2 mpich2-doc john openssh-server build-Essen

 

 

 

Network Configuration

By default, the/etc/hosts file should be as follows:
127.0.0.1 localhost
127.0.1.1 server.linuxidc.com server
# The following content is about hosts using the IPv6 protocol.
Fe00: 0 ip6-localnet
Ip6-mcastprefix ff00: 0
Ff02: 1 ip6-allnodes
Ff02: 2 ip6-allrouters

First, change your IP address to 127.0.1.1.

It should be your FQDN, and Host name of your computer.

Run the following command to find your IP address:
Www.linuxidc.com @ server :~ $ Ifconfig | grep "inet addr"
Inet addr: 10.0.0.1 Bcast: 10.20.255.255 Mask: 255.0.0.0
Inet addr: 127.0.0.1 Mask: 255.0.0.0

After modification, the content in/etc/hosts should be as follows:
127.0.0.1 localhost
10.0.0.1 server.linuxidc.com server
# The following content is about hosts using the IPv6 protocol.
: 1 localhost ip6-localhost ip6-loopback
Fe00: 0 ip6-localnet
Ip6-mcastprefix ff00: 0
Ff02: 1 ip6-allnodes
Ff02: 2 ip6-allrouters

 

 


User configuration

Create a new cluster and add ~ to its path ~ /Bin/code.

I found that it is most convenient to take the same setup steps for 'cluster' on each computer.
Www.linuxidc.com @ server :~ $ Sudo useradd-m-s/bin/bash cluster
Www.linuxidc.com @ server :~ $ Sudo passwd cluster
Enter new UNIX password: (Enter a new UNIX password)
Retype new UNIX password: (enter the new UNIX password again)
Passwd: password updated successfully (password: password changed successfully)
Www.linuxidc.com @ server :~ $ Sudo su? Cluster-c "mkdir ~ /Bin; export PATH = ~ /Bin: $ PATH"

MPICH settings

MPI applications are based on the following configuration files:

? ~ /. Mpd. conf

Note: This file starts with a and must work with chmod 600 to take effect.

This file contains a separate command line "secretword =" in your password. "(Replace , The content must be consistent with all ~ The related content in/. mpd. conf is the same.

? ~ /Mpd. hosts

This file contains a list of all cluster nodes and servers in the format of host: number-of-cpu-cores and fx. If your computer has a four-core processor, set 10.0.0.2 to 10.0.0.2: 4.

If you only want to use the MPICH function and do not care about the number of available processor cores, you can set this value below the actual situation.

For example, if the server has a four-core processor, you may want to set the value to 3 instead of 4, so that the server can simultaneously process other operations.

Do not set the IP address that you must connect to the network to use, such as localhost or 127.0.0.1.

Check the number of processor cores and create a configuration file.
Cluster @ server :~ $ Touch ~ /. Mpd. conf
Cluster @ server :~ $ Chmod 600 ~ /. Mpd. conf
Cluster @ server :~ $ Echo secretword = pass> ~ /. Mpd. conf
Cluster @ server :~ $/Sbin/ifconfig | grep "inet addr"
Cluster @ server :~ $/Sbin/ifconfig | grep "inet addr"
Inet addr: 127.0.0.1 Mask: 255.0.0.0
Cluster @ server :~ $ Cat/proc/cpuinfo | grep processor | wc? L
Cluster @ server :~ $ Echo 10.0.0.1: 1> ~ /Mpd. hosts

After the configuration is complete, run the following command to check whether the operation is normal:

? Mpdboot? Start a cluster

? Mpdtrace-list all nodes of a group

? Mpdallexit? Disable a cluster
Mpdallexit? Shut down the cluster
Cluster @ server :~ $ Mpdtracecluster @ server :~ $ Mpdallexit

If there are no setup errors, all your commands will be correctly executed. If any problem occurs, check your ~ /. Mpd. cof permission settings and/etc/hosts and ~ Whether the/mpd. hosts content is correct.
Install John the Ripper

At www.bindshell.net/tools/johntheripper, you can obtain John the Ripper from the mpipatch.
Cluster @ server :~ $ Mkdir source
Cluster @ server :~ $ Cd source
Cluster @ server :~ /Source $ wget http://www.bindshell.net/tools/johntheripper/john-1.7.2-bp 17-mpi8.tar.gz


Extract and run the make command from the src Directory (if your computer has insufficient resolution, try to use the make | less command ).
Cluster @ server :~ /Source $ tar-zxf john-1.7.2-bp17-mpi8.tar.g
Cluster @ server :~ /Source $ cd john-1.7.2-bp17-mpi8/src/
Cluster @ server :~ /Source/john-1.7.2-bp17-mpi8/src $ make

Now you will see a list of options.

To create John the Ripper, type

Keep the system empty

The required system is as follows:
Linux, x86 with MMX linux-x86-mmx
Linux-x86-sse Linux, x86 with SSE2 (recommended)
Linux-x86-any Linux, x86
Linux-x86-64 Linux, AMD x86-64, 64-bit native w/SSE2 (recommended)
Linux-x86-64-mmx Linux, AMD x86-64, 32-bit with MMX

I found linux-x86-sse2 works best on my Intel-based workstation.
Cluster @ server :~ /Source/john-1.7.2-bp17-mpi8/src $ make clean linux-x86-sse2

If the program compilation process is okay, test whether the program works normally.
Cluster @ server :~ /Source/john-1.7.2-bp17-mpi8/src $ ../run/john-format = DES? Test
Benchmarking: Traditional DES [128/128 BS SSE2]… DONE
Many salts: 1994 K c/s real, 1994 K c/s virtual
Only one salt: 1658 c/s real, 1654 K c/s virtual

Move the new executable file ~ /Bin.

Run John program and make sure it is the _ mpi version.

If it still cannot be correctly executed, it must be because the path you set has a problem.
Cluster @ server :~ /Source/john-1.7.2-bp17-mpi8/src $ john | grep version
John the Ripper password cracker, version 1.7.2 _ bp17_mpi

 

 


Configure additional nodes

Each time a node is added to a cluster, follow these steps:

The IP address of the node is 10.0.0.2.

Preparations

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.