| «« Information Glut | Target 1.0 »» |
|
About
I'm Ryan Lowe, a Software Engineering graduate living in Ottawa, Canada. I like agile software development and Ruby on Rails.
I write this blog in Canadian English and don't use a spell checker. Typos happen.
Projects
» Full-time Ruby on Rails freelancer
» Full-time with Rails since May 2005 » Former committer for RadRails (now Aptana) » I also have a few Rails side-projects in development: 1. wheretogoinTO.com Toronto nightlife 2. Hey Heads Up! TODO list and sharing 3. Layered Genealogy family history research 4. foos for foosball scoring 5. fanconcert for music fans (on hold) Hiring Rails developers? I can telecommute by the hour from Ottawa, Canada »» Email: rails AT ryanlowe DOT ca
BulletBlog
Now hosted on Hey! Heads Up -- check it out!
Syndication
Pings
Recent
Derek Lowe's (Ryan's older brother) words at Ryan's funeral
blog@ryanlowe.ca no more Forging Email Headers: Good, Bad or Ugly? Sarcastic Dictionary (Part 1 of Many) Tags Hierarchies Twisting Rails is Risky Business Risky Business? My Take on Early Alphas Whoa, it's August 2007 Closing Comments A Postscript to "Growth at the grassroots" »» All Blog Posts
Linkage
del.icio.us/ryanlowe
technorati/ryanlowe.ca/blog Aurora Roy Jim Andrew Trasker Travis Kibbee Karen Dr. Unk Ayana Van Bloggers Joel Spolsky Robert Scoble Tim Bray Dave Winer Raymond Chen James Robertson Ruby/Rails Bloggers rubyonrails.org weblog David Heinemeier Hansson Dave Thomas James Duncan Davidson Mike Clark Jamis Buck Signal vs. Noise Tobias Luetke Amy Hoy: (24)slash7 Jeremy Voorhis Eclipse Bloggers Planet Eclipse EclipseZone Luis de la Rosa Eclipse Foundation Kim Horne Billy Biggs Ian Skerrett Mike Milinkovich Bjorn Freeman-Benson Denis Roy
Archives
|
Setting up Secure Remote Access to a CVS Repository
I'm republishing this edited version because it changed a lot. :) The CVS setup for AudioMan has to be used in two ways. The first is secure access for committers that will make changes. The second is open access to everyone else that wants to download the code and submit patches to AudioMan's Bugzilla system. This post describes how I set up the secure access so far and will change as I get feedback from people. RedHat 8 installed CVS for me but I still have to initialize it. Here are the steps I've followed using su to gain root priveleges. 1. Make /usr/local/cvsroot/ directory. cvs -d /usr/local/cvsroot init 3. Make a Linux group to manage access to the repository. Only users in that group will be able to commit to the repository. groupadd cvs 4. Add users to the cvs group by editing /etc/group. Find the line starting with cvs and add users to the end to give them cvs access. The anonymous user is for read-only access later. cvs:*:105:rlowe,anonymous 5. Change the group of the cvsroot directory: chgrp -R cvs /usr/local/cvsroot 6. Change the permissions on the cvsroot directory so that only the group can edit files. This gives read, write and execute permission to the user (root) and group (cvs) and no access to others. chmod -R ug+rwx /usr/local/cvsroot 7. Change the permission on the cvsroot directory so that new files added to it are assigned to the group cvs by default (thanks Kris): chmod -R g+s /usr/local/cvsroot 8. If you plan on checking in binary files, you should add them to the CVSROOT/cvswrappers file. The types I added were gif, jpg, ico, mp3, jar, dll. For example, here's an entry for JAR files: *.jar -k 'b' For a more complete list, go here. 9. Set the CVSROOT environment variable to simplify commands: export CVSROOT=/usr/local/cvsroot 10. Go into your project directory and add the your project to the cvs repository: cvs import -m "initial" AudioMan rlowe start Where rlowe is the vendor name and start is the initial release name. You can give users secure remote access to a CVS repository with SSH (secure shell). RedHat 8 installed an SSH daemon, I just had to make sure it was running. The easiest way to do that is in the GUI (Bluecurve). Open the menu on the toolbar and go to Server Settings --> Services. From that interface you can start, stop and restart daemons on your machine. Start the sshd daemon and check the checkbox if you want it to start when the machine boots. References: Last updated January 03, 2004 at 01:35 AM EST Comments
Nice job Ryan! Thanks. » Posted by: Willie Wheeler at February 2, 2004 04:00 PMSomething that I would add to this is if you are having trouble, exiting the shell and coming back clears things up. I got stuck on step 10: the dir had the group permissions set, I was in that group, but it didn't want to work. That and I would say to add step 9 into your /etc/profile file so that all users have it (If you meant this, I didn't understand it at first) » Posted by: Jim at February 3, 2004 02:05 PMHey, this came in handy again. :) » Posted by: Ryan Lowe at September 24, 2004 05:02 PMAs for my case, any account in the cvs group can destroy the $CVSROOT directory... The accounts in the cvs group can rename or modify files in the $CVSROOT directory. » Posted by: Zhiqiang Ye at October 25, 2004 02:52 AM |