Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
LUKSUS
Shell

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
LUKSUS
LUKSUS.checks
LUKSUS.functions
LUKSUS.logo
LUKSUS.variables
LUKSUS.welcome
README

README

########################################################
#################### LUKSUS ############################
############ EASY DRIVE ENCRYPTION SCRIPT ##############
########################################################
########################################################

# SYNOPSIS
#
# Create an encrypted filesystem on a hardrive or other storage
# media. LUKSUS also supports creating an encrypted filecontainer.

# BACKGROUND
#
# I wrote this script to make it quick and easy
# to created encrypted volumes.
# The purpose of this script is to provide an easy eay to encrypt
# storage media in Linux, such as hardrives, usb sticks,
# sd cards or external hardrives.
# Why? Because doing all these tasks manually is 
# time consuming and can be a little tricky.

# This is a wrapper script for cryptsetup, shred and mkfs
# I like doing it this way instead of using luksformat
# which I didn't know existed at the time when I began
# creating LUKSUS.

# HOW IT WORKS
#
# The script works like this:
# all existing data will be brutally removed beyond reconstruction (forensically)
# then it writes random data to the drive
# then creates a keyfile
# then encrypts the drive using the keyfile stored in /keys
# a LUKS header backup will also be placed in /keys
# please remember to take care of your /keys
# if you loose your /keys, the keyfile to your encrypted drive, then
# the data will be impossible to retrieve.

# DISCLAIMER 
#
# I, the author, take no responsibility if a black hole appears,
# and implodes your house, your town and the entire planet earth as an
# effect of using this script.
# Understand that the author takes no responsibility, and cannot
# be held liable if you, the user, use the script to destroy the
# files/contents of your storage media.
# As a consequence it is the sole responsibility of the user
# to use this software correctly. The author cannot be held
# liable for any damages, as of this disclaimer.
# END DISCLAIMER


# USAGE
#
# ./LUKSUS DEVICENAME NICKNAME-of-luks-container
#
# EXAMPLE:
# ./LUKSUS /dev/sdb1 rambo1
#
# if running remotely, for instance via ssh, it makes a lot of sense
# to run this in screen, just append screen to the command
#
# EXAMPLE:
# screen ./LUKSUS /dev/sdb1 rambo

# It is also possible to create an encrypted file container
# The usage then changes a little as the script then needs to
# know which loopbackdevice you wish to use, where the encrypted
# filecontainer should be located, and how large it should be.
# Please note that the size must have M for megabytes or G for
# gigabyte appended to the size.

# The following will use loop0, and place the encrypted container in
# /usr and will have 1000MiB as space.
#
# ./LUKSUS /dev/loop0 mysecretlibrary /usr/thelibrary.encrypted 1000M
#
# For DragonFlyBSD
# ./LUKSUS /dev/vn0 mysecretlibrary /usr/thelibrary.encrypted 1000M


# REQUIREMENTS:
# an empty hardrive or storage media
# knowledge about which device the hardrive or storage
# blkid will provide this
# media resides on
# cryptsetup
# dialog
# shred

# this script works on Linux
# but should also work on DragonflyBSD. Testing needed.

# Luksus is released under GNU GPLv2 License
# located here: http://www.gnu.org/licenses/gpl-2.0.html
#
# I would love to hear from you regarding feedback, ways you use it, 
# suggestions, tips and so on. 
# My email is: thomas.frivold.at.gmail.com

########################################################
#################### TODO ##############################
########################################################

# + Add TrueCrypt support
# + Fully working DragonFlyBSD support
# + add a nice dialog interface * or remove it *
# + must be escapable - ie. have a CANCEL button within 
#   the dialog windows * or remove dialog *
# + better support command line options in a nice POSIX manner
# + add the commandline option to use with or without dialog *or forget it*

########################################################
#################### CHANGELOG #########################
########################################################

# v0.8.9 05.03.2013 13:28
# +DragonFlyBSD support is now fully supported.
# Cryptsetup / dm-luks spends a lot of time with its operation, 
# 10-15 minutes, but apart from that, LUKSUS runs on DragonFlyBSD.
# Functions need more attention and cleanup, but everything is working
# quite well now.


# v0.8.5 26.02.2013 12:00
# Cleanup before public release on Freecode.com!
# Hello World

# v0.8.4 26.02.2013 10:00
# Added a routine to check the screensize, and display
# a logo according to which screensize the user has.
# Cleaned up a little bit here and there

# v0.8.3 25.02.2013 20:00
# Tweaks 

# v0.8.2 25.02.2013 15:00
# Added a welcome sequence
# Added a logo! (yay)

# v0.8.1 25.02.2013 14:30
# Added missing apostrophe

# v0.8 24.02.2013 10:15
# + Improved code quality, implemented simple modularization.



# v0.7 02.01.2013 13:20
# + Added support for loopback devices 
#   creating an encrypted container is now possible with LUKSUS
# + Began work on implementing functions throughout
# + Added some conditional checks with regex

# v0.6 02.01.2013 01:35
# + improved documentation (README file)
# + Added some nice sanity checks
# + Further cleaned up the code
# + Added a definite CTRL+C to cancel now
# + Added dependency checks

# v0.5 25.04.2012 12:30
# + initial public release
#   live on github here: https://github.com/thomasfrivold/luksus
#   (yay)
# + massive cleanup
# + added a conditional check to verify that user is root
# + added a conditional check in the middle of the procedure to
#   verify that a LUKS container has been created on the device
#   good for integrity 
# + added a routine to hackup the luks header with a conditional
#   check as suggested by the luks FAQ
#   here: http://code.google.com/p/cryptsetup/wiki/FrequentlyAskedQuestions#6._Backup_and_Data_Recovery
# + fixed mounting procedure
#   changed name of the script from cryptcreate to luksus
#   the luksus name is more a pun than a functional name
#   luksus means luxury in Norwegian and coincidentally it includes the main technology
#   used to encrypt hardrives in Linux since the 2.6 kernels - Linux Unified Key Setup
#   on a celebratory note, the script can now be considered stable. Even though
#   it lacks some niceties such as a fully fledged ncurses dialog menu system
#   which is aimed at version v1.0
#   - Thomas Frivold 

# v0.4
# + cleaned up script
# + added required runtime arguments

# v0.3
# + added command line input

# v0.2
# + cosmetic fixes
# + did some nice thinking about dialog

# v0.1 16.04.2012 GMT+1 1320
# + initial release

Something went wrong with that request. Please try again.