顯示廣告
隱藏 ✕
看板 KnucklesNote
作者 Knuckles (站長 那克斯)
標題 [Linode] 新增 CentOS 7 主機
時間 2017-02-09 Thu. 12:26:38


=======================
如要安裝新版的 Rocky Linux 9 請改至這篇
[RockyLinux9] 網頁伺服器 Apache 安裝與設定 - KnucklesNote板 - Disp BBS
=======================

登入 Linode

在 Linode 控制台點選「Add a Linode」
選擇想要的方案與機房位置
[圖]


設定開機系統
[圖]


選擇 CentOS 7,設定開機磁碟的大小,設定 root 密碼
[圖]


點「Boot」開機
[圖]


在「Remote Access」頁查詢分配到的IP位址
[圖]


開啟SSH軟體,使用帳號root與設定的密碼登入主機
[root@li1608-97 ~]#


CentOS 7 的指令異動

原本開關服務的指令 service xxx restart
改為 systemctl restart xxx

將服務設為開機啟動的 chkconfig xxx on
改為 systemctl enable xxx

檢查服務是否啟動了
# systemctl is-active xxx

檢查服務是否有設為開機啟動
# systemctl is-enabled xxx


更新軟體到最新版

為了避免安全漏洞先更新軟體
# yum update


更新系統時區

預設是使用 UTC 時間,改成時區 Asia/Taipei
# timedatectl set-timezone 'Asia/Taipei'

查看現在的時間是否顯示正確
# date

安裝 NTP 自動校正時間
# yum install ntp

先手動效正
# ntpdate 0.centos.pool.ntp.org

設定 NTP 啟動及開機自動執行
# systemctl start ntpd
# systemctl enable ntpd


新增一個必需使用金鑰登入的管理員帳號

參考 [Xshell] Windows 下好用的 SSH 登入程式 - KnucklesNote板 - Disp BBS
     [CentOS] 主機間使用公鑰免密碼登入ssh - KnucklesNote板 - Disp BBS

例如我要新增的帳號為 knuckles,執行
# useradd knuckles

接著設定新帳號的密碼,執行
# passwd knuckles


將新的帳號加入管理員權限

使用 # visudo 來修改 /etc/sudoer 檔
在 root    ALL=(ALL)       ALL
這行下面加上其他管理員的帳號,例如
knuckles    ALL=(ALL)       ALL


使用 # su knuckles 切換為新帳號
提示字元會變成
[knuckles@li1608-97 root]$

在新帳號的家目錄新增權限為 700 的 .ssh 目錄
$ mkdir ~/.ssh; chmod 700 ~/.ssh

在 .ssh 目錄下新增權限為 600 的 authorized_keys 檔案
將 ssh 登入程式使用的公鑰寫進去
$ vim ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys


測試一下 SSH 登入軟體是否能用金鑰登入新的帳號
是否可以執行 sudo su 後輸入新帳號的密碼轉為 root 帳號

沒問題的話,將 ssh 的root登入與密碼登入關閉,以增加安全性
$ sudo vim /etc/ssh/sshd_config

尋找 PermitRootLogin yes
改成 PermitRootLogin no

尋找 PasswordAuthentication yes
改成 PasswordAuthentication no

要使用不同的 Port 例如 12345 登入的話,將
# Port 22 改為
Port 22
Port 12345

重啟 ssh
$ sudo systemctl restart sshd


使用 SSH 登入軟體測試一下使用 port 12345 能不能登入
不能的話可能是有開啟 SELinux 限制只能用 port 22


先安裝 SELinux 設定工具 semanage
$ sudo yum install policycoreutils-python

設定 SELinux 加上 ssh 可以使用 port 12345
$ sudo semanage port -a -t ssh_port_t -p tcp 12345

重啟 ssh
$ sudo systemctl restart sshd


修改主機名稱

例如要將主機名稱改為 web2
讓其他主機可以在區網使用 web2 這名稱存取這台主機

參考 [Linode] Private IP 設定 - KnucklesNote板 - Disp BBS

在 Linode 控制台的 Setting 頁,修改 Linode Label
[圖]


在「Remote Access」,點「Add a Private IP」新增一個區網的 IP 位址
在「Network」點「Add IP Address」,選「Private」
[圖]


例如取得的區網IP位址為 192.168.x.x/17

點一下 Configuration Profile 確認 Auto-configure Networking 有打開
[圖]


重新開機時就會自動修改網路的設定檔
/etc/sysconfig/network-scripts/ifcfg-eth0


修改主機名稱
$ sudo hostnamectl set-hostname web2

重新登入後,提示字元會變成
[knuckles@web2 ~]$


在這台主機與其他區網內的主機,設定 hosts 表
$ sudo vim /etc/hosts
加上
192.168.x.x web2

之後其他主機就可以用 web2 來存取這台主機了


設定防火牆

CentOS 7 改為預設使用 FirewallD 了
要改回使用 iptables 的話,要關閉 FirewallD 後,安裝 iptables-service
$ sudo systemctl disable firewalld
$ sudo yum install iptables-services
$ sudo systemctl enable iptables

然後依照這篇 [CentOS] iptables 防火牆設定 - KnucklesNote板 - Disp BBS
加上防火牆的設定檔

如果有修改 ssh 的 port 的話,記得在設定檔加上新設定的 port,例如
iptables -A INPUT -p TCP -i $EXTIF --dport  12345  -j ACCEPT   # SSH


安裝 EPEL (Extra Packages for Enterprise Linux) 擴充資源庫

有些程式必需要先裝 EPEL 後,用 yum install 才能安裝

$ sudo yum install epel-release



參考
https://www.linode.com/docs/getting-started
https://www.linode.com/docs/security/securing-your-server


修改 .bashrc 設定提示字元格式、常用指令的參數
[Linux] .bashrc 設定 - KnucklesNote板 - Disp BBS

安裝 LAMP 網站伺服器組合 (Linux+Apache+MariaDB+PHP)
[CentOS7] Apache 安裝與設定 - KnucklesNote板 - Disp BBS
[CentOS7] PHP 安裝與設定 - KnucklesNote板 - Disp BBS
[CentOS7] MariaDB 安裝與設定 - KnucklesNote板 - Disp BBS

設定郵件伺服器 Postfix
[CentOS] mail server postfix 設定 - KnucklesNote板 - Disp BBS

安裝檔案伺服器 NFS
[CentOS7] 檔案伺服器 NFS - KnucklesNote板 - Disp BBS

--
※ 作者: Knuckles 時間: 2017-02-09 12:26:38
※ 編輯: Knuckles 時間: 2023-10-17 15:34:28 (台灣)
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 502 
分享網址: 複製 已複製
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