Powered by Blogger.

Featured 1

Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

Featured 2

Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

Featured 3

Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

Featured 4

Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

Featured 5

Curabitur et lectus vitae purus tincidunt laoreet sit amet ac ipsum. Proin tincidunt mattis nisi a scelerisque. Aliquam placerat dapibus eros non ullamcorper. Integer interdum ullamcorper venenatis. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.

Wednesday, June 20, 2012

Sniff Wireless Packets with Wireshark


Wireshark (formally Ethereal) is freely-available software that interfaces with an 802.11 client card and passively captures (“sniffs”) 802.11 packets being transmitted within a wireless LAN. 

Installing Wireshark

Wireshark software is easy to install. Simply go tohttp://www.wireshark.org/download.html, download the software for your applicable operating system, and perform the installation. 
A problem you’ll likely run into is that Wireshark may not display any packets after starting a capture using your existing 802.11 client card, especially if running in Windows. The issue is that many of the 802.11 cards don’t support promiscuous mode. In this case, you can try turning promiscuous mode off (from inside Wireshark), but you’ll only see (at best) packets being sent to and from the computer running Wireshark. 
If you have trouble getting Wireshark working with existing client cards, then consider purchasing AirPcap, which is a USB-based 802.11 radio designed to work effectively with Wireshark. It comes with drivers tuned to Wireshark and operates very well. An external antenna is also included with AirPcap, which increases the listening ability of the tool. 

Capturing packets

Before capturing packets, configure Wireshark to interface with an 802.11 client device; otherwise, you’ll get an alert “No capture interface selected!” when starting a packet capture. To select an interface, click the Capture menu, choose Options, and select the appropriate interface. 
Be certain to monitor the correct RF channel. For example, if the wireless network is set to channel 1 for the traffic you’re interested in, then configure Wireshark to monitor channel 1. To do this, click the Capture menu, choose Options, and click Wireless Settings. The menu Advanced Wireless Settings will appear where you can change the channel. 
Consider filtering the packet capture to reduce clutter when analyzing packet traces. For example, you may be troubleshooting a particular client device connecting to the network. In this case, you can set a filter that excludes all packets except those associated with the IP address of the client you’re troubleshooting. To set a filter, click the Capture menu, choose Options, and click Capture Filter. The Wireshark Capture Filter window will appear where you can set various filters. 
To start the packet capturing process, click the Capture menu and choose Start. Wireshark will continue capturing and displaying packets until the capture buffer fills up. The buffer is 1 Mbytes by default. This size is generally good enough, but to change it click the Capture menu, choose Options, and adjust the Buffer size value accordingly. When you’re done capturing packets, click the Capture menu and choose Stop.
Alternatively, you can set the capture run length (in packets or minutes), and the capture will automatically stop when that length has been met. You’ll be prompted to save the capture for later viewing.
The packet capture will display the details of each packet as they were transmitted over the wireless LAN. Figure 1 is a screenshot of a sample packet capture window. The top panel of the window identifies each packet’s source and destination nodes, protocol implemented, and information about each packet. You can select a specific packet to display more details. The one selected in Figure 1, packet 3, is an 802.11 beacon frame. The middle panel displays information about this packet, and you can choose a specific field of the packet (such as Duration field shown in the figure), and the contents of that field are displayed in hex and ASCII format in the bottom panel. As a result, you’re able to analyze the flow and view each field (including data field payloads) of all packets.
Click to view larger image
Figure 1. Wireshark sample capture.

Analysis tips

When troubleshooting a wireless LAN, use Wireshark to capture the packets, and analyze the flow of packets to see if you can spot the problem. A wireless 802.1X client device on the wireless network, for example, may appear connected to the wireless network, but the user is not able to access network resources. After reviewing the packet trace, you may see (by observing the VLAN tagging in the appropriate packets), that the client device is connected to the guest network instead of the coroporate network. This would point to a problem with the client’s 802.1X supplicant.
Wireless packet analysis requires a solid understanding of the 802.11 standard and other protocols. Also, some vendors add proprietary functions that may cause confusion when reviewing the flow of packets. Even though this may make life difficult when troubleshooting, concentrate on studying the packet traces captured by WireShark to learn the details of how wireless networks work. Of course this means that you’ll probably need to dig into the guts of the 802.11 standard (and IETF specifications, which define many of the non-802.11 packets). 
Wireshark offers tools that could help diagnose problems. After capturing packets, click the Analyze menu and choose Options. A window will appear that may indicate errors, which you can investigate as the possible problem. Similarly, under the Statistics menu, there are several statistical functions that may help pin point the problem. 
For more details on using Wireshark, refer to the help function inside Wireshark or review the Wireshark User Guide

Tuesday, June 12, 2012

FreeBSD 9.0 Review


FreeBSD 9.0 [Review]

FreeBSD 9.0 [Review]


What’s New in FreeBSD 9.0

This article provides an overview of some of the new features available in FreeBSD 9.0.
FreeBSD 9.0-RELEASE introduces many new features which benefit FreeBSD users, application developers, and companies that use or base their products on FreeBSD. This article provides an overview of some of these features, including references to additional information. It does not list all of the new features as the FreeBSD 9.0 Detailed Release Notes, available from freebsd.org, contains a summary of all the changes introduced in 9.0.
This article discusses features in the following categories: security, compilers and testing frameworks, filesystems and storage, networking, and miscellaneous.

Security

Capsicum Framework

Capsicum is a lightweight framework which extends a POSIX UNIX kernel to support new security capabilities and adds a userland sandbox API. It was originally developed as a collaboration between the University of Cambridge Computer Laboratory and Google, sponsored by a grant from Google, with FreeBSD as the prototype platform and Chromium as the prototype application. FreeBSD 9.0 provides kernel support as an experimental feature for researchers and early adopters. Application support will follow in a later FreeBSD release and there are plans to provide some initial Capsicum-protected applications in FreeBSD 9.1.
Traditional access control frameworks are designed to protect users from each other through the use of permissions and mandatory access control policies. However, they cannot protect the user when an application, such as a web browser, processes many potentially malicious inputs, such as HTML, scripting languages, and untrusted images. Capsicum provides application developers fine-grained control over files and network sockets to provide privilege separation within an application, with minimal code changes. In other words, it provides application compartmentalization, allowing the application itself to provide many different sandboxes to contain its various elements. As an example, each tab in the Chromium browser has its own sandbox; it is also possible to contain each image in its own sandbox. Creating sandboxes under Capsicum does not require privilege, a key problem with current UNIX sandbox approaches.
As an example, the insecure tcpdump application can be sandboxed with Capsicum in about 10 lines of code and the Chromium web browser can be sandboxed in about 100 lines of code. capsicum(4) provides an overview of the available system calls. More information, including links to technical publications, projects, and a mailing list, can be found at the Capsicum website:http://www.cl.cam.ac.uk/research/security/capsicum/.

Resource Limits

rctl(8) has been added to the system, allowing the user to display the current resource limits and to define what action will occur when a process exceeds it limits. Resource rules can be applied to processes, users, login classes, or jails. The racct API tracks per-process, per-jail, per-loginclass, and per-user resource accounting information. More information about resource limits and rctl can be found athttp://wiki.freebsd.org/Hierarchical_Resource_Limits.

