You are here
hello
First of all i would like to thank you, developers of turnkey - its smooth and flexible software ! I use it everyday not only for web development.
I'm building an appliance based on turnkey lamp for automatic video publication via podcast and bittorrent from local network to drupal6 site. Its intended for sharing source material (usually licensed on CC) among artists and journalists. Of course there might be other scenarios of that system (say piracy) but i intend it as a box installed in "free-culture" multimedia studios.
So the plan is:
- file is being copied into a local folder over samba
- drupal picks up the file (via media mover)
- extract metadata
- encode it (ffmpeg)
- make torrent out of the original (basic shell script)
- copy torrent +move original file to local dir for seeding
- send encoded file + torrent to remote drupal site
- publish all on local site (kind of video archive)
- local torrent client picks up media for seeding
- remote site picks up the media, and publish it as both a torrent podcast and "web video"
- remote tracker pickup torrents from feed and starts to track it
- remote client (audience) download media via podcast client (miro) or bittorent (deluge with flexrss)
Right now basic functionality works, files are being encoded, copied, and published, media arrive to clients. Could you tell me how to properly install samba share so that security issues are solved in that scenario:
- Everyone from local net might upload media to shared folder
- Drupal might read and write to uploaded media and its dir
- Torrent client might read, write and delete the seed media
- Only certain users will be able to write via samba to given filder
The next step will be to add other services running on the box, say gupn, www.fireflymediaserver.org/ ect. so samba is critical
Thanks for your help!
Sounds like a great project, count us in!
As to your question, Samba can be a bit of a pain to setup and configure if you're unfamiliar with it. I recommend you start with the following:
In my experience, the Webmin samba module should help you get your bearings and with a bit of experimentation you should be able to get things to work. Unfortunately, I can't give you the exact configuration details because I'm not familiar with all of the components in the setup you describe and exactly how they are supposed to work and interact with one another. I probably wouldn't get it right the first time anyhow, as non-trivial integrations like this usually require some testing and tweaking before they work.However in principle I think I understand what you are trying to accomplish so I will give you a few helpful tips and recommendations:
That means a Samba user it not necessarily a Unix user and vice versa. The passwords are also separate. It's important to keep that in mind so you don't get confused. You can map "Windows" users to "Unix" users though. The Webmin module contains a tool for automatically converting unix users to Windows users, though I'm not sure how useful that will be in your case.
After you get this to work, evaluate your security requirements and decide if you want to do the extra work of having different processes run with different permissions. For a non-security sensitive application such as this you probably don't need to do that.
In the "Security and access control" section you'll be able to configure what hosts are allowed access to the share, whether to allow guest access and what unix user to map to the "guest" account.
In the "edit file permissions" section you'll be able to configure file modes, and whether to force files to be owned by a particular unix user/group and file permissions.
I'm not familiar with media mover so I don't know if it can do that, but you can also accomplish this with a cron job (e.g., runs every 5 minutes, copies files elsewhere, sets permissions and ownership). A Samba disconnect hook/script might also work, but you'll have to experiment with that.
Samba runs as root and has had security problems in the past. Note that recent versions of the LAMP appliance have a Webmin firewall module.
Be sure to keep us updated on your progress with this project. If you walk us through the integration process in enough detail we should be able to rebuild the appliance on top of a current version of TurnKey Core and add it to our project's roster of opensource appliances, ready for Beta testing by the community.
In the best opensource tradition, you'll get credit and bragging rights of course.
The main advantage of doing that, as opposed to going the independent route is that once we add an appliance to our project we assume the burden of maintaining it at the appliance level, which frees you and other developers to focus on developing the subcomponents and integration specs for the next versions. For example, we will occasionally release new versions of TurnKey Core that includes the latest standard features, bugfixes and Ubuntu updates. When we do that we also rebuild all appliances on top of the new Core.
Hope this helps, cheers!
Wow, thats the way to go forward !
How we could collaborate on this
Anyhow, while you're migrating your appliance to 2009.02, try to make detailed technical notes of the integration process - exactly what actions you are taking to turn TurnKey Core into your appliance. The more detailed the better.
It will also be helpful if you provide us with a few tarballs (e.g., of /etc, /var/www, /usr/local), list of packages installed (dpkg -l), SQL dumps of databases and anything else you can think of that would be useful.
We'll use all of that information to reproduce your results and rebuild a new TurnKey appliance on top of Core. Once everything is working we'll put it up on the site for Beta testing and make an announcement.
BTW, joining the turnkey-discuss mailing list might make it easier to collaborate with you on some things as its better suited for long discussions, email makes it easier to attach files plus you don't have to format messages into HTML.
Cheers!
Bits of documentation
https://we.riseup.net/tutturu/fifu-dev
https://we.riseup.net/tutturu/fifu-dev-drupal
sorry for mess and some polish worlds there, is work in progress. any way it will have different torrent component (im planing rtorrent + wtorrent) so those docs are outdated. as fast as i get to some alfa state, im going to publish it here and to my colleges for review.
(The riseup wiki is more like groupware so might seem a bit wired.)
Excellent start
You'll know you've nailed it when your fellow colleagues report that they managed to do that. At that point we'll try to build an alpha/beta appliance and add it to the site to receive wider testing.
Anyhow I think as a supplement to the instructions having tarballs of various relevant directories (/etc /var/www) could be a big help. If you can put a prototype appliance online (e.g., on a file hosting service) in any format (e.g., VirtualBox image) that will be even more helpful as we can study a live appliance interactively to discover additional details as required.
More time
I would like to post it all ready so that we cane work on it together, excuse me that im so sluggish but nova days the developer of tracker module for drupal have got active again and seems like port to drupal 6 have moved forward so im testing it how to add it to the web infrastructure via rss (the current tracker is very bad software).
Yes, the instructions cover only basic steps, setup of media mover i hope to provide as import/export code snippets but just nova days i get to the working prototype state so documentation is outdated. In few days i will provide you with working copy.
cheers !
Add new comment