|
在前一篇「【伺服器】大改版的 CentOS 7 及基本安裝說明」之後,接下來我們必需要為這台伺服器作一些基本的設定,否則伺服器裝好了也不知道要幹什麼,接下來筆者將以「網頁伺服器 + PHP」為主軸,舉例說明在安裝完基本系統後所要完成的 7 大設定工作。
安裝完伺服器後,基本上這台主機應該是可以上網了,不過還得多做一些設定讓它發揮基本的伺服器作用,以下針對幾個項目來做一些說明:
網路設定
升級官方伺服服器套件
安裝第三方伺服器套件庫
安裝網站及 php 套件
關閉 selinux 和有點機車的防火牆
啟用及關閉必要及不需要的服務
看起來好像還頗多的ㄟ,就讓筆者帶各位一步步來進行設定工作囉~
1.網路設定
先前安裝系統的時候,由於還不知道網路環境,當時是採用 DHCP 的模式先將網路啟動以便進行網路校時,這樣的設定在桌面環境是沒有問題的,但是對伺服器來說,並不是那麼 OK,因為伺服器通常需要一組固定的 IP 和 hostaname 讓外界固定來拜訪,而預載的 NetWorkManager 在個人的經驗中常常會不大正常(這個版本正常多了 XD)所以本文會說明如何關掉原有的 NetWorkManager,採並用原有的 network 指令來啟動網路。
首先關掉 NetworkManager (開始採用新的指令):
- #systemctl disable NetworkManager.service
- #systemctl stop NetworkManager.service
- #chkconfig network on #因為network不是標準的 systemd 的程序
- #systemctl stop network
複製代碼
接下來請編輯 /etc/sysconfig/network-scripts/ifcfg-你的網路卡編號(請利用 vim 編輯器,或是 gedit),修改內容如下:
原有的內容:
- TYPE=Ethernet
- BOOTPROTO=dhcp
- DEFROUTE=yes
- IPV4_FAILURE_FATAL=no
- IPV6INIT=yes
- IPV6_AUTOCONF=yes
- IPV6_DEFROUTE=yes
- IPV6_PEERDNS=yes
- IPV6_PEERROUTES=yes
- IPV6_FAILURE_FATAL=no
- NAME="eno16777736"
- UUID=3d7877b7-24e0-40fc-ac67-f2552f3ef664
- ONBOOT=yes
- HWADDR=00:0C:29:5B:84:12
複製代碼
修改成以下內容:
- TYPE="Ethernet"
- BOOTPROTO=none #改成none
- DEFROUTE="yes"
- IPV4_FAILURE_FATAL="no"
- IPV6INIT="yes"
- IPV6_AUTOCONF="yes"
- IPV6_DEFROUTE="yes"
- IPV6_FAILURE_FATAL="no"
- NAME="eno16777736"
- UUID="b06e0794-79ce-4d9d-9703-4eff3dc7e38d"
- ONBOOT="yes"
- HWADDR=00:0C:29:5B:84:12
- IPADDR0=192.168.1.40 #這台伺服器的固定IP,實際IP依照自有環境
- GATEWAY=192.168.1.2 #這台伺服器的gateway 請注意不要加「0」
- DNS1=168.95.1.1 #這台伺服器的DNS(中華電信DNS IP,也可以加在 /etc/resolv.conf 中)
複製代碼
刪掉由 NetworkManager 所產生的設定檔,並啟動網路:
- #rm -rf /etc/systemconfig/network-scripts/ifcfg-自動使用乙太網路
- #systemctl start network
複製代碼
完成之後存檔,重開機一次測試看能不能正常的上網~
2.升級官方套件
因為 CentOS 7 已經出來一陣子了(大約已經 1 個半月),所以會有相當多的套件已列入更新,請使用具 root 群組權限的使用者登入(筆者都很懶,直接用 root XD),執行以下的指令:
其中「-y」的參數是直接自動升級,也可以選擇在看完升級清單後,按下「y」鍵繼續升級。
- .......................
- xorg-x11-drv-synaptics x86_64 1.7.1-10.el7_0.1 updates 81 k
- yum-plugin-fastestmirror noarch 1.1.31-25.el7_0 updates 28 k
- yum-utils noarch 1.1.31-25.el7_0 updates 111 k
-
- Transaction Summary
- ================================================================================
- Install 1 Package
- Upgrade 78 Packages
-
- Total size: 152 M
- Is this ok [y/d/N]: y ------>打y後會繼續更新
複製代碼
Downloading packages:
警告:/var/cache/yum/x86_64/7/updates/packages/gnutls-3.1.18-9.el7_0.x86_64.rpm: 表頭 V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
Userid : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
Package : centos-release-7-0.1406.el7.centos.2.3.x86_64 (@anaconda)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Is this ok [y/N]: y ------------->匯入驗證的key
3.安裝第三方伺服器套件庫
雖然官方套件已經涵蓋了完整的應用,但仍舊有些「特殊應用」沒有放在官方的套件庫中,此時就需要第三方的套件庫,就免去自已還要編譯的痛苦,也較好管理,但是要注意還是避免使用不知名的套件庫,免得變成後門的來源呀~目前比較知名的有:rpmfusion及EPEL兩大套件庫。
EPEL延伸套件庫的安裝:
- #yum install <a href="http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm" target="_blank">http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm</a>
複製代碼
20141230更新:新的位置如下。
- #yum install <a href="http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/7/x86_64/e/epel-release-7-5.noarch.rpm" target="_blank">http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/7/x86_64/e/epel-release-7-5.noarch.rpm</a>
複製代碼
rpmfusion 目前還沒有出針對 CentOS 的延伸套件庫,可先參考這裡。
4.安裝網站及 php 套件
基本上我們暫時只需要 httpd、php 的一些基本套件,安裝的指令如下:
- #yum install httpd php -y
- #systemctl enable httpd.service
- #systemctl start httpd.service
複製代碼
5.關閉 selinux
SELinux有時很麻煩,會讓伺服器的某些服務失效,請修改 /etc/sysconfig/selinux,將 SELINUX 那行改為 disabled。
然後重新開機後就生效了。
6.關閉 firewalld.service
- #systemctl disable firewalld.service
- #systemctl stop firewalld.service
複製代碼
7.systemd 基本管理方式
- #systemctl --help #查詢systemctl指令用法
- #systemctl list-units #查詢目前所有啟動中的服務
- #systemctl list-units -a #查詢目前所有已啟動及未啟動的服務
- #systemctl enable xxx.service #設定開機啟動xxx.service
- #systemctl disable xxx.service #設定開始不啟動xxx.service
- #systemctl stop xxx.service #立即停止xxx.service
- #systemctl start xxx.service #立即啟動xxx.service
- #ssytemctl status xxx.service #查詢xxx.serivce目前的狀態
複製代碼
20141230更新:
- #systemctl --list-units [--type=[service|socket|path] #依不同類型查詢啟動中的服務
- #systemctl is-enabled sshd #查詢服務是否設定開機啟動
- #systemctl is-active sshd #查詢服務是否正常啟動
- #systemctl list-unit-files #查詢服務啟動或是關閉狀態,以檔名顯示
複製代碼
結束~最基本的伺服器即已架構完成~之後就會陸續的說架如何在 CentOS 7 上架設各式的應用服務~
文章出處
http://blog.kevinlinul.idv.tw/?p=90
|
|