Compilers and Testing Frameworks

LLVM Compiler Infrastructure

LLVM is a BSD-licensed compiler infrastructure with similar capabilities to the GPL3-licensed GCC compiler collection. Clang is the C, C++, Objective C, and Objective C++ front-end to LLVM and provides an alternative programming environment for developers and companies who prefer to use a BSD-licensed toolchain.
In addition to being BSD-licensed, Clang improves developer productivity with significantly improved error messages and a static code analyzer. The compiler is easily extendable to support research on new language features or code instrumentation.
Beginning with FreeBSD 9.0, the FreeBSD kernel and world can be compiled using Clang on most of the supported architectures. Work is ongoing to migrate the ports infrastructure so that any port can also be compiled with Clang. Details about architecture support, link time optimizations, automatic test generation, and links to additional resources can be found at http://wiki.freebsd.org/BuildingFreeBSDWithClang. More information about Clang can be found at http:// clang.llvm.org/ and more information about LLVM is available fromhttp://www.llvm.org/.
A video of Brooks Davis describing how the FreeBSD Project has been actively working to incorporate tools from the LLVM project into the base system is available at YouTube.
You can follow the status of the ports infrastructure with regards to Clang athttp://wiki.freebsd.org/PortsAndClang.

Userland Ttrace

DTrace is a general purpose, lightweight tracing framework that allows administrators, developers, and users to investigate causes of system failure or performance bottlenecks. FreeBSD introduced kernellevel DTrace support in FreeBSD 8.0. The addition of user-level DTrace suppport in 9.0 allows inspection of userland software and its correlation with the kernel, thus providing a much better picture of what exactly is going on behind the scenes.
http://wiki.freebsd.org/DTrace provides examples for using both kernel- and user-level DTrace on FreeBSD, as well as links to other DTrace resources.

Filesystems and Storage

Highly Avaliable Storage (HAST)

The Highly Available Storage framework allows for synchronous, block-level replication of any storage media across several physically separated machines connected by a TCP/IP network. HAST can be understood as a network-based mirror, similar to Linux DRBD. When combined with FreeBSD’s carp(4), HAST makes it possible to build a highly available storage cluster that is resistant to hardware failures.
HAST is file system and application independent and can be combined with any existing GEOM class. In case of a primary node failure, the cluster will automatically switch to the secondary node, check and mount the UFS file system or import the ZFS pool, and continue to work without missing a single bit of data.
The FreeBSD Handbook describes how to configure HAST: http://www.freebsd.org/doc/handbook/disks-hast.html.

SU+J

Journaled softupdates for UFS is now the default filesystem type. It adds a light version of journaling to soft updates as described in this technical paper: http://www.mckusick.com/BSDCan/bsdcan2010.pdf. This significantly reduces boot time after an improper shutdown as a background fsck only needs to be run if there is a corruption of the journal log.

ZFSv28

FreeBSD 9.0 ships with ZFSv28. This version of ZFS adds the following features:
  • deduplication: the process of eliminating duplicate copies of data. When enabled on datasets with duplicate data (for example, virtual images or jails), deduplication saves space and increases performance because less data is written and stored.
  • triple parity RAIDZ: RAIDZ3 offers three parity drives and can operate in degraded mode if up to three drives fail with no restrictions on which drives can fail.
  • zfs diff: command which describes which file system level changes have occurred between two snapshots.
  • zpool split: allows an administrator to extract one disk from each mirrored top-level vdev and use them to create a new pool with an exact copy of the data. The new pool can then be imported on any machine.
  • snapshot holds: permit users or applications to place holds on snapshots to prevent them from being deleted.
  • zpool import -F: allows the administrator to rewind a corrupted pool to an earlier transaction group.
  • the ability to import zpool as read-only.

Generic GEOM I/O Scheduler Framework

This framework supports scheduling disk I/O requests in a device independent manner in order to support multiple disk I/O schedulers to be used on different I/O providers. The framework provides a couple of sample scheduling algorithms that use the framework and implements two forms of anticipatory scheduling.
The ability to create different I/O schedulers allows users to select the I/O scheduler best suited to the task. This can increase responsiveness in certain kinds of I/O workloads, such as a mix of sequential and random I/O.
Examples of how to use the provided schedulers can be found athttp://svnweb.freebsd.org/base/head/sys/geom/sched/README?view=markup&pathrev=206497.

Changes to CAM and AHCI SATA

The new ATA/SATA driver supports AHCI-compliant hardware, port multipliers, and NCQ (tagged queueing) for increased performance on modern SATA drives. Performance has been greatly increased, larger data transfers are supported, and hot-plugging support is much improved. ATA/SATA drives can now can be enumerated and manipulated via camcontrol(8), just like SCSI drives.
The cam(4) subsystem is now modularized and the addition of the ATA/SATA modules allows the CAM subsystem to grow into a framework for arbitrary transports and protocols. It also allows drivers to be written to support discrete hardware without jeopardizing the stability of non-related hardware.

Changes to Event Timer Infrastructure

The new event timers infrastructure provides unified APIs for writing event timer drivers and for choosing the best possible drivers by machine independent code. It provides support for both per-CPU and global timers in periodic and one-shot modes for the i386 and amd64 architectures. To improve performance in virtual machines and power usage in laptops, dynamic tick mode is enabled by default, replacing the periodic hardware timer interrupt ticking with one-shot variable-time ticks. This saves CPU time which would otherwise be spent handling timer interrupts which have no work assigned to them. Tickless mode can be turned off by setting the sysctl value of kern.eventtimer.periodic to 1. Technical details about dynamic tick mode can be found at http://permalink.gmane.org/gmane.os.freebsd.architechture/13276.

Networking

Five New TCP Congestion Control Algorithms

The Centre for Advanced Internet Architectures at Swinburne University of Technology, with the support of the Cisco University Research Program Fund at Community Foundation Silicon Valley and the FreeBSD Foundation, delivered enhancements to FreeBSD’s TCP stack in order to support newer congestion control algorithms. These enhancements included a modular framework for adding future algorithms as well as new modular implementations of the H-TCP, CUBIC, Vegas, HD, and CHD algorithms.
Each congestion control algorithm is implemented as a loadable kernel module. Algorithms can be selected to suit the application/network characteristics and requirements of the host’s installation. The modular framework makes it much easier for developers to implement new algorithms, allowing FreeBSD’s TCP stack to be at the forefront of advancements in this area, while still maintaining the stability of its network stack.
Links to technical papers regarding the framework and algorithms can be found at http://caia.swin.edu.au/freebsd/5cc/.

“IPv6-Only”

