>>>>>> 文章點閱數:12,554 <<<<<<
文章目錄

VestaCP提供VPS使用者簡易的網頁主機環境,
透過簡單的指令建立LNAMP+電子郵件系統,
性能優異加上圖形化管理介面方便性高,
常被當作cPanel系統的替代方案。

但是實際安裝操作下,
VestaCP有諸多細節須留意,
才能順利配置站點到VestaCP系統運行。

2017/6/15 標示新版Ubuntu16.04系統安裝VestaCP可省略操作。

2016/10/1 更新Ubuntu14.04系統安裝VestaCP並啟動HTTP/2與php7。

VestaCP官網 https://vestacp.com

vestacpi

VestaCP支持以下作業系統

RHEL/CentOS 5,6,7
Debian 6,7,8
Ubuntu 12.04-16.04

請留意本教程以Ubuntu 14.04示範,不同系統安裝方式會有出入。

所有操作均以root管理員身分執行,非管理員帳戶請鍵入

sudo -i

輸入帳戶密碼成為root管理員。

1.請先更新Ubuntu套件清單

apt-get update

2.安裝通用套件庫(新版可略)

apt-get install -y software-properties-common

參考資料 http://www.ubuntubuzz.com

3.輸入php7與新版Nginx/Apache的PPA,並預先處理本地語言為UTF-8(新版可略)

apt-get install -y language-pack-en-base

LC_ALL=en_US.UTF-8 add-apt-repository -y ppa:ondrej/php

LC_ALL=en_US.UTF-8 add-apt-repository -y ppa:chris-lea/nginx-devel

LC_ALL=en_US.UTF-8 add-apt-repository -y ppa:ondrej/apache2

LC_ALL=en_US.UTF-8 add-apt-repository -y ppa:ondrej/mysql-5.6

apt-get update

若此時SSH終端出現

The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY xxxxxxxxxxxxxxxx 的錯誤訊息

請複製 NO_PUBKEY後方的文字輸入

apt-key adv --recv-keys --keyserver keyserver.ubuntu.com  xxxxxxxxxxxxxxxx

參考資料 https://www.digitalocean.com/community
http://www.ubuntumaniac.com/2016/05/install-nginx-1110-on-ubuntu-1604.html
http://forum.ubuntu.org.cn

4.升級Ubuntu系統套件

apt-get upgrade -y

5.安裝curl套件

apt-get install -y curl

6.下載VestaCP腳本並執行安裝

請進入VestaCP官網,點選Install,顯示Install標籤的內容

vestacpi1

 

vestacpi2

此時請先確認主機已經安裝curl,即可透過指令

curl -O http://vestacp.com/pub/vst-install.sh

下載安裝腳本到主機,

再往下捲動頁面到Advanced Install Settings

選擇站長所需的系統環境

本教程以Nginx前端+Apache後端配置,並關閉MAIL與DNS功能,
若使用者要使用其他配置須留意VestaCP可能會出現錯誤,
參考配置如下圖。

如果不需要信箱系統與DNS可以取消(選擇no),將能節省主機RAM的消耗

vestacpi4

而防火牆Firewall亦可選擇其他伺服器防禦模組,VestaCP的Firewall亦可取消(選擇no),
推薦使用雲鎖Cloudlock強化Linux伺服器安全。

雲鎖Cloudlock 安裝教學 http://www.sztio.com/1135

自訂系統選擇好後按下Generate Install Command

會出現bash開頭的指令即可貼上終端

vestacpi5

終端機顯示以下對話確認後執行VestaCP安裝

vestacpi6

如果無法順利安裝時請嘗試在bash指令加上 -f 強制安裝,

如果顯示需要手動修改主機名稱請開啟/etc/hostname與/etc/hosts修改名稱並重啟主機,

如果是作業系統更新鏡像問題,有些主機商會使用自家鏡像,

可以到主機的/etc/apt/sources.list

將原本http://鏡像主機網址/ubuntu/

