# 소유자 : 파일 또는 디렉터리를 어느 계정이 소유한 것인지를 지정할 수 있음.

 # 소유그룹 : 파일 또는 디렉터리를 어느 그룹이 소유한 것인지를 의미함.

 # 소유자나 소유그룹은 권한 설정을 위해 지정되어지게 됨.

 # 권한 : 파일 또는 디렉터리에 어떤 작업을 할 수 있는지를 의미함.
  예) 어떤 계정이 이 파일을 실행할 수 있는지 없는지
  예) 어떤 계정이 이 파일을 삭제할 수 있는지 없는지

 # 리눅스 권한은 읽기, 쓰기, 접근 및 실행 3가지로 나뉘어짐.

 # 읽기 : 4
 # 쓰기 : 2
 # 접근 및 실행 : 1
 # 위 숫자를 통해 권한을 설정할 때 사용하게 됨.

 # 읽기 : r
 # 쓰기 : w
 # 접근 및 실행 : x
 # 위 알파벳은 권한을 확인할 때 사용하게 됨.

 # ls -l을 사용했을 때 파일 또는 디렉터리 권한을 확인할 수 있는데,
    -rw-r--r--    <-----   데이터 종류(1글자) :   - (파일),  d(디렉터리)
   소유자 권한(3글자)
   소유그룹 권한(3글자)
   그 외 권한(3글자)

 # -rw-r--r--    <----- 이 권한은     소유자 : 읽기, 쓰기 권한이 부여 됨
    소유그룹 : 읽기 권한이 부여 됨
    그 외 : 읽기 권한이 부여 됨

 # chmod 명령어를 통해 파일 또는 디렉터리 권한을 부여할 수 있음.
    순서대로 소유자, 소유그룹, 그 외 권한을 지정하게 됨.
 # chmod 764 korea   <----   korea권한을 아래와 같이 설정 함.
   소유자(7) : 읽기, 쓰기, 접근 및 실행
   소유그룹(6) : 읽기, 쓰기
   그 외(4) : 읽기

 # chown korea1.korea2 korea
    위 명령어는 korea라는 파일에 소유자를 korea1으로 소유그룹을 korea2로 설정하는 명령어임.

 # chown .root korea
    위 명령어는 korea라는 파일에 소유그룹을 root로 설정하는 명령어임.(소유자는 안바뀜)


 # 소유그룹에 권한을 읽기, 쓰기를 부여하면 그 그룹에 소속된 모든 계정이
    동일한 권한이 부여 됨.
 # 그룹을 만드는 목적은 계정 권한 설정을 많은 계정을 일괄적으로 설정하기 위함.

 # root계정은 권한이 어떻게 설정 되 있건 모든걸 다 할 수 있음.

 # 목록 확인 ls
    권한 확인 ls -l
    폴더 접근 cd
    파일 실행 A/aaa
    파일 출력 cat A/aaa
    다운로드 cp A/aaa /root
    업로드 touch /root/ccc cp /root/ccc
    파일 내용변경 echo 안녕하세요 >> A/aaa
    이름 변경 mv A/aaa A/AAA
    파일 생성
    삭제 rm

 # 읽기 권한이 부여되면 디스크 기록 된 정보를 읽어들일 수 있는 것이기에 파일에 내용을 확인할 수 있음
 # 읽기만 가지고는 파일 내용을 못 봄. 파일에 내용을 읽기 위해선 디렉터리에 접근해서 내용을
    읽어 들여야함. 그래서 접근 권한도 같이 있어야함.
 
 # 실행 및 접근 : 해당 디렉터리로 이동할 수 있고, 해당 파일을 실행 시킬 수 있는 권한.

 # 쓰기 : 해당 디렉터리에 무엇인가 생성할 수 있는 권한.
  해당 디렉터리에 만들어져 있는 파일 내용을 수정하거나 파일 이름을 수정할 수 있음.

 # 디스크에 기록하거나 디스크에 읽어들이기 위해서는 접근 권한이 함께 있어야 함.

 # 읽기 : 확인하기
    접근 및 실행 : 이동하기, 실행하기
 
 # 해당 폴더에 있는 데이터를 다른 곳으로 복사하기 위해서는 해당 폴더에 접근/읽기 권한이 있어야함
 # 다른 곳에 있는 데이터를 해당 폴더로 복사하기 위해서는 해당 폴더에 접근/쓰기 권한이 있어야 함.

 # 특정 폴더에 있는 데이터를 지우거나 수정할 수는 없지만, 복사 해 가거나 파일 내용을 확인할 수 있게 설정.
    (접근/읽기)

 # 파일 서버를 운영할 때는 권한 설정이 필수임.
 
 # chown -R root.user1 a  <---- a폴더 하위에 있는 모든 파일, 디렉터리도 똑같이 권한설정 적용
 # chmod -R 444 a <---- 마찬가지
 # ls -Rl 로 확인
 