FreeBSD has been on the leading edge of IPv6 development ever since FreeBSD 4.0 was released in 2000 with the KAME reference implementation of IPv4/IPv6 networking support. In addition, the FreeBSD Project has been serving releases from IPv6-enabled servers for more than 8 years and FreeBSD’s website, mailing lists, and developer infrastructure have been IPv6-enabled since 2007.
Beginning with FreeBSD 9.0, no-IPv4 snapshots of FreeBSD are available. By completely decoupling IPv6 from IPv4, early adopters and developers can determine if “IPv6-ready” applications really are ready for IPv6 or if bugs were hidden due to the ability to fallback on IPv4. Providing an implementation of an IPv6-only kernel without IPv4 support provides the FreeBSD Project with the ability to test and fix such regressions while encouraging other software developers to improve their code for true IPv6 readiness. More information about no-IPv4 versions of FreeBSD is available from http://www.freebsd.org/ipv6/.
To support IPv6-only, rtadvd(8) and rtsold(8) were completely overhauled to support RFC 6106. rtsold can now update /etc/resolv.conf using the openresolv DNS management framework (http://roy.marples.name/projects/openresolv). An optional kernel module is available to provide Secure Neighbor Discovery protocol (SeND) support; SeND is described in RFC 3971.
Continuing earlier efforts, more global options can now be controlled on a per-interface base, such as the ability to accept router advertisements on one interface while still forwarding. This is needed to effectively run FreeBSD as an IPv6 CPE device. The single /etc/rc.conf option ipv6_ cpe_wanif will correctly set all sysctls and interface options to make creating a CPE as easy as possible.

High Performance SSH (HPN-SSH)

OpenSSH is network performance limited by statically defined internal flow control buffers. These buffers often end up acting as a bottleneck for network throughput of SCP, especially on long and high bandwith network links. HPN-SSH adds support for dynamically adjusted buffers to allow the full use of the bandwidth of long fat pipes such as 100Mbps or greater, trans-oceanic, or trans-continental links. Bandwidth-delay products up to 64MB are also supported. This implementation includes a multithreaded cipher implementation which makes such bandwidth sustainable on the CPU side.
HPN is enabled by default in FreeBSD 9.0‘s sshd and several HPN options have been added to /etc/ssh/sshd_ config. These options, as well as some performance tips, are described inhttp://svnweb.freebsd.org/base/head/crypto/openssh/README.hpn?revision=224638&view=markup.

Miscellaneous

Several other features are also worth mentioning:
  • large-scale SMP support for systems with more than 32 CPUs. Previously, the kernel structures were unable to account for such a large number of CPUs so this method implements extensible CPU accounting. Yahoo! provided systems for testing these changes.
  • improved USB 3.0 support.
  • the default NFS client and nfsd(8) now support NFSv4. Backwards compatibility for older NFS clients is provided with the oldnfs mount type.
  • a new kernel-mode NFS lock manager has been added, improving performance and behavior of NFS locking. A new clear_locks(8) command has been added to clear locks held on behalf of an NFS client.
  • sysinstall has been replaced with bsdinstall. Its features are described at http://wiki.freebsd.org/BSDInstalland its usage is detailed in the FreeBSD Handbook: http://www.freebsd.org/doc/en_US.ISO8859-1/books/hand book/bsdinstall.html.
  • the kernel now supports a new textdump(4) format of kernel dumps. A textdump provides higher-level information via mechanically generated/extracted debugging output, rather than a simple memory dump. This facility can be used to generate brief kernel bug reports that are rich in debugging information, but are not dependent on kernel symbol tables or precisely synchronized source code.
  • FreeBSD 9.0 can be installed on the Sony Playstation 3 using the instructions athttp://people.freebsd.org/~nwhitehorn/ps3/README.
  • call and return rule actions were added to ipfw(8): http://svnweb.freebsd.org/base?view=revision&revisi on=223666.


    Conclusion

    With the release of FreeBSD 9.0, the FreeBSD Project continues to innovate in the areas of security, compilers, filesystems, and networking. You can find out more information about the FreeBSD Project and download FreeBSD 9.0 from freebsd.org.

FreeNAS Overview


FreeNAS Overview


Based on the FreeBSD operating system (a Unix derivative), FreeNAS is a server operating system that offers lots of features, a very small footprint, and a can't-beat-it price (it's free).
Developed by an open-source community, FreeNAS is constantly evolving (with even nightly builds).
FreeNAS is more complicated to install and use than Microsoft's more feature-rich Windows Home Server, but people willing to navigate the sometimes confusing installation routine are rewarded with a robust network-attached storage device.

Choose your hardware

The hardware requirements for FreeNAS are pretty minimal: a motherboard with an x86 processor, 128MB of RAM, 32MB of free drive space (on a bootable drive, a CompactFlash card, or a USB key), a network card, and a BIOS that supports a bootable CD-ROM.
We installed FreeNAS on a tiny Via Artigo PC (a small, impressively power-efficient little system). As networked-attached storage this is an ideal option, as you should consider how many Watts your old PC will draw in 24/7 operation before putting it into service as a NAS device. During FreeNAS installation, you'll also need a monitor, a keyboard, and a CD-ROM drive, but afterward you won't need them for your NAS box.
To begin the process, we downloaded the FreeNAS ISO disc image from freenas.org (version 0.686.3, revision 3011, was the current, most stable one available at the time of this writing). We also downloaded a PDF of the installation guide, which is a must for navigating the somewhat unintuitive process.
We burned the ISO image to a CD, booted our intended NAS box from it, and began the speedy process of installation. We selected the option to create two partitions on our hard drive, one for FreeNAS and one for data. Then we worked our way through a series of tasks that included configuring the network interface and setting the box's IP address. Once those steps were done, we could access the FreeNAS box via a web browser from another PC on my network.
Doing just that, we instructed FreeNAS to mount the second partition on our drive, and then initiated CIFS (Common Internet File System), the protocol that lets Windows PCs connect to the NAS. (For a Linux PC, you would use the NFS - Network File System - protocol). FreeNAS also supports various flavors of RAID, but the development team suggests configuring each disk individually - to ensure they work well - before establishing a RAID setup.
You could stop here and have a very useful device, but FreeNAS has numerous other features worth exploring, including RSYNCD, a network utility for incremental backups over the network; Unison, a file-syncing tool; and FTP, for easy file transfers. Plus, we like the freeware version of SyncBack from 2BrightSparks, a file-backup and synchronisation tool - and it works like a charm with a FreeNAS box.

Monday, June 11, 2012

Ubuntu 12.04 vs. Windows 8


Ubuntu 12.04 vs. Windows 8: Five points of comparison


