如何在Centos 7安裝openVPN

我們將在Centos 7安裝及配置OpenVPN 服務,並共使用Windows Client連接OpenVPN。
OpenVPN是一個open source的VPN應用程式(服務),允許使用者通過Internet 安全的建立連線至Private Network。
詳細的介紹可以參考其官網:OPENVPN
事情準備:
  1. CentOS 7 環境
  2. root權限帳號
  3. 固定IP (如果有Domain或SubDomain是更好的選擇)
在安裝之前需要先安裝Extra Packages for Enterprise Linux (EPEL) repository,因為OpenVPN並不包含在CentOS的 repository,EPEL是一個很受歡迎的repository.
yum install epel-release

一. 安裝Open VPN

使用Easy RSA來產生SSL Key當做VPN安全連線使用。
yum install openvpn easy-rsa -y

二. 設定Open VPN

copy一個sample的設定檔來當做預設的config檔案。
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn
nano /etc/openvpn/server.conf

A.查看dh的檔案是否為dh2048.pem,筆者安裝時預設已由原本的dh1024.pem改成dh2048.pem了,所以並不需要更動。

dh dh2048.pem

B. 如果想要上網均由vpn server端出去的話,把下面redirect-gateway這行mark拿掉,再加上push remote-gateway 主機ip

push "redirect-gateway def1 bypass-dhcp"
push "remote-gateway vpn_server_ip"
push "route 10.8.0.0 255.255.255.0"

C. push dbcp的DNS Service,給client使用的dns,這裡使用Google's public DNS server

push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

D. 我們希望執行OpenVPN後沒有任何權限

user nobody
group nobody

三. 建立 Keys and Certificates

使用Easy RSA來建立keys and Certificates,其它vars的修改部份,並不一定要跟著修改,只是在建立Keys and Certificates都要重新輸入一次

A. 建立一個目錄來存放建立的資料

mkdir -p /etc/openvpn/easy-rsa/keys

B. 把建立key and certificate的script copy過來

cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa

C. 修改vars預設值

nano /etc/openvpn/easy-rsa/vars
內容請依實際狀況填寫,建立時也可再行修改
其中
KEN_NAME :請填入server
KEN_CN : 填入domain或是subdoman

更多內容 如何在Centos 7安裝openVPN

Java寄送電子郵件-使用gmail帳號

JavaMail是個歷史悠久的寄送電子郵件Email套件,由Sun公司所開發(Oracle),因為電子郵件數年來並沒有多大的改變,所以一直都是十分方便的一個套件,使用方法可參考Java程式Mail、EDM(電子型錄)寄送這篇。

而現在有了另一個framework,是由Apache組職所提供的開放原始碼套件Apache Commons email,使用上更為簡單,而且支援度也很高,像是gmail要使用javamail來寄送,就需要設定繁雜的Sectury項目,而Apache commons email就顯的簡單許多,底下的範例就是使用gmail的smtp.gmail.com來當SMTP服務寄送信件的,我把它應用在之前的留言板,當有人留言時,就可以馬上接到信件的通知。

留言板存檔後寄信

更多內容 Java寄送電子郵件-使用gmail帳號

Centos 7 安裝Webmin

使用yum來安裝webmin

建議安裝前可以先使用yum update

1.新增repo檔

內容如下

2.匯入GPG key 更多內容 Centos 7 安裝Webmin

Centos 7安裝php-fpm及使用mpm event

mpm要修改成event模式時,在預設狀況下修改apache的config 重啟apache會有錯誤

參考資料Apache的三种MPM模式比较:prefork,worker,event

ps.怎麼知道目前apache是什麼模式呢?可以輸入

Server MPM:event

httpd-V

更多內容 Centos 7安裝php-fpm及使用mpm event

RaspberryPi -使用Web控制LED亮燈與否

之前有提過RaspberryPi -串聯二個74HC595範例,範例執行時需要執行Java Application,這可以拿來當做shell指令,不過如果想遠端控制呢?

想法是利用Raspberry pi架設wifi ap,或是把pi接入區域網路,再連入tomcat server執行指令。

JSP control GPIO

PI在安裝完tomcat後,因為要使用GOIP,所以得把tomcat執行的權限及群組設成root。

可以參考Controlling the Raspberry Pi’s GPIO pins from a web browser

更多內容 RaspberryPi -使用Web控制LED亮燈與否