Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Internal Instant Messaging Client / Server Combo?

Posted by kdawson on Mon Apr 06, 2009 10:23 PM
from the this-message-is-being-recorded dept.
strongmantim writes "I manage an internal help desk (25-30 people) for a medium-large company in the healthcare industry. We're looking for an internal, secure, FOSS (if possible) instant messaging / presence awareness client and server combo. Transmission of Protected Health Information is a sensitive issue, so the server has to be able to log any conversations that occur. It is preferred that the client not support outside protocols such as AIM, MSN, Yahoo, etc.; if it does, I will have to promulgate and enforce yet one more policy that my techs not connect to them. All of the computers that will connect run Windows XP. The system should be scalable up to ~100 people (in case we decide to include our entire office in the roll-out). Hardware and OS for the server are not an issue. Oh, and one more thing: It has to be free. Suggestions?"
+ -
story

Related Stories

[+] Technology: How To Build an Openfire Chat Server On Debian 5 108 comments
palegray.net writes "Inspired by a recent Ask Slashdot, I've written a step-by-step tutorial for setting up an Openfire server on Debian Linux, for those interested in running their own open source collaboration server. Aimed at those just getting started with collaboration software, the tutorial shows precisely how to get Openfire up and running quickly on a base Debian install, and offers a basic feature tour of the software's plugin and IM gateway functionality."
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by osssmkatz (734824) on Monday April 06 2009, @10:25PM (#27484519) Journal

    The question is which client and which server, and that I don't know. You should be able to lock it down by not allowing anyone to change its preferences.

    --Sam

    • Re: (Score:3, Informative)

      He could set up a Debian box (or virtual machine, whatever) running Jabber under his company's label in about an hour, including the OS install. Add a couple of hours to set up a backup/failover system synchronized via rsync and he's good to go. As for clients, there are a bunch of Java-based Jabber clients that integrate nicely with virtually any web app you've got deployed (with a bit of Perl or PHP glue, in some cases).
      • If you go that route, you could instead install Xming on the clients and run the jabber client locally, on the jabber server. Kind of high overhead, but full and complete control.

        Each department could have their own eJabber server, so granularity would be rather fine.

      • by Tweezer (83980) on Tuesday April 07 2009, @06:58AM (#27487355)

        What the hell are you smoking? I find answers like this to be way over simplified. Just setup a Debian box in an hour. Really? That is a bit naive. I have to ask you. Do you actually get your production servers setup in an hour? I don't know about you, but it takes me at least an hour or two to rack mount a new server, get it cabled, verify the redundant power is done correctly and get everything labeled properly. Then you have to get the OS loaded, app loaded etc. After all that, you need to be sure backups are setup and working properly, do some tests. After all this is HIPPA related and he needs to make sure it's working correctly, not to mention something like this will become a mission critical app in short period of time, because other people will come to rely on it . I could easily see after the release of something like this, other departments putting the use of the IM system into policy and procedures, because it's all logged. For example some manager says he will approve purchase requisitions over the IM system as it's all logged. I assume you've tested the log recovery from a backup and are confident you will be able to restore yesterday's log 7 years from now. And then document the whole thing. You do document things I hope. Even if you are the only admin, you need to document in case you are unavailable during an emergency. If you don't you aren't doing the job properly. I find a proper server takes more like 16-24 man hours.

    • Re: (Score:3, Insightful)

      This looks like a good spot to reply. :-)

      At my work, we allow two IM programs, Pidgin and Trillian. Both are wide open, however all conversations are logged via Postini. My company (a financial firm) took the opposite route, rather than block a whole bunch of programs and port #s, we allow just about every form of internet communication and log it all.

      So far, it's worked out fairly well. Users respect that the company respects their ability to not be "Big Brothered" to death by allowing everything but ma

    • by johnkzin (917611) on Tuesday April 07 2009, @07:19AM (#27487465)

      The problem with Jabber/XMPP is that ... it doesn't satisfy the "not used externally" part. Jabber is the basis of GoogleTalk, and several individual IM services.

      But, that's a questionable goal of the request anyway. Any one of his coworkers can connect to AIM/Yahoo/GoogleTalk right now. If he doesn't want that happening, he can't just say "we said 'no no bad coworker'" and expect that this makes things all good and happy. If he wants to ensure that coworkers aren't going to connect to external IM services, he needs to block those IM services at the border (firewalls and/or routers).

      In my opinion, he should block all IM traffic (Yahoo, AIM, MSN, IRC, ICB, ICQ, XMPP/Jabber, Simple, and the others (look at what pidgin supports, find out what ports those chat/IM services use, block all of them)) at the border, and then require legitimate external users to use a VPN to access the internal Jabber server. If there are remote offices, then either those workers would need to VPN in to the site that hosts the Jabber server ... or each site should have its own Jabber server, and then the Jabber servers would all talk to each other via VPN.

      That's how I'd set it up. Block every chat/IM protocol/port at the border (and at the border of each remote office). Set up a Jabber server at the central and at each remote office. Link the Jabber servers to each other via VPN/tunnel/etc.. Go from there.

      • by craagz (965952) on Monday April 06 2009, @10:59PM (#27484847) Homepage Journal
        Openfire.. so easy you will be surprised. I've just come off a successful implementation at our workplace.
        hack out the pidgin plugins. Pidgin Portable 2.5.5 is around 23MB and I removed all languages except English, plugins of everything except Jabber. Compressed it and 8MB.
        • Re: (Score:3, Informative)

          I second the Openfire/Spark combo (or other client of your choice). I set it up at work as a quick and dirty IM for our department (flung around the world). It's fantastic for quick questions or collabs that don't need or require email or phone. We've been using it for years (back when it used to be called Wildfire), and have not had one issue with it.
      • Re: (Score:3, Informative)

        Yep, use that for your server. Do yourself a favor and use something other than Spark for the client, however. We use Openfire/Spark at my company, and while the server is solid and workable, the client is pure shit. It's slow and buggy as hell. Use Pidgin, Miranda, or whatever multi-protocol client you prefer, but not Spark.
        • Re: (Score:3, Insightful)

          You know, I had the exact same issue this guy is having and, guess what - google gave me that exact answer (Openfire).
          Of course, I used MirandaIM because I knew Miranda had Jabber support and it's a decent little client, but yeah, another vote for both Openfire and "just fucking google it next time".

            • Re:Not another one (Score:5, Informative)

              by harryk (17509) <harryk20022002.yahoo@com> on Tuesday April 07 2009, @12:14AM (#27485295) Homepage

              I agree.

              The OpenFire Jabber server is rock solid and integrates with LDAP, has the ability to log conversations and generally speaking is very elegant and easy to maintain.

              We also use the Spark client, which is made available by the same group.

              Very solid setup if you ask me.

              • Re:Not another one (Score:5, Informative)

                by atraintocry (1183485) on Tuesday April 07 2009, @04:41AM (#27486627)

                I don't know about plain LDAP but I had serious trouble getting OpenFire to work with Active Directory. It integrated fine on the server side but single sign-on for the clients never worked. It seemed like it works great for 95% of people but for certain setups it's just impossible to get right. It's highly dependent upon your DNS setup, although I can't think of anywhere our DNS would be different from the norm. I also got in a little trouble because my users aren't all in cn=users but based on testing I don't think that was where the issue was.

                I tried for a long time to get SSO working and eventually I had to just roll it out with separate user accounts. I suppose I could have paid for support but if I was going to do that I would have just bought one of the Windows-based enterprise IM packages that's out there.

                Other than that it's been great. I was using Psi for a client but I can't seem to get it to alert people consistently. I (and the users) want something that will pop up the message and take focus no matter what. But Psi seems to be erratic in this regard.

                • Re:Not another one (Score:5, Informative)

                  by jwilson27 (1476305) on Tuesday April 07 2009, @09:13AM (#27488871)
                  Another vote for OpenFire. I am the IT manager at a healthcare facility and I have implemented this successfully. The latest version was very easy to setup and integrate with Active Directory. It has been working like a champ for almost 8 months now. I also enabled the web client and Red5 video plugin for video chat. This saved us quite a bit of cash in travel fees since we have numerous clinics spread out over the area. We did not eliminate traveling (nothing beats face-to-face time). Instead we do weekly video meetings and monthly travel.
            • by Anonymous Coward
              Thanks for the recommendation. I wish that people who don't like a story wouldn't visit it and clutter the story with negative comments.
        • Re:Not another one (Score:5, Interesting)

          by Gerzel (240421) * <<brollyferret> <at> <gmail.com>> on Tuesday April 07 2009, @12:44AM (#27485433) Journal

          Perhaps he also wanted some insights from people who have been in similar situations?

          There is a big difference between a website found on google and a testimonial from someone who's done it.

            • Re:Not another one (Score:5, Insightful)

              by LoadWB (592248) on Tuesday April 07 2009, @04:17AM (#27486493) Homepage Journal

              This is the exact attitude that pushes people away from FOSS in the first place.

              It is almost impossible to get a real answer from people with experience when all you get in return is "RTFM n00b."

              R'ing TFM does not always give you practical information or experience. Especially since there are quite a lot of people out there who are great at writing software but cannot write a manual to save their life. Either it is too technical and boasts about all of the incredible feats of writing the program with very little usability information, or overly verbose about how the program works with very little usability information.

              Google does not have all of the answers. It has a wealth of information, but sometimes no answers.

            • Re:Not another one (Score:5, Insightful)

              by Skylinux (942824) on Tuesday April 07 2009, @06:07AM (#27487047) Homepage

              You will find plenty of testimonials if you Google for them.

              So why not take it a step further and close down Slashdot.org?
              After all, the articles on slashdot are not written by slashdot staff but borrowed of the web so anything on here can be found via Google. Most websites also have a comment section so the trollish comments can be found not only on Slashdot.org

              So get over yourself, some people here may actually try to learn from the experience of others.

              Don't like a story? Don't fucking reply!

        • by golodh (893453) on Tuesday April 07 2009, @02:06AM (#27485907)
          @Anonymous Coward

          As to where the parent post "should" have asked his question, the parent post asked an intelligent question on a forum that harbours a lot of people who can provide a good answer in under a minute. Slashdot.

          There are lots and lots of applications like Jabber, Openfire and whatnot about. And yes, if you want you can create a great big (useless) list of them by Googling for a few minutes. And then what? What are the pros and cons of each app? Where can you find comparative tests? Are those tests any good? Has anyone got practical experience with the app? Any show-stoppers that aren't immediately apparent?

          The point about most questions like this is that people who already know the answer consider them "easy". People who don't know the answer consider them hard, and will have to expend a lot of time finding out. Time that's wasted if you could simply have eliminated 90% of the options by asking. That's why you ask. At least if you'd rather get some useful work done instead of being the umpteeth person researching the same wheel.

          It's a compliment to Slashdot that people ask such questions, and they do that because they even tend to get useful answers. It shows that Slashdot has value apart from serving as a forum for inane bickering.

  • Pidgin (Score:5, Informative)

    by Shikaku (1129753) on Monday April 06 2009, @10:25PM (#27484521)

    Use the encryption capabilities in Pidgin.

    http://pidgin.im/ [pidgin.im]

    • Re: (Score:3, Insightful)

      I love Pidgin, but that doesn't fit the "does not support outside protocols" criteria.

      • Re: (Score:3, Informative)

        Pidgin protocols are supported through plugins.

        Removing the respective plugin removes support for that protocol.

        There are other measures which can be taken to ensure it stays protocol broken, but it really depends on how far the requester is willing to go.

        • Re: (Score:3, Insightful)

          by Anonymous Coward

          You don't even need to do this. All the protocols are dynamically loaded (AFAIK, this is the case on Windows as well).

          Just remove the files for the unsupported protocols & block all jabber communications with the outside through the firewall (gmail for instance uses jabber).

          BTW, suggesting he hack the source instead of providing him with a client that meets his criteria is only useful if there are no free Windows clients that meet his needs. Since there are, at best you are telling him to use closed-s

          • Re: (Score:3, Interesting)

            Unfortunately, while I personally like the XMPP protocol and think it would normally be an excellent solution, I think you have uncovered the biggest flaw. Preventing the clients from talking to the outside world is going to be nearly impossible unless you keep them on a network that doesn't route to the outside world.
            For instance, GTalk uses SSL over port 443 so if you want any type of secure web transactions with the outside world then your also going to be allowing secure chatting. Even if you go through

    • Re: (Score:3, Informative)

      While Pidgin may be a reasonable multi-protocol client as a Jabber client I would suggest Gajim [gajim.org], which also does PGP and esession encryption (Pidgin cannot do either, AFAIK).

      Disclaimer (possible conflict of interest): I contributed the :3 smilie to the Gajim icon set.

      • Re: (Score:3, Informative)

        Pidgin has encryption plugins, but from what I've heard [caseyho.com], they aren't entirely stable :(
        • Re: (Score:3, Informative)

          considering that its been around for 5 years, the answer may not surprise you - or anyone for that matter: yes it is. i know only of one reliable way to crash it and that was a problem with the xmpp specification and has since been fixed. even running svn - which i do - does not necessarily mean there will be any instabilities.
  • SILC (Score:5, Informative)

    by Zapotek (1032314) <[rg.tluafges] [ta] [ketopaz]> on Monday April 06 2009, @10:28PM (#27484539) Homepage
    You can setup a SILC server.
    That's what we used to use in a company I worked for and it worked quite nice.
    • Re:SILC (Score:5, Informative)

      by hgesser (605301) <h.g.esser@ g m x.de> on Tuesday April 07 2009, @01:09AM (#27485539) Homepage
      This post was rather short, but I think it is one of the best suggestions. I played a bit with SILC some years ago: From a user's view it looks a lot like an IRC client, so users can talk to one another privately or join a channel to meet with several other users. What's most important is: It meets all the criteria,
      - it encrypts all communication
      - it is no multi-protocol thing, i.e. you cannot connect to other services.
      I can't remember whether you can run connections to several silc servers at the same time, but if so, that's at least better than having to restrict a program that can connect everywhere. Even though I haven't heard much of silc lately, the software is still actively developed. The last release is from March 19, 2009.
  • Jabber. (Score:4, Informative)

    by Mercury (13121) on Monday April 06 2009, @10:30PM (#27484553)

    You're looking for a jabber server and client.

    I work for a credit card company, and we use ejabberd on the server end of things.

    You probably have some jabber only client options, but those will still be able to connect to other jabber servers like Google Chat.

    Live with it, because any IM server worth using is going to have _some_ public servers.

    I'll leave the logging up to you, ejabberd can do it, but our company decided that the security issues involved with storing the logs were much worse then not having the logs.

    (Having stored, unencrypted, card data for any length of time is something that, on the very optimistic (good luck with the auditor) side requires a great deal of security. And just encrypting the drive it's sitting on doesn't really do away with more then half of that. Health data should be as much of a nightmare, but maybe not.)

    • Re:Jabber. (Score:4, Insightful)

      by WindBourne (631190) on Monday April 06 2009, @10:48PM (#27484767) Journal
      Live with it, because any IM server worth using is going to have _some_ public servers.
      Actually, the whole point is that they CAN NOT. Hippa mandates that they do not do that. It would be possible for somebody to copy/paste into the wrong window. For that, it would certainly lead to a firing, and possible jailing. I have consider doing a talk for kopete with an enforced port (via code). It sounds like that is exactly what is needed, though a secured jabberd would cut it.
  • Openfire (Score:5, Informative)

    by Anonymous Coward on Monday April 06 2009, @10:30PM (#27484561)

    http://www.igniterealtime.org/projects/openfire/index.jsp [igniterealtime.org]

    Works very well. Meets all your reqirements. Client supports Mac, Win and Linux but is a resource hog. It's jabber though so you can use many clients.

    • Re: (Score:3, Informative)

      http://www.igniterealtime.org/projects/openfire/index.jsp [igniterealtime.org]

      Works very well. Meets all your reqirements. Client supports Mac, Win and Linux but is a resource hog. It's jabber though so you can use many clients.

      I second OpenFire. We have been (mostly) happily using it for a couple of years now. Trivially easy to setup, can back onto all the major DBs (or has one builtin) and has reasonable - if a bit clumsy and limited - capabilities to integrate with Active Directory.

  • We use soapbox (Score:4, Insightful)

    by alta (1263) on Monday April 06 2009, @10:32PM (#27484595) Homepage Journal

    It's jabber based. Free as in beer for both the client and server.

    Lets us save logs of all chat sessions between employees, lets employees also save chat if they want to. Lets us do some filtering, overall a pretty good client/server.

    http://www.coversant.net/ [coversant.net]

    Oh, and I HAVE gotten Digsby to connect to the server, as well as trillian.

  • by SoapBox17 (1020345) on Monday April 06 2009, @10:36PM (#27484629) Homepage

    It is preferred that the client not support outside protocols such as AIM, MSN, Yahoo, etc.; if it does, I will have to promulgate and enforce yet one more policy that my techs not connect to them.

    It sounds like your network, which contains confidential medical records, is connected to the internet.
    So I have just one question: Dear God, why?

  • I wrote about this some time ago, right here [aboveaverageurl.com].

    The short and simple answer, that should fully meet your needs, is to install jabberd2, configure it as needed (should have a logging module/plugin somewhere), and then to use Miranda IM [miranda-im.org] with only the XMPP components as the client. Miranda is very easy to customize; if you don't want a protocol you simply don't include the relevant DLL.

    Note: the links on that page are dead, namely the ones to the MSI installer package that I built. If you have a need for it, feel free to drop me an e-mail (the /. address should be fine).
  • by jkrise (535370) on Monday April 06 2009, @10:49PM (#27484775) Journal

    Exodus is fairly simple to setup and administer. Zimbra provides much more than just Instant Messaging; we use it mainly for Zimlets and Collaboration; but the IM feature of Zimbra with auto-logging is very useful and sophisticated as well.

  • by waa (159514) on Monday April 06 2009, @10:53PM (#27484811) Homepage
    It has an intuitive/simple web interface for administration, and meets your logging needs and more. It can also support many gateways such as AIM, MSN, GADU-GADU, Yahoo! etc - But you don't have to enable them if you don't want them. I use this with the PSI IM client http://psi-im.org/ [psi-im.org] - A cross-platform Jabber IM client for MAC OSX, Linux and Windows. Check it out at: http://www.igniterealtime.org/projects/openfire/index.jsp [igniterealtime.org]
  • You definitely want to try out the Citadel groupware server [citadel.org]. Even if you don't need it for its mail system, address book, calendar, etc... it's got a built in XMPP (Jabber) service that integrates nicely across the entire environment. It also logs all of the instant messages sent through it. Each user can review their own logs too, which is nice. And you have the ability to journal everything that comes through the system, perhaps to an external archiving service (this feature was built with industries like yours in mind, where anything that gets read by anyone *must* be archived).

    And it's free software ... GPL 3, to be exact.
  • We ran this. (Score:5, Informative)

    by Allnighterking (74212) on Tuesday April 07 2009, @12:42AM (#27485419) Homepage
    At a company I left recently I installed Openfire [igniterealtime.org] and our supported IM client was their spark client (however despite my ex-bosses rants a lot of clients ended up being used by employee's) Spark works really well. Openfire is rock solid. It runs on Linux or Windows (better on Linux less server load). Without a hitch. Live upgrades work, and if you use mysql as the DB backend you can have auto failover. SSL 3 and TLS are supported as well.
  • by fadir (522518) on Tuesday April 07 2009, @01:15AM (#27485565)

    Set up a policy if you really have to but wanting to block services is just a waste of time and doesn't add anything to your security unless you have totally incompetent personnel or fully locked down computers. Otherwise they'll start using web clients or simply work around firewall blocks or the like - which at the end might cause more security issues than the usage of the service in the first place.

    It's much better to invest this time to educate your people and teach them why it's a bad idea to use MSN.

    Lots of companies set up ridiculous firewall rules and think that they are safe - not knowing that the overkill is causing exactly the opposite of what they want to achieve. People don't like to be locked down if they don't understand why.

    I had a similar problem to solve in the (small) company that I work for. We ended up with Openfire and Pidgin. This is not safe from the outside but better than what our big mother company did. They force everyone onto Sametime and have their system locked down like no tomorrow - which ends up in people using a multitude of services and wasting a lot of time to work their ways around the firewall to be able to use MSN, Facebook, Jabber & Co.
    While I know what I have to deal with and act accordingly, teach the people that they please stay away from insecure services on their work PC the mother company trusts in their rules and unintentionally provokes insecurity.

    Security never works against the people, only with the people.

  • Spark + eJabberd (Score:3, Interesting)

    by darkpixel2k (623900) <slashdot@darkpixel.com> on Tuesday April 07 2009, @01:32AM (#27485647) Homepage
    I support a 7-site network with ~80 PCs. I use the Spark client because it comes packaged as an MSI--easy to push out via Group Policy. I also have a batch file which creates an initial settings file for the users the first time they sign in.

    Initially we had an internal (old junker box) linux server which was only accessible from the internal network and everyone had Jabber IDs of user@customer.local. We recently switched to user@customer.tld so people could access it from their iPhones and Windows Mobile phones using the Palringo client.

    ejabberd on linux has nice LDAP integration with Active Directory on Windows. You could also use the OpenFire server which is made by the same people that make Spark. It has a free version and a commercial version IIRC.
  • +1 for Jabber (Score:4, Informative)

    by shutdown -p now (807394) <(int19h) (at) (gmail.com)> on Tuesday April 07 2009, @01:42AM (#27485719)

    If you want free, open, secure and cross-platform, then it's definitely XMPP/Jabber. No surprise there - open protocol, plenty of servers and clients to choose from - it really is good. From your description, you'll almost certainly want that.

    However, For all-Microsoft shops with AD and Exchange, a pretty decent option is Office Communicator (+ the corresponding Server). It doesn't really have many advantages as an IM, but it does integrate with Outlook, Exchange and SharePoint (from shared address book, to minor bits such as auto-setting your status to "Busy - in a meeting" when you have a meeting scheduled on your Outlook calendar, and storing conversation logs in Outlook mailboxes, which indexes them for search). It's also pretty good for conferences. Still, main feature there is that integration - on its own, it's hardly worth the bother. And, of course, it's not free (in any definition of the word), and the protocol, while SIP-based, is not without proprietary quirks.

    • Re: (Score:3, Insightful)

      FOSS? Where did he say FOSS? He never said FOSS. He said 'free'. Most likely free as in beer. What company _isn't_ looking for free software? My guess would be they just don't consider this essential and don't want to waste a shitload of money on it.

      • by drawfour (791912) on Monday April 06 2009, @11:28PM (#27485051)

        FOSS? Where did he say FOSS? He never said FOSS.

        Nice job reading. I quote from the Ask Slashdot itself:

        We're looking for an internal, secure, FOSS (if possible) instant messaging / presence awareness client and server combo

        He didn't say it HAD to be FOSS, but if possible, he would like it.

    • Re:wtf (Score:4, Insightful)

      by erlehmann (1045500) on Tuesday April 07 2009, @12:09AM (#27485271)
      IMO, an "educated" opinion from a technical crowd is in any way better than a simple Google query. I don't know, for example, how Google could possibly have a differentiated answer to the pros and cons of particular clients.
    • Re: (Score:3, Interesting)

      Bonjour is great, but what you've suggested doesn't meet his needs at all. One of the stated requirements is that there MUST be centralized logging of all conversations, and what you've proposed is direct client-to-client chats with no centralized server.

    • Re: (Score:3, Interesting)

      I agree, Openfire Server with Spark as the IM client will satisfy your requirements. It is a solid, extensible instant messaging server that should meet all your requirements.

      What is nice about Openfire is that it allows you to centralize the management and security a lot, which gives you a lot of control in information-sensitive situations like this. It has integration with an existing LDAP/AD server if you want to keep your authentication policy centralized on your LDAP server if you have one. Likew