grsec + arch 設定+使用經驗 - Linux

By Connor
at 2015-08-23T21:57
at 2015-08-23T21:57
Table of Contents
數個月前翻 arch wiki 時
https://wiki.archlinux.org/index.php/Kernels
發現了這東東
https://wiki.archlinux.org/index.php/Grsecurity
之前用 centos 時 因為 selinux 就吃了不少苦頭
所以才跳 debian 比較熟悉 linux 後 才改用 arch
所以想再來挑戰一下加固核心(這樣翻譯不知道恰不恰當就是)
用了幾個月後 來分享一下使用感想
其實也找不到太多相關的中文資料 連 wiki 都只有英日文
身為一個被 arch 慣壞的懶惰人
安裝 grsec kernel 是很簡單的一件事
# pacman -S linux-grsec
安裝完後記得要
grub-mkconfig -o /boot/grub/grub.cfg (我是用 grub 啦 用其它的我沒用過XD)
https://wiki.archlinux.org/index.php/Enhance_system_stability#Install_the_linux-lts_package
這篇中提到 為了系統安全性 建議安授 lts 版的 kernel 以備不時之需
剛用 grsec 時 官方 repo 並沒有 lts
這個月初看 wiki 時 發現官方 repo 也提供了 lts
所以 還是建議安裝一下
# pacman -S linux-grsec-lts (一樣裝完記得 grub-mkconfig)
其實裝好 grsec-lts 後 很快就用到了
因為 這個月初 grsec + btrfs 就讓我的 arch 開不了機了 囧
開機卡在 btrfs 一樣的 kernel 在 vm 上就很正常(vm 上的只有 ext4)
而且 https://grsecurity.net/ 官網上
4.1.* 系列的其實是還在 test
被嚇到後(arch 那台主要是當備份機+影片機)
目前 那台 都用 linux-grsec-lts 開機
vm 上的 arch 才用 linux-grsec 開機
核心安裝好後 再來要安裝 paxd
# pacman -S paxd
裝好後 可以用下面的檔案來設定例外
不然 pax 會讓你有的程式不能跑 (fx,tb,veracrypt,kdevelop之類)
# vi /etc/paxd.conf
下面是給使用者用的例外原則
(只能對 user 權限部份設定 需要 root 權限的還是要用上面的)
$ systemctl --user enable paxd.service (記得 enable 完後 要 start)
使用者的例外設定
$vi ~/.config/paxd.conf
這邊以另外裝的 firefox esr 來做說明(user權限)
下面兩行加入上面的檔案中
pem /opt/portable/firefox/firefox
em /opt/portable/firefox/plugin-container
這樣子就設好例外了
前面的 pem,em 則是參考 /etc/paxd.conf 裡的 firefox 做設定
題外話 vbox 和 vmware 我也還沒找到 只設 paxd.conf 就能跑的方法
目前找到的方法都只能重編譯核心 關掉某些功能
個人是覺得這和用回一般核心沒什麼兩樣就是
有用這2個軟體的話 個人建議還是用一般核心就好
其實還有 gradm 可以裝來玩
不過 我是覺得多人使用環境才比較需要
所以這個我就只有裝好後 開學習模試測試一下而已
# pacman -S gradm 想裝來玩看看的可以裝看看
裝好後
# gradm -F -L /etc/grsec/learning.log
開啟學習模式
學習模式把常用指令使用一陣子後 再打開 gradm 規則
它就會針對不常用的指令做限制
(這邊我就沒研究了 畢竟光 grsec+pax 就限制很多了)
接下來是 pax 的相關工具
# pacman -S pax-utils paxtest
我只有用 paxtest 測試一下而已
https://wiki.archlinux.org/index.php/PaX
照 wiki 上寫的 就裝來玩看看
pax-utils 的部份還在摸索中
因為我的 分享資料夾 是 用 mount 掛戴的(使用 user 權限)
所以我修改了 mount 的權限部份
# vi /etc/sysctl.d/05-grsecurity.conf
取消註解 "kernel.grsecurity.chroot_deny_mount = 1"
把 "1" 改成 "0"
如果都用 root 掛戴的 這邊倒是不需要變更
最後 在 paxd.conf 的部份
設定過的檔案 似乎在 paxd.conf 刪去後
還是會在例外清單中
只有移除or重裝才會阻擋
不知道是不是我少改了什麼
用了一陣子後的一點心得
不過老實說 個人使用來說 和一般的核心差不多
只是有一點一定感覺的到
效能略為降低和有些程式得設例外才能執行
--
https://wiki.archlinux.org/index.php/Kernels
發現了這東東
https://wiki.archlinux.org/index.php/Grsecurity
之前用 centos 時 因為 selinux 就吃了不少苦頭
所以才跳 debian 比較熟悉 linux 後 才改用 arch
所以想再來挑戰一下加固核心(這樣翻譯不知道恰不恰當就是)
用了幾個月後 來分享一下使用感想
其實也找不到太多相關的中文資料 連 wiki 都只有英日文
身為一個被 arch 慣壞的懶惰人
安裝 grsec kernel 是很簡單的一件事
# pacman -S linux-grsec
安裝完後記得要
grub-mkconfig -o /boot/grub/grub.cfg (我是用 grub 啦 用其它的我沒用過XD)
https://wiki.archlinux.org/index.php/Enhance_system_stability#Install_the_linux-lts_package
這篇中提到 為了系統安全性 建議安授 lts 版的 kernel 以備不時之需
剛用 grsec 時 官方 repo 並沒有 lts
這個月初看 wiki 時 發現官方 repo 也提供了 lts
所以 還是建議安裝一下
# pacman -S linux-grsec-lts (一樣裝完記得 grub-mkconfig)
其實裝好 grsec-lts 後 很快就用到了
因為 這個月初 grsec + btrfs 就讓我的 arch 開不了機了 囧
開機卡在 btrfs 一樣的 kernel 在 vm 上就很正常(vm 上的只有 ext4)
而且 https://grsecurity.net/ 官網上
4.1.* 系列的其實是還在 test
被嚇到後(arch 那台主要是當備份機+影片機)
目前 那台 都用 linux-grsec-lts 開機
vm 上的 arch 才用 linux-grsec 開機
核心安裝好後 再來要安裝 paxd
# pacman -S paxd
裝好後 可以用下面的檔案來設定例外
不然 pax 會讓你有的程式不能跑 (fx,tb,veracrypt,kdevelop之類)
# vi /etc/paxd.conf
下面是給使用者用的例外原則
(只能對 user 權限部份設定 需要 root 權限的還是要用上面的)
$ systemctl --user enable paxd.service (記得 enable 完後 要 start)
使用者的例外設定
$vi ~/.config/paxd.conf
這邊以另外裝的 firefox esr 來做說明(user權限)
下面兩行加入上面的檔案中
pem /opt/portable/firefox/firefox
em /opt/portable/firefox/plugin-container
這樣子就設好例外了
前面的 pem,em 則是參考 /etc/paxd.conf 裡的 firefox 做設定
題外話 vbox 和 vmware 我也還沒找到 只設 paxd.conf 就能跑的方法
目前找到的方法都只能重編譯核心 關掉某些功能
個人是覺得這和用回一般核心沒什麼兩樣就是
有用這2個軟體的話 個人建議還是用一般核心就好
其實還有 gradm 可以裝來玩
不過 我是覺得多人使用環境才比較需要
所以這個我就只有裝好後 開學習模試測試一下而已
# pacman -S gradm 想裝來玩看看的可以裝看看
裝好後
# gradm -F -L /etc/grsec/learning.log
開啟學習模式
學習模式把常用指令使用一陣子後 再打開 gradm 規則
它就會針對不常用的指令做限制
(這邊我就沒研究了 畢竟光 grsec+pax 就限制很多了)
接下來是 pax 的相關工具
# pacman -S pax-utils paxtest
我只有用 paxtest 測試一下而已
https://wiki.archlinux.org/index.php/PaX
照 wiki 上寫的 就裝來玩看看
pax-utils 的部份還在摸索中
因為我的 分享資料夾 是 用 mount 掛戴的(使用 user 權限)
所以我修改了 mount 的權限部份
# vi /etc/sysctl.d/05-grsecurity.conf
取消註解 "kernel.grsecurity.chroot_deny_mount = 1"
把 "1" 改成 "0"
如果都用 root 掛戴的 這邊倒是不需要變更
最後 在 paxd.conf 的部份
設定過的檔案 似乎在 paxd.conf 刪去後
還是會在例外清單中
只有移除or重裝才會阻擋
不知道是不是我少改了什麼
用了一陣子後的一點心得
不過老實說 個人使用來說 和一般的核心差不多
只是有一點一定感覺的到
效能略為降低和有些程式得設例外才能執行
--
Tags:
Linux
All Comments