Windows 8 Metro vs. Ubuntu 12.04 Unity
Windows 8 Metro vs. Ubuntu 12.04 Unity
2012 has already seen a major update of what’s arguably the most important Linux desktop:Ubuntu 12.04 and we’re also seeing the most radical update of Windows with Windows 8 Metrocoming since Windows 95 replaced Windows 3.1. So, which will end up the better for its change?
1. Desktop interface
Ubuntu replaced the popular GNOME 2.x interface with Unity when their developers decided the GNOME 3.x shell wasn’t for them. Some people, like the developers behind Linux Mint, decided to recreate the GNOME 2.x desktop with Cinnamon, but Ubuntu took its own path with Unity.
In Unity’s desktop geography, your most used applications are kept in the left Unity Launcher bar on the left. If you need a particular application or file, you use Unity’s built-in Dash application. Dash is a dual purpose desktop search engine and file and program manager that lives on the top of the Unity menu Launcher.
Its drawback, for Ubuntu power-users, is that it makes it harder to adjust Ubuntu’s settings manually. On the other hand, most users, especially ones who are new to Ubuntu, find it very easy to use. Canonical, the company behind Ubuntu, has made it clear that regardless of whether you use Ubuntu on a desktop, tablet or smartphone the Unity interface is going to be there and it’s going to look the same.
Windows 8 Metro is, if anything, even more of a departure from its predecessor than Unity. At least with Unity, you’re still working with a windows, icons, menus, and pointers (WIMP). Metro has replaced icons with tiles. In addition, by default, you can only work with applications in tiles or in full-screen format. Even such familiar friends as the Start button are missing.
I’ve been working with Metro for months now. After all that time, I still think Windows 8 with Metro will be dead on arrival. Even people who really like Metro say things like “the default presentation is ugly and impersonal.” You can make Metro a lot more usable, but that’s a lot of work to make an interface that’s already ugly prettier and, when you’re done, you’re still left with an interface that doesn’t look or work the way you’ve been using Windows for years.
True, there’s also the Windows 8 Desktop, which still doesn’t have a Start button, but otherwise looks and works like the Windows 7 Aero interface, but it’s a sop to users who don’t want Metro. Sooner rather than later, Microsoft wants everyone on Metro. Of course on some platforms, such as Windows RT, the version of Windows 8 for ARM tablets, Metro is the only choice.
2. Applications
For ages one of the bogus raps against desktop Linux has been that there hasn’t been enough applications for it. That was never true. What Linux didn’t have was the same applications as Windows. To an extent, that’s still true. You can’t still get say Quicken, Outlook, or Photoshop natively on Linux. Of course, with the use of WINE and its commercial big brother Codeweaver’s Crossover, you can run these, and other Windows programs, on top of Linux.
On the other hand, I find some Linux programs, such as Evolution for e-mail, an optional program in Ubuntu, to be far better than their Windows equivalents. In addition, if like more and more people these days the program you really use all the time is a Web browser for everything then Windows has no advantage what-so-ever. Chrome, as my testing has shown time and again, is the best Web browser around runs equally well on Ubuntu and Windows. On both, however, you’ll need to download it. Ubuntu defaults to using Firefox and Windows 8, of course, uses Internet Explorer.
What I find really interesting though is that Microsoft is actually removing functionality from Windows 8. If you want to play DVDs on Windows 8 or use it as a media center, you’ll need to play extra. DVD-players and the power to stream media remain free options in Ubuntu and most other Linux distributions.
3. Security
There has been a lot of talk lately about malware on Macs and it’s true. Macs are vulnerable to security breeches. So, for that matter, are Linux systems. But never, ever forget that for every single Mac virus or worm, there have been thousands of Windows attackers. And, that while Linux can be attacked as well, in practice, it’ more secure than either Mac OS X or Windows and there has never been a significant Linux desktop security worm.
Could it happen? Sure. But, get real, I do run Linux with virus protection, ClamAV, but I’m paranoid, and even so I’ve never seen a single attacker, much less suffered a successful attack, in almost twenty years of using Linux desktops. I wish I could say the same of my Windows systems.
4. Total Cost of Ownership (TCO)
Thanks for Active Directory (AD), it’s long been easy to manage Windows desktops, but then thanks to Lightweight Directory Access Protocol (LDAP) and tools like Landscape, it’s no problem in Ubuntu Linux either. Indeed, since you won’t be able to use AD to manage Windows RT systems, Ubuntu Linux actually provides a more unified management system.
Also, remember what I said about security? You can’t forget anti-virus software or patching Windows for a minute. Linux? Yes, you should use anti-virus programs and patch regularly, but relax, you’re not asking for zero-day doom all the time the way you are with Windows.
Besides, the upfront cost of Linux? Zero. Windows 8? We don’t know yet, but we do know thatWindows 8 PCs will be more expensive than their Windows 7 brothers.
If you’re really serious about cutting your desktop costs, Linux is the way to go.
5. Ease of use
One of the perpetual myths about Linux is how hard it is to use. Oh really? Don’t tell my 80-year old Ubuntu-using mother-in-law or Jason Perlow’s Linux user mom-in-law. They’re both using Ubuntu 12.04 and loving it. Why? Because it’s so easy to use.
Metro, on the other hand… well you know I don’t like it, but I think it’s telling that a Bing search-not Google, Bing-showed 3.32-million results for “Windows 8 Metro sucks.” Many users, including our own Scott Raymond, would like it if Microsoft gave users the option to turn Metro off. That’s not going to happen.
Another plus for Ubuntu is, say you really can’t stand Unity. No problem, you can switch to GNOME 3.x, Cinnamon, KDE, whatever. With Ubuntu while they want you to use Unity, you can choose to use another Linux desktop interface. With Windows 8, you’re stuck with half-Metro and half-desktop.
Put it all together and what do you get? Well, I don’t see Ubuntu overcoming Windows on the desktop. There are just too many Windows users out there. The Linux desktop will never catch up with it.
My question though wasn’t who was going to end up the most popular desktop. It was “which will end up the better for its change?” To that question, there’s only one answer: Ubuntu is the winner. I foresee Windows XP and 7 using sticking to their operating systems and giving Windows 8 the same cold shoulder they gave Vista and Millennium Edition.
That will end up being a real problem for Windows. Back in the day, their iron-grip on the desktop meant they could have flops and still not lose much. Today, though, we’re moving away from the desktop to a world where we do much of our work on the cloud and for that we can use tablets and smartphones as well. And, on tablets and smartphones, Microsoft has yet to show that Windows can play a role. Thanks to Android, we already know Linux is a major player on those, and Ubuntu is already making a desktop/Android smartphone partnership play.
All-in-all, Ubuntu is going to be far more successful for its changes than Microsoft will be with its operating system transformations

Friday, June 8, 2012

Install Skype In Ubuntu


How To Install Skype In Ubuntu Linux

If you want to have conversation with your friends, colleagues, or an employee, Skype is the definitely the best choice. It is a well known Voice Over Internet Protocol (VoIP) application which is free and cross-platform that let you call from one Skype user to another free of cost. Millions of people are using it to make free calls over Internet, send instant messages to friends, and arrange video conferencing with colleagues. It also offers local numbers in some countries, if this service is available in your region then you will also be able to receive calls on your computer, but Skype charges you for such a service.

Skype does not comes as a part of Ubuntu repositories by default. To install it in Ubuntu, you will need to first add its repositories. The steps to install it are as follows:
First of all, go to System > Administration > Software Sources.



lauch-system-sources

Click Third-Party Software tab.


third-party

Now, add Skype repository by clicking Add and typing the following line in APT line box.
http://download.skype.com/linux/repos/debian/stable non-free
Click Add Source.

apt-line-skype
Now, click Reload.
reload-skype

Now in the last step,  run following command in terminal.
sudo apt-get install skype
Once installation is complete, it can be launched from Application > Internet > Skype.

skype-main
That’s  it.

Linux must-have programs list

Linux must-have programs list

  This article proved quite popular with my audience, as it allowed Linux users, new converts in particular, a quick taste of some of the more useful programs available for Linux platforms, across a range of categories.