'Linux' 카테고리의 다른 글

Linux_24  (0) 2017.09.19
Linux_23  (0) 2017.09.19
Linux_21  (0) 2017.09.19
Linux_20  (0) 2017.09.19
Linux_19  (0) 2017.09.19


 #  vi /etc/firewalld/zones/public.xml
 # 방화벽 설정파일에 아래와 같이 설정을 추가하면 tcp/80번 포트를 허용하게 됨
    <service name="http"/> == <port protocol="tcp" port="80"/>

 # 기본 서비스 포트를 변경하는 것을 SELinux가 차단 함.
 # vi /etc/selinux/config 방화벽 해제

 # /etc/httpd/conf/httpd.conf 파일은 아파치 설정 파일임.
    웹 서비스 관련 된 설정은 이 파일에 전부 진행하게 됨.

 ### expr 명령어는 산술 연산을 해주는 명령어임.
  예) expr 4 + 2 , -,  /, %, "*"

 # 아파치를 통해 웹 서비스를 할 때 띄워줄 페이지 문서 이름은 index.html로
    파일 이름이 지정 돼 있어야 함. (아파치 기본문서 이름은 index.html)

 # 기본 문서 : http 접속을 시도했을 때 띄워줄 기본적으로 띄워줄 문서를 기본문서라고 함.

 # 100.100.100.110/korea.html
    브라우저를 통해 위 주소로 접속을 시도하는 것은 100.100.100.110이라는 IP로
    http접속을 시도하는 데, 그때 korea.html 문서를 띄워달라고 요청하게 됨.
 
    그러면 그 요청을 받은 웹 서버가 도큐먼트 루트 디렉터리에 요청한 문서가 있으면
    그 문서를 띄워주고 없다면 아파치 테스트 페이지를 띄워주게 됨.   

 # http://100.100.100.110/
    위 주소로 브라우저에서 접속하는 것은 웹 서버한테 기본 문서를 띄워달라고
    요청하는 것임.

 # 기본 문서가 안 만들어져 있어도 접속자가 지정해서 접속하면 해당 페이지를 띄움.

 # vi /etc/httpd/conf/httpd.conf 아파치 설정 문서 ( /index.html 으로 검색찾기)
 #  아파치 설정 파일에 아래와 같은 설정은 기본 문서를 index.html로 지정하는 설정임
    DirectoryIndex index.html <- 기본문서명 변경 가능
 # 변경 후 systemctl restart httpd 적용

 # 아파치 설정 파일에 아래와 같은 설정은 웹 서비스 서비스포트를 65000번 포트로 변경하는 설정
    vi /etc/httpd/conf/httpd.conf  -> Listen 65000
 # 변경 후 systemctl restart httpd 적용

 # 브라우저로 80번 포트로 기본적으로 접속을 시도하지만 다른 포트로 접속을
    시도하기 위해서는 아래와 같이 접속을 시도해야 함
    http://www.google.com:6000
    6000번 포트로 접속하겠다.

 
 # DocumentRootDirectory인 /var/www/html 에다가
    PDF 문서를 올려 놓고 클라이언트들이 브라우저로 PDF문서를
    볼 수 있게 서비스 할 수 있음.

  # 문제. 핸드폰을 WIFI를 WindowsServer로 잡은 후에
    SRV100에 웹 서버를 구축해서 핸드폰으로 웹 서버를 부라우저로 접속 하기.
    SRV100 브릿지로 설정하고 접속 성공하기.
    SRV100 NAT설정하고 접속 성공하기.

    (NAT로 할시 realpc 방화벽 해제해야함. 시작-고급보안-80번 포트허용 추가)
    (NAT 포트포워딩 세팅 - ADD - 80번(추가) 설정)