By Annie
at 2015-08-27T21:03
at 2015-08-27T21:03

By Lauren
at 2015-08-31T09:09
at 2015-08-31T09:09

By Steve
at 2015-09-02T17:30
at 2015-09-02T17:30

By Barb Cronin
at 2015-09-06T18:22
at 2015-09-06T18:22

By Dorothy
at 2015-09-08T18:42
at 2015-09-08T18:42

By Quintina
at 2015-09-12T08:35
at 2015-09-12T08:35

By Ina
at 2015-09-14T14:33
at 2015-09-14T14:33

By Wallis
at 2015-09-16T18:35
at 2015-09-16T18:35

By Lily
at 2015-09-19T21:51
at 2015-09-19T21:51

By Lydia
at 2015-09-21T17:25
at 2015-09-21T17:25

By Vanessa
at 2015-09-23T21:45
at 2015-09-23T21:45

By Jacob
at 2015-09-27T09:20
at 2015-09-27T09:20

By Barb Cronin
at 2015-10-02T07:27
at 2015-10-02T07:27

By Charlie
at 2015-10-06T11:42
at 2015-10-06T11:42

By Andrew
at 2015-10-07T06:32
at 2015-10-07T06:32

By Elizabeth
at 2015-10-10T04:45
at 2015-10-10T04:45

By Kelly
at 2015-10-12T07:06
at 2015-10-12T07:06

By Ophelia
at 2015-10-15T21:04
at 2015-10-15T21:04

By Iris
at 2015-10-19T21:43
at 2015-10-19T21:43
Related Posts
visudo中的命令限制

By Irma
at 2015-08-23T09:31
at 2015-08-23T09:31
印表機墨水存量問題

By Rebecca
at 2015-08-23T00:29
at 2015-08-23T00:29
知名開發人員:是不是該終結OpenOffice了

By Caroline
at 2015-08-20T20:43
at 2015-08-20T20:43
我該選擇哪種Linux版本

By Steve
at 2015-08-20T14:51
at 2015-08-20T14:51
opensuse repositories 問題

By Gary
at 2015-08-20T10:58
at 2015-08-20T10:58