webinoly 安裝紀錄

webinoly 是搭配使用wordpress很不錯的東西。直接打指令就可以快速建好一個wordpress的網站。當然要直接拿來當其他的PHP的網站也是可以的。

首先更新系統

$ sudo apt update
$ apt list --upgradeable 
$ sudo apt -y upgrade
$ sudo apt -y autoremove

經測試如果是裝在proxmox內使用container的方式安裝的環境狀況下,還需要先安裝這些之後再開始正式安裝

Ubuntu
# apt install snapd -y
# snap install certbot --classic

Debian
# apt install fuse squashfuse -y
# apt install snapd -y
# sanp install core
# snap install certbot --classic

開始安裝

全部安裝
# wget -qO weby qrok.es/wy && sudo bash weby

只安裝PHP(含Nginx)
# wget -qO weby qrok.es/wy && sudo bash weby -php

只安裝資料庫
# wget -qO weby qrok.es/wy && sudo bash weby -mysql

如果想要指定版本安裝用這個

# wget -qO weby qrok.es/wy && sudo bash weby -lemp -ver=1.14.3

這樣就完成了,大約十分鐘上下,基本上應該是看主機的雲算能力吧。
記得,將最後 SSH 顯示的 MySQL 帳號、密碼複製下來。免得把自己關在外面不能用 XD
真的忘記也沒差,可以用這指令喊回來

# webinoly -dbpass

時區修正
安裝過程中有發現時區不對。



來修正成為台北時區

Ubuntu部分

# timedatectl set-timezone Asia/Taipei

webinoly的部分

# webinoly -timezone=Asia/Taipei

打開 HTTP Authentication

# httpauth -add

這個是如果需要用網頁上的帳號登入,就是http://IP:22222/這種的登入會需要先跑上面這個指令.使用的帳密就是一開始安裝好的admin那一組 (就是執行webinoly -dbpass裡面可以看到)

針對某網站取消 HTTP Authentication

# httpauth 網域名稱 -wp-admin=off

設定TOOLS頁面的預設網站

# webinoly -tools-site=網域名稱

預設會開啟的PORT

  • 22/TCP (Inbound/Outbound)
  • 25/TCP (Outbound) SMTP
  • 80/TCP (Inbound/Outbound)
  • 443/TCP (Inbound/Outbound)
  • 587/TCP (Outbound) SMTP
  • 11371/TCP (Outbound)
  • 22222/TCP (Inbound)

主要指令

官方文件只有英文,應該就這五個的應用
HttpAuth · Log · Site · Stack · Webinoly
下面的操作基本上也都是這五個的應用

新建一個網站

一般建站

建立一個純HTML的站
# site example.com -html
建立一個PHP網站
# site example.com -php
建立一個WordPress網站
# site example.com -wp

一般建WP站並加上快取

# site example.com -wp -cache=on

如果是要把現成網站複製成另一個網站

# site example.com -clone-from=staging.example.com

加上SSL

# site example.com -ssl=on

上面這個是使用免費的SSL憑證。若是要加上自己購買的是這樣。後面要帶上 -ssl-key= 跟 -ssl-crt= 。位置是分別指向憑證內的key跟crt檔案。

# site example.com -ssl=on -ssl-key=/PATH/key -ssl-crt=/PATH/crt

如果是使用在反向代理的情境下,要用這個(記得最後的-root-path=這個路徑要確實存在)。

# site example.com -ssl=on -root-path=/opt/app

強制刪除沒用的SSL證書

# site example.com -delete=force -revoke=on

列出有加上SSL的網站

# site -list=ssl

更新SSL(只會針對有效期間剩下一個月之內的SSL)

# site -ssl=renew

為網站加上存取log

# log example.com -only-error=off

刪除一個網站

# site example.com -delete

開啟SFTP,帳號www-data

# webinoly -login-www-data=on

要記得passwd去加個密碼,跟ssh的設定要改允許使用密碼登入

因為我個人不用phpmyadmin操作資料庫,所以移除掉這個pma

# stack -pma -purge

若是主機有升降級
可以RESET自動來進行最佳化

# webinoly -server-reset

想要變更PHP版本

目前預設的PHP是8.2版本。若想要調改成別的版本

# stack -php-ver=7.4

他的做法是移除目前版本再安裝新的指定版本。所以執行過程中,要注意已經上線的網站會無法正常運作。

安全相關

禁止訪客直接用IP訪問

# webinoly -default-site=blackhole

將IP加入黑名單

# webinoly -blockip=12.34.56.78

關於外部直接連線資料庫的部分

預設是不開放外部能夠隨意連上資料庫,若要開放的話,可以放行

方式一: 改設定檔的方式

# vi /etc/mysql/mariadb.conf.d/50-server.cnf

裡面找到一行 bind-address = 127.0.0.1 這行,最前面用#註解起來後執行 systemctl restart mariadb.service 重新啟動資料庫服務即可。

方式二: 下指定指令

# webinoly -mysql-public-access=on -create-master-user=[帳號,密碼]

若是要當成其他服務的前端來用。後面需要指定網路IP跟port

site example.com -proxy=[192.168.1.10:8082]