Since, a lot has changed. Two years is a long time. I have decided to write a new article, from scratch, cataloging an up-to-date collection of must-have programs. To make it even more interesting and useful, I decided to add screenshots wherever I can and link to tutorials explaining the use of these programs. So, not only will you have a nice list compiled, you will also have a preview of what they look like and detailed instructions how to configure them!
Teaser

Changes from the last time

Like the last time, the programs will be sorted by categories. The list won't be too short, but it won't be too long, either. It will contain just enough great stuff to get you started, without being scarce or overwhelming. Considering the fact that almost anything in Linux can be done in fifteen different ways, it is very easy to get lost in the ocean of choices. I will try to maintain a right balance between quality and quantity. Furthermore, it is important to add that I am using or have at least thoroughly tested all and any application listed here. There will be no random entries.

Games

I will not be listing games here. They belong in a separate category, although I will make a few references to several useful game-related articles I've written. If you're interested in learning more about Linux games, I recommend you check the entire section dedicated to this goal, with some 30+ titles reviewed in detail.

Users' recommendations

Likewise, there's a users' recommendation sub-section, so you can send me your suggestions and ideas. In general, the programs must be production-grade, no alphas or betas, easy to install and use, and supported by main distributions. I can't promise to include your choices here, but if I do, you'll be credited with your contribution. So, if you're ready, plunge in and enjoy!

Table of Contents:


  1. Backup software
    1. File backup software
    2. Imaging software
  2. Browsers
  3. Console (Terminal) utilities
  4. Emulators
  5. Encryption
  6. Forensic tools
  7. FTP clients
  8. HTML editing
  9. Image manipulation
    1. Digital cameras
    2. Image suite
    3. Viewers
    4. Web cameras
  10. Instant Messaging & Video conferencing
  11. Live CDs (best choices)
    1. Other useful distributions
  12. Mail clients
  13. Multimedia
    1. CD/DVD burning
    2. Conversion tools - Audio
    3. Conversion tools - DVD & Video
    4. Conversion tools - all categories
    5. Desktop recording & presentation software
    6. Players - Audio
    7. Players - Video
    8. Players - all categories
    9. Subtitles
  14. Office applications
    1. LaTeX-based text processors
    2. Office programs & suites
  15. Partitioning software
  16. Peer-to-Peer sharing
  17. Rescue & Recovery
  18. Security
    1. Firewalls
    2. Network scanners
    3. Rootkit tools
    4. Traffic sniffers
  19. Virtualization
  20. Users' recommendation
  21. Conclusion

Backup software

File backup software

Unison
Unison is a simple, lightweight backup program. It is GUI-driven, which makes it well suitable for new Linux users. It is capable of backing up files and folders to local and remote locations (via SSH) and can run scheduled. To learn more, you may want to read my backup tutorial.
Unison
TimeVault
TimeVault is a snapshot software, which, when activated will create copies of all files and folders that change, retained a detailed archive of all revisions. It is very useful for keeping track of frequent changes to important files. It also guarantees easy recovery of lost data. I have reviewed TimeVault some time ago.
TimeVault

Imaging software

CloneZilla
CloneZilla is a fast, light imaging software that runs from a CD. It is well suited for desktop use, as well as massive deployment in server environment. The program can backup and restore high-quality, high-compression images on a variety of disk, partition and filesystem types, including NTFS.
CloneZilla
Mondo & Mindi
Mondo is a text-driven system backup & restore utility. It is reliable and works well with a range of filesystems. Mondo is the module responsible for creating backup archives. Mindi is the module that packages archives into bootable .isos, so they can be burned and used on any machine. Please refer to this tutorial for more details.
Mondo
PartImage
PartImage is another powerful imaging software. It comes bundled with a large number of system rescue, recovery and backup distributions, like SystemRescueCD. Both CloneZilla and PartImage are featured in my Free imaging software tutorial.
PartImage
Remastersys
Remastersys is very handy application that allows you to clone and backup your Linux distribution, including root, home, other partitions, and all personal, custom configuration to a fully deployable, bootable live CD. Remastersys works for several distributions, including Ubuntu and its derivatives, like Linux Mint and Klikit Linux. You may want to check a detailed usage tutorial.
Remastersys
remaster-on-the-fly
remaster-on-the-fly is a Remastersys-like utility, included with PCLinuxOS 2009. It has the same function like Remastersys.
remaster-on-the-fly

Browsers

Firefox
Firefox is my favorite browser, on all operating systems. It's robust, fast, safe, and most importantly, extensible. With thousands of add-ons available, the basic Firefox functionality can be significantly enhanced.
In fact, addons are what makes Firefox unbeatable when it comes to customization, flexibility and security. Some of the addons I would like to recommend are Noscript, Adblock Plus, Scrapbook, Sage, DownloadHelper, FEBE, CLEO, Zotero, and the very unique Ubiquity.
I have recently reviewed Firefox 3.1, including the many improvements and performance gains it brings. You can also find articles on how to configure Flash in Firefox on Linux platforms, how to install addons, how to backup the profile and extensions, SSL security, as well as some less known stuff like how to open .mht files in Firefox.
Firefox
IEs4Linux
This is an excellent utility that enables you to run Internet Explorer on Linux, using WINE for emulation; it offers Internet Explorers 5 through 7, including Flash, making invalid the excuse of not switching to Linux because your favorite site only loads in Internet Explorer. I have written an extensive tutorial on IEs4Linux.
IEs4Linux
Opera
Opera is another solid browser. It is light, fast and includes built-in mail and a torrent client.
Opera

Console (Terminal) utilities

Guake
Guake is a semi-transparent drop-down console that you can use instead of your standard shell programs by having it always ready at the tip of your fingers. Guake allows you to work faster and with more fun.
Guake
Terminator
Terminator is a console (terminal) utility that allows you to freely manage the layout of several windows inside a single frame, thus maintaining an unobstructed view of all workspaces.
Terminator
Yakuake
Yakuake is a project very similar to Guake, except that is intended for KDE desktops. You can read a review/tutorial on both these, if you're interested.
Yakuake

Emulators

DOSBox
DOSBox is an x86 PC emulator, complete with graphics, sound, mouse, and modem, allowing you to run old DOS-based games that are no longer supported by modern operating systems. It also supports IPX and Serial multiplayer modes. You can read more about DOS games that I have tested in DOSBox in these two articles. Furthermore, you may want to check this extensive Linux games review, for details not only about old games, but also many exciting modern titles.
DOSBox
QEMU
QEMU is a multi-purpose processor emulator, with many additional features. For example, you can use it to create virtual machines or virtual hard disks and convert them.
WINE
WINE is not an emulator, according to the official information. It is a translation layer or a program loader, capable of running Windows applications on Linux and other UNIX-based systems. Nevertheless, I included it here, for the sake of simplicity.
A large number of popular programs, like Microsoft Office, Photoshop, and a slew of games are supported, although success and experience may vary. WINE is also used to run IEs4Linux (see above). An alternative to this approach is virtualization.
WINE

Encryption

