Tuesday, June 28, 2011

Reinstating freedom in the Internet

The Internet when conceived was an autonomous conglomeration of end user machines present at the edge of the network. These terminal machines were talking to each other using the infrastructure provided by the Internet Service Providers (ISP's). The only arbitrators in the Internet were the standards organization (like ISO, IEEE), which made the nodes on the Internet to follow universal protocols for intercommunication.
The Internet was simply 'decentralized'.
P2P networks

The Internet has been the grandest manifestation of democracy of the users. It has been free (free as in freedom ) and neutral (as in unbiased) until the late 1990's. Starting  then, the Governments, primarily of the developed countries, in the name of making the Internet safer and secure have tagged with some of the big profit seeking corporations in the world wide web to monitor and influence the way the Internet works. The Internet today is no longer neutral and/or free; From being decentralized it is steadily converging to become a Centralized infrastructure with little or no freedom to the end users.

Centralised Server based networks
The closest to what the Internet should be resembling in the current scenarios is the Peer-to-Peer mode of networking. In this architecture, every end user apart from being a client, is also a server.  This is in contrast with the rest of the services in the Internet where we have the Single Server- Multiple Client model. This model is called the Centralized model, where the online transactions occur between the mandating, giant servers and the helpless end users. This deterioration of the democracy in the Internet reflects a major invasion into the privacy of the users and more importantly infringement of the political freedom of the users as well. The case when the Internet services for Wikileaks was withdrawn by the corporations succumbing to the pressure of their Government is a direct manifestation of the impact that Centralization of the Internet can have.

As users, the point we need to be concerned about is the safety of the data we entrust to the biggies in the Internet. Every time we are online, there is almost a certain chance that either we are being spied, or our data is being used for increasing the business on the Internet.

One prospective solution to reinstate freedom in the Internet is, by the decentralization of servers, and giving the full control back to users. Decentralized Internet will comprise of not few servers where all the users will have to mortgage their data, but when fully decentralized, every user will end up having a small, cell phone charger sized Open Plug servers like the FreedomBox.
The FreedomBox again has been an initiative instigated by Prof.Eben Moglen of the Software Freedom Law Centre and now the Debian Community of Free Software developers have kick started the project to set the Internet free.

To visualize it better, consider the current model of online Social Networking: About 500 million users on one famous Centralized Social Networking site have handed over all of their data to a single bunch of servers, after endorsing heavily privacy invading terms and conditions. Statuses, chats, pictures and the private interaction between users on the network is all under the scanner of on single Corporation.

To tackle such hegemony in the Internet, a new model of social networking is being tested. Distributed or Federated Social Networks, like Diaspora will decentralize the way online social networking will happen. Instead of all the users handing over their data to a server farm belonging to a single corporation, users can now put their data on smaller, independent servers like campus servers (called Pods) and get networked with other pods. In this way, the centralization can be reduced from a single hegemonic server cluster to decentralized, independent servers. The best part of this decentralization is that this decentralization can trickle down to the last of the users.



Using the Plug servers such as FreedomBox, individual users can run their own Diaspora Pods, with all the data residing in their personal mobile servers, which will communicate with other pods. Users will have total control over the data, and the extent of its availability to other users and even to the Internet.

This model of decentralization using FreedomBox like open plug servers will not only increase the privacy and security in social networking, but in near future will be applicable to mails, voice-over-internet phone calls, making the Internet neutral and democratic, reinstating freedom back to the users.

PS: The initial writeup for the recently published article in The Hindu , which was later optimized to concentrate mainly on Diaspora*.
http://www.thehindu.com/news/cities/Bangalore/article2132236.ece



Tuesday, June 21, 2011

Swecha Free Software Workshop

Swecha does it all in the big way.

 The ongoing 15 days Free Software Summer Camp in Hyderabad is by itself the first of its kind in India. The workshop is targeting students pursuing technical education and to enable them with the gamut of Free Software technologies which are in use in Industry.  Swecha team claims to have a modest number of about 600  students gathered for the 15 days Free Software Workshop happening in CBIT-MGIT, Hyderabad.

Swecha is the senior counterpart of the Free Software Movement - Karnataka (FSMK); both being part of the Free Software Movement India(FSMI), have everything but the regional geography in common.

Free Software in the air by alone was sufficient to draw someone like me into the ambiance of the workshop, but adding to it was Swecha as the host. I did pull one of our budding activists along this time, and I'm hoping he did get motivated further to carry on his work. The warm and amicable team with my fellow activists there is always an occasion not to be missed. And it proved right yet again. By the way, the experience of organizing an event of this scale is by itself a huge learning experience.












 Comprehensive theory sessions to start the day, followed by marathon lab sessions in about 20 labs all running Debian has been the routine everyday. Although the network has been something less than an adequate one, machines have been arranged for evey participant to work on.

The fifteen days are divided into five three-day modules to enhance the focussed exposure students would be getting on the technologies.
  • Making of a Computer Suite  
  • Programming using Software Carpentry aspects 
  • Mobile Computing 
  • Multimedia 
  • Content Management Systems      
Each of the days, after the regular sessions and labs,some important complimentary sessions have been organised to enable students on the non-technical aspects of the gamut of technologies they were handling in the evening. Sessions on the philosophy, policies, licensing and social ramifications of the technology are being held on a daily basis, which are equally important when compared to the technologies.

 









On these lines, I handled a session on Distributed Social Networking, taking Diaspora as an example. The importance of Internet to become decentralised and for the users to have control over their data in the current context of Internet technologies were touched upon in my talk. The overall reception of the talk was good, and there was some good interaction about the same all through the day.
 

Apart from serious tech sessions, labs and talks, a bunch of team-events and culturals are also in the line up for the days to come. There have already been a couple of team events which got all the participants enthusiastically engaged.

My stay at the camp was for less than 48 hours, nonetheless was a very good experience. There are better and more exciting sessions,talks and interactions in the days to come. Speakers of the likes of Prabhir Purkayastha, P Sainath will be participating in the camp, and I so did not want to miss them.

Now that I'm back in Bangalore, FSMK is working on a scaled down version of a workshop of this kind. Will keep you all posted about the updates from FSMK.

Monday, June 20, 2011

Running SMTP server on two ports concurrently in Ubuntu

The Simple Mail Transfer Protocol(SMTP) server in Ubuntu is available via the package "Postfix", which is the most widely used SMTP server in UNIX-like systems including AIX, BSD, HP-UX, Linux, MacOS X, Solaris, and more environments.

SMTP as a service runs on Port 25.


fossphosis@fossphosis:~$ cat /etc/services | grep smtp
smtp         25/tcp          mail
ssmtp        465/tcp        smtps        # SMTP over SSL

To get Postfix running on Ubuntu, all one needs to do is apt-get the package.

fossphosis@fossphosis:~$ sudo apt-get install postfix

Once, Postfix is installed, in case of configurations apart from the default ones, reconfigure the settings by running the dpkg-reconfigure, to set the parameters matching the network requirements.

fossphosis@fossphosis:~$ sudo dpkg-reconfigure postfix

I wanted my SMTP instance available on the local network for all the machines on the 192.168.1.X subnet. To accomplish this the only change, or the appendage to the existing default configuration is to add the subnet in the entry, as shown below:
Adding 192.168.1.0/24 subnet for reachability of the SMTP server on my network
In case of applications, like the one I was faced with, where i wanted the SMTP to run on an alternate port other than Port 25  parallely, all you need to do is add the port entry in the following postfix configuration file.

Edit /etc/postfix/master.cf,

I wanted SMTP to run on port 2525, so added the following entry just, as shown below:

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
2525      inet  n       -       -       -       -       smtpd

Once editing is done, restart the Postfix server

fossphosis@fossphosis:~$ sudo service postfix restart
[sudo] password for fossphosis:
 * Stopping Postfix Mail Transport Agent postfix           [ OK ]
 * Starting Postfix Mail Transport Agent postfix           [ OK ]

To verify if SMTP is running on both the ports,perform a basic telnet to the ports.
Testing on port 25
fossphosis@fossphosis:~$ telnet localhost 25
Trying ::1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 Comp ESMTP Postfix (Ubuntu)


Testing on port 2525

fossphosis@fossphosis:~$ telnet localhost 2525
Trying ::1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 Comp ESMTP Postfix (Ubuntu)

And, that's it!