###### tags: `tutorial` `server` # Install CentOS 7.6 on new server * **在開始之前** **以下指令皆在root user下執行** **關於這些指令在做什麼,建議先閱讀鳥哥[https://linux.vbird.org/linux_basic/centos7/](https://)** **若安裝遇到問題,建議查套件的官方文件** ## lvm磁區分割建議 | Partition | Recommand Size | | -------- | -------- | |/ |250Gib ↑↑ | |/boot |1024Mib | |/boot/efi |200Mib | |swap |16Gib | |/home |free of disk | > Ref. https://docs.centos.org/en-US/centos/install-guide/CustomSpoke-x86/#sect-recommended-partitioning-scheme-x86 ## 裝好之後 1. 先把net-tools, vim, wget裝起來 `yum install net-tools vim wget -y` 2. 更新全部套件 `yum update -y` 3. 停用NetworkManager(optional) ``` systemctl stop NetworkManager systemctl disable NetworkManager ``` ## 改hostname `hostnamectl set-hostname [hostname]` 幫電腦取個名字ヾ(≧▽≦*)o ## 設定SELinux `vim /etc/selinux/config` 把 `enforce` 改成 `permissive` 改完要重啟電腦才會生效 `reboot` ### 鳥哥 http://linux.vbird.org/linux_basic/0440processcontrol.php#selinux ## ssh相關設定(很重要) * 禁用root登入 `vim /etc/ssh/sshd_config` 找到 `#PermitRootLogin yes` 改成 `PermitRootLogin no` **(記得#要拿掉)** * 限制可登入主機的ip範圍 1. `vim /etc/hosts.allow` 加入 `sshd:140.117.69.:allow` 只允許69段ip登入 2. `vim /etc/hosts.deny` 加入 `sshd:ALL` 所有登入都被禁止 重啟ssh才會生效 `systemctl restart sshd` > hosts.allow和hosts.deny若相衝則hosts.allow優先,所以這樣設定會達成限定只有管院69段ip能登入的效果 #### 小補充:在client端用ssh登入遠端電腦之後,要登出時打exit就登出了 ## 安裝Apache `yum install httpd -y` * 啟用開機自動啟動apache `systemctl enable httpd` * 啟動apache `systemctl start httpd` * 設定http service通過防火牆 `firewall-cmd --add-service=http --zone=public --permanent ` 開好之後重啟防火牆 `firewall-cmd --reload` * 關閉ipv6 編輯/etc/sysctl.conf,加入底下兩行: `net.ipv6.conf.all.disable_ipv6 = 1` `net.ipv6.conf.default.disable_ipv6 = 1` ## 安裝MySQL * 安裝MySQL Yum repository `wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm` `yum localinstall mysql57-community-release-el7-11.noarch.rpm` * 安裝MySQL `yum install mysql-community-server` * 啟動 `systemctl start mysqld` * 查看狀態 `systemctl status mysqld` > 為了資料庫的安全性,MySQL在安裝後會為root產生一組隨機密碼放在/var/log/mysqld.log中 > * 查看臨時生成的帳號密碼 ``` [root@localhost user]# grep 'temporary password' /var/log/mysqld.log 2019-09-23T12:12:03.645181Z 1 [Note] A temporary password is generated for root@localhost: 0/C<b2wK,A)u ``` 其中 *0/C<b2wK,A)u* 就是預設密碼,修改密碼需進入MySQL指令模式修改 ``` [root@localhost user]# mysql -u root -p Enter password:[0/C<b2wK,A)u] mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassWord!'; ``` ***密碼須包含一個大寫字母、一個小寫字母、一個數字和一個特殊符號,且長度至少為8字元 ╯︿╰*** ## 安裝PHP * 安裝 EPEL Repository `yum install epel-release` * 安裝 Remi Repository `yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm` * 停用PHP5.4 Repo > Remi Repo預設會安裝PHP5.4,需要停用才能安裝PHP7.3 > 要達成這個目的需透過yum-config-manager這個指令,而這個指令包含在yum-utils指令集 * 安裝yum-utils `yum install -y yum-utils` * 停用Repo `yum-config-manager --disable remi-php54` * 啟用PHP7.3 Repo `yum-config-manager --enable remi-php73` * 安裝PHP `yum -y install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json` * 檢查是否安裝成功 ``` [root@localhost ~]$ php -v PHP 7.3.9 (cli) (built: Aug 27 2019 22:52:39) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.9, Copyright (c) 1998-2018 Zend Technologies ``` ## 安裝docker * 設定repo `sudo yum install -y yum-utils device-mapper-persistent-data lvm2` * 設定stable repo `sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo` * 安裝docker engine - COMMUNITY `sudo yum install -y docker-ce docker-ce-cli containerd.io` ***有可能會需要輸入 GPG key, verify that the fingerprint matches*** `060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35` * 啟動docker `systemctl start docker` * 測試是否安裝成功 `docker run hello-world` * 查看運行中的docker container `docker ps -a` > 官方安裝文件 : https://docs.docker.com/install/linux/docker-ce/centos/ ### 安裝docker-compose * 下載最新穩定版docker-compose(去官網找最新的,下面指令絕對是舊的) `curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose` * 設定docker-compose binary的可執行權限 `chmod +x /usr/local/bin/docker-compose` * 測試是否安裝成功 ``` [root@localhost ~]# docker-compose --version docker-compose version 1.24.1, build 4667896b ``` > 官方安裝文件 : https://docs.docker.com/compose/install/#install-using-pip ### 使用non-root user管理docker * 先建立docker群組(通常安裝完就有了,不用自己建立) `groupadd docker` * 將要設為管理者的user加入docker群組 `usermod -aG docker $(user)` **需重新登入才會生效**
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up