全部取代成http://archive.ubuntu.com/ubuntu/並保存即可

大約10分鐘左右完成VestaCP安裝,

開啟瀏覽器開啟 https://伺服器的IP:8083

輸入帳號與密碼登入管理員介面

vestacpi7

7.安裝php7附加套件(請自行取捨需要的功能,新版可略)

apt-get install -y php7.0-common libapache2-mod-php7.0 php7.0-cgi php7.0-cli php7.0-phpdbg php7.0-fpm libphp7.0-embed php7.0-dev php7.0-curl php7.0-gd php7.0-imap php7.0-interbase php7.0-intl php7.0-ldap php7.0-mcrypt php7.0-readline php7.0-odbc php7.0-pgsql php7.0-pspell php7.0-recode php7.0-tidy php7.0-xmlrpc php7.0 php7.0-json php-all-dev php7.0-sybase php7.0-sqlite3 php7.0-mysql php7.0-opcache php7.0-bz2 php7.0-zip

參考資料 http://www.zhujiceping.com/16657.html

8.後端Apache停用php5,啟動php7(新版可略)

a2dismod php5
a2enmod php7.0

系統將會提示請重啟Apache

service apache2 restart

參考資料 https://forum.vestacp.com

9.處理phpMyAdmin切換php版本後無法執行的問題(新版可略)

apt-get install -y php7.0-mbstring

安裝後請重啟系統

需留意phpMyAdmin的匯出資料庫功能在PHP7會出現500 error,
請編輯/usr/share/phpmyadmin/export.php

vi /usr/share/phpmyadmin/export.php

查看第864行,找到break 2;

if (! $export_plugin->exportStructure(
 $db, $table, $crlf, $err_url,
 'triggers', $export_type,
 $do_relation, $do_comments, $do_mime, $do_dates
)) {
 break 2;
}

修改成break;並保存。

參考資料 http://stackoverflow.com
http://superuser.com/a/1111548

10.修復VestaCP的資料庫與phpMyAdmin串接問題

由於目前這個VestaCP版本會出現phpMyAdmin無法連接資料庫的問題
(測試過CentOS7系統並不會有這個問題,CentOS7系統可以跳過本節教學)

請先執行以下指令(由cloudwp提供的教學)

cd /usr/share/doc/phpmyadmin/examples
gunzip config.sample.inc.php.gz
cp ./config.sample.inc.php /etc/phpmyadmin/config.inc.php

vestacpi8

或透過WinSCP以SFTP連接主機(按這裡前往阿榮福利味下載程式),

將/usr/share/doc/phpmyadmin/examples底下的

config.sample.inc.php複製到本地電腦改名為config.inc.php

vestacpi9

再上傳到/etc/phpmyadmin/覆蓋原始檔案即可

vestacpi10

新版建議額外安裝php-zip套件,讓phpmyadmin可以解壓縮zip打包的資料庫,請於終端機鍵入

apt-get install php-zip -y

安裝完成後請重新載入系統即可。

11.安裝繁體中文語言包(新版可略)

(目前新版0.9.8已經解決切換中文500錯誤的問題,可以跳過本節教學)

接下來安裝繁體中文的語言包到VestaCP,請在終端輸入

wget https://raw.githubusercontent.com/serghey-rodin/vesta/master/web/inc/i18n/tw.php -O /usr/local/vesta/web/inc/i18n/tw.php

vestacpi11

登入VestaCP管理員面板

vestacpi12

先點選管理員帳戶更改語言

vestacpi13

Language選擇tw並保存,即可出現繁體中文操作介面

vestacpi14

12.修改主機時區與預設語言

點選”服務器”選項

vestacpi15

點選齒輪圖示配置伺服器

vestacpi16

更改伺服器預設時區與預設語言

vestacpi17

配置伺服器的備份數量與備份位置(提供FTP/SFTP遠程備份的功能)

vestacpi18

13.啟用VestaCP自動更新

