리눅스 웹 , Samba, DHCP, PXE 서버 설치 운영 (7일차)

Tyun_Record·2023년 8월 18일
0

APM

  • Apache 웹 서버 + 프로그래밍 언어 PHP + 데이터베이스 MariadB ( MySQL )
  • 리눅스 환경에서 사용될 경우는 LAPM이라고 부름
  • CentOS는 DNF 명령으로 편리한 설치 제공

웹 서버 설치

  • httpd, php, php-mysql, mariadb 설치

  • 시스템 재동작 ( httpd, mariadb )

    • systemctl restart httpd / mariadb
  • html 파일 생성 후 접속 ( window : 192.168.111.100 )

  • php 파일 생성 후 접속 ( window : 192.168.111.100/phpinfo.php )

워드프레스를 활용한 웹 사이트 구축

  • json 설치

    • yum install php-json
  • mysql에서 DB 구축

    • wpuser@localhost > 해당 서버에서만 동작하도록 할 것
    • wpuser@192.168.* > 해당 IP 대역에서 동작하도록 할 것
  • 워드프레스 파일 다운로드 (https://ko.wordpress.org/)

  • 파일 확인 후 압축해제 (tar), html 디렉터리로 복사 후 권한 설정

    • cp -r > 하위 디렉터리까지 싹다 복사해버려라
    • 707로 권한 주는 이유는 wordpress를 아파치만 쓸 수 있도록, 외부인은 서버 작업 금지
    • 아파치가 wordpress를 사용할 수 있도록 권한 부여
  • 아파치가 wordpress와 작동을 할 수 있도록 데이터베이스, 유저이름, 비밀번호 입력

    • config 파일이 sample 기반으로 만들어지게하고 여는것
  • httpd 파일 수정하여 시작 페이지가 index.html에서 wordpress로 들어가지도록 변경

  • window로 192.168.111.100 접속 후 워드프레스 설치

  • 워드프레스 로그인 후 접속

Samba 서버

  • Windows와 Linux/Unix 사이 자원을 공유하기 위해 개발
  • Linux에서 Windows의 자원 사용 방법과 Windows에서 Linux 자원을 사용하는 방법으로 나뉨
  • 리눅스에서 Windows 폴더와 프린터 사용하기 위한 구성도

    윈도우 폴더를 리눅스에서 사용하기

  • c드라이브에 smbshare 폴더 생성 후 공유 everyone 설정
  • cmd (관리자 권한) 에서 계정 생성
  • 본인 PC IP 확인
  • 리눅스 서버에서 samba-client 설치 및 samba 설치 여부 확인
  • 리눅스에서 윈도우가 가지고 있는 공유 리스트 뭐 있는지 확인
  • 윈도우 공유 파일과 리눅스 공유 파일을 연결하기 위해 디렉터리 생성 후 마운트
  • mount 된 모습
  • 파일 공유 모습

Windows에서 리눅스 자원 사용하기

  • samba, samba-client 설치
  • 공유 디렉터리 생성, 그룹 생성 (여러 공유 디렉터리를 만들 경우 편의성을 위해), share 디렉터리를 그룹의 소유로 변경, share 디렉터리 권한 부여, centos 계정을 sambagroup으로 이동 후 비밀번호 설정
  • samba 파일 수정 및 공유 파일 내용 추가
  • testparm 으로 파일 로드 확인
  • smb nmb 재시작 및 활성화
  • 방화벽 비활성화
  • windows 내 PC > 네트워크 드라이브 연결
  • 로그인 후 공유 폴더 생성 된 모습
  • 해당 폴더에 파일 넣어서 리눅스에서 확인 가능

Samba 서버 설정 파일 (smb.conf)

  • /etc/samba/smb.conf 파일
    • [global] : 모든 자원들의 공유를 위한 설정
      • workgroup = Windows의 작업 그룹 이름
      • server string = Windows의 네트워크에 보이는 컴퓨터 이름
      • netbios name = Windows의 네트워크에 참가하는 컴퓨터 이름
      • hosts allow = Samba 서버에 접속을 허용할 컴퓨터의 IP 주소
      • log file = Samba 서버에 접속하는 컴퓨터의 접속 기록 파일
      • securit = usre(CentOS 8에 포함된 버전은 share을 허용하지 않음)
    • [공유이름] : 공유되는 디렉토리에 대한 설정
      • comment = 공유하는 디렉터리를 설명. 생략 가능
      • path = 물리적인 디렉터리
      • read only = 디렉터리에 쓰기 권한이 있는지 여부. yes는 읽기 전
        용, no는 읽기/쓰기 허용
      • browseable = 공유 리스트를 보여줄지 여부
      • guest ok = 다른 사용자도 사용하게 할지 여부

DHCP

  • DHCP ( Dynamic Host Configuration Protocol )
    • 자신의 네트워크 안에 있는 클라이언트 컴퓨터가 부팅될 때 자동으로 IP주소, 서브넷 마스크, 게이트웨이 주소, DNS 서버 주소를 할당해 주는 것
  • 일반 사용자가 IP에 관련하여 정보를 몰라도 인터넷 사용하는 데 문제가 없는 이유
  • 관리가 편하고 이용자가 편함
  • 한정된 IP 주소로 여러 명의 사용자가 사용할 수 있음
  • 작동 원리
  • VMware에서 DHCP 서버 구성도
  • rpm -qa dhcp-client로 설치 확인 ( client, server(b) )
  • Vm pro DHCP 서비스 해지
  • client IP 못받아오는 모습
  • server(b) 세팅
    • BOOTPROTO = dhcp
    • IPaddress ~ DNS1까지 삭제
    • reboot
  • server에 dhcp-server 설치 ( dnf -y install dhcp-server )
  • /etc/dhcp/dhcpd.conf 에서 DHCP 세팅
  • dhcpd 디렉토리에 있는 파일 확인 ( DHCP에 쓰이는 IP 리스트 작성 )
  • dhcpd 재시작후 활성화 ( systemctl restart/enable dhcpd )
  • server(b)와 client 재부팅하면 정상적으로 IP 받아옴

  • dhcpd.lease 파일에서 접속중인 IP 확인할 수 있음

/etc/dhcpd.conf 내용

PXE 서버

  • 개념도
  • syslinux, dhcp-server, tftp-server, vsftpd 설치
    • dnf -y install syslinux dhcp-server tftp-server vsftpd
  • 방화벽 비활성화
  • dhcpd.conf 파일, vsftpd.conf 파일 수정
  • cd umount 후 다시 마운트 해준다
  • cd에 있는 내용을 복사해서 tftpboot에 넣는다 + pxelinux
  • pxelinux.cfg 디렉터리 생성 후 default 파일 생성 및 CentOS8 자동설치를 위한 내용 입력
  • syslinux, dhcp-server, tftp-server, vsftpd 재시작
  • 새로운 서버 만들고 ( CD 없이 ) 실행하면 자동 설치 됨

0개의 댓글