Linode Forum
Linode Community Forums
 FAQFAQ    SearchSearch    MembersMembers      Register Register 
 LoginLogin [ Anonymous ] 
Post new topic  Reply to topic
Author Message
PostPosted: Fri Nov 13, 2009 5:38 am 
Offline
Junior Member

Joined: Fri Jan 02, 2009 9:11 am
Posts: 36
I have two linodes in the newark facility one with apache / php and the other running mysql. The servers both have firewalls with rules to only allow mysql traffic between them on the internal IP addresses.

Is there any need to look at creating a secure connection between the machines so the Mysql traffic is encrypted or do you think the fact that they are using the internal IP addresses makes the system secure enough?

Maybe just being a little paranoid because its an e-commerce application.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 6:13 am 
Offline
Newbie

Joined: Thu Jan 01, 2009 2:42 am
Posts: 4
You don't control the network, so you should encrypt traffic between your nodes, especially if it's payment data. The only overhead will be a little additional CPU usage, which you presumably have oodles of spare of.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 6:17 am 
Offline
Junior Member

Joined: Fri Jan 02, 2009 9:11 am
Posts: 36
That is kinda what I thought, does any one have any suggestions on the best way to do this?


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 8:00 am 
Offline
Senior Member
User avatar

Joined: Sat Oct 16, 2004 11:13 am
Posts: 176
You should always encrypt your traffic, however I have heard that due to some magic from caker, it's not actually possible for another Linode to listen to packets that are not destined for it (on the internal network).


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 8:17 am 
Offline
Senior Member

Joined: Sun Aug 02, 2009 1:32 pm
Posts: 222
Website: https://www.barkerjr.net
Location: Connecticut, USA
You should be using web services over HTTPS to transfer data between the servers, not proprietary MySQL protocol.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 8:48 am 
Offline
Senior Member
User avatar

Joined: Fri Oct 24, 2003 3:51 pm
Posts: 965
Location: Netherlands
saman007uk wrote:
You should always encrypt your traffic, however I have heard that due to some magic from caker, it's not actually possible for another Linode to listen to packets that are not destined for it (on the internal network).

Linode filters at the data link and network layers, inbound and outbound. It's secure, but you still shouldn't rely on it for stuff like e-commerce payments.

_________________
/ Peter


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 10:19 am 
Offline
Senior Member

Joined: Sat Feb 14, 2009 1:32 am
Posts: 123
BarkerJr wrote:
You should be using web services over HTTPS to transfer data between the servers, not proprietary MySQL protocol.


That is incorrect. Why would you use a web server protocol for a database connection? That makes absolutely no sense. And when did the MySQL protocol become proprietary? Correct me if I'm wrong, but everything about MySQL (excluding the actual commercial MySQL product) is open and open source.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 11:15 am 
Offline
Senior Member
User avatar

Joined: Mon Dec 10, 2007 4:30 pm
Posts: 341
Website: http://markwalling.org
BarkerJr wrote:
You should be using web services over HTTPS to transfer data between the servers, not proprietary MySQL protocol.


I can't wait to hear the logic behind this one.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 3:25 pm 
Offline
Junior Member

Joined: Fri Jun 27, 2008 12:24 am
Posts: 31
mwalling wrote:
BarkerJr wrote:
You should be using web services over HTTPS to transfer data between the servers, not proprietary MySQL protocol.


I can't wait to hear the logic behind this one.


Dude, everyone knows that HTTP(S) is the protocol of teh internetz


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 3:55 pm 
Offline
Senior Member
User avatar

Joined: Fri Oct 24, 2003 3:51 pm
Posts: 965
Location: Netherlands
SelfishMan wrote:
Dude, everyone knows that HTTP(S) is the protocol of teh internetz

That's right. Al Gore figured it all out when he was inventing the intertubes.

_________________
/ Peter


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 5:08 pm 
Offline
Senior Member

Joined: Sun Aug 02, 2009 1:32 pm
Posts: 222
Website: https://www.barkerjr.net
Location: Connecticut, USA
Good tiered software design includes separation of the layers. Optimally you want to use a neutral protocol so that you can swap your database server in the data later without any change to the other layers. Otherwise you're locking yourself in to a certain database product.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 5:13 pm 
Offline
Senior Member
User avatar

Joined: Tue May 26, 2009 3:29 pm
Posts: 1691
Location: Montreal, QC
I would have said, establish an encrypted VPN between the two linodes over the private network. Anything going over that virtual interface can be considered safe.

OpenVPN would probably work?


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 5:16 pm 
Offline
Senior Member

Joined: Mon Oct 27, 2008 10:24 am
Posts: 173
Website: http://www.worshiproot.com
Or just use MySQL's built in SSL capabilities.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 5:19 pm 
Offline
Senior Member
User avatar

Joined: Tue May 26, 2009 3:29 pm
Posts: 1691
Location: Montreal, QC
BarkerJr wrote:
Good tiered software design includes separation of the layers. Optimally you want to use a neutral protocol so that you can swap your database server in the data later without any change to the other layers. Otherwise you're locking yourself in to a certain database product.


I think you're misunderstanding that architecture. The point is to isolate database access into a dedicated layer, and this is the layer that talks to the database servers. The communication to the database will still use whatever protocol the database wishes, the point is that changing databases only requires swapping out the data access layer.

There's little reason to put the data access layer on the same physical servers as the database software itself. Claiming that HTTPS should be used for database access is silly.


Top
   
 Post subject:
PostPosted: Fri Nov 13, 2009 5:20 pm 
Offline
Senior Member
User avatar

Joined: Mon Dec 10, 2007 4:30 pm
Posts: 341
Website: http://markwalling.org
BarkerJr wrote:
Good tiered software design includes separation of the layers. Optimally you want to use a neutral protocol so that you can swap your database server in the data later without any change to the other layers. Otherwise you're locking yourself in to a certain database product.


So instead of using an abstract DBI that talks to the database server on a remote host, you're going to have your own "proprietary" (by your own definition) "webservice" to access this data, increasing complexity and adding overhead by adding yet another layer for your application to walk through.

There is nothing wrong with MVC, but when you're doing (MVC)VC, you're going overboard.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
RSS

Powered by phpBB® Forum Software © phpBB Group