klaus

[KDT-DAY_7] 원격접속(GUI), Linux setting 본문

수업/KDT

[KDT-DAY_7] 원격접속(GUI), Linux setting

klus! 2023. 1. 3. 16:37

0. 들어가기

[+] rlogin ==보안 취약하다.

- TCP wrapper를 사용

- /etc/hosts.allow /etc/host.deny 두 파일로 구성되어 있다.

- 시스템은 항상 allow 먼저 읽고 deny를 본다.

>  /etc/hosts.deny파일에서

>  sshd : 192.168.100.100 (화이트 기반) == 하나의 호스트

 

- in.rlogind : 10.10.10. (하나의 네트워크) OR ~ : ALL식으로 설정해주면 sshd와 rlogin 접속 불가

 

[+] 모의해킹을 할 때는 신뢰성있는 도구를 사용하여 레포트 작성

예) nessus, openjas

- /etc/rc.local파일은 시스템이 부팅하고 나서 맨 마지막에 실행되는 스크립트

- which 명령어 파일 위치를 보여주는 것

 

1. 원격접속 (GUI)

[+] VNC 개요

- tigerVNC, realVNC, TightVNC등 도구를 사용 (Linux)

- remote Desktop (win 원격 데스크 톱)

-https://jjeongil.tistory.com/1362 

- tigervnc설치 

yum -y install tigervnc-server

 

-해상도 조절도 같이 설치

yum -y install pixman pixman-devel libXfont

 

[+]vncservers 파일 설정

nano /etc/sysconfig/vncservers 

 

[+] 시스템 방화벽 설정 (firewall-config)

-  VNC를 사용할 때에는 기본적으로 5901,5902 포트를 사용

- root 이외의 계정 n개를 vncserver설정한다면 TCP 5901~(5901+n)의 포트를 사용하여 열어준다.

- GUI를 사용하여 filewall을 설정하면 아래와 같이 설정

> Runtime : 한시적 (재부팅시 사라짐)

> Permanent 지속적 

- CLI 명령어를 통해 포트를 열어줄 때

 

firewall-cmd --permanent --zone=public --add-port 5901/tcp    ==> 5901포트

firewall-cmd --permanent --zone=public --add-port 5902/tcp    ==> 5902포트

firewall-cmd --reload        ==> reload하여 포트 적용

firewall-cmd --list-ports    ==> list확인

 

[+] User 생성 / Pass 설정

vnc로 접속할 user 생성

- 실습은 각각의 root 와 centos로 접속 예정 

useradd -m -s /bin bash vncuser

 

 

[+] .vnc/xstartup

vnc server 를 연결했을 때 회색 화면으로 뜨는 문제가 발생한다. 

실행될 Application 이 아무것도 없어서 출력되는 페이지이다. 이럴 때를 대비하여

/.vnc/xstartup 파일수정해주면 된다.

- 파일 권한 설정 :  chmod 755 .vnc/xstartup

 

[+] 원격접속 유저 추가 (root)

- cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1. service

  - cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service

 

[+] 서비스 적용 및 확인

- 사용자별 vncserver를 시작

- 서비스 시작 enable 

> systemctl enable vncserver@:1.service

> systemctl enable vncserver@:2.service

> systemctl daemon-reload 

 

- netstat -nltp |grep LISTEN 를 사용하여 사용중인 포트 확인

https://www.lesstif.com/ws/netstat-43844201.html

 

netstat 로 사용중인 포트 확인

 

www.lesstif.com

 

[+] 원격접속 (windows, ubuntu)

ubuntu에서는 vncviewer를 사용하여 접속

windows에서는 VNC-Viewer-6.21.406-Windows-64bit 사용하여 접속

 

 

 

2. Linux 주요 설정

 

[+] 시간 및 언어

- 컴퓨터의 시간에는 마더보드의 배터리가 지원해주는 H/W clock과 운영체제가 지원해주는 system clock 이 있다.
- [date] 해서 나오는 KST(Korea Standard Time)는 한국 표준시이고, UTP(Universal Time Coordinated)는 국제 표준

 

 - [Applications] --> [Details] --> [Date & Time] 옆에 있는 Time Zone 탭으로 가서 변경 가능하다.

-  하드웨어(CMOS) 시간과 소프트웨어(시스템) 시간을 상호 맞출 수 있다.
① hwclock —show 해서 하드웨어 시간을 보고, 
② hwclock —systohc 해서 시스템 시간을 하드웨어 시간과 동기화하고, 
③ hwclock —hctosys 해서 하드웨어 시간과 시스템 시간을 동기화 할 수 있다. 
④ 이제 reboot 해주면 변경 사항이 적용된다. 

 

 

-rdate를 사용하여 원격으로 시간 정보를  확인할 수 있다.

예) rdate -p time.bora.net

[/etc/rc.local]을 편집하여 부팅시 시간 정보를 가져오도록 할 수 있다. (지속적) 

 

-  crontab 시간설정 방법

 

crontab 설정

 

 

 

- locale

로케일은 사용자 인터페이스에서 사용되는 언어, 지역 설정, 출력 형식 등을 정의하는 문자열

유닉스(Unix)와 리눅스(Linux)와 같은 POSIX 기반의 시스템에서는 같은 형식을 공유하고 있습니다.

애플의 맥OS를 비롯한 Darwin 계열 운영체제들도 POSIX 호환이 되기 때문에 같은 형식의 로케일 문자열을 사용합니다.

 

 

- locale -a를 사용하여 국가 및 언어별 언어를 선택 할 수 있다.

 

- system-config-language 를 설치하여 언어 설정 

> system-config-languag

 

 

[+] print 설정 (CUPS)

프린터 데몬은 CUPS이고 사용되는 프로토콜은 LPD와 LPR이 있으며, LPR는 원격지원 프로토콜이다.

windows 시스템과 호환하기 위해서 samba 그룹인 SMB://~~ 식으로 네트워크 설정

네트워크 프린터는 IPP와 프린터 큐를 보이는 IPQ도 있다.

 

[+] fonts 설정

폰트를 추가하려면 fontconfig.org 등에서 원하는 폰트를 Linux용 글꼴로 다운받아 /usr/share/fonts디렉터리에 설치하면 된다.

 

[+] Network 설정 (명령어)

- 아래와 같이 설정할 수 있다.

- infonfig ens 33 192.168.100.0 netmask 255.255.255.0 broadcast 192.168.100.255 network 192.158.100.0 UP

- inconfig default gw 192.168.100.2 device ens33

- ifconfig ens33 mtu 1000

ifconfig는 temparany : 현재 세션에서만 적용된다 (일시적으로 적용됨) ==DDOS와 같은 빠르게 설정해야하는 경우 사용

 

[+] SELinux 설정 (보안설정)

-보안 설정시setenforce (임시) /etc/selinux/config (영구) 설정

> 현세션에서 적용된 상태이고 빠르고 일시적으로 적용할 때 사용한다.

> 영구적으로 설정할 경우 파일을 수정하여 적용 할 수 있도록 한다.

> Enforcing는 보안 강한 상태

> Permissive는 보안 약한 상태

 

 

 

 

/proc /~

proc_참고

 

/proc 파일시스템

/proc 파일시스템은 실제로 존재하지 않는 일종의 환영이다. 이 파일시스템은 커널이 메모리 상에 만들어 놓은 것으로 디스크에는 존재하지 않는다. /proc은 시스템의 갖가지 정보를 제공해 주는

doc.kldp.org

 

 

 

 

[+] Global DNS 

 

 

[+] FQDN(Fully Qualified Domain Name)

네트워크에서는 어느 호스트를 FQDN으로 찾는다. FQDN은 '호스트_명.도메인_명'을 합친 개념으로 centos1 머신이 kahn.edu 도메인 안에 있다면 centos1.kahn.edu식의 이름을 가지게 되는데 FQDN이라고 한다. 
  /etc/hosts 파일에 192.168.100.100 centos1.kahn.edu centos1식으로 적어두면 외부에서 해당 호스트의 IP 주소 

대신 호스트_명 centos1으로 연결할 수 있다. FQDN으로 연결하려면 로컬 네트워크에 DNS 설정으로 kahn.edu 도메인을 찾을 수 있어야 centos1.kahn.edu로 연결할 수 있다.

 

 

/det/hosts파일에 IP와 centos1.kahn.edu centos1로 입력해 설정할 수 있다.

firewall-cmd --reload

 

DNS 서버에서의 이름풀이(www.naver.com =>는 1. 로컬의 /etc/hosts 파일 >2. 로컬 DNS 서버 >2. 외부 글로벌 DNS 서버 순서로 찾는데 타겟머신의 /etc/hosts 파일에 192.168.100.100(해커_머신) www.naver.com www naver.com식으로 설정해주면 타겟자가 www.naver.com으로 연결하면 해커의 192.168.100.100으로 연결되게 된다. =>pshing site 공격이 된다!!!

 

 

 

[+] ip6 미사용 모드로 전환

 

chkconfig

 

 

 

[+]  ping (ICMP)  ===> gw만 장악하면 됨 (MAX주소를 동일하게 

Paket Internet Groper의 약어이며, 컴퓨터 네트워크 상태를 점검, 진단하는 명령이다

 

 스니핑 / 스와핑 / ping of dead

- 타겟 머신이 살아있는지 죽었는지 체크

 

ping -c 3 [주소]: 3번만 보낸다.1

ping -t 20 [주소] :

ping r : [주소] 신뢰할 수 장치를 통해 [주소]를 확인한다.

 

traceroute

 

ip addr하고 네트워크 카드(NIC)의 정보를 보았을 때  PROMISC라는 단어가 보이면 SNMP라는네트워크를 모니터링하고 있거나,

해커가 LAN에서 오가는 모든 패킷을 검사하고 있는 중이므로 주의한다

이런 상태를 Promiscuous mode라고 한다.

 

Promiscuous mode (난잡모드) : 네트워크 트레픽을 확인하기 위해서 사용

 

 

 

ip addr

 

 

 

 

[+]ARP

- 네트워크와 시스템의 MAC주소 정보를 확인

  

인터넷이 안될 때에는 DNS설정을 하는 것

/etc/resolv.conf 설정이 중요하다

nslookup & dig : DNS 설정 점검 도구

 

 

 

[-] nslookup 

#53

 

 

set type=mx 메일서버는 확인할 때 (mail exchanger)

set type=ns nameserver를 확인할 때,

set 

 

 

https://hack-cracker.tistory.com/215 공부해보자

 

Promiscuous Mode를 이용한 Sniffing

Promiscuous Mode ( 무차별 모드 )를 이용한 스니핑 스니핑 ( Sniffing )은 네트워크로 전송되는 패킷( Packet )을 훔쳐보는 도구이다. 스니핑은 네트워크 관리자가 네트워크 장애를 식별하고 조치하기 위

hack-cracker.tistory.com

 

dig

 

dig redhat.com +short

dig redhat.com +trace

 

 

netstat 

 

 

netstat -nltp

socket이란?

'ip_주소: 포트+번호'의 개념

- 소켓 에러는 대부분 방화벽에서 해당 포트를 열지 않아 발생

==> 192.168.100.100:80   <= 웹 서버

==> 192.168.100.100:23  <=텔 넷 서버

==> 

 

hostname [ ]

 

-i 아이피 주소 확인

-f 호스트명

호스트명변경 hostname [호스트명] : 일시적 호스트명이름 변경

 

 

route 경로를 확인하는 명령어

 

route add default gw 192.168.100.2 ens33

라우터 밑 GW는 LAN

 

pivotting : 

route add -net 10.10.10.0 netmask 255.255.255.0 gw 192.168.100.2 dev ens33 metric 2

==> 라우터는 1나이고 스위치가 다른 곳에 있을 때 연결하는 방법

sw1,2는 같은 대역 3은 다른대역에 있을 때 라우터는 하나/

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=ster098&logNo=221971604767 

 

[Network] - Pivoting

APT 공격 라이프 사이클 · 타겟 네트워크의 다른 호스트 및 서버 시스템 정보를 수집하고 공격하여 액세...

blog.naver.com

 

 

타겟 머신의 alive/dead상태를 볼 때 ping를 사용하고 타겟 머신까지의 경과 경로를 볼 때 traceroute를 사용

=> 두명령어는 ICMP프로토콜을 사용

 

 

[+]

traceroute www.mk.co.kr  (외부(

traceroute ubuntu2 (내부)

 

 

 

경로보기 tracepath []

 

루트 투르

 

startx

 

tcptraceroule 를 사용하면 * * * 와 같은 가려진 내용도 확인할 수 있다. (칼리)

 

01-03.txt
0.01MB

Comments