為了降低VestaCP未及時更新造成伺服器空窗問題,請點選”更新”

vestacpi19

啟用自動更新,讓VestaCP自動升級到最新的系統

vestacpi20

但如果擔心升級會影響站點穩定性請停用自動更新改成手動操作。

14.設定不同方案規格並建立子帳戶

VestaCP面板提供多帳戶管理的服務(類似WHM),

點選”套件”,在某個方案按下”編輯”即可調整不同方案的規格

包括網頁主機空間、流量、資料庫數量、備份量,以及是否開放SSH連線

vestacpi21

配置好套件方案的規格後,即可新增VestaCP的子帳戶,

請點選”使用者”並按下增加的圖示即可建立

一般建議給子帳戶SSH存取設定為nologin,

或設定成rssh,提供比較安全的SFTP連接

vestacpi22

15.配置網站的SSL

(本節的SSL教學為手動安裝已取得的域名SSL憑證,如果沒有SSL憑證請跳第16節的教學)

站點SSL已經是網站基本配備,

VestaCP網站安裝需要安裝SSL時點選”網頁”,新增或編輯網域對應配置

vestacpi23

勾選SSL功能,選擇好SSL家目錄後分別貼上證書代碼

vestacpi24

若使用Apache格式的SSL證書,

請務必補齊SSL中級憑證避免斷裂問題,完成後儲存即可

vestacpi25

16.安裝VestaCP Let’s Encrypt自動更新模組(新版可略)

(本節透過VestaCP Let’s Encrypt自動更新模組取得站點SSL憑證)

下載git到主機

cd /usr/local
git clone https://github.com/certbot/certbot.git
git clone https://github.com/interbrite/letsencrypt-vesta.git

建立webroot資料夾

mkdir -p /etc/letsencrypt/webroot

連接/usr/local/bin/便於控制帳戶

ln -s /usr/local/certbot/certbot-auto /usr/local/bin/certbot-auto
ln -s /usr/local/letsencrypt-vesta/letsencrypt-vesta /usr/local/bin/letsencrypt-vesta

由於後端為Apache,輸入

ln -s /usr/local/letsencrypt-vesta/letsencrypt.conf /etc/apache2/conf.d/letsencrypt.conf

重啟Apache

service apache2 restart

檢查自動更新模組是否啟用

which at atd atq atrm
service atd status

若顯示未啟用或錯誤,請請鍵入

apt-get install at

並啟動at

service atd start

接下來即可配置Let’s Encrypt到站點,
請留意站點的使用者帳戶名稱與域名是否正確,
僅支持頂級域名與二級域名,
使用二級域名的站點務必刪除VestaCP產生www開頭的三級域名,
並確認域名A紀錄已經對應到主機IP後,
輸入規則為

letsencrypt-vesta -a 60 USERNAME DOMAIN

其中-a 60為60天自動renew
USERNAME為帳戶名稱
DOMAIN是要簽發Let’s Encrypt證書的域名,
完成Let’s Encrypt配置。

VestaCP Let’s Encrypt模組 GitHub https://github.com/interbrite/letsencrypt-vesta

17.配置VestaCP面板的SSL

網頁的SSL配置可以透過VestaCP面板進行處理,

但是VestaCP面板本身的SSL需要上傳到

/usr/local/vesta/ssl/底下

務必使用Nginx格式的SSL憑證,

若使用Apache格式SSL憑證時,

請將中級憑證加入網域憑證中串接再上傳到伺服器上覆蓋

certificate.crt
certificate.key

vestacpi26

確認VestaCP面板可透過https訪問表示SSL已經生效

新版請從VestaCP面板>伺服器>設定>Vesta SSL配置即可。

參考資料 https://becoder.org/vestacp-lets-encrypt/

18.修改VestaCP面板的連接埠並禁止IP直接訪問

針對VestaCP面板的安全性來說,可以修改port提高安全性

請點選”防火牆”,按下/VESTA編輯

vestacpi27

加上VestaCP面板欲使用的port

