簡介
在CentOS Linux 系統環境中,搭配 VirtualBox 快速在 Virtual Machine 中佈署建置 Web Service,並且讓每組系統帳號能建立自己的個人網頁。
Ex: http://localhost/~username/index.html
建置環境
- CentOS OVA檔 X 1
- 由於本篇文章著重於建置個人網頁所以跳過建置VM的過程
- IP X 1
- 依需求使用外網IP或者內網IP
- 實體機作業系統 CentOS
流程說明
- 系統建置
1.安裝VirtualBox
2.佈署Virtual Machine(VM)
3.VM開機
4.VM安裝Apache
5.VM設定Apache變數
6.VM設定防火牆
7.VM設定SELINUX標籤 - 8.VM設定建立帳號時自動建立public_html資料夾、權限
9.VM系統帳號建立以及設定
10.實體機防火牆開啟
11.VitrualBox PORT轉發 - 使用者上傳檔案
1.使用SFTP上傳
2.檔案放置位置
3.TEST是否成功
實際操作
1. 安裝VirtualBox
注意:切換ROOT權限
- 建立軟體倉庫
# cd /etc/yum.repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
- VirtualBox 使用了 vboxdrv 核心模組控制及分配記憶體, 執行以下指令用 YUM 安裝 vboxdrv 模組:
# yum update
# yum install binutils qt gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms
- 查看最新版本
yum provides vitrualbox
- 安裝virtualbox
yum install vitrualbox-5.1XXXXX
- 打開virtualbox
virtualbox
參考
- https://www.phpini.com/linux/rhel-centos-fedora-install-virtualbox
- https://wiki.centos.org/zh-tw/HowTos/Virtualization/VirtualBox
2. 佈署Virtual Machine(VM)
next -> … ->finish
3. VM 開機並登錄root操作
4. VM 安裝Apache
yum install httpd -y
5. VM 設定Apache變數
更改userdir設定
vim /etc/httpd/conf.d/userdir.conf
-
註解UserDir disabled
# UserDir disabled
-
取消註解UserDir public_html
UserDir public_html
6. VM設定防火牆
設定防火牆
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
7. VM 啟動Apache並開機啟動
systemctl start httpd.service
systemctl enable httpd.service
8. VM設定SELINUX標籤
完成後檢視權限是否OK
檢視權限
ls -laZ
查看 “httpd_enable_homedirs” 標籤有沒有打開
getsebool -a | grep http
開啟
setsebool -P httpd_enable_homedirs true
9. VM建立public_html在建立帳號時自動生成
mkdir /etc/skel/public_html
chmod 711 /etc/skel/public_html
10. VM系統帳號建立以及設定密碼權限
範例
user: group1
pawword: passw0rd
adduser group1
chmod 755 /home/group1
echo passw0rd | passwd group1 --stdin
11. 實體機防火牆開啟
firewall-cmd --permanent --add-port=10180/tcp
firewall-cmd --permanent --add-port=10122/tcp
firewall-cmd --reload
12. VitrualBox PORT轉發
進行測試
利用winscp上傳檔案至public_html
可參考 https://briian.com/19166/
http://<ip>/~group1/<XXX.html>
注意參考事項
https://www.centos.org/forums/viewtopic.php?t=1742
===========================================
yum install httpd -y
vim /etc/httpd/conf.d/userdir.conf
firewall-cmd –permanent –add-service=http
firewall-cmd –reload
systemctl start httpd.service
systemctl enable httpd.service
mkdir /etc/skel/public_html
chmod 711 /etc/skel/public_html
setsebool -P httpd_enable_homedirs true
adduser group1
chmod 755 /home/group1
echo passw0rd | passwd group1 –stdin
==========================================
By zyxu