목록Linux (78)
Information Security
chroot (change root) -최상위 root 디렉터리를 변경시켜서 보안을 강화한다. -사용자가 접근이 가능한 최상위 디렉터리가 자신의 홈 디렉터리로 제한된다. vsftp.conf 파일을 수정하여 chroot 적용 chroot_local_user=YES 계정을 통해서 접속하는 사용자들에게 chroot를 적용하겠다는 의미 chroot_list_enable=YES chroot를 적용하지 않을 사용자 정보를 가지고 있는 파일 사용 chroot_list_file=/etc/vsftpd/chroot_list chroot를 적용하지 않을 사용자의 정보를 가지고 있는 파일의 경로 chroot 테스트 (1) ftp-user1, ftp-user2 계정의 홈 디렉터리에 파일 생성 (2) chroot_list 파일은..
PAM을 이용한 로그인 제한 PAM(Pluggable Authentication Module) 서비스 접속 및 각종 인증에 사용되는 모듈 ftpusers 파일을 이용한 FTP 사용자 접근 제어는 사용자 인증에 사용되는 모듈 PAM의 pam.listfile.so 모듈을 이용하여 가능하다. vsftp에서 PAM을 사용하기 위하여 설정 파일에 위와 같이 명시가 되어 있다. ... ... vsftpd의 PAM 설정 확인 auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed -인증을 담당하는 2번째 줄 auth에서 설정 확인 -해당 파일(/etc/vsftpd/ftpusers)에 등록되어 있는 사용자는 접근..
리눅스 서버에 등록된 계정 사용자에게 FTP 서버 접속을 허용하기 위한 설정 (1) 설정 파일 수정 local_enable=YES 로컬 계정 사용자의 FTP 접근 허용 write_enable=YES 로컬 계정의 파일 생성 및 수정 허용 local_umask=022 생성한 파일에 적용되는 umask 변경 내용 적용 (2) 계정 생성 계정 생성 Client-Linux에서 접속해보기 ftp(Port 21)에 접속되어 있는 계정 확인 (3) 보안 설정 /etc/vsftpd/ftpusers ftp 접속 차단 계정 정보 파일 /etc/vsftpd/user_list -vsftpd.conf 주 설정 파일에 의해서 사용여부 결정 userlist_enable=YES vsftpd.conf 파일에 YES로 설정되어 있다면 u..
FTP(File Transfer Protocol) -대용량/대량 파일 전송에 특화 -FTP 프로토콜은 TCP 20번과 21번을 사용하여 서비스를 제공한다. TCP 20번(Data port) 데이터 전송 시 사용 TCP 21번(Command port) 접속 및 제어를 위한 명령어 전달 FTP 동작 방식 -연결 방식에 따라 Active(능동) 모드와 Passive(수동) 모드가 있다. -FTP 클라이언트가 FTP 서버에 접속할 때 2가지 모드 중 하나를 선택하여 접속 요청을 한다. Active Mode 클라이언트는 임의의 포트를 사용하여 FTP 서버의 포트 21번으로 접속을 시도하여 성공한다. -> 클라이언트는 FTP 서버에게 데이터 전송을 위한 클라이언트의 포트가 몇 번인지 알려준다. -> FTP 서버는 ..
VNC(Virtual Network Computing) -GUI 환경에서 실행하는 원격 접속 프로그램 VNC Server Server-A VNC Client Client-Win VNC Server (Server-A) 서버용 프로그램 설치 주 설정 파일 VNCSERVERS="1:root" 디스플레이번호:접속계정명 VNCSERVERARGS[1]="-geometry 800x600" 1번 디스플레이 해상도 지정 위의 내용 추가 후 저장 -로그인한 계정의 패스워드를 지정하고 vnc 서버에 등록 -암호는 최소 6글자 VNC Client (Client-Win) Client-Win에서 http://tigervnc.org/에 접속 Downloads -> here Windows 64 bit tigervnc 다운로드 설치 ..
SSH -보안이 강화된 원격 접속 서비스 -데이터 전송 시 암호화되어 전송 -TCP/22번 사용, 리눅스 배포판 설치 시 기본적으로 설치되어 있다. #ssh [계정]@[IP주소] -[계정] 생략 시 기본 값 root 계정으로 동작 ssh 클라이언트 프로그램 설치 Server-A에서 Client-Linux 접속 password를 입력하면 Client-Linux의 root 계정으로 접속 가능 scp Server-A 홈 디렉터리로 이동 scp_file1 생성 파일 확인 Client-Linux #scp [원본 파일] [대상 파일] -Server-A(100.100.100.110)의 홈 디렉터리 아래에 위치한 scp_file1을 Client-Linux의 홈 디렉터리로 복사 yes Server-A root 계정의 p..
TELNET -전통적으로 상용된 원격 접속 프로그램 -보안에 취약점이 많아 최근에 SSH로 대체 -평문(Plain text)으로 데이터를 전송하여 패킷을 분석하면 내용이 전부 노출된다. -Xinetd 데몬(슈퍼데몬)이 관리하는 데몬으로 TCP/23 포트를 이용하여 서비스를 제공한다. Telnet Server Server-A Telnet Client Client-Win Client-Linux Server-A (Telnet Server) telnet 서버용 패키지 설치 xinetd 데몬과 의존 관계이기 때문에 함께 설치 telnet 주 설정 파일 -xinetd 데몬에 의해 동작하는 프로그램들은 해당 디렉터리 내에 설정파일이 있다. disable = no로 수정 -xinetd 데몬이 활성화 되면 telnet을..
라운드로빈 부하 분산 동일한 서버를 여러 대 운영할 때 DNS 서버를 통해서 클라이언트의 요청이 한 서버에만 집중되지 않도록 적절하게 부하를 분산하는 DNS 서버의 기능을 라운드 로빈 방식의 Load Balancing이라고 한다. yyy.zone 파일에 표시된 내용 추가 yyy.rev.zone 파일에 표시된 내용 추가 named 데몬 재시작 네임서버 변경 부하가 분산된 것 확인 dig 이용하여 웹 서버의 정보 조회 마스터(Primary, Main) / 슬레이브(Secondary, Backup) 네임 서버 구축 마스터 네임서버가 동작하지 않을 경우 슬레이브 네임서버가 마스터를 대신하여 클라이언트에게 도메인/IP 주소 정보를 제공해야 한다. 정보를 제공하기 위하여 DB 파일이 필요하다. -> 마스터 서버의 ..
Local Name Server -로컬 네임 서버가 전세계의 모든 컴퓨터의 도메인 이름을 관리할 수 없기 때문에 자신의 DB에 존재하는 도메인이라면 바로 알려주지만 그렇지 않으면 최상위 도메인에 위치한 root 네임서버에게 질의한다. 로컬 네임서버 동작 순서 웹 브라우저에서 www.nate.com 도메인을 주소 창에 입력 -> hosts 파일에 없으면 -> resolv.conf에서 로컬 네임서버 IP 확인 후 질의 -> 로컬 네임서버 DB에 정보 있으면 알려주고 없으면 -> 최상위 root 네임서버에게 질의 -> root 네임서버는 TLD 도메인 정보만 가지므로 COM 네임서버를 알려줌 -> COM 네임서버에게 질의 -> nate.com 네임서버 알려줌 -> nate.com 네임서버에게 질의 -> www..
DNS(Domain Name Server / System) -DNS 서비스는 도메인을 IP 주소로 변환(Resolving)시켜주는 이름 관리 서비스이다. DNS의 구조 -계층적 구조 형태로 구성되어 있으며, 4단계의 도메인 레벨로 세분화할 수 있다. https://www.computerhope.com/jargon/d/domaname.htm [1] Root Level Domain 도메인 구조에서 최상위에 위치해 있으며 표시는 .을 이용한다. [2] Top Level Domain(TLD) ccTLD(Country-code-TLD)와 gTLD(Generic-TLD)가 있으며 IANA에 의해 관리된다. ※ IANA(Internet Assigned Number Authority) -인터넷 할당 번호 관리 기관 -..