TrueCrypt
TrueCrypt is a powerful, cross-platform real-time on-the-fly encryption software. It can be used to create encrypted volumes (file containers), encrypt entire partitions or drives, and even encrypt the entire operating systems (Windows only). TrueCrypt supports standard and hidden volumes and can run from portable devices.
TrueCrypt

Forensic tools

BackTrack
BackTrack is one of the more popular distributions in the white hat circles. It is specially suited for penetration testing, with more than 300 tools available for the task. Like both Helix and Protech, BackTrack is based on Ubuntu. This means good stability and hardware detection and a whole lot of software that can be easily obtained. I have reviewed BackTrack, if you're interested.
BackTrack
Helix
Helix is a dedicated rescue, recovery and incidence handling distribution, with both pure Linux live CD and in-vivo Windows modes. Helix can be used for system diagnostics, profiling, auditing, security checks, data collection, malware analysis, and a range of other Infosec tasks. For more about Helix, please check the extensive tutorial I've written.
Helix

FTP clients

FileZilla
FileZilla is a fast, popular, cross-platform FTP client, although there's also a server module, albeit only for Windows. The program supports FTP, SFTP and FTPS.
FileZilla

HTML editing

Bluefish
Bluefish is a powerful, multi-language editor, intended for use mainly by programmers and web developers. It supports many programming and markup languages and focuses on dynamic and interactive websites. Some of the many features included are unlimited undo/redo, automatic tag closing for HTML and XML documents, syntax highlighting, and numerous external plugins.
Bluefish
KompoZer (formerly Nvu)
KompoZer is a simple, lightweight WYSIWYG HTML editor, a continuation of the Nvu project. KompoZer solves a number of bugs that existed in the previous incarnation and introduces new features. It is very easy to use, even by people who have little knowledge of web languages. For more details, please check my Web development made easy with Bluefish and KompoZer article.
KompoZer

Image manipulation

Digital cameras

gtkam
gtkam is a simple utility that supports numerous devices. In most cases, you should just plug your camera and start using it.
gtkam

Image suite

GIMP
GIMP is a powerful, comprehensive image manipulation program. It offers an extremely wide range of tools for graphic editing of images, although it does require extensive knowledge to be fully utilized.
GIMP

Viewers

F-Spot
F-Spot is a photo management program for Gnome desktops; the program supports numerous file types and allows easy editing and tagging of photos, simplifying cataloging of large batches of images.
F-Spot
GwenView
GwenView is a fast, east-to-use image viewer for KDE desktops, with quick-edit features that make it ideal for lightweight manipulation of images, compared to the more serious GIMP. GwenView also allows you to tag your images, rate them or present them in a slideshow.
GwenView

Web cameras

Cheese Webcam Booth
Cheese is a very simple, powerful web camera utility that should work well and out of the box with most camera devices, including built-in gadgets in laptops. It takes very little effort to setup and configure, it can capture stills and add custom graphics to pictures.
This lovely applications comes bundled with several popular Linux distributions, including Fedora and PCLinuxOS 2009; you can see a demonstration of its use in live CD session in both these tutorials. For a general article on web camera support in Linux, you might be interested in this article; written approx. six months ago.
Cheese

Instant Messaging & Video conferencing

Ekiga (formerly GnomeMeeting)
Ekiga is a Voice over IP (VoIP), IP Telephony, and Video Conferencing application that allows you to make audio and video calls to remote users with SIP or H.323 compatible hardware and software. It supports many audio and video codecs and all modern VoIP features for both SIP and H.323. It also integrates nicely with web camera devices.
Ekiga

Kopete
Kopete is an Instant Messaging program for KDE; Kopete supports AIM, ICQ, MSN, Yahoo, Jabber, IRC, Gadu-Gadu, Novell GroupWise Messenger, and more, as well as message encryption and archiving. Kopete also works with web cameras.
Kopete
Pidgin (formerly GAIM)
Pidgin is a multi-protocol client and will allow you to connect to several networks, without using several (often) bloated and unneeded IM programs. GAIM supports AIM, ICQ, MSN, Yahoo!, IRC, Jabber, Gadu-Gadu, Silc, GroupWise, SameTime, and Zephyr networks.
Pidgin
Skype
Skype is a VoIP, video conferencing and instant messaging software that uses a proprietary format for communication. In return, it offers encryption and good quality of service.
Skype

Live CDs (best choices)

This section is somewhat unusual. First, almost every single Linux distro comes as a bootable live CD. Second, narrowing down the huge list of good possibilities to just a small number of extremely great candidates is difficult. However, I have compiled a short presentation of the five smartest choices for new and intermediate users. These distros are all widely popular, stable, simple and friendly to use, easy to install and run, and offer a good mix of programs, security, updates, and support for their audience.
While this list contains only five entries, you're welcome to check my Software collection for dozens of distribution reviews and tutorials.
The tutorials, including the five distros mentioned below, all cover a broad range of topics in detail, including Wireless, Bluetooth, Compiz, NTFS support, digital and web cameras, multimedia codecs, installation, applications, software management and updates, and much more. You are most encouraged to read them.
Ubuntu
Ubuntu is the de-facto Linux distribution. It is the most popular distribution these last four years and for a good reason. It has massive support and recognition, the forums are rich and lively, the repositories are fast, and the distro itself is stable, secure and very easy to use.
Ubuntu
openSUSE
openSUSE is a mature distribution, supported by Novell. The main highlights of the distro is the range of new and innovative technologies included, centralized management using a powerful control center, support for enterprise solutions, good security, and a very large selection of applications.
openSUSE
Linux Mint
This distribution is based on Ubuntu, with additional support for multimedia codecs and third-party software, which makes it instantly usable out-of-the-box and very appealing for Windows converts.
Linux Mint
PCLinuxOS
PCLinuxOS is a smaller distribution, which nevertheless delivers an almost perfect experience out of the box. The distribution comes with a huge collection of programs and utilities, with a focus on multimedia and audio-video processing.
PCLinuxOS
Knoppix
Knoppix is a pure live CD distribution, however you should definitely consider using it, even if you do not intend to install it. This is because Knoppix offers phenomenal hardware detection and good stability, making it perfect for testing Linux.
Knoppix
As an appetizer, I've created a Compiz wall below, demonstrating 3D effects on each of these distributions:
Image 1 Image 2 Image 3 Image 4 Image 5

Other useful distributions

Some other worthy candidates you may want to consider are Mandriva, Wolvix, SimplyMEPIS, Puppy, and Dreamlinux. The fact they are not listed here does not make them bad; it's simply that with the level of development and forum support that they offer and their general usability mode, they are less suitable than the other candidates.

Mail clients

Thunderbird
Thunderbird is a cross-platform mail and news client developed by the Mozilla Foundation. Thunderbird can manage multiple accounts, including email, newsgroups and RSS feeds, and supports encryption.  Like Firefox, its basic looks, functionality and security can be extended through the use of add-ons.
Thunderbird

Multimedia

CD/DVD burning

