บทความนี้ล่าวถึงการติดตั้ง SonarQube ไว้ใช้สำหรับการ Scan sourcecode ซึ่งตัวโปรแกรมสามารถ Scan เกี่ยวข้องกับช่องโหว่ด้านความปลอดภัยได้ด้วย และรองรับภาษากว่า 20 ภาษาคอมพิวเตอร์
ขั้นตอน (Steps)
- ติดตั้ง Ruby
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
- ติดตั้ง Home Brew จากบทความ How to install Homebrew on MacOS
- ใช้คำสั่ง
brew install sonar brew install sonar-runner
- โปรแกรมลงผ่าน Brew จะอยู่ที่โฟลเดอร์ /usr/local/Cellar/
- จากนั้นกำหนด Environment path
export SONAR_HOME=/usr/local/Cellar/sonar-scanner/3.0.3.778 export SONAR=$SONAR_HOME/bin export PATH=$SONAR:$PATH echo $SONAR_HOME echo $SONAR
- เริ่มต้นการใช้งาน
//เริ่มต้น sonar start //หยุดการใช้งาน sonar stop
- พอ Start service ของ SonarQube แล้ว สามารถใช้งานผ่าน Web browser ได้ดังนี้
- สามารถ Login โดยใช้
user:admin pass:admin
ติดตั้งและเชื่อมต่อฐานข้อมูล MySQL
- ติดตั้ง MySQL
brew install mysql
- เปิดไฟล์ ผ่านโปรแกรม Vim
vim .bash_profile
- จากนั้นกำหนด Environment path
export MYSQL_HOME=/usr/local/Cellar/mysql/5.7.20 export MYSQL=$MYSQL_HOME/bin export PATH=$MYSQL:$PATH
- แล้ว Sava โดยใช้คำสั่ง
- จากนั้นดาวน์โหลด MySQL Workbench จาก https://dev.mysql.com/downloads/file/?id=452671
- Install ไฟล์ .dmg ที่ดาวน์โหลดมา
- Start Mysql โดยใช้คำสั่ง
//สำหรับ Start mysql.server start //สำหรับ Stop mysql.server stop //สำหรับ Restart mysql.server restart
- สามารถใช้ผ่าน
- สร้างฐานข้อมูล
CREATE DATABASE IF NOT EXISTS sonar; CREATE USER 'sonar'@'localhost' IDENTIFIED BY 'sonar'; GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'localhost' WITH GRANT OPTION;
- ไปที่ Folder /usr/local/Cellar/sonarqube/6.6/libexec/conf จากนั้นแก้ไข connection string ของไฟล์ sonar.properties ตามที่เราได้สร้างไว้
- จากนั้น Start Server และเข้าหน้า Web site อีกครั้ง (หลังจาก Start server รอสัก 5-10 วินาที)
- ตารางจะถูกสร้างที่ MySQL อย่างอัตโนมัติ
Install ผ่าน Docker
- ดาวน์โหลด https://github.com/OWASP/sonarqube
- เอาโฟลเดอร์ Docker ไว้หน้า Desktop
- จากนั้นใช้คำสั่ง รอ Download จนเสร็จสิ้น
docker build -t "owasp/sonarqube" docker/.
- จากนั้น Run โปรแกรม โดยใช้คำสั่ง
docker run -d -p 9000:9000 -p 9092:9092 owasp/sonarqube
- ใช้งานผ่าน Web Browser
http://localhost:9000/