Plesk
Note: Plesk 11 uses nginx. If the IP address and websites will not load, do ps aux | grep nginx . If not running do /etc/init.d/nginx reload
To check if anyone has logged into Plesk, use the file /usr/local/psa/admin/logs/httpsd_access_log (*.processed), further Plesk logs.
Plesk uses Subscriptions/Webspaces for domain. If you are not in Power User mode you will see Subscription on the menu down the left side. If you have have Power User mode on, you will see tabs along the top. These are the same thing effectively, however you have less control using Webspaces than Subscriptions. Turn Power User mode off to simplify things and allow more access for yourself.
Password retrieval
Retrieve Plesk password in Remote Desktop
The command below retrieves the admin PW, not Administrator.
Start > Run:
"%plesk_bin%\plesksrvclient" -get
Start > Search CMD or Start > All Programs > Accessories > Command Prompt:
"%plesk_bin%\plesksrvclient" -get -nogui > plesk_password.txt
Set in CMD:
"%plesk_bin%\plesksrvclient" -set <new_password> true
C:\Program Files\Parallels\Plesk\admin\bin>dbclient.exe --direct-sql --sql="select * from databaseservers where type='mysql' and host='localhost'"
The above is used for Plesk 9 using the Jet DB. To set a new one, do:
dbclient.exe --direct-sql --sql="update databaseservers set admin_password='NEWPASSWORD'"
Show Non-encrypted password in SSH
Use this in SSH if Plesk is below version 10.2: cat /etc/psa/.psa.shadow
Show Decrypted password in SSH
Use this in SSH if Plesk is version 10.2 or above: /usr/local/psa/bin/admin --show-password
- Using /usr/local/psa/bin/admin --help displays a lot of different commands to use.
- The Virtuozzo password can be set by using passwd root in the container as specified here: Setting root password.
- The Plesk admin password can be set by using the command:
/usr/local/psa/bin/init_conf -u -passwd newpassword
Guide: http://kb.parallels.com/en/111192
Check FTP passwords
Linux:
mysql -u admin -p`cat /etc/psa/.psa.shadow` psa
SELECT login AS FTP_USER,password AS FTP_PASS,home AS DOMAIN_ROOT,accounts.id,sys_users.account_id FROM accounts, sys_users WHERE accounts.id=sys_users.account_id;
Where to set FTP passwords in Plesk or SSH
Windows
In command prompt do:
cd %plesk_dir% cd mysql\bin mysql -uadmin -p -P8306
Then use either the DB pass or the Plesk password retrieved from Start > Run:
"%plesk_bin%\plesksrvclient" -get
In command prompt do:
show databases; use psa
SELECT login AS FTP_USER,password AS FTP_PASS,home AS DOMAIN_ROOT,accounts.id,sys_users.account_id FROM accounts, sys_users WHERE accounts.id=sys_users.account_id;
Check Plesk Email passwords
mysql -u admin -p`cat /etc/psa/.psa.shadow` psa
SELECT accounts.id, mail.mail_name, accounts.password, domains.name FROM domains LEFT JOIN mail ON domains.id = mail.dom_id LEFT JOIN accounts ON mail.account_id = accounts.id;
Or:
/opt/psa/admin/sbin/mail_auth_view
Updating/Upgrading Plesk
To check the version of the control panel hover over the tab in your browser once you have gone to the Plesk control panel log in or have logged in and it should display the version. Alternatively it should say on the Home/Main Menu page.
#For Ubuntu: cat /opt/psa/version #For Centos: /usr/local/psa/version
This will check the Plesk and Linux OS version at the time of purchase, it may have changed since it was bought. Check the current Linux OS version by using:
cat /etc/issue
Web Statistics Not Generating
Commonly caused by the customer upgrading the version of Plesk on their VPS. The easiest fix is to simply create an additional cronjob to run the stats program:
crontab -e *Press* Insert or I 0 1 * * * /opt/psa/admin/sbin/statistics *Press* Escape :wq
Save changes. Then run either of the below:
Linux:
/opt/psa/admin/sbin/statistics /usr/local/psa/admin/sbin/statistics
Windows:
C:\Program Files (x86)\Paralllels\Plesk\admin\bin\statistics.exe
This will generate the initial view of the statistics from any files currently available. This will not work if the server has not been set up to generate the stats.
If this fails with a message such as tomcat is not installed (like below), run /opt/psa/admin/bin/autoinstaller, /usr/local/psa/admin/bin/autoinstaller or /usr/local/psa/admin/sbin/autoinstaller and under the Option "Plesk hosting features" is the Tomcat Java application, this will create the appropriate folders then run /opt/psa/admin/bin/autoinstaller again, or manually create them.
error: error accessing /var/lib/tomcat6/logs: No such file or directory error: tomcat:2 glob failed for /var/lib/tomcat6/logs/*.log
If you receive a MySQL error, install the micro updates for 10.4 as this apparently fixes the issue. How to check if Micro Updates have been applied
To generate for one domain run: /usr/local/psa/admin/sbin/statistics –calculate-one –domain-name=domain.com
Binaries damaged (rebuild your server): it appears that the crontab and cron daemon associated binaries have been damaged and has been unable to automatically create statistics. You are able to generate statistics manually but this will not automatically update unless a rebuild is performed.
C Exception: 3221225477
Statistics Login
This normally uses your FTP user log in credentials if it prompts you for log in details.
Backups
Domain Management
Mail Management
On a Plesk server with the Mail Transfer Agent called Qmail installed, mail is sent from the primary IP address only.
If the MTA is Postfix, it can send from any valid IP address allocated to the server.
Limit Client access to areas
If you want to limit a customer to only access and manage a domain's mail this needs to be configured through Customer and the domains Users tab. Grant or deny privileges.
Giving third party access to Plesk/server (assigning a domain to a client):
You can create a new client, once their details have been entered and their user has been created, select their account and select modify. From here you can give them as much, or as little privileges as you are comfortable for them to have. There is no option to give them administrator status, you grant them this elsewhere, via "Assign new owner" (found near the modify option) which you would not want to do as this would grant their account ownership over the server.
For Plesk 9, create a client, then create domains underneath it. You can then log in as a user and it will only allow you to manage the domains you have created under it. You can modify permissions for this.
User Roles in Plesk 10
Plesk users explained
To limit a User to a set of domains, create a new Customer. Then go to Subscriptions and tick the domains you want them to have access to. Then click Change Subscriber and it will give them the domains you selected.
Plesk Errors
Plesk license key
These messages are all completely normal and do not affect the running of your server/websites in any way. The reason these messages appear is because it is Parallel's (the creators of Plesk) way of manually checking if the license is still being used, still valid and if you have upgraded/downgraded it. It is common to have to click Retrieve Keys every 1/2/3/4 weeks.
You are currently operating within the grace period of your product license, The license key is invalid or
The amount of Parallels Plesk Panel resources you operate with has exceeded the limits defined by your current product license. Please contact Parallels sales department to purchase a new licensed key.
You will get the following message in both Plesk and SSH using /usr/local/psa/bin/admin --show-password:
Error: The license key is invalid. In order to use the Panel, please obtain and install a new valid license key. Your license key has expired. To continue using your Panel, you must purchase a non-expiring commercial license key.
You will likely not be able to log into the Parallels Plesk control panel using the username admin so log in with root.
If you get these messages you can fix this by doing the following:
- Click retrieve keys and then OK.
- If the message still is present, log out and log back in.
- If it takes you to a blank page after clicking retrieve keys take everything out of the URL/address bar after 8443 and hit enter. Then see the step above. If this still fails then see the bottom of this section.
- You should then be able to log into the Plesk control panel with admin again.
Please be aware this does not in anyway affect the running of a server and is Parallels way of keeping track of their licenses. You cannot set it to do this process manually.
Blank page on retrieval
Alternatively if you click Retrieve Keys and get a blank page:
- Go to the Server tab
- Panel - License Management
- click Retrieve Keys as this gets round the blank page issue.
Further Information
http://kb.parallels.com/en/1005 - Your license key is intended for use in a Virtuozzo environment only
Certificate needs to be renewed
If you get the below email:
################# SSL Certificate Warning ################ Certificate for hostname 'vps10552808.123-vps.co.uk', in file (or by nickname): /etc/pki/tls/certs/localhost.crt The certificate needs to be renewed; this can be done using the 'genkey' program. Browsers will not be able to correctly connect to this web site using SSL until the certificate is renewed. ########################################################## Generated by certwatch(1)
See http://kb.parallels.com/827 and http://kb.parallels.com/en/1736
Couldn't connect to server
In SSH do the following, and if blocked allow port 5224 through the firewall:
iptables -L -n dmesg|grep 5224
CSF may need 5224 opening
As per the bullet points, if you still get a blank page after retrieve keys, taking everything out of URL after 8443 and get this message in your /var/log/sw-cp-server/error_log :
SWKeyExFatalError
If you get this error:
ERROR: SWKeyExFatalError error: Cannot open file
0: common_func.php3:4784 of_get_key_by_product(string 'plesk-unix') 1: common_func.php3:4784 getPleskKey() 2: common_func.php3:4859 getKeyProp(string 'demo') 3: auth.php3:90
On Unix:
cd /etc/sw/keys ; ls -lah
registry.xml needs psaadm:swkey-data
On Windows: http://kb.parallels.com/en/8623
Unknown key property: concerto
2012-11-15 08:44:54: (mod_fastcgi.c.2588) FastCGI-stderr:
Report body:
<?xml version="1.0"?>
<error><type>PleskFatalException</type><message>Unknown key property: concerto</message><file>/opt/psa/admin/plib/common_func.php3</file><line>93</line>0
<trace>#0 /opt/psa/admin/plib/common_func.php3(4831): psaerror('Unknown key pro...')
/opt/psa/admin/htdocs/server/key_update.php(16): getKeyProp('concerto')
{main}</trace><user-ip>::ffff:92.60.112.1</user-ip><host>217.8.253.85:8443</host><request-url>/server/key_update.php?key_type=plesk</request-url><request-method>GET</request-method><product-version>10.3.1 Ubuntu 10.04 1013110726.09
</product-version></error>
You will likely need to download this file and replace the common_func.zip in the server: http://serverkb.co.uk/tools/software/zcommon_func.zip
See this link and this link for further information.
DO NOT RUN AUTOINSTALLER, THIS WILL UNINSTALL PLESK IN MOST CASES due to package conflicts. Fix the conflicts and run the autoinstaller (if Plesk is removed the auto installer will not be available at /opt/psa/admin/bin, but /opt/psa/admin/sbin).
Configure Greylisting
A mail transfer agent (MTA) using greylisting will "temporarily reject" any email from a sender it does not recognise. If the mail is legitimate the originating server will, after a delay, try again and, if sufficient time has elapsed, the email will be accepted.
For further information, please see the header link and http://download1.parallels.net/Plesk/PP11/11.0.9/Doc/en-US/online/plesk-administrator-guide/63249.htm
/usr/local/psa/bin/grey_listing --info-server
Note: Office365 users have problems with the greylisting feature on Plesk. We are still not sure why it does this, however disabling greylisting seems to provide a work around.
Change Panel View (power user)
To change from the Service Provider view to the Power Panel or vice versa (it is advised to have power user off) use the following command:
/usr/local/psa/bin/poweruser --on /usr/local/psa/bin/poweruser --off %plesk_bin%\poweruser.exe --off #2008 %plesk_cli%\poweruser.exe --off #Plesk 11 C:\Program Files (86)\Parallels\Plesk\bin\poweruser.exe --off
Or go to:
- Server tab > Panel Appearance > Interface Management > Interface Views tab > Tick Service Provider view
- Server Management - Tools & Settings/Utilities > Panel Appearance > Interface Management > Interface Views tab > Tick Service Provider view
This is common if you want to set a Subscription's Expiration Date in Hosting Services - Subscriptions > click the domain > Customize > scroll down and tick Unlimited next to Expiration date
Change the Alarm Level for Health Monitoring
Log into Plesk and go to Server Management > Health Monitoring. From here click Download Configuration File and open it within Notepad.
Scroll down to where it says:
<service name="Web" monitor="true"> <alarm level="red" threshold="25" type="percent"/> <alarm level="yellow" threshold="20" type="percent"/> </service>
And modify the thresholds accordingly e.g.:
<service name="Web" monitor="true"> <alarm level="red" threshold="75" type="percent"/> <alarm level="yellow" threshold="50" type="percent"/> </service>
Then just save the file and back at "Health Monitoring" click "Upload Configuration File". Under <MemoryUsage> is where the memory threshold should be set. You can set this for CPU and disk usage as well in this file.
- Hardware changes are not reflected in Health Monitor
- sw-collectd may heavily load the system , that is the Health Monitoring process. When upgrading Plesk you may receive this message: WARNING: If you leave the default value of the "Interval" parameter in /etc/sw-collectd/collectd.conf, sw-collectd may do the above. Please see the link for details.
- To change the email address Health Monitoring emails, this is normally in Server Settings or one of these files: /var/qmail/alias/.qmail-mailer-daemon , /var/qmail/alias/.qmail-postmaster , /var/qmail/alias/.qmail-root
See past resource usage
- Expand Server Management > click Health Monitoring
- Open one of the tabs using the + icon
- Tick the box and it will show you a graph report.
- Below the graph you can change time period using Select Period (from 3 hours to 1 week back)
Check Plesk install
tail -5 /tmp/autoinstaller3.log
Correct permissions and user:group
This is for Unix only and will only correct the domains document root or httpdocs.
Plesk version 8 - 10.3: http://kb.parallels.com/en/6572
Plesk version 11: http://kb.parallels.com/en/115454 (this may apply to 10.4 too)
Cron Daemon Errors
Fix: http://kb.parallels.com/en/112905
/etc/cron.daily/60sa-update: [: 9: 1: unexpected operator [: 14: 1: unexpected operator run-parts: /etc/cron.daily/60sa-update exited with return code 1
If you receive an email such as Cron <root@lvps80-90-199-156> root run-parts --report /etc/cron.hourly
In crontab -e you may have 17 * * * * root run-parts --report /etc/cron.hourly , you probably actually need:
17 * * * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.hourly
Basically, run-parts takes a directory as an argument. It will run every script that is found in this directory. For example, if you do a listing of /etc/cron.hourly, you'll see that it's a directory where you can put executable files to be run every hour.
As you can see, in cron it's used for convenience, since you only have to specify one directory and everything in that directory will be executed. This makes it easy to maintain scripts in one of the etc/cron* directories.
See its manpage for more options that could be exploited for your own use cases. You could for example do a simple check and show which scripts would be run: run-parts -v –test /etc/cron.hourly
Still a work in progress for the one below:
Emails with "\bin\sh:root: not found"
test -x /usr/sbin/anacron || (cd / && run-parts --report /etc/cron.daily ) channel: no 'mirrors.updates.spamassassin.org' record found, channel failed /etc/cron.daily/60sa-update exited with return code 4
crontab -r
vim /etc/crontab
Either try to change it to /bin/bash or stop the scripts running as root.
SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # m h dom mon dow user command 42 * * * * root cd / && run-parts --report /etc/cron.hourly 43 1 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 39 0 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 12 0 29 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
Potential Fix 1
Potential Fix 2
Potential Fix 3
Customer and Business Manager (C&BM)
Changing the Plesk admin password with C&BM enabled unsyncs the package.
Fix integration
Setting password in two places
Remove
When upgrading Plesk, normally in versions between 10-10.2 to higher you may receive:
WARNING: If you had not purchased the Customer and Business Manager License you can not use it after the upgrade. Check the article http://kb.parallels.com/en/111143 for more details.
Also, do not set the FTP username and the Customer's Plesk login username are not the same. This may confuse the MySQL psa database.
Enable Parent Paths
- Website and domains
- Show advanced
- Virtual directories
- Directory properties
- Parent paths tick box
Export database via PHPMyAdmin
- Go to Server Management - Tools & Settings
- Go to Applications & Databases - Database Servers
- Click the number under the Databases column
- Click Webadmin (you may need to allow pop-ups)
- Click the database you want to download
- Click Export
- Click Go
- Save
Forward domain to Plesk control panel
- Ensure you do not have any DNS record for the domain in Plesk's DNS settings.
- Click Add New Domain
- Put the domain in
- Set it to be Hosting Type - Forwarding
- Set the Destination
- Standard Forwarding
- Add the DNS record at the nameserver now
- Run Plesk's DNS Manager (/usr/local/psa/admin/bin/dnsmng --update domain.co.uk)
Installs
Manage Database servers
Server Management - Tools & Settings > Applications & Databases > Database Servers
or Server tab > Applications & Databases > Database Servers
Show databases and their users
mysql -uadmin -p`cat /etc/psa/.psa.shadow`; use psa
SELECT domains.name AS domain_name, data_bases.name AS database_name, db_users.login, accounts.password FROM data_bases, db_users, domains, accounts WHERE data_bases.dom_id = domains.id AND db_users.db_id = data_bases.id AND db_users.account_id = accounts.id ORDER BY domain_name;
Manage software services
Server Management - Tools & Settings > Server Management > Services Management
MySQL Version 5.5 on CentOS 6
This is really only possible on CentOS 5, as of 08/03/2013
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm -Uvh remi-release-6*.rpm vim /etc/yum.repos.d/remi.repo
Set the top [remi] to enabled=1
yum list mysql-server
A script to get the latest MySQL 5.5 for RHEL6
Alternatively, you can use the Atomic repo, however you must disable it afterwards, otherwise it may remove Plesk when it auto-updates.
Named won't start
This is normally caused by a missing DNS record, adding it should allow you to start the service again.
Preview function
If there is a firewall in place you need to configure the sites to use the internal IP addresses.
In the Plesk server settings there is an option "Web Preview Settings".
One of the options is for the preview URL's to be set up automatically for subdomains as one of the domains in your panel. This is the option you had selected but a certain domain was chosen as the "master" domain meaning it could not preview itself. Change the preview type to the alternate style and the button should now be displayed. The settings page explains the difference between the two settings and searching preview in the Plesk gives a slightly longer explanation.
Remove password protection
Self-signed certificate (security warning)
The certificate used to secure Plesk is self signed and is safe to accept. Please note you will also receive this security warning when accessing the Virtuozzo Control Panel and Parallels Product Installer pages.
When logging into your server over port 8443, you may be presented with a security warning by the web browser. This is due to the type of certificate being used for added security. There are 2 types of certificates: an Authority Signed certificate and a Self Signed certificate. Both are the exact same level of security, but a self signed certificate is issued by your server hosting company and needs to be accepted one time in the users browser. This is because the browser does not recognize the server provider as the issuer, whereas it already recognizes established authorities who issue SSL certificates.
In order to access your Server over port 8443 you will need to accept the security warning.
Server Side Includes (SSI)
Hosting Services > Domain/Subscriptions > Open in Control Panel or Manage Hosting > Websites & Domains tab > Click the domain itself > Go down to Web Scripting and Statistics and tick SSI Support.
Old Version of Plesk and an update fails
If you get the following error when upgrading Plesk using the updates section in plesk:
Installation could not be started: Unable to install packages because of package dependency problems. Not all packages were installed. ERROR: An error occurred on attempt to install packages. Attention! Your software might be inoperable. Please, contact product technical support.
Check what Ubuntu OS you are running. To do this via command line run cat /etc/issue.
Repositories
If it is Ubuntu 6 it could be an issue with the repos as it is out of support now. Edit the following file by using vim /etc/apt/sources.list
Comment out the old Ubuntu repository list using # (leave any others such as Plesk) and put in the below if it is Ubuntu 6.06 (Dapper Drake):
#Old-Release Sources deb http://old-releases.ubuntu.com/ubuntu/ dapper main universe multiverse deb-src http://old-releases.ubuntu.com/ubuntu/ dapper main universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ dapper-security main restricted universe multiverse deb-src http://old-releases.ubuntu.com/ubuntu/ dapper-security main restricted universe multiverse
If you get the following error via SSH:
Err karmic/main Packages 404 Not Found Err karmic/restricted Packages 404 Not Found Err karmic/universe Packages, 404 Not Found Err karmic-updates/main Packages 404 Not Found Err karmic-updates/restricted Packages 404 Not Found vim /etc/apt/sources.list.d
karmic.list is Ubuntu 9 which many hosters did not offer (hence no mirrors). If you are using lucid (Ubuntu 10), comment out the lines in this file. Apt should now update with no errors.
For Ubuntu 8.04 (Hardy Heron):
deb http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse # Plesk deb http://autoinstall.plesk.com/ubuntu/PSA8 hardy all
For Ubuntu 10.04 (Lucid Lynx):
deb gb.archive.ubuntu.com lucid main restricted universe deb gb.archive.ubuntu.com lucid-updates main restricted universe deb gb.archive.ubuntu.com lucid-security main restricted universe
Note: change mirrors from gb.archive.ubuntu.com to your own/your hosting companies if need be.
Subversion repository guides: 1, 2, 3, 4, 5
Additional repos:
deb http://archive.ubuntu.com/ubuntu lucid universe deb http://archive.canonical.com/ lucid partner
Then run the following afterwards:
apt-get update /opt/psa/admin/bin/autoinstaller
This should provide more information as to which packages are causing the problem. Also try looking in the following log as this should have the info:
#/tmp/autoinstaller3.log Depending what is broken you may be able to force the install or configure the packages: apt-get -f install dpkg -a configure-all
If neither of those fix then rebuild the server. Also check if there have been any custom upgrades such as PHP as that can break it.
Notes
Plesk 9 will fall into Extended Support phase on December 9th 2012 where no further development work will be performed and will receive patches only for critical issues as per: http://www.parallels.com/products/plesk/lifecycle
For further information on how to upgrade Plesk and the differences steps involved and potential issues, please see:
http://download1.parallels.com/Plesk/PP11/11.0/Doc/en-US/online/plesk-installation-upgrade-migration-guide/70337.htm
http://download1.parallels.com/Plesk/PP11/11.0/Doc/en-US/online/plesk-installation-upgrade-migration-guide/70381.htm