Brasero
Brasero is a simple, lightweight CD/DVD burner software for Gnome desktops. It supports all types of media and can create data, audio or video discs, as well as burn images. It can also access files across the network and integrates with the Nautilus file manager, allowing users to drag 'n' drop files into their projects.
Brasero
K3B
K3B is a CD burning utility for KDE, with lots of excellent features, including support for multiple El Torito boot images, audio CD burning, VCD, SVCD, mixed-mode CDs, eMovix CDs, CD copy and CD/DVD ripping, DVD burning, DivX/XviD encoding, blanking of CDR-Ws, writing of ISOs, and a whole lot more.
K3b

Conversion tools - Audio

Audacity
Audacity is a powerful cross-platform sound editor, allowing you to edit and record audio files. It also has a number of plugins available, including LAME mp3 encoder. You can read about Audacity in detail in my Working with multimedia files - Audio tutorial.
Audacity
SoundConverter
This simple utility allows you to convert various audio formats, including MP3, MPC, Ogg, FLAC, WMA, and others. It also supports batch conversion, allowing you to recurse through entire directories of music files. Two similar applications are audioKonverter (mainly for KDE) and audio-convert script, which are covered in this tutorial: Converting music file formats in Linux.
SoundConverter

Conversion tools - DVD & Video

DeVeDe
DeVeDe is a program that can create video DVDs and CDs (VCD, sVCD or CVD), suitable for home players, from any number of video files, in any of the formats supported by MPlayer. You can read more about DeVeDe in yonder tutorial.
DeVeDe
Handbrake
Handbrake is an open-source, cross-platform DVD to MPEG-4 converter. Again, you may want to take a look at my tutorial explaining basic Handbrake usage.
Handbrake

Conversion tools - all categories

ffmpeg
ffmpeg is a Jack o' all Trades conversion utility, available on Linux and other operating systems, capable of converting just about anything to anything. It is a command line utility. You can read more about it in my Working with Multimedia - Flash tutorial.
Among many things that ffmpeg can do is: change bitrate, extract audio from Flash files, convert audio, video and flash formats, record streams, extract streams, and so much more.

Desktop recording & presentation software

recordMyDesktop
recordMyDesktop is a simple, friendly movie recording software, which allows you to easily create high-quality, impressive animations of your desktop. You may want to refer to my detailed tutorial, which also contains a demonstration video.
recordMyDesktop
XVidCap
XVidCap is another interesting, useful desktop recording software. I have used it to create my Compiz demonstration movies when I reviewed Ubuntu 7.10 Gutsy Gibbon. Xvidcap is very similar to recordMyDesktop. You can also read more about how to use the program in my video tutorial.
XVidCap
Wink
Wink is a tutorial and presentation creation software. It allows you to capture screenshots of the actions you take on the desktop, wrap them into an animation and export them as beautiful, classy Flash, PDF or even executable packages. Again, take a look at the detailed tutorial, which also contains a Flash animation demo.
Wink

Players - Audio

Amarok
Amarok is an excellent media player. Although it is mainly intended for KDE desktop, it will work well on other platforms. Some people argue whether the Amarok 2.0 is indeed better than the older Amarok 1.4, so you should check for yourself before deciding. I've listed Amarok as one the recommended applications in my Audio tutorial.
Amarok 1.4
Amarok 2
Rhythmbox
This is another great Linux music player. It works with a range of media formats and will naturally "plug in" to Web radio stations. For example, you can stream music from Last.fm directly into Rhythmbox.
Rhythmbox

Players - Video

MPlayer
MPlayer is a highly versatile media player for Linux, with a very good support of audio and video formats. It will play most MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, and PVA files, supported by many native, XAnim, and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5, and even WMV movies.
MPlayer video

Players - all categories

Miro
Formerly known as Democracy Player (which featured in the last collection), Miro is a good-looking Internet TV platform; the player incorporates video RSS feeds, automatic downloads of videos, BitTorrent, and other exciting features. I've recently tested Miro and found it to be a very useful application.
Miro
Totem
Totem will also play a large assortment of audio and video formats. It can also stream podcasts, including Youtube. Totem is practical, elegant and with lots of great functions, including screenshot capture, slideshow and more.
Totem
VideoLAN (VLC)
VLC is an amazing open-source, cross-platform player, supporting a staggering collection of supported media formats, including Audio, Video and Flash. It should be one of your top choices whenever it comes to playing any sort of media. It is also a region-free DVD player.
VLC

Subtitles

Subtitle Editor
This handy application allows you to add subtitles to movies. It comes included with the latest Slackware-based Wolvix 2 distribution. We will review Subtitle Editor, and several other subtitle editing tools in a dedicated tutorial soon.
Subtitle Editor
Subtitle Editor another

Office applications

LaTeX-based text processors

Kile
Kile is a KDE frontend for the almighty LaTeX text processing language. The application look good and has many useful features. Using LaTeX allows you to create stylish, professional-looking documents in half the time it will take you by conventional means of office utilities. More about Kile here.
Kile
LyX
Alongside Kile, LyX is another tremendous, powerful LaTeX GUI. It allows you to create impressive documents in HTML, PS or PDF format rendered with unbeatably beautiful Computer Modern fonts. LyX is also available for Windows and is a little less difficult to use, in my opinion. I have reviewed LyX not that long ago.
LyX

Office programs & suites

AbiWord
This little word processor is much more powerful than it seems. It is lightweight, fast and has lots of rich features. AbiWord supports numerous file formats, including DOC, DOCX, ODT, and RTF. It is also extensible with plugins. Best of all, AbiWord comes with the ultra-sexy Computer Modern fonts included by default! You may be interested in a review: AbiWord - the underestimated word processor.
AbiWord
OpenOffice
OpenOffice is a powerful office suite, with word, spreadsheet, presentation, drawing, database, and other applications. It runs on Linux, but you can also use it on Windows as a replacing for Microsoft Office. Like Firefox, OpenOffice has extensions, which further enhance its capabilities. I have recently reviewed the latest OpenOffice 3.
OpenOffice

Partitioning software

GParted
GParted is a partitioning software that can be run from live CD or inside installed systems. It can be used to create, resize, move, delete, reformat, or check partitions, including NTFS filesystem. GParted is robust, reliable and safe. I have written a thorough, detailed tutorial about GParted. You're welcome to read it.
GParted

Peer-to-Peer sharing

aMule
aMule is the Linux version of eMule, a highly popular and successful P2P sharing application. While it may not be as fast as most BitTorrent clients, you're more likely to find less popular, older content than anywhere else. Using aMule takes patience, but it is rewarding. aMule uses ED2k servers and the KAD network.
aMule
Vuze
Vuze is the successor to Azureus (a candidate in our last list). It's a BitTorrent client, which allows users to access shared content using a pleasant, interactive interface. In a way, it's similar to Miro. If you're interested, you may want to read this article.
Vuze

Rescue & Recovery

Super Grub Disk
Super Grub Disk is intended to run from a floppy disk or CD and is used for system rescue. Most importantly, it can be used to restore boot loaders, including GRUB, LILO and even Windows boot loader.
Super Grub Disk
SystemRescueCD
This is a live CD specifically geared toward rescue and recovery. The tools package includes some of the most important tools available for Linux user, like GParted, PartImage, Grub, Lilo, sfdisk, TestDisk, and more.
SystemRescueCD
TestDisk
Another extremely important tool is TestDisk. This tool allows to recover lost partitions, make not-bootable disks boot again and restore delete files. It is one of the more effective and powerful utilities on the market. When everything else fails, TestDisk won't. TestDisk is included with the SystemRescueCD.
TestDisk

