Skip to content
3 changes: 2 additions & 1 deletion _data/versions.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
admin-guide:
3.4: /admin-guide
3.5: /admin-guide
3.4: /admin-guide/3.4/en
3.3: /admin-guide/3.3/en
api:
ojs:
Expand Down
2 changes: 1 addition & 1 deletion _includes/cards/dev/admin-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ How to install and configure the application, import and export data, secure you

---

Versions: [3.4](/admin-guide/en), [3.3](/admin-guide/3.3/en/) ([Français](/admin-guide/3.3/fr/))
Versions: [3.5](/admin-guide/en), [3.4](/admin-guide/3.4/en), [3.3](/admin-guide/3.3/en/) ([Français](/admin-guide/3.3/fr/))
4 changes: 2 additions & 2 deletions admin-guide/3.3/en/data-import-and-export.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,10 +154,10 @@ If you are importing users into OJS, first create the XML import file. [See the
Here are some things to consider:

* Be sure to define the document type appropriately using `<!DOCTYPE ...>`.
* Your XML file should UTF8-encoded.
* Your XML file should be UTF8-encoded.
* `<firstname>`, `<lastname>` and `<email>` are mandatory.
* If you allow the system to generate passwords for the users you are uploading, you can optionally allow the system to email the users with their account credentials. This option can be found on the Users XML Plugin Page \("Send a notification email to each imported user containing the user's username and password."\).
* You can require the user change their password when they next log in by setting the password attribute "change" to "true": `<password must\_change="true">`myoldpassword`</password>`
* You can require the user changes their password when they next log in by setting the password attribute "change" to "true": `<password must\_change="true">`myoldpassword`</password>`
* The default password encryption is "plaintext" \(ie., none\). Encrypted assumes it was encrypted by `Validation::encryptCredentials()` and is using the same encryption algorithm used by the system.
* If the imported file contains any usernames or email addresses that already exist in the system, the user data for those users will not be imported and any new roles to be created will be assigned to the existing users.

Expand Down
8 changes: 3 additions & 5 deletions admin-guide/3.3/en/email.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ version: 3.3
---
# Email

This chapter explains how emails are sent in OJS, OMP, and OCS; the configuration options that are available; and how to troubleshoot email issues.
This chapter explains how emails are sent in OJS, OMP, and OPS; the configuration options that are available; and how to troubleshoot email issues.

Mail in PKP software applications uses [the PHPMailer library](https://github.com/PHPMailer/PHPMailer). You can find out more about PHPMailer on [their wiki](https://github.com/PHPMailer/PHPMailer/wiki). Other code related to mail can be found in [the pkp-lib mail class](https://github.com/pkp/pkp-lib/tree/main/classes/mail).

Expand Down Expand Up @@ -70,7 +70,7 @@ By default, PHPMailer will send mail through PHP's built-in `mail()` facility.

On Windows, PHP needs to be configured to send email through a SMTP server \(running either on the same machine or on another machine\).

On other platforms such as Linux and Mac OS X, PHP will sent mail using the local sendmail client, so a local MTA such as Sendmail or Postfix must be running and configured to allow outgoing mail.
On other platforms such as Linux and Mac OS X, PHP will send mail using the local sendmail client, so a local MTA such as Sendmail or Postfix must be running and configured to allow outgoing mail.

See [https://www.php.net/manual/en/function.mail.php](https://www.php.net/manual/en/function.mail.php) for more details on configuring PHP's mail functionality.

Expand All @@ -96,9 +96,7 @@ Reloading templates will override any modifications that you may have made. To k

All PKP applications require that primary and technical contacts are configured under Setup for proper daily operations. This is required for every journal, press, or conference in the system.

- In OJS 2.x, this can be done under _Setup Step 1_.
- In OCS 2.x, this can be done under _Website Management Step 1_.
- In OJS/OMP 3.x, this can be done under _Settings &gt; Journal &gt; Contact_.
In OJS/OMP/OPS 3.x, this can be done under _Settings &gt; Journal/Press/Server &gt; Contact_.

## Email Validation for New Users

Expand Down
16 changes: 8 additions & 8 deletions admin-guide/3.3/en/securing-your-system.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ Please see [https://pkp.sfu.ca/ojs/README](https://pkp.sfu.ca/ojs/README), [http

In general, the `files_dir` should not be web accessible and should be placed outside of the main software install directory. The software application will manage access to private submission files based on user roles and permissions \(i.e. Editors will have access to all submission files, whereas authors will only be able to access their own submission files\).

In addition, to ensure security the `files_dir` folder should not be readable by other users on the server. Only the webserver should have the necessary read/write permissions so that OJS, OMP, or OCS can read existing files and add new files to the folder, e.g.
In addition, to ensure security the `files_dir` folder should not be readable by other users on the server. Only the webserver should have the necessary read/write permissions so that OJS, OMP, or OPS can read existing files and add new files to the folder, e.g.

`drwxrwx--- 6 ojs www 204B 11 Sep 2017 files/`

The exact details of file permissions will depend on how your web server runs PHP scripts (this is called the "server API" or "SAPI"). For example, if it uses `mod_php`, all PHP scripts will run as the `www-data` user or similar (this is inherently not 100% secure on a multi-user server). If it uses CGI, FastCGI, FPM, or a similar mechanism, it will likely run under your user account.

It is recommended that you install an SSL certificate for your OJS, OMP, or OCS install and ensure that your site always uses the HTTPS protocol to manage user registration, login, and to present content to readers. Once your SSL certificate has been installed and is confirmed to be working \(i.e. you can access your site via [https://myjournal.org](https://myjournal.org/)\) you can configure your site to always use HTTPS by using the following setting in `config.inc.php`:
It is recommended that you install an SSL certificate for your OJS, OMP, or OPS install and ensure that your site always uses the HTTPS protocol to manage user registration, login, and to present content to readers. Once your SSL certificate has been installed and is confirmed to be working \(i.e. you can access your site via [https://myjournal.org](https://myjournal.org/)\) you can configure your site to always use HTTPS by using the following setting in `config.inc.php`:

`; Force SSL connections site-wide
force_ssl = On`
Expand All @@ -37,16 +37,16 @@ salt = "sdlkjfhleiqwrfgbksdlkjgbelruywoeiyt7384gdqlywqvlwjf"`

A secure deployment of PKP software can be best achieved by using the following recommendations, which are described in docs/README in every download of the software:

* Dedicate a database to OJS, OMP, and OCS; use unique credentials to access it. Configure this database to perform automated backups on a regular basis. Perform a manual backup when upgrading or performing maintenance. If you do not have access to your database contact your system administrator and ensure that database backups are taking place for your OJS.
* Dedicate a database to OJS, OMP, and OPS; use unique credentials to access it. Configure this database to perform automated backups on a regular basis. Perform a manual backup when upgrading or performing maintenance. If you do not have access to your database contact your system administrator and ensure that database backups are taking place for your OJS.
* Configure the software (`config.inc.php`) to use SHA1 hashing rather than MD5.
* Enable captcha or recaptcha in your `config.inc.php` file, and test that they are working. This will prevent most spam user registrations.
* Configure the software (`config.inc.php`) to use `force_login_ssl` so that authenticated users communicate with the server via HTTPS. (You will also have to properly create and configure an SSL certificate to do this properly.)
* Install the software so that the files directory is NOT a subdirectory of the OJS, OMP, or OCS installation and cannot be accessed directly via the web server.
* Install the software so that the files directory is NOT a subdirectory of the OJS, OMP, or OPS installation and cannot be accessed directly via the web server.
* Restrict file permissions as much as possible.
* Deploy and test a proper backup mechanism. The backup mechanism should back up the database, the system files, and the file storage area (the `files_dir` parameter in `config.inc.php`). Ideally, you should make both on-site and off-site backups.
* Ensure that your web server environment is regularly updated, in particular with any and all security patches.

If these steps are followed, you will substantially reduce the risk of falling prey to common hacking techniques. If already running OJS, OMP, or OCS, we strongly urge you to review your existing configurations and ensure these steps have been followed.
If these steps are followed, you will substantially reduce the risk of falling prey to common hacking techniques. If already running OJS, OMP, or OPS, we strongly urge you to review your existing configurations and ensure these steps have been followed.

### Secure File Management

Expand All @@ -55,7 +55,7 @@ Authors, reviewers, and editors deal with submission files from people they don
* Make sure you have antivirus software installed, and that it is up to date
* Make sure your operating system and all software (especially Word and Excel) are kept up to date, ideally by turning on any auto-update features available to you
* Make sure you have a backup solution available for your work computers
* Practice good password management: don’t use the same username/password in OJS, OMP, or OCS as you would for any other online account, and don’t use an easy to guess password
* Practice good password management: don’t use the same username/password in OJS, OMP, or OPS as you would for any other online account, and don’t use an easy to guess password
* Treat everything that you get online with the knowledge that you received it from someone you don’t know, and act likewise. If a submission appears to be suspicious for any reason (strange email address, suspiciously generic title or abstract, etc.), treat the included files with an additional level of diligence.

## Encryption
Expand All @@ -76,7 +76,7 @@ Google announced in 2014 that https [would be treated as a ranking signal](https

### Getting a Certificate

A certificate enables a secure connection from the user's Web browser to the server hosting your site. Installing a certificate for your site can not be done within the OJS, OMP, or OCS software and will require technical expertise or assistance at the server level. When considering a software host, determining their level of certificate support is an important consideration.
A certificate enables a secure connection from the user's Web browser to the server hosting your site. Installing a certificate for your site can not be done within the OJS, OMP, or OPS software and will require technical expertise or assistance at the server level. When considering a software host, determining their level of certificate support is an important consideration.

A good start is asking your hosting service provider if they have an existing solution for supporting TLS or SSL certificates -- Your hosting provider may be able to create/issue an TLS or SSL certificate for you. If you do not have shell access to your installation this may be the only way to go about adding SSL/TLS protection for your site.

Expand Down Expand Up @@ -126,7 +126,7 @@ Don’t forget to test this setup by registering a test account and confirming t

### Enable Account Validation

OJS, OMP, and OCS can be configured so that an email account validation step must be completed for all new user accounts before they can log in and interact with the system. To do this, uncomment and configure the following lines in `config.inc.php`:
OJS, OMP, and OPS can be configured so that an email account validation step must be completed for all new user accounts before they can log in and interact with the system. To do this, uncomment and configure the following lines in `config.inc.php`:

```
; If enabled, email addresses must be validated before login is possible.
Expand Down
4 changes: 1 addition & 3 deletions admin-guide/3.3/en/single-signon.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ version: 3.3
---
# User Authentication and Single Sign-on

For synchronizing user accounts across multiple applications, OJS and OCS support LDAP and Shibboleth, both of which have varying degrees of support in other applications including PhpBB, Drupal, WordPress, and other content management systems.
For synchronizing user accounts across multiple applications, OJS supports LDAP and Shibboleth, both of which have varying degrees of support in other applications including PhpBB, Drupal, WordPress, and other content management systems.

*LDAP* (the Lightweight Directory Access Protocol), while not as powerful as Shibboleth (e.g. LDAP does not support single sign-on, where logging into one service automatically logs into all others), is a common choice for centralizing authentication on a server. A popular LDAP implementation is [OpenLDAP](https://www.openldap.org/) an open source implementation of the protocol.

Expand All @@ -13,8 +13,6 @@ For synchronizing user accounts across multiple applications, OJS and OCS suppor

## Setting up Shibboleth

*Note*: Please note that Shibboleth support has not yet been ported to OCS.

Shibboleth is maintained by the [Internet2 Middleware Initiative](http://shibboleth.internet2.edu/), and as such their website provides a central location for downloads and documentation. Currently, they provide Shibboleth Service Provider 2.1 in binary form for all major operating systems, as well as providing source code. For further information on installing and setting up the Shibboleth Service Provider, please consult Internet2's support documentation.

Once Shibboleth is set up on your system, integration with your PKP application requires the use of the [Shibboleth plugin](https://github.com/pkp/shibboleth) from the Plugin Gallery. After enabling this plugin, visit the plugin's Settings page for instructions on configuration.
Expand Down
36 changes: 36 additions & 0 deletions admin-guide/3.4/en/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Table of contents

* [Introduction](./)
* [Getting Started](./getting-started)
* [Requirements](./getting-started#system-requirements)
* [Download](./getting-started#download)
* [Install](./getting-started#install)
* [Deployment](./deploy)
* [Configuration](./deploy#configuration)
* [Email](./deploy-email)
* [Jobs](./deploy-jobs)
* [Users](./deploy-users)
* [Multi-tenant](./deploy-multi-tenant)
* [Sandbox](./deploy-sandbox)
* [Import/Export](data-import-and-export)
* [REST API](data-import-and-export#rest-api)
* [Native XML](data-import-and-export#native-xml)
* [QuickSubmit](data-import-and-export#quicksubmit)
* [OAI](data-import-and-export#oai)
* [Users](data-import-and-export#users)
* [Export to Services](data-import-and-export#export-to-services)
* [CLI Tools](data-import-and-export#cli-tools)
* [Troubleshooting](data-import-and-export#troubleshooting)
* [Security](securing-your-system)
* [Checklist](securing-your-system#security-checklist)
* [File Permissions](securing-your-system#file-permissions)
* [SSL/Encryption](securing-your-system#sslencryption)
* [Statistics](statistics)
* [Settings](statistics#settings)
* [Download](statistics#download)
* [Recover Lost Data](statistics#recover-lost-data)
* [FAQ](statistics#frequently-asked-questions)
* [Troubleshooting](troubleshooting)
* [Permissions, File Access, Etc.](./troubleshooting.md#permissions-file-access-etc)
* [Character Encoding](./troubleshooting.md#character-encoding)
* [Error-reporting](./troubleshooting.md#error-reporting-blank-pages-diagnostics-etc)
Binary file added admin-guide/3.4/en/assets/install-complete.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added admin-guide/3.4/en/assets/install-start.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added admin-guide/3.4/en/assets/settings-wizard.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading