- Written by d31373
Tor is a great product to help protect your anonymity online. The Tor Project website can be used to gather more information about its use and how it works. Tor does not create complete anonymity but helps by encrypting and then bouncing your traffic around to other Tor relays before it exits an exit-node onto the Internet unencrypted. A benefit of encryption is that it is not normally analyzed by network filters and therefor bypasses.
Proxies are frequently used to mask the real location of a user, log traffic coming in and out of a network, circumvent network filtering, or in some cases to gain access to network resources that are local to the proxy but separated by a firewall or not directly available from a remote location. Traditionally proxy configurations must be set in every software package you with to use the proxy server (in most circumstances this is a web browser usually by means of specified port and/or username and password). Transparent Proxies are proxies that do not need to be configured by an end-user in order to function.
In many cases it is the interest of users to do more than tunnel just web browsing traffic. This guide will assist in configuring Tor as a transparent proxy and configure firewall rules to forward all network traffic regardless of TCP/UDP port through the Tor proxy. By doing this all network traffic leaving your local network will exit encrypted and then sent through the Tor Network.
- Written by d31373
X11 Forwarding through SSH enables a user to run a software application from a remote system using the CPU and memory of the remote system while rendering the GUI of the application locally. This can be very handy if your chosen desktop is Linux, Windows, or Mac (this tutorial will not cover Mac) but either the application is not cross platform or unavailable due to licensing, your local system does not have the local resources to run the chosen application, or you need access to network resources which are local to the target of the SSH connection but not local to the machine you are currently using (i.e. a server behind a firewall/gateway device that has port forwarding for SSH to the remote host to which you are connecting).
There are plenty of remote control software packages which would allow for full desktop rendering. Sometimes it's not necessary to display a full desktop. In a Microsoft Windows environment this would be most closely similar to the technology of RemoteApp.
X11 Forwarding is easy to setup and use. Best of all, X11 Forwarding through SSH is encrypted which means the entire SSH communication is encapsulated in a the SSH Session. This tutorial will assist in configuring the remote server to allow X11 Forwarding through SSH and will provide local commands or software needed to establish connection to the X11 Session through SSH.
- Written by d31373
Creating user accounts on Linux can be easy and was discussed in another tutorial. Many people need to create and remove user accounts but few people actually consider wanting to disable them.
Luckily if you wish to disable a user account, it isn't that hard. This guide will demonstrate how to easily disable or enable an account using a very common command.
- Written by d31373
There are plenty of remote control software solutions for Linux and plenty of them allow for administration of the console session. In Windows we would refer to this as "Session 0" or the native desktop interface that a user would normally need to be physically present at a keyboard and monitor connected to that computer or server in order to see. TeamViewer is another "remote control software". Conveniently the TeamViewer development team has made TeamViewer available for Windows, Mac, and Linux.
This tutorial will assist in configuring your machine to auto-start TeamViewer before a session has been initiated so that the user is able to initiate the login of any user allowed to login to the system.
- Written by d31373
While most operating systems can be used without venturing into command line, Linux and other UNIX-like Operating Systems are frequently used without Graphical User Interfaces (GUI), it is essential that a beginning Linux user or even a seasoned sysadmin be familiar and know how to navigate UNIX-like Operating Systems.
This guide will introduce some of the most basic commands and options needed to navigate the Linux file systems that happen to also be some of the most frequently used commands in UNIX-like operating systems. This is not an all-inclusive list or will discuss all available options, but it should assist in at least getting familiar with commands include ls, cd, pwd, clear, cp, mv, mkdir, rm, rmdir, and touch.
The Linux File System
The Linux file system follows a specific format. The file system starts at what is called the "root" (also coincidentally the word root also refers to the system administrator account from which all permissions in UNIX-like OSs given) represented by a forward slash (
/) and then each subsequent folder is separated by another forward slash (
..(The parent folder to this current folder)
.fileorfoldername(Hidden file or folder)
There are absolute paths and relational paths. Absolute paths start from the root and then list all folders/directories until they reach the folder/directory intended. Relational paths start from the current folder/directory and then move back/up or foward/down the directory tree. Relational paths can also use an environmental variable like the ~ (tilde) to represent the home directory and then up or down the directory tree.
/home/username/.hiddenfolder/(Absolute path to the .hidden folder in the users home directory)
~/.hiddenfolder(Not all UNIX-like OSs require that there be a forward slash (/) after the last foldername)
$HOME/.hiddenfolder(Same as the previous but with a different environmental variable)
~/file(This is a file inside the home directory)
../otheruserhome/file(Assuming you are already in the /home/username/ folder)
Understanding the format for file system representation will help for identifying paths further in the tutorial.
List Files/folders (ls)
This is likely the first command that most users will learn to use as they get introduced to Linux. This command lists the contents of a directory. While the command alone will result in a tab-delimited word-wrapping list of files and folders, some options can be added to include information about the files and folders such as permissions and can even improve formating of output.
ls [options] [path](path is assumed to be the current directory if left blank)
file1 file2 file3 file4 file5
(option -a lists all files)
$ ls -a
. .. .bash_history .bash_logout .bashrc .cache .profile .vim .viminfo
(options -a1 lists all files 1 per line)
$ ls -a1
(options -al will list all files in "long listing format")
$ ls -al
drwxr-xr-x 4 administrator administrator 4096 Mar 17 13:37 .
drwxr-xr-x 5 root root 4096 Mar 5 20:21 ..
-rw------- 1 administrator administrator 2248 Mar 6 11:58 .bash_history
-rw-r--r-- 1 administrator administrator 220 Mar 3 15:53 .bash_logout
-rw-r--r-- 1 administrator administrator 3486 Mar 3 15:53 .bashrc
drwx------ 2 administrator administrator 4096 Mar 3 15:57 .cache
-rw-r--r-- 1 administrator administrator 675 Mar 3 15:53 .profile
drwxr-xr-x 2 root root 4096 Mar 5 21:07 .vim
-rw------- 1 root root 1092 Mar 6 11:11 .viminfo
(adding option -h will change the numbers into "human readable" format)
$ ls -alh
drwxr-xr-x 4 administrator administrator 4.0K Mar 17 13:37 .
drwxr-xr-x 5 root root 4.0K Mar 5 20:21 ..
-rw------- 1 administrator administrator 2.2K Mar 6 11:58 .bash_history
Other frequently used options are"
ls -R (will print the current folder contents and the contents of all subfolders)
ls -S will sort by file size
Change Directory (cd)
Print Working Directory (pwd)
Clear Screen (clear)
Make Directory (mkdir)
Remove Directory (rmdir)
Create file (touch)