LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Security
User Name
Password
Linux - Security This forum is for all security related questions.
Questions, tips, system compromises, firewalls, etc. are all included here.

Notices


Reply
  Search this Thread
Old 05-19-2015, 02:36 PM   #1
svejkit
LQ Newbie
 
Registered: May 2015
Posts: 1

Rep: Reputation: Disabled
ssh for remote web developers


Hi All,
We have a number of web servers in our datacenter which are accessible from the internet (ports 80/443). But we don't expose their sshd ports to the internet.
Our web developers want to work from home, and very easily use ssh and git from their home clients to their web servers, and are asking for port 22 (or higher) on each web server to be exposed.
They want to use ssh keys to authenticate (hopefully with a passphrase).
Some of us are concerned that a compromised client could cause the company significant grief, potentially to all our web servers at once, and don't want to take the risk.
Is there a solution that we might all be happy with, potentially? Or, maybe some good practice we can use to limit their expectations?
Thanks for any help.
Svejk
 
Old 05-20-2015, 04:21 PM   #2
unSpawn
Moderator
 
Registered: May 2001
Posts: 29,415
Blog Entries: 55

Rep: Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600
Quote:
Originally Posted by svejkit View Post
They want to use ssh keys to authenticate (hopefully with a passphrase).
No need to say "hopefully": just enforce it.


Quote:
Originally Posted by svejkit View Post
Some of us are concerned that a compromised client could cause the company significant grief, potentially to all our web servers at once, and don't want to take the risk.
The problem here is you haven't defined what you consider "grief"... Draft a company policy that defines (un)acceptable use and repercussions and ensure all developers agree. If you own the personal computers they work on then ensure auditing and reporting (and where appropriate: checks on licensing, malware, viruses, PUA) is enabled. Set up auditing on all accessible hosts and make them log to a central impenetrable syslog host. Deny users the right to 'su' and only allow them specific commands via the use of Sudo (also see rootsh). Ensure proper host hardening. Create a new host and assign it the role of SSH gateway. Allow developers to only SSH tunnel into that bastion host as unprivileged user with pubkey auth and set up SSH tunnels from there into the private network range. This may not cover all bases but at least it enables you to build audit trails, verify users movement and take action if corrections seem necessary.
 
1 members found this post helpful.
Old 05-21-2015, 02:11 AM   #3
TenTenths
Senior Member
 
Registered: Aug 2011
Location: Dublin
Distribution: Centos 5 / 6 / 7
Posts: 3,475

Rep: Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553Reputation: 1553
If these are "production" web servers then your web developers shouldn't be going anywhere near them and shouldn't have the ability to push any code to them.

However, if you are going to do this then you should also consider some form of two factor authentication for their ssh connection and possibly the use of a "jumpbox" server to minimise your attack footprint. Users can ssh to the jumpbox with two factor authentication and then make use of internal ssh tunnels to access specific hosts.
 
2 members found this post helpful.
Old 05-22-2015, 07:17 PM   #4
LinuxPenguin87
LQ Newbie
 
Registered: Dec 2014
Posts: 3

Rep: Reputation: Disabled
Exposing SSH like that is not worth the risk, even if you are using Key Authentication. I think it would be best to have them VPN in before being able to SSH. Whatever solution you come up with, it is essential that you implement least privilege. Developers, who naturally think about how to make things easier and simpler, are not the best security folks.
 
Old 06-04-2015, 05:05 PM   #5
joec@home
Member
 
Registered: Sep 2009
Location: Galveston Tx
Posts: 291

Rep: Reputation: 70
Quote:
Originally Posted by unSpawn View Post
No need to say "hopefully": just enforce it.



The problem here is you haven't defined what you consider "grief"... Draft a company policy that defines (un)acceptable use and repercussions and ensure all developers agree. If you own the personal computers they work on then ensure auditing and reporting (and where appropriate: checks on licensing, malware, viruses, PUA) is enabled. Set up auditing on all accessible hosts and make them log to a central impenetrable syslog host. Deny users the right to 'su' and only allow them specific commands via the use of Sudo (also see rootsh). Ensure proper host hardening. Create a new host and assign it the role of SSH gateway. Allow developers to only SSH tunnel into that bastion host as unprivileged user with pubkey auth and set up SSH tunnels from there into the private network range. This may not cover all bases but at least it enables you to build audit trails, verify users movement and take action if corrections seem necessary.
Have someone OTHER than the web developers preform backups of the data on a regular basis. The most dreaded nightmare would be a disgruntled employee destroying everything from home just as they quit their job.
 
Old 06-06-2015, 05:20 AM   #6
unSpawn
Moderator
 
Registered: May 2001
Posts: 29,415
Blog Entries: 55

Rep: Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600
Quote:
Originally Posted by joec@home View Post
Have someone OTHER than the web developers preform backups of the data on a regular basis.
No idea why your reply required you quoting me but since you did: making (and hopefully testing) backups commonly is an automated process not involving any human interaction. (So if you allow any human to make backups, especially web developers, then you've obviously got yourself a recipe for disaster...)
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] SSH remote command: Pipe remote output to local machine? kenneho Linux - Server 6 12-06-2012 01:37 AM
LXer: Even Faster Web Sites: Performance Best Practices for Web Developers LXer Syndicated Linux News 0 07-07-2009 10:21 PM
Web Developers... lostinquestions General 7 09-01-2007 05:48 AM
Web Developers lostinquestions Linux - General 2 08-25-2007 01:55 PM
Looking for WEB-based ssh remote access package. david(dallas) Linux - Networking 9 03-13-2007 08:13 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Security

All times are GMT -5. The time now is 08:23 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration