freeseaboy 님의 멋있어 지려 노력하는 블로그

리눅스 탐방(5) 시스템 보안 정책 기타등등 1-2 본문

컴퓨터 & 서버/리눅스

리눅스 탐방(5) 시스템 보안 정책 기타등등 1-2

freeseaboy 2024. 11. 16. 19:58
반응형

자 오늘 4교시 리눅스 보안 탐방 이어서 진행할게요

일단 오늘 내용은 약간 어려울수 있고 잘쓰이지않는 것도 있어요

주의하시고 볼거만 시청하시면 됩니다.

그럼 바로 ㄱ

스크립밑

​★  ★위 포스팅 내용은 네X버 Blog 아래 링크에도 

똑같이 미러링 되어 있습니다.예비 Blg ​★  

https://blog.naver.com/iwseo7114

 

iwseo7114님의 블로그 : 네이버 블로그

안녕하세요. 일상 생활 공유에 관심이 많은 샐리엇입니다. 잘부탁드려요~ㅋ

blog.naver.com

 

 

#############################################################################

자 안녕하세요 오늘 4교시 리눅스 시간이구요

일단 오늘 저번에 못한 나머지 모듈 및 기능을 알아볼 예정입니다.

오늘은 주말이라 시간이 그래도 널널하니 좀 빡센 인터넷 수업이 될듯요 ㅋ

일단...노래듣 ㅋ

- PAM

- sudo

- tripwire

- cops

위 내용들은 다 보안에 관련이있죠?

[root@localhost ~]# ls -al /etc/pam.d/

total 116

drwxr-xr-x. 2 root root 4096 Nov 2 17:32 .

drwxr-xr-x. 79 root root 8192 Nov 16 19:07 ..

-rw-r--r--. 1 root root 192 Aug 3 2016 chfn

-rw-r--r--. 1 root root 192 Aug 3 2016 chsh

-rw-r--r--. 1 root root 232 Aug 18 2015 config-util

-rw-r--r--. 1 root root 293 Apr 1 2016 crond

lrwxrwxrwx. 1 root root 19 Nov 2 16:06 fingerprint-auth -> fingerprint-auth-ac

-rw-r--r--. 1 root root 702 Nov 2 16:06 fingerprint-auth-ac

-rw-r--r--. 1 root root 796 Aug 3 2016 login

-rw-r--r--. 1 root root 154 Aug 18 2015 other

-rw-r--r--. 1 root root 188 Jun 10 2014 passwd

lrwxrwxrwx. 1 root root 16 Nov 2 16:06 password-auth -> password-auth-ac

-rw-r--r--. 1 root root 974 Nov 2 16:06 password-auth-ac

-rw-r--r--. 1 root root 155 Jun 24 2016 polkit-1

lrwxrwxrwx. 1 root root 12 Nov 2 16:06 postlogin -> postlogin-ac

-rw-r--r--. 1 root root 330 Nov 2 16:06 postlogin-ac

-rw-r--r--. 1 root root 144 Jun 10 2014 ppp

-rw-r--r--. 1 root root 681 Aug 3 2016 remote

-rw-r--r--. 1 root root 143 Aug 3 2016 runuser

-rw-r--r--. 1 root root 138 Aug 3 2016 runuser-l

lrwxrwxrwx. 1 root root 17 Nov 2 16:06 smartcard-auth -> smartcard-auth-ac

-rw-r--r--. 1 root root 752 Nov 2 16:06 smartcard-auth-ac

lrwxrwxrwx. 1 root root 25 Nov 2 16:04 smtp -> /etc/alternatives/mta-pam

-rw-r--r--. 1 root root 76 Jun 10 2014 smtp.postfix

-rw-r--r--. 1 root root 904 Mar 22 2016 sshd

-rw-r--r--. 1 root root 540 Aug 3 2016 su

-rw-r--r--. 1 root root 202 Apr 1 2016 sudo

-rw-r--r--. 1 root root 187 Apr 1 2016 sudo-i

-rw-r--r--. 1 root root 137 Aug 3 2016 su-l

lrwxrwxrwx. 1 root root 14 Nov 2 16:06 system-auth -> system-auth-ac

-rw-r--r--. 1 root root 974 Nov 2 16:06 system-auth-ac

-rw-r--r--. 1 root root 129 Dec 7 2023 systemd-user

-rw-r--r--. 1 root root 84 Mar 6 2015 vlock

[root@localhost ~]#

이런식으로 되어있다고 해요

auth,account,session 등등 많아요 필드

책에서도 너무 많아서 설명을 일일이 안해주네요..

그니깐 뭐 저 필드가 토큰이라고 보면 된다고합니다

auth,account,seession,password,required ....등등

이거는 문서를 좀 보세요 각각 pam 설정파일에 각각 토큰을 지정해주고

그거에 맞는 정보들을 넣어야 된다고 합니다.

session required pam_selinux.so open

요뜻이 일일 알려면 상당히 복잡해져요...

결론부터 이야기하면

사용자가 어느누구든 터미널에 로그인을하면 세션이 맺어지죠?

그때 무조건 SELinux 라는 보안 설정이 강제하도록 세팅을 해놓은거에요..

session required pam_loginuid.so

이거는

login시 uid를 추적하기위해 무조건 부여하고 그거를 기록하는걸 강제하는

뭐 이런식이에요

이런식으로 설정을 넣고 보안을 강화하는 기술이라고 보면됩니다.

그리고 sudo

음..이거는 쉽게 어떤 프로그램을 일반사용자가 실행할수 없을때

무조건 루트 사용자만으로 실행할수 있는경우 sudo 명령을 통해

프로그램을 실행하면 실행하는 사용자가 비루트여도 root권한으로

부여가 되어서 실행을 하게끔 도와주는 녀석이라고 보면됩니다

다음 tripwire

이거는 쉽게 무결성 각각의 프로그램에 대한

검사를 진행해주고 악성인지 비악성인지 확인하는 툴이다.

passphrase

#yum install tripwire

#tripwire-setup-keyfiles

[root@localhost tripwire]# tripwire-setup-keyfiles

----------------------------------------------

The Tripwire site and local passphrases are used to sign a variety of

files, such as the configuration, policy, and database files.

Passphrases should be at least 8 characters in length and contain both

letters and numbers.

See the Tripwire manual for more information.

----------------------------------------------

Creating key files...

(When selecting a passphrase, keep in mind that good passphrases typically

have upper and lower case letters, digits and punctuation marks, and are

at least 8 characters in length.)

Enter the site keyfile passphrase:

Verify the site keyfile passphrase:

Generating key (this may take several minutes)...Key generation complete.

(When selecting a passphrase, keep in mind that good passphrases typically

have upper and lower case letters, digits and punctuation marks, and are

at least 8 characters in length.)

Enter the local keyfile passphrase:

Verify the local keyfile passphrase:

Generating key (this may take several minutes)...Key generation complete.

----------------------------------------------

Signing configuration file...

Please enter your site passphrase:

Incorrect site passphrase.

Please enter your site passphrase:

Incorrect site passphrase.

Please enter your site passphrase:

Wrote configuration file: /etc/tripwire/tw.cfg

A clear-text version of the Tripwire configuration file:

/etc/tripwire/twcfg.txt

has been preserved for your inspection. It is recommended that you

move this file to a secure location and/or encrypt it in place (using a

tool such as GPG, for example) after you have examined it.

----------------------------------------------

Signing policy file...

Please enter your site passphrase:

Wrote policy file: /etc/tripwire/tw.pol

A clear-text version of the Tripwire policy file:

/etc/tripwire/twpol.txt

has been preserved for your inspection. This implements a minimal

policy, intended only to test essential Tripwire functionality. You

should edit the policy file to describe your system, and then use

twadmin to generate a new signed copy of the Tripwire policy.

Once you have a satisfactory Tripwire policy file, you should move the

clear-text version to a secure location and/or encrypt it in place

(using a tool such as GPG, for example).

Now run "tripwire --init" to enter Database Initialization Mode. This

reads the policy file, generates a database based on its contents, and

then cryptographically signs the resulting database. Options can be

entered on the command line to specify which policy, configuration, and

key files are used to create the database. The filename for the