Security

Firewalls

gufw
gufw is a simple and friendly GUI frontend for the powerful iptables kernel module on Ubuntu distro. It allows an easy management of the inbound and outbound rules using wizard-like graphical menus and is extremely suitable for new or less knowledgeable users. For more details, please take a look at a short tutorial on gufw.
gufw

Network scanners

nmap
nmap is probably the most popular network scanner in the whole world. It was even used with surprising accuracy by Trinity in Matrix against a Windows 2000 in a successful attempt to discover vulnerable services and gain entry. nmap is a command-line utility, but it can be used with a GUI; there are several versions available, including zenmap and others.
Nmap
Zenmap

Rootkit tools

chkrootkit
chkrootkit is a shell script that can check the system binaries for signs of rootkit modification. It is a useful tool in an environment that requires lax firewall rules and multiple installations from external sources.
chkrootkit
rkhunter
Like chkrootkit, rkhunter can be used to check system files for unwanted changes. The two tools complement each other nicely.

Traffic sniffers

Wireshark (formerly Ethereal)
Wireshark is a powerful packet collection and analysis suite, capable of capturing network data on all levels of the TCP/IP stack. It can collect data from Ethernet, IEEE 802.11, PPP, and loopback, supports hundreds of protocols, has rich traffic analysis filters, and can be enhanced with plugins.
Wireshark

Virtualization

Kiwi
Kiwi is a system imaging software for openSUSE. It is a tremendously versatile program that allows you to create custom-build images of openSUSE or other Linux distributions and convert them to virtual machine images, live CD/DVDs, bootable USB images, PXE thin install, OEM preload images, Amazon machines, and even migrate existing physical installations. Kiwi uses the extremely simply Image Creator and Product Creator wizards to manage image building, making it a breeze for just about anyone to roll professional custom distributions in a matter of hours.
Kiwi is a component of the complex, vastly powerful Build Service, which also covers the SUSE Studio. The Kiwi tutorial covers Image Creator; we'll learn about the Product Creator and the Studio in a separate article.
Kiwi
VirtualBox
VirtualBox is a versatile, cross-platform virtualization software that allows you to run multiple guest operating systems on top of your existing desktop. VirtualBox is a must for software enthusiasts, testers and researchers, or people who want to try new operating systems without altering their existing setups. One of the possible uses is to run Windows software that has no alternatives on Linux.
VirtualBox also supports limited 3D acceleration for Windows and recently Linux guests. It also has a Seamless mode, which allows integration on virtual machines onto your desktop. VirtualBox can also run from USB drives, in portable mode and can even be installed in MojoPac. The last two flavors are for Windows, though. VirtualBox comes in two flavors - OSE and PUEL. PUEL is a closed-source version, with USB support. OSE version has less features, but it comes included in most repositories.
VirtualBox
VMware Player
VMware Player is a simple, adequate virtualization solution for desktop use. It is less powerful than either VirtualBox or VMware Server (see below), but it allows home users to test new operating systems or new software for their existing platforms in guest machines, without altering their base setup. It also comes included in numerous repositories, so it is quite easy to install and maintain. You can check a review here.
VMware Server
VMware Server is another powerful desktop virtualization software. Alongside VirtualBox, it makes a great combo for exploring and testing new stuff. VMware Server has many useful features, including the ability to connect to remote machines, a mighty network stack, and offers 3D support for DirectX on Windows guests, complementing OpenGL on VirtualBox.
VMware Server also contains the VMware Player, so you are better off trying the Server in the first place. The Server can also create new virtual machines and supports VMware Tools, which enhance the guest performance significantly.
VMware Server

Users' recommendations

All software listed here has been recommended by fellow forum members, friends and readers via email. While I sincerely believe that these programs are benign and easy to use, I cannot fully guarantee your satisfaction. Nor can I be held reliable for these third-party suggestions, although, I repeat once again, I think they are perfectly safe and quite useful.
Before you send me any suggestions, I must emphasize several things: all emails must be in plain text, no attachments whatsoever, with text links to author's or vendor's website. The suggested software must be free for personal use, production quality, easy to install and use, preferably with .rpm or .deb installers and GUI frontend, open source is a bonus although not a must. Furthermore, you need to tell me why you think the specific product deserves special attention. That's it. Fire away.
I will periodically update the user-recommended list, so hop by once in a while if you're interested.
Users who contributed to this list, they deserve a big thanks:
chronomatic, Ocky, clansman77, Christos, Vadim, Phil, and rbo2 (so far ...).
Here's the list of user recommended software:
KOffice: KOffice is a fully fledged office suite for the KDE, although you can run it on other desktops, and even on Mac and Windows. You have the usual assortment of programs available, including word processor, spreadsheet and presentation modules, plus some extras like flowchart, vector drawing, paint, report and chart generators, formula, database, and project management. We will have a review soon.
digiKam: digiKam is an advanced photo management program. It allows you to view, manage, enhance, edit, and tag your images, and also has an interface to connect to digital cameras. We will have a detailed tutorial soon, focusing on digital camera software.
K9Copy: This is a simple, friendly utility for DVD manupulation. It can rip or burn DVDs, create images, slectively copy audio and subtitle tracks, and preserve original menus.
Kdenlive: Kdenlive is a free open-source video editor for GNU/Linux and FreeBSD, which supports DV and HDV editing, with experimental support for AVCHD.
WinFF: This utility is a frontend for the highly popular and versatile ffmpeg command-line multimedia convertion utility, which we have seen earlier. WinFF allows less knowledgeable users to comfortably lease the full power of ffmpeg.
Transmission: Transmission is a fast, easy, and free multi-platform BitTorrent client.
luckyBackup: This program is frontend for the rsync utility. luckyBackup is intended to be fast and reliable and easy to use. It is also fast, as it performs differential backups. luckyBackup features a simulation mode for testing your backup procedure before running it for real, profiles, scheduling, and more.
Shutter: This is a powerful, versatile screenshot program. Shutter allows you to take screenshots of a specific area, window, whole screen, or even entire web pages. It can also print and delete screenshots and auto-generate thumbnails.
Picasa: Picasa is a friendly, easy to use image management utility. It allows you to manage and edit digital photos, by sorting them into albums, tagging them and performing basic manipulations, like resizing, rotation, cropping, and a range of other visual effects.

Conclusion

That's it. A beautiful, thorough list of essential, must-have programs for Linux. Like I promised, the list is neither too short, nor too long; it has just a few programs in each category, to keep your appetite whetted.
I know I have missed a few programs (deliberately, maybe?), including 3D graphics software like Blender or educational software like Marble and Stellarium, but this is where you step in with your suggestions!
It has taken me almost a week of my time to carefully prepare and write this article. I would truly appreciate a word of feedback, comments, suggestions, and typo and link fixes. And if you do find this list useful, spread the word.
Cheers.