Keeping
your system secure with SELinux
Posted
12 Aug 2015 by Ben Cotton
Bài
được đưa lên Internet ngày: 12/08/2015
Ít
điều trong thế giới Linux gợi lên sự phản ứng mạnh
như SELinux, một cải tiến an toàn cho Linux. Ở hội nghị
LinuxCon, Susan Lauber hy vọng làm nhẹ bớt nhu cầu đó và
chỉ cho mọi người ánh sáng. Trong bài nói chuyện của
bà, SELinux - tất cả là về các cái nhãn, Lauber sẽ dạy
những điều cơ bản về SELinux và mô tả vì sao đây là
một thứ phải được chạy trên các máy của bạn.
Trong
cuộc phỏng vấn này, bà nói cho chúng tôi nhiều hơn
Làm
thế nào bà đã tham gia vào việc cung cấp các khóa huấn
luyện về SELinux?
Từ
những ngày đầu của tôi về quản trị hệ thống và hỗ
trợ các máy tính cá nhân, tôi đã có một sự quan tâm
trong các khía cạnh an toàn của điện toán. Tôi từng bắt
đầu dạy các hệ điều hành mạng khác nhau nên mối
quan tâm đó đã trở nên thậm chí còn mạnh hơn. Tôi
thậm chí đã làm luận án thạc sỹ của tôi về nhu cầu
kiểm soát truy cập bắt buộc ở mức hệ điều hành. Đó
từng là 9 năm về trước! Như một Người chỉ dẫn có
chứng chỉ của Red Hat, tôi đã nhảy vào cơ hội học và
dạy tất cả các lớp học lần vết an toàn của chúng,
bao gồm cả khóa học Quản trị SELinux và Viết Chính
sách.
SELinux
có uy tín ít màu hồng hơn với nhiều người, bất chấp
những lợi ích của nó. Ngoài cuốn sách màu mè ra,
SELinux có thể được truyền bá như thế nào?
Nhiều
người sợ những gì họ không hiểu. Đưa ra ngày càng
nhiều ví dụ về cách mà SELinux được thiết lập cấu
hình và cách nó bảo vệ - thậm chí với các thiết lập
mặc định sử dụng ngay được - trao cho những người
quản trị sự tin cậy nhiều hơn để giữ cho SELinux ở
trong chế độ ép buộc. Hơn nữa, có nhiều nhà quản trị
có gu tồi tệ với tính sẵn sàng trong những ngày đầu
của SELinux. Họ nên thử lại một lần nữa! Ngày nay,
chính sách “ngắm đích” được xuất ra làm việc được
đối với nhiều người. Không có nhiều nhu cầu về việc
viết chính sách phức tạp và nhiều công cụ hỗ trợ
với các sửa đổi chính sách đơn giản. Hầu hết những
thay đổi có thể thực sự được làm với các công cụ
quản trị và thậm chí được quản lý tập trung. Từ
phía quản lý an toàn, đáng lưu ý rằng có SELinux ở chế
độ ép buộc, thậm chí với chính sách ngắm đích mặc
định, đã ngăn chạn được thiệt hại từ một số
khai thác. Tôi sẽ có các liên kết tới vài bài viết
trên Blog về An toàn của Red Hat chi tiết hóa cách mà
SELinux đã làm giảm nhẹ thiệt hại gần đây và các
khai thác lỗi ngày số 0 rất phổ biến.
Các
lập trình viên có thể làm gì để
giúp chắc chắn phần mềm của họ không là lý do SELinux
làm cho không chạy được trong máy?
Các
lập trình viên phần mềm cần nghĩ về an toàn từ các
pha thiết kế sớm. Không có bất kỳ ai sẽ sử dụng
phần mềm theo cách nó đã định hoặc đã được tưởng
tượng cả. Đi sau sự khuyến cáo về liên nền tảng như
việc thẩm tra đầu vào, có xác thực nếu cần, và không
là quá mở trong các quyền cho phép của các tệp cũng sẽ
giúp trong việc có được ứng dụng của bạn làm việc
được với SELinux ở chế độ ép buộc.
Tôi
nhớ khi các bộ công cụ khác nhau lần đầu được đưa
ra để tạo ra các ứng dụng của Android cho các điện
thoại, và những lập trình viên mới có thể đơn giản
chọn tất cả các ô để cho phép bất kỳ điều gì họ
có lẽ muốn làm cùng lúc trong tương lai. Tôi vẫn còn
không nghĩ là trò chơi solitaire
của tôi cần có sự truy cập tới danh sách các mối liên
hệ của tôi!
Thậm
chí các chính sách mặc định của SELinux đang cho phép
mọi điều mà có nghĩa. Nếu ứng dụng của tôi đang tạo
nội dung web thì tất cả điều tôi cần làm là hãy đảm
bảo rằng điều đó làm cho nội dung có được nhãn
httpd_sys_content được áp dụng. Mặt khác, nếu ứng dụng
của tôi cố đọc và xuất bản các nội dung của tệp
trong /etc/sahdow, thì tôi kỳ vọng SELinux sẽ bóp chết yêu
cầu đó.
Nếu
ứng dụng đó chỉ đọc và ghi vào các tệp nó sở hữu,
thì SELinux sẽ cho phép điều đó sẽ là chính sách mặc
định, thậm chí nếu ứng dụng đó đang chạy không bị
hạn chế. Bây giờ có một số công cụ viết chính sách
của SELinux có thể hỗ trợ trong việc tạo chính sách
cho ứng dụng của bạn nhưng nó chỉ giôgns như bạn có
thể có khả năng sử dụng một module chính sách đang tồn
tại với ít, nếu có, những sửa đổi.
Phần
ưa thích nào của bà trong việc đóng góp cho các dự án
nguồn mở?
Không
nghi ngờ gì, đó là cộng đồng. Như một người luôn đi
đây đó để huấn luyện, phần lớn cuộc sống xã hội
của tôi là ảo và các cộng đồng nguồn mở là mở
24/7. Tôi có thể đóng góp chỉ một chút hoặc đi sâu
vào một chủ đề cụ thể. Luôn có thứ gì đó mới để
học và khai thác. Các ý tưởng mới đã tới từ khắp
nơi trên thế giới và sự đổi mới xảy ra ở tất cả
các giờ, cả ngày lẫn đêm. Nếu tôi không có các nơ
ron thần kinh cho các nội dung kỹ thuật mới, thì tôi
luôn có thể tìm thấy thông tin về rượu táo chát hoặc
âm nhạc các vùng từ bất kỳ nền văn hóa nào tôi chọn.
Những
phiên LinuxCon nào bà không thể bỏ qua năm nay?
Nếu
bạn có bất kỳ mối quan tâm nào trong các kho chứa và
an toàn, hãy chọn tất cả các bài nói của Dan Walsh. Ông
ta là một người nói chuyện tuyệt vời, tác giả của
cuốn sách màu mè tôi tham chiếu tới, và là người của
SELinux. Tôi đã nghe cả 2 bài trình bày ở hội nghị
thượng đỉnh của Red Hat và chúng là tuyệt vời.
Rikki
Endsley đang lặp lại bài nói chuyện Willie Nelson của bà
từ OSCON. Tôi đã nghe những điều tuyệt vời và tôi có
kế hoạch nắm bắt chúng vào lúc này.
Trọng
tâm kỹ thuật hàng đầu của tôi là các bài nói chuyện
về bất kỳ điều gì có liên quan tới quản trị an toàn
nhưng ngoài ra tôi có quan tâm trong cả Atomic Host,
Kubernetes, và Apache Hadoop. Có bài nói chuyện về “Việc
đảm bảo an toàn cho Dữ liệu Lớn” mà tôi đang hy vọng
nắm bắt và tôi cũng đang ngồi ở Seattle cho ngày đầu
của Hội nghị Thượng đỉnh An toàn Linux.
Bài
báo này là một phần của Loạt bài Phỏng vấn các
Diễn giả cho LinuxCon, CloudOpen, và ContainerCon Bắc
Mỹ 2015. LinuxCon Bắc Mỹ là một sự kiện nơi mà “các
lập trình viên, các nhà quản trị
hệ thống, các kiến trúc sư và tất cả các mức tài
năng kỹ thuật tụ tập dưới cái gốc về giáo dục,
cộng tác và giải quyết vấn đề cho nền tảng Linux
trong tương lai”.
Few
things in the Linux world evoke a strong reaction like SELinux, the
security enhancement for Linux. At LinuxCon, Susan Lauber hopes to
soften that response and show people the light. In her talk,
SELinux—it's all about the labels, Lauber will teach SELinux basics
and describe why it's a must-run on your systems.
In
this interview, she tells us more
How
did you get involved in providing SELinux training?
From
my early days of PC support and system administration, I had an
interest in the security aspects of computing. Once I began teaching
various network operating systems that interest became even stronger.
I even did my Master's paper on the need for mandatory access
controls at an operating system level. That was 9 years ago! As a Red
Hat Certified Instructor I jumped on the opportunity to learn and
teach all of their security track classes, including the SELinux
Administration and Policy Writing course.
SELinux
has a less-than-rosy reputation with a lot of people, despite its
benefits. Apart from the coloring book, how can SELinux be
evangelized?
Many
people fear what they do not understand. Giving more and more
examples of how SELinux is configured and how it protects—even with
default out of box settings—gives more administrators the
confidence to keep SELinux in enforcing mode. Additionally, there are
a lot of administrators who got a bad taste with the early days of
SELinux availability. They should try again! Today, the shipped
"targeted" policy works for many people. There is not a lot
of need for complex policy writing and plenty of tools for assisting
with simple policy modifications. Most changes can actually be made
with administration tools and even centrally managed. From the
security management side, it is worth noting that having SELinux in
enforcing mode, even with the default targeted policy, has prevented
damage from a number of exploits. I will have links to several Red
Hat Security Blog posts detailing how SELinux mitigated damage in
recent and very public zero-day exploits.
What
can developers do help make sure their software isn't the reason
SELinux gets turned off on a system?
Software
developers need to think about security from the early design phases.
Not everyone will use software the way it was intended or envisioned.
Following cross platform advice such as verifying input, having
authentication if necessary, and not being too open in file
permissions will also assist in having your application work with
SELinux in enforcing mode.
I
remember when various toolkits first came out to create Android apps
for phones, and new developers would simply check all the boxes to
allow for anything they might want to do at some time in the future.
I still do not think my solitaire game needs access to my contacts
list!
Even
default SELinux policies are going to allow things that make sense.
If my application is creating web content all I need to do is ensure
that that the resulting content has the httpd_sys_content label
applied. On the other hand, if my application tries to read and
publish the contents of the /etc/shadow file, then I expect SElinux
to squash that request.
If
the application only reads and writes to files it owns, SELinux
should allow that will the default policy, even if the application is
running unconfined. There are now a number of SELinux policy writing
tools that can assist in creating a policy for your application but
it just as likely that you may be able to use an existing policy
module with few if any modifications.
What's
your favorite part of contributing to open source projects?
Without
a doubt, it's the community. As a traveling trainer much of my social
life is virtual and open source communities are open 24/7. I can
contribute just a little or dive in deep to a specific topic. There
is always something new to learn and explore. New ideas come from all
over the world and innovation happens at all hours of the day and
night. If I don't have the brain cells for new technical content, I
can always find information on regional hard ciders or music from any
culture I choose.
What
are your can't-miss LinuxCon sessions this year?
If
you have any interest in containers and security, check out both
talks by Dan Walsh. He is a great speaker, the author of the coloring
book I reference, and the SELinux man. I heard both presentations at
Red Hat summit and they were great.
Rikki
Endsley is repeating her Willie Nelson talk from OSCON. I heard great
things and I plan to catch that one this time around.
My
top technical focus is talks on anything related to security
administration but beyond that I have interests in Atomic Host,
Kubernetes, and Apache Hadoop. There is a "Securing Big Data at
Rest" talk that I am hoping to catch and I am staying in Seattle
for the first day of the Linux Security Summit as well.
This
article is part of the Speaker Interview Series for LinuxCon,
CloudOpen, and ContainerCon North America 2015. LinuxCon North
America is an event where "developers, sysadmins, architects and
all levels of technical talent gather together under one roof for
education, collaboration and problem-solving to further the Linux
platform."
Dịch: Lê Trung
Nghĩa
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.