database can be specified as well. If no options are specified, the

default values from the current configuration file are used.

[root@localhost tripwire]# tripwire --init^C

[root@localhost tripwire]# ll

total 84

-rw-r-----. 1 root root 931 Nov 16 19:33 localhost.localdomain-local.key

-rw-r-----. 1 root root 931 Nov 16 19:33 site.key

-rw-r-----. 1 root root 4586 Nov 16 19:34 tw.cfg

-rw-r--r--. 1 root root 603 Apr 21 2018 twcfg.txt

-rw-r-----. 1 root root 12415 Nov 16 19:34 tw.pol

-rw-r--r--. 1 root root 46657 Nov 16 19:30 twpol.txt

[root@localhost tripwire]# tripwire --init

Please enter your local passphrase:

Parsing policy file: /etc/tripwire/tw.pol

Generating the database...

*** Processing Unix File System ***

### Warning: File system error.

### Filename: /usr/sbin/fixrmtab

### No such file or directory

### Continuing...

174. File system error.

Filename: /root/.ICEauthority

No such file or directory

175. File system error.

Filename: /root/.Xauthority

No such file or directory

176. File system error.

Filename: /dev/kmem

No such file or directory

177. File system error.

Filename: /proc/ksyms

No such file or directory

178. File system error.

Filename: /proc/pci

No such file or directory

-------------------------------------------------------------------------------

*** End of report ***

Open Source Tripwire 2.4 Portions copyright 2000-2018 Tripwire, Inc. Tripwire is a registered

trademark of Tripwire, Inc. This software comes with ABSOLUTELY NO WARRANTY;

for details use --version. This is free software which may be redistributed

or modified only under certain conditions; see COPYING for details.

All rights reserved.

Integrity check complete.

[root@localhost tripwire]#

Open Source Tripwire(R) 2.4.3.7 Integrity Check Report

Report generated by: root

Report created on: Sat 16 Nov 2024 07:42:48 PM KST

Database last updated on: Never

===============================================================================

Report Summary:

===============================================================================

Host name: localhost.localdomain

Host IP address: 127.0.0.1

Host ID: None

Policy file used: /etc/tripwire/tw.pol

Configuration file used: /etc/tripwire/tw.cfg

Database file used: /var/lib/tripwire/localhost.localdomain.twd

Command line used: tripwire --check /var/lib/tripwire/report/localhost.localdomain-20241116-193705.twr

===============================================================================

Rule Summary:

===============================================================================

-------------------------------------------------------------------------------

Section: Unix File System

-------------------------------------------------------------------------------

Rule Name Severity Level Added Removed Modified

--------- -------------- ----- ------- --------

Total objects scanned: 0

Total violations found: 0

===============================================================================

Object Summary:

===============================================================================

-------------------------------------------------------------------------------

# Section: Unix File System

-------------------------------------------------------------------------------

No violations.

이런식으로 특정 프로그램을 무결성 검사를 할수 있다..그리고

내용도 보고 위반사항이 있는지 체크할수 있으니 유용하다

cops도 정책 보고 위험한지 양호한지 알려주는 툴 근데이거는

개발이 중단됨 그래서 따로 받아야됨

요거는 지금 깃도 없고 따로 사이트도 없어서 그냥 이런게 있다정도로 알면될거같아요

그리고 자주 안쓰이고 더 좋은 제품들이 있어서 과거에 이랬다 정도만 아세요.

자이렇게 오늘 보안점검툴이 이런게 있다 정도로 알아봤어요

나중에 좀 딥하게 튜닝을 하게되거나 대형 대기업 서버 근데 서버해도

cops나 트립 와이어 이런거는 안쓸거같아요 왜냐면 저도 대기업 서버장비

관리를 좀 했는데 본적이 없어요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋpam있어요...

아무튼 그래도 알아놓으면 좋으니깐.

이렇게해서 대충 훓어 보았습니다 ㅋㅋ보안관련된 내용은 이렇게 책에서는

끝나더라고 그리고 다음챕터가 백업인데 이것은 다음시간에 공부하면서 리뷰해보도록

하죠 ㅋㅋ수고링

#############################################################################

반응형