Friday, November 28, 2008

OSS: A galore of choice or confusion

This thread gave birth to this post.

If you are a simple windows user and if you want to voice chat with a friend of yours, what will you do? Most likely you will download gtalk or YM messenger programs and chat with your friend.

But, what if you are using Linux? Will you use pidgin, kopete, ekiga, gizmo, kphone with your own asterisk/sipx setup, empathy, meebo, imo or the browser avatars of the YM or gtalk? While lot of this won't support voice or video, it is very unlikely that, as a novice user, you know about them.

So, you go and ask in a fsug forum. What do you find? 10 different users of the forum suggest 20 different solutions to you. It is not bad per say. After all, OSS is about choice, isn't it? However, our poor novice user tries these solutions one after the other. He may install a few which may not support some or other feature that he needs or after a successful installation of application (remember he is a novice user, he might have struggled for hours and hours), he will find that OS does support his hardware :(.

Result? Pop in a windows CD and say install and forget about OSS, free and geekdom. After all, windows is free for him, right? ;)

Now I had posted about this years back when there was a flood office suits in Linux which were using incompatible formats to save same kind of files. I don't know whether my arguments are still valid. However, let me start this argument with myself. I am not going into the details. Just adding some points as a starting point.

The arguments in favour of choice:
1. Well, how about same rice and sambar every day, everywhere? (A world with out choice will simply be... boring)

2. Every user has a different need. Different software are needed to satisfy this varying need.

3. It is impossible to combine all the features into one software. Even if we do that, it will lead to monopoly.

4. When a new user is asking for help, you should not try to impose your choice, but allow him to make his choice

5. Even on windows, today there is lot of choice

The arguments against choice
1. Ok, you want seven course dinner with varying dishes every day? Try telling this to your mom
(There are some cases at least, where choice is simply not possible. For instance, try choosing not to breathe or choose ears for breathing and keep yourself alive :) )

2. The classic example. MS Office. For years this has remained as the only office suite of choice. Even after the arrival of SO/OO, MS office is still there at the helm. Its positioned is not even threatened as much as IE is threatened by FF. So, it is possible, at least to a large extend, to satisfy the needs of a large user base with a single software. (Flare me... with the OOXML story..)

3. Monopoly? Tomorrow if Linux becomes the best OS and every one start using it, will you call that monopoly? Remember, it may not knowingly become anti-competitive deliberately. But, when you 'have' the 'best', will there be any desire for better than best?

4. Advice or informed advice?

5. Yes, but you guys are against windows, aren't you? Is it pro-choice or just against monopoly? There is a very subtle difference here!

There is lot more to write. But I have to do some coding now. I can only say BFN, the IM way :)

Thursday, November 27, 2008

FSUGTSR: Free Software User Group Thrissur

http://fsugtsr.org

Just came across this today through Google. They seem to be restarting their operations at Thrissur now. The first meeting is on 4th of next month. I will make an attempt to attend it.

Fedora 10

Just a small note:

Yesterday night I tried the live CD (F10-i686-Live.iso) on my laptop. It had FireFox 1.9. The most attractive stuff was the desktop background and Malayalam i/p methods. I liked swanalekha but I should say that almost all of them were insufficient for me to do anything meaningful. May be they had support, but was not too apparent. The most noticeable stuff was that it was slooooooooow. Could not get my wireless device working (Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI).

(Acer aspire 4310, Intel celeron 1.6 GHz, 1MB cache, 1 GB RAM)

Tuesday, November 18, 2008

What am I doing currently?

I am working on some DSP API and some expect scripts. Will post the details soon. But I also want to seriously start working new hobby project soon. (Well 'hobby' and 'serious' in one sentence does not look nice. Can't help :) )

Wednesday, November 12, 2008

Vsftpd virtual Users

I had to create a few virtual users in vsftpd for our clients. Googled a bit first and then experimented with what I found. A good tutorial can be found at

http://alien2thisworld.net/sitePages/tutorials/vsftpd_virtual_users_setup.html

But, this blocks normal users. I made a few modification to the suggested configuration and enabled the following.

1. Local user login
2. Restricting a all local users to their home directories by default
3. Enabling a set of selected set of local users to see the entire file system

I assume that you already have vsftpd, db4 and pam installed.

Step 1: In the vsftpd configuration file (/etc/vsftpd/vsftpd.conf in FC7), Enable anonymous access, setup chroot parameters and specify a per user configuration directory

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

#MY CHANGES
user_config_dir=/etc/vsftpd/users
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list


Step 2: Create the per user config directory
mkdir /etc/vsftpd/users

Step 3: Create a password file (user1 is the user name and passwd1 is the password)
echo -e "user1\npasswd1">>users.txt

Step 4: Convert the passwd file to db format

rm users.db
db42_load -T -t hash -f users.txt users.db
mv users.txt /root/vsftpd_users.bkup
chmod 600 users.db


Step 5: Edit the pam configuration file for vsftpd to enable checking newly cerated users.db
#%PAM-1.0
session optional pam_keyinit.so force revoke
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/users
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/users

auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include system-auth
account include system-auth
session include system-auth
session required pam_loginuid.so

Step 6: Create the virtual ftp user
adduser -d /var/ftp/clients clients
mkdir -p /var/ftp/clients
#Add directories for virtual users
mkdir -p /var/ftp/clients/user1 /var/ftp/clients/user2
chown -R clients.clients /var/ftp/clients


Step 7: Create the per user configuration in /etc/vsftpd/users/
mkdir /etc/vsftpd/users/
#Create one config file per user. My user configuration looks like this (/etc/vsftpd/users/user1)
user_sub_token=$USER
local_root=/var/ftp/clients/$USER
guest_enable=YES
guest_username=clients
anon_umask=0022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

Step 8: Add the trusted users to /etc/vsftpd/chroot_list. They can see the entire FS.

Step 9: Restart vsftpd and your new set of virtual users are ready.