vestacpi28

再編輯/usr/local/vesta/nginx/conf/nginx.conf檔案

vi /usr/local/vesta/nginx/conf/nginx.conf

vestacpi29

尋找

 server {
 listen 8083;
 server_name _;
 root /usr/local/vesta/web;
 charset utf-8;

將8083修改成所需的port,
並將server_name    _;修改成VestaCP後台域名,例如

server_name    vestacp.example.com;

vestacpi30

如果VestaCP控制面板域名已經完成IP解析,請在server{

}下方加上

server {
 listen 8083 default_server;
 server_name _;
 return 403; 
 ssl on;
 ssl_certificate /usr/local/vesta/ssl/certificate.crt;
 ssl_certificate_key /usr/local/vesta/ssl/certificate.key;
 ssl_session_cache shared:SSL:10m;
 ssl_session_timeout 10m;
}

請務必將8083的部分修改成所需的port,
禁止直接透過IP訪問VestaCP面板。

重新啟動伺服器讓VestaCP面板新port生效

vestacpi31

19.VestaCP面板對應網域DNS

再到網域DNS配置指向伺服器IP完成VestaCP建置

vestacpi32

20.處理VestaCP子帳戶無法串接資料庫問題(新版可略)

(目前新版0.9.8已經解決切換中文500錯誤的問題,可以跳過本節教學)

建議管理員可以在資料庫選項新增一個空白資料庫,

主要防止子帳戶無法對資料庫進行連接的問題。

vestacpi33

 

VestaCP面板配置到此完成,

其他的附加應用可以訪問VestaCP論壇 https://forum.vestacp.com/

比方說cPanel主機常見的一鍵安裝功能,

VestaCP面板同樣有腳本可以使用,請參考以下連結

https://forum.vestacp.com/viewtopic.php?f=19&t=8523

21.解決VestaCP SSL的Weak DH安全性問題(新版可略)

openssl dhparam -out /etc/nginx/dhparams.pem 2048

key生成時間較長,可先用WinSCP進行以下操作

請開啟/etc/nginx/nginx.conf檔案修改內容

vi /etc/nginx/nginx.conf

請在ssl_ciphers後方加上

ssl_dhparam /etc/nginx/dhparams.pem;

如果站點有HSTS的需求,請一併加上

add_header Strict-Transport-Security "max-age=15552000";

或

add_header Strict-Transport-Security "max-age=15552000; includeSubdomains";

配置完成後請重新載入Nginx設定

nginx -s reload

須留意HSTS不能設定在後端Apache的.htaccess會出現錯誤。

參考資料 https://becoder.org/vestacp-weakdh/

22.禁用部分具有風險的php函式

請開啟/etc/php/7.0/apache2/php.ini

vi /etc/php/7.0/apache2/php.ini

在disable_functions =後方加上

apache_child_terminate, apache_setenv, define_syslog_variables, escapeshellarg, escapeshellcmd, eval, exec, fp, fput, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_alter, ini_get_all, ini_restore, inject_code, mysql_pconnect, openlog, passthru, phpAds_remoteInfo, phpAds_XmlRpc, phpAds_xmlrpcDecode, phpAds_xmlrpcEncode, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, posix_setuid, posix_uname, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec, syslog, system, xmlrpc_entity_decode,

重啟Apache

service apache2 restart

參考資料 https://vestacp.com/docs/
https://becoder.org/secure-vestacp-php-phpmyadmin/

23.啟動前端Nginx的HTTP/2功能與CROS

請開啟/home/(vesta_user)/conf/web/snginx.conf
其中(vesta_user)請替換成使用者名稱,
如果VestaCP尚無站點啟用SSL將無法進行以下操作。

vi /home/(vesta_user)/conf/web/snginx.conf

請將

server {
listen xx.xx.xx.xx:443;

}

修改成

server {
 listen xx.xx.xx.xx:443 http2;
...
}

再將

location / {
proxy_pass https://%ip%:%web_ssl_port%;
location ~* ^.+\.(%proxy_extentions%)$ {
root %sdocroot%;
access_log /var/log/%web_system%/domains/%domain%.log combined;
access_log /var/log/%web_system%/domains/%domain%.bytes bytes;
expires max;
try_files $uri @fallback;
}
}

修改成

 location / {
 proxy_pass https://%ip%:%web_ssl_port%;
 location ~* ^.+\.(%proxy_extentions%)$ {
 root %sdocroot%;
 access_log /var/log/%web_system%/domains/%domain%.log combined;
 access_log /var/log/%web_system%/domains/%domain%.bytes bytes;
 expires max;
 try_files $uri @fallback;
  add_header Access-Control-Allow-Origin *;
 }
 }

保存並重啟Nginx

nginx -s reload

接下來編輯預設模板自動將未來新增的站點啟動HTTP/2與CROS
請開啟/usr/local/vesta/data/templates/web/nginx/default.stpl

vi /usr/local/vesta/data/templates/web/nginx/default.stpl

請將

server {
listen %ip%:%proxy_ssl_port%;
server_name %domain_idn% %alias_idn%;
ssl on;

修改成

server {
 listen %ip%:%proxy_ssl_port% http2;
 server_name %domain_idn% %alias_idn%;
 ssl on;

如果其他站點Nginx選擇不同模式,請一併修改
/usr/local/vesta/data/templates/web/nginx/hosting.stpl
/usr/local/vesta/data/templates/web/nginx/caching.stpl

參考資料 https://forum.vestacp.com
https://forum.vestacp.com

24.解決VestaCP防火牆CIDR輸入格式錯誤問題(新版可略)

如果站點有使用CloudFlare可根據
https://www.cloudflare.com/ips
建立封鎖規則,但這個目前VestaCP新版0.9.8配置CIDR會回報格式錯誤
請直接開啟/usr/local/vesta/data/firewall/rules.conf編輯VestaCP防火牆規則

vi /usr/local/vesta/data/firewall/rules.conf

內容範例如下

RULE='11' ACTION='DROP' PROTOCOL='UDP' PORT='53' IP='0.0.0.0/0' COMMENT='DNS' SUSPENDED='no' TIME='21:56:40' DATE='2016-09-28'

RULE='12' ACTION='ACCEPT' PROTOCOL='TCP' PORT='80,443,8083' IP='103.21.244.0/22' COMMENT='CloudFlare' SUSPENDED='no' TIME='17:15:41' DATE='2014-09-16'

其中RULE=’##’為規則編號
ACTION=’ACCEPT/DROP’規則控制允許連線或封鎖
PROTOCOL=’ICMP/TCP/UDP’規則控制通訊協定
PORT=’##,###,####’規則控制連接埠,以,隔開
COMMENT=’NAME’為規則的名稱

參考資料 https://forum.vestacp.com

25.處理phpMyAdmin無法匯入檔案較大的資料庫

請開啟/etc/php/7.0/apache2/php.ini

vi /etc/php/7.0/apache2/php.ini

分別編輯 max_execution_time = 60 腳本超時時間
max_input_time = 60
memory_limit = 256M 腳本占用記憶體上限
post_max_size = 10M POST提交上限
upload_max_filesize = 10M 檔案上傳大小上限
須留意數值大小memory_limit > post_max_size > upload_max_filesize

接下來請開啟/etc/mysql/my.cnf

vi /etc/mysql/my.cnf

請修改max_allowed_packet = 1M的大小
(例如 max_allowed_packet = 10M)

設定完成後請重啟主機

reboot

參考資料 http://actionpc.pixnet.net/blog

http://jjdai.zhupiter.com

26.配置免費WAF模組mod security

安裝mod_security

apt install -y libapache2-mod-security2

使用預設的配置文件

cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf

編輯mod_security配置

vi /etc/modsecurity/modsecurity.conf

請將SecRuleEngine DetectionOnly

修改成

SecRuleEngine On

並儲存。

接下來啟動CRS規則,編輯

vi /etc/apache2/mods-enabled/security2.conf

請在</IfModule>前方加上

IncludeOptional /usr/share/modsecurity-crs/*.conf
IncludeOptional /usr/share/modsecurity-crs/activated_rules/*.conf

並儲存。

開始匯入需要的CRS預設提供的規則。

ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_23_request_limits.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_23_request_limits.conf
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_30_http_policy.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_30_http_policy.conf
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_35_bad_robots.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_35_bad_robots.conf
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_35_bad_robots.data /usr/share/modsecurity-crs/activated_rules/modsecurity_35_bad_robots.data
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_35_scanners.data /usr/share/modsecurity-crs/activated_rules/modsecurity_35_scanners.data
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_45_trojans.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_45_trojans.conf
ln -s /usr/share/modsecurity-crs/base_rules/modsecurity_crs_47_common_exceptions.conf /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_47_common_exceptions.conf

除了CRS預設規則外,也能匯入ComodoWAF的防禦規則

Comodo WAF官網 https://waf.comodo.com

免費註冊ComodoWAF後,請下載取得以下規則,
22_PHP_PHPGen.conf
26_Apps_Joomla.conf
28_Apps_WordPress.conf
29_Apps_WPPlugin.conf
31_Apps_Drupal.conf
並添加到/usr/share/modsecurity-crs/activated_rules/即可。

啟動mod_security模組
a2enmod security2

完成後請重新載入Apache

service apache2 restart

需留意mod_security模組啟動後,
phpMyAdmin匯入功能無法直接匯入.sql格式檔案,
請先將檔案壓縮成檔名.sql.zip格式的壓縮檔再上傳即可。

查看mod_security攔截日誌

cat /var/log/apache2/modsec_audit.log

如果要停用mod_security模組請輸入

a2dismod security2

並重新載入Apache即可

如果是運行WordPressCMS站點,
可以額外安裝WAF外掛(NinjaFirewall (WP Edition))進行防禦

NinjaFirewall (WP Edition)外掛頁面 https://wordpress.org/plugins/ninjafirewall/

ninfirewall

參考資料 http://blog.topspeedsnail.com
https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual

27.配置mod cloudflare模組

mod_cloudflare可以讓網站正確地從CloudFlare獲得訪客IP

下載Ubuntu 14.04 x64安裝包

curl -O https://www.cloudflare.com/static/misc/mod_cloudflare/ubuntu/mod_cloudflare-trusty-amd64.latest.deb

直接安裝

dpkg -i mod_cloudflare-trusty-amd64.latest.deb

重新啟動Apache

service apache2 restart

新版請下載Ubuntu 16.04 x64安裝包

curl -O https://www.cloudflare.com/static/misc/mod_cloudflare/ubuntu/mod_cloudflare-xenial-amd64.latest.deb

直接安裝

dpkg -i mod_cloudflare-xenial-amd64.latest.deb

重新啟動Apache

service apache2 restart

參考資料 https://www.cloudflare.com/technical-resources/

28.解決PHP mail無法寄信

請於終端機鍵入

apt-get install sendmail -y

WordPress可透過WP Mail SMTP外掛測試PHP mail(),
若仍然無法寄送請檢查防火牆是否已阻擋SMTP端口。

須留意如果啟用寄信程式後,主機名若未完成解析時會持續寄送解析錯誤信件,
內容像是sudo: unable to resolve host vps.example.top
請直接設定主機hostname解析到本地即可,請在終端機鍵入

vi /etc/hosts

按i輸入一行

127.0.0.1 localhost localhost.localdomain vps.example.top

按Esc停止輸入,鍵入:w寫入檔案,鍵入:q退出檔案即可

參考資料 https://stackoverflow.com http://www.flogiston.net

29.設定SSH金鑰認證

這項操作請分別在root帳戶與admin帳戶(與其他子帳戶)的終端介面取得金鑰

建立帳戶的/.ssh隱藏資料夾並給予權限

mkdir -p ~/.ssh
chmod 700 ~/.ssh

產生金鑰

ssh-keygen

接下來對話均輸入Enter預設即可
金鑰產生後將id_rsa.pub輸出成authorized_keys檔案

cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

下載帳戶/.ssh/id_rsa檔案,
將檔案透過PuTTYgen讀取轉存成.ppk私密金鑰(private key)

PuTTYgen 下載官網 http://www.chiark.greenend.org.uk

接著請將SSH連接配置.ppk驗證確定可以訪問。

當所有帳戶均取得金鑰後,請以root帳戶身分開啟/etc/ssh/sshd_config

vi /etc/ssh/sshd_config

將PasswordAuthentication設定為no
PubkeyAuthentication啟用並設定為yes

PasswordAuthentication no
PubkeyAuthentication yes

保存檔案後請輸入reboot重啟主機使設定生效。

30.禁用主機預設的root帳戶

請透過VestaCP的admin管理員帳戶與伺服器SSH連線,
鍵入sudo -i後輸入密碼以管理員身分操作

請開啟/etc/ssh/sshd_config

vi /etc/ssh/sshd_config

按下i進入編輯模式
將PermitRootLogin yes修改成PermitRootLogin no
按下鍵盤ESC退出編輯模式
輸入;w(含w左邊的半形冒號)保存sshd_config
輸入:q退出vi編輯器
接下來請輸入reboot重啟主機使設定生效。

參考資料 http://www.vixual.net/blog/archives/234
https://dotblogs.com.tw/may05005/2015/12/23/134838

31.移除VestaCP面板

如果需要移除VestaCP面板

請在終端操作

service vesta stop

停止VestaCP運行

接下來執行移除指令

針對RHEL/CentOS 5,6,7系統

請執行
yum remove vesta*
rm -f /etc/yum.repos.d/vesta.repo

針對Debian 6,7,8/Ubuntu 12.04-15.10系統

請執行
apt-get remove vesta*
rm -f /etc/apt/sources.list.d/vesta.list

最後再刪除檔案目錄及corn即可

rm-rf /usr/local/vesta
VestaCP安裝-免費VPS控制面板配置教學
標籤:        
  • Vestacp 默認的 php 版本是 5.4,想升級到 5.5 或 5.6,發現一直升不去,
    Error: Package: php-pecl-zip-1.13.1-1.el7.remi.5.5.x86_64 (remi-php55)
    Requires: libzip.so.4()(64bit)
    Error: Package: php-gd-5.5.30-1.el7.remi.x86_64 (remi-php55)
    Requires: libgd.so.3()(64bit)
    Error: Package: php-gd-5.5.30-1.el7.remi.x86_64 (remi-php55)
    Requires: gd-last(x86-64) >= 2.1.1

    是 remi 源碼有問題嗎?

    • 抱歉,目前沒升級到php5.5~5.6的經驗,只有升級過php7,但當時會出現資料庫無法連接的問題就換回5.4版本了…

    • Ray Lee

      For CentOS 6:

      rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
      yum install yum-plugin-replace
      yum replace php-common –replace-with=php56w-common

  • 剛剛在 VestaCP 論壇看到,有好心人釋出多版本安裝腳本,就能自動完成多個 PHP 版本( 5.4,5.5, 5.6, 7.0 ) 的安裝和配置,看來 VestaCP 可以玩玩看了。
    連結:http://forum.vestacp.com/viewtopic.php?f=19&t=10854

    • 有空來測試看看,如果可以正常運行php7是最理想的

  • CentOS系統安裝VestaCP啟用HTTP/2的方法可以參考這裡
    http://www.joomlagate.com/index.php?option=com_content&view=article&id=325:recompile-nginx-with-openssl-1-0-2-on-centos-to-support-http-2&catid=3&Itemid=19
    主要還是透過openssl升級使Nginx得以支持HTTP/2