2017年6月12日 星期一

mariadb 大小寫敏感性的設定

登入 mariadb 後


show variables like 'lower%'

windows 預設是 1 不區分大小寫
unix 預設是 0 有區分大小寫

修改...
vim /etc/my.sql.d/server.cnf

在[mysqld]下新增
lower_case_table_names = 1

重啟mariadb 指令 service mysql restart  即可

缺點...若是既成的Database那麼若有Table Name使用到大小寫的就會讀不到,需要匯出Database整理成小寫後再匯回。

2017年5月15日 星期一

將DNS移轉到Azure DNS備忘

這些天在搬移DNS SERVER,因為IP可能換了所以要改的設定很多,不過其中發現最大的問題是架設在Azure VM中的DNS服務無法有效的被Hinet DNS連線,後來就有了此篇文章...

天下沒白吃的午餐,計價請參閱官方網站,不過不貴就是了。
https://azure.microsoft.com/zh-tw/pricing/details/dns/

Azure的VM可以指派公用IP使用,不過從內部檢視網路設定還是只配送Intranet IP,使用dig DomainName @公用IP 均回復Time out再對照使用者回報無法開啟各個服務所以問題大概是確認,參考此篇網址進行改修順利套用...但有些畫面不一下面是目前所使用的步驟。

1. 在Azuer的網路中找到DNS區域,新增此應用程式。


2. 開始設定A, CName, MX紀錄,右上角反白區域是等等設定要用的。


3. 將反白區域的DNS Server name去PING,取到相對應的IP


4. 因為網域是透過Hinet購買的,所以得至DNS異動與設定告知目前使用轉譯服務的設定,將Azure的那幾個DomaneName與透過命令提示字元ping到的IP輸入上去。


5. 完成後點確認看到下面的訊息,就等囉...




2017年4月19日 星期三

SSH與VirtualBox的錯誤紀錄

近期某個雲端伺服器要連線時回傳Write failed: Broken pipe

方法一:如果您有多台服务器,不想在每台服务器上设置,只需在客户端的 ~/.ssh/ 文件夹中添加 config 文件,并添加下面的配置:
ServerAliveInterval 60
方法二:如果您有多个人管理服务器,不想在每个客户端进行设置,只需在服务器的 /etc/ssh/sshd_config 中添加如下的配置:
ClientAliveInterval 60
方法三:如果您只想让当前的 ssh 保持连接,可以使用以下的命令:
$ ssh -o ServerAliveInterval=60 user@sshserver

恩恩...因為伺服器在雲端,曾經發生改了防火牆或SSH就再也失聯的窘境,所以就下次小心別遺忘伺服器太久沒去關心,放大絕重開機解決無法連線的問題,還好有規劃Load Balance環境!! 有驚無險地排除~~

另一個狀況是,VM做了快照之後~重開機完顯示cannot be closed because it is still attached to 1 virtual machines ... 
解決方式

1. 先卸載 vdi
代碼: [選擇]
$ VBoxManage storageattach $VM --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium none
2. 關閉 vdi
代碼: [選擇]
$ VBoxManage closemedium disk /path_to/xxx.vdi
$ VBoxManage showhdinfo /path_to/xxx.vdi
UUID:                 08bdda17-96f9-4363-a9bb-0807686fd0a8
Accessible:           yes
Logical size:         122880 MBytes
Current size on disk: 43279 MBytes
Type:                 normal (base)
Storage format:       VDI
Format variant:       dynamic default
Location:             /path_to/xxx.vdi
Accessible 狀態 yes


3. 重新掛載 vdi
代碼: [選擇]
$ VBoxManage storageattach $VM --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium /path_to/xxx.vdi
4. 啟動 vm
代碼: [選擇]
$ VBoxHeadless -s $VM &
恩恩...認真的依據提示做了一輪,還是GG沒有FIX。依舊是放大絕去改XXX.vbox檔案~把異常的部分砍掉再重開機解決順利開機,不過這部分之前曾經有過許多血淚經驗,沒把握別去動.vbox設定檔,最低限度記得備份原始檔,以免還原時找不到下手處。

2017年4月14日 星期五

wildcard 的 apache 與 DNS Srv 設定

*.domainName.xxx 的設定首次看到愣了一下,在DNS伺服器設定後去Ping結果都得不到回應,近日才發現誤會了它,做個MEMO...

DNS Srv setting

vim /etc/bind/db.domainName.xxx  中新增DomainName與IP的對應設定
*.domain.Name.xxx.  IN  a   10.0.0.1
最後重啟服務後,去ping OOO.domainName.xxx若有回應則表示完成,最後就是等待24小時生效。

Apache Srv setting

vim /etc/httpd/conf/httpd.conf 中於Virtual host設定中加入
ServerAlias *.domainName.xxx

服務重啟後,於網址列輸入https://OOO.domainName.xxx/ 有回應的話則表示設定正確。

2017年4月7日 星期五

Apache 中設定SSL及申請使用免費的SSL教學註記



  1. 輸入網址:OOO.net

3. 選擇手動模式
 
     4. 將檔案下載並放置網站更目錄,點選驗證的URL確認讀取的到。



      5. 下載取得相關的SSL檔案

  1. 安裝Apache SSL模組
    yum install mod_ssl
  2. 修改Apache設定
Vim /etc/httpd/conf/httpd.conf
紅色為新增置Apache Server的設定,完成後請重啟服務。
NameVirtualHost *:443

<VirtualHost *:80>
  DocumentRoot /var/www/html/XXX/
  ServerName hrm.tibtrade.net
  ErrorLog logs/dummy-XXX.net-error_log
  CustomLog logs/dummy-XXX.net-access_log common
  RewriteEngine on
  RewriteCond %{SERVER_PORT} !^443$
  RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost>

<VirtualHost *:443>
   DocumentRoot "/var/www/html/XXX"
  ServerName hrm.tibtrade.net
  SSLEngine on
  SSLCertificateFile /etc/httpd/ssl/xxx.crt
  SSLCertificateKeyFile /etc/httpd/ssl/xxx.key
  SSLCACertificateFile /etc/httpd/ssl/ca-xxx.crt
</VirtualHost>