'Linux' 카테고리의 다른 글

Linux_23  (0) 2017.09.19
Linux_22  (0) 2017.09.19
Linux_20  (0) 2017.09.19
Linux_19  (0) 2017.09.19
Linux_18  (0) 2017.09.19

 # SCP(Secure Copy) : SSH를 통해서 원격지 장비로 데이터를 전송하는 서비스임.
   원격지 장비에 있는 데이터를 내 장비로 가지고 올 수도 있음.
 
 # SCP 서비스는 SSH를 통해 동작하기 때문에 SSH서비스가 가동 중이면,
    SCP도 사용할 수 있음.

 # systemctl restart sshd <-- sshd 서비스를 통해 SSH와 scp서비스가 모두 관리됨.

 # SCP도 SSH와 동일한 TCP/22번 포트를 사용함.
 
 # scp korea1 root@100.100.100.120:/home
    위 명령어는 내 현재위치에 있는 korea1이라는 파일을
    100.100.100.120이라는 IP를 가진 장비에 /home이라는 경로로 전송하는데,
    그 때 root 계정으로 전송을 진행하겠다. (접속대상장비의 root)

 # 내가 가지고 있는것을 상대방한테 보내는 것은 "업로드"라고 표현함.

 #SSH, SCP서비스는 통신시 암호화 통신을 진행 함.

 # 악의적인 공격자가 중간에 데이터를 가로채더라도 암호화가 되 있어
    해독하기 어려움.

 #  scp root@100.100.100.120:/root/aaa ./
    위 명령어는 SRV200에 있는 aaa파일을 내 현재위치로 "다운로드"하겠따.

 # scp 명령어 옵션 -r을 통해 디렉터리를 전송 할 수 있음.

 # scp로 무엇인가를 전송할 때 패스워드를 무조건 입력해야함.
 # scp 비밀번호를 저장해 놓을 수 있음. 자주 전송하는 장비에 비밀번호를 저장 해
    놓게 되면 그 뒤로 전송할 때는 비밀번호를 안묻게 됨.

 ##### SSH 패스워드 저장하는 방법
 1.   ssh-keygen -t rsa -b 2048
 2.   ssh-copy-id -i /root/.ssh/id_rsa.pub 100.100.100.120
  (SRV200 으로 암호화키 전송)
 
 # 위 방법을 통해 비밀번호를 저장하는 것은 저 명령어를 쓴 장비에만
    비밀번호가 저장되지, 상대방도 저장되지는 않음.

 # winSCP프로그램은 Windows 운영체제용 SCP 클라이언트 프로그램임
    무료이지만 상당히 쓸만함 프로그램.

 # vi /etc/ssh/sshd_config 이 파일은 SSH설정 파일이면서 SCP설정 파일임.
 # vi /etc/ssh/sshd_config 이 파일에 Port 설정을 진행하면 SSH와 SCP 서비스 포트가
    기본 포트인 22번에서 지정한 포트로 변경됨.
    (이 설정을 진행 할때는 SELinux를 비활성화 시킨 후 진행 해야함) (서비스재시작)

 # 방화벽설정 vi /etc/firewalld/zones/public.xml
     <port protocol="tcp" port="1234"/> 1234번의 포트 접속 허용 (서비스 재시작)
 
 # DocumentRootDirectory : HTTP 서비스를 진행할 때 띄워줄 페이지인 HTML문서가
       저장되는 디렉터리를 뜻함
 
 # 아파치 기본 DocumentRootDirectory는 /var/www/html임.

 # HTTP서비스를 통해서 이미지, 동영상, 음악 등등 다른 파일을 서비스 하기 위해서는
    그 파일이  도큐먼트루트에 있어야함.
    mv /root/1.jpg ./ (최상위에 있는 1.jpg를 현재 위치 도큐먼트루트로 이동)

 

'Linux' 카테고리의 다른 글

Linux_22  (0) 2017.09.19
Linux_21  (0) 2017.09.19
Linux_19  (0) 2017.09.19
Linux_18  (0) 2017.09.19
Linux_17  (0) 2017.09.19

+ Recent posts