Difference between revisions of "Security Checklist/Testing and Development"

From Joomla! Documentation

< Security Checklist
m (update navigational call)
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{RightTOC}}
+
{{:Security Checklist/TOC}}
 
 
 
== Secure Testing and Development ==
 
== Secure Testing and Development ==
  
Line 10: Line 9:
  
 
===Use a versioning system===
 
===Use a versioning system===
: Be able to roll back to an earlier version of your site using a modern version control system, such as CVS, [http://subversion.tigris.org/ Subversion], or [http://git.or.cz/ git].</li> The Eclipse IDE indicated about includes a Subversion plugin. This allows you to work with the Joomla! source repository as well as other projects hosted on [http://joomlacode.org/ JoomlaCode].
+
: Be able to roll back to an earlier version of your site using a modern version control system, such as CVS, [http://subversion.tigris.org/ Subversion], or [http://git.or.cz/ git].</li> The Eclipse IDE indicated above includes a Subversion plugin. This allows you to work with the Joomla! source repository as well as other projects hosted on [http://joomlacode.org/ JoomlaCode].
  
  
Line 18: Line 17:
 
==Setup a backup process first==
 
==Setup a backup process first==
 
===The most important rule===
 
===The most important rule===
: Thou shalt at all time be able to return your site to a previous working state through regular use of a strong, off-site backup and recovery process. Be sure your backup and recovery process is in place and tested BEFORE you go live. This is the single best way (and often the only way) to recover from such inevitable catastrophes as:
+
: '''Thou shalt at all time be able to return your site to a previous working state through regular use of a strong, off-site backup and recovery process. '''
 +
 
 +
: Be sure your backup and recovery process is ready and tested BEFORE your site goes live.  
 +
 
 +
: This is the single best way (and often the only way) to recover from such inevitable catastrophes as:'''
  
 
# A compromised/cracked site.
 
# A compromised/cracked site.
Line 25: Line 28:
 
# Authoritarian government intervention. (More common than some think.)
 
# Authoritarian government intervention. (More common than some think.)
 
# Needing to quickly relocate to a new server or hosting provider.
 
# Needing to quickly relocate to a new server or hosting provider.
 
== Go To Joomla Setup ==
 
: When you're ready, continue on to [[Security Checklist 4 - Joomla Setup]].
 
  
 
<!-- KEEP THIS AT THE END OF THE PAGE -->
 
<!-- KEEP THIS AT THE END OF THE PAGE -->
 
[[Category:Security Checklist]]
 
[[Category:Security Checklist]]

Revision as of 20:00, 15 October 2012

Secure Testing and Development[edit]

Develop locally, deploy globally[edit]

Develop and test your site on a local machine first. Installing Joomla locally is not as hard as it may sound, and the exercise will greatly boost your confidence.

Use an IDE[edit]

Consider using an Integrated Development Environment (IDE). One free IDE that many Joomla! developers use is Eclipse. See Setting up your workstation for Eclipse development for instructions on installing Eclipse.

Use a versioning system[edit]

Be able to roll back to an earlier version of your site using a modern version control system, such as CVS, Subversion, or git. The Eclipse IDE indicated above includes a Subversion plugin. This allows you to work with the Joomla! source repository as well as other projects hosted on JoomlaCode.


More suggested tools[edit]

Check out the Joomla! community's list of popular Developer Software and Tools.

Setup a backup process first[edit]

The most important rule[edit]

Thou shalt at all time be able to return your site to a previous working state through regular use of a strong, off-site backup and recovery process.
Be sure your backup and recovery process is ready and tested BEFORE your site goes live.
This is the single best way (and often the only way) to recover from such inevitable catastrophes as:
  1. A compromised/cracked site.
  2. Broken site due to a faulty upgrade.
  3. Hardware failure, such as dead hard drives, power failures, server theft, etc.
  4. Authoritarian government intervention. (More common than some think.)
  5. Needing to quickly relocate to a new server or hosting provider.