# crontab : 스케줄링 서비스
 # 스케줄링 서비스 : 지정한 날짜/시간에 지정한 작업을 해주는 서비스를 뜻함

 # crontab -e <--  스케줄링 설정 파일을 열어주는 명령어
 # cron 설정 파일에 * * * * * touch /root/Hello라고 작성하면 1분에 한번씩 지정한 touch 명령어를 실행 함

 # cron 설정파일에 스케줄링 설정이 변경 됏을 때는 서비스 재시작 필요
  systemctl restart crond

 # crontab -l <-- 설정 돼 있는 스케줄링을 전부 확인하는 명령어

 # crontab -r <-- 설정 돼 있는 모든 스케줄링을 전부 삭제하는 명령어

 # 5 * * * * <-- 매 시간 5분에 실행 
 00:05
 01:05
 02:05
 03:05
 ..
 23:05

 # 15,45 * * * * <-- 매 시간 15분과 45분에 실행
 00:15
 00:45
 01:15
 01:45

 # 30-40 * * * * <-- 매 시간 30분~40분 사이에 1분마다 실행
 # 10-40/15 * * * * <-- 매 시간 10분~40분 사이에 15분간격으로 실행
 # */20 * * * * <-- 매 시간 20분 간격으로 실행
 # 30 15 *** <-- 매일 15:30분에 실행
 # 30 0-12/3 * * * <-- 매일 00:30, 03:30, 06:30, 09:30, 12:30분에 실행
 # 0 3 15 * * <-- 매달 15일에 03:00에 실행
 # 20 14 5 3 * <-- 매년 3월5일 14:20분에 실행
 # 0 0 1 */3 * <-- 매년 1월1일 00:00, 4월1일, 7월1일, 10월1일~~
 # 30 3 * * 3 <-- 매주 수요일 03:30분에 실행
  (1(월요일), 2(화요일), 3(수요일) ~~)
 # 30 3 * * 1,3,5 <-- 매주 월,수,금 03:30분에 실행
 # 30 3 * * 1-5/2 <-- 매주 월,수,금 03:30분에 실행
 
 # * * * * * : 분, 시, 일, 월, 요일
 # 분 : 0~59
 # 시 : 0~23
 # 일 : 1~31
 # 월 : 1~12
 # 요일 : 0~7 (0:일요일, 7:일요일) 하고싶은거 암거나


 # crontab으로 ShellScript도 가동 할 수 있음.
    작업해야 하는 것이 많으면 Shell 스크립트로 작성하고 스크립트를 스케줄링을 통해
    가동하는것이 훨씬 편함.

 # 운영체제 스케줄링을 통해 반복적인 작업을 유용하게 처리시킬 수 있음.
    예) 매일 밤 12시에 컴퓨터 끄기 , 컴퓨터를 켜는건 메인보드 바이오스 세팅으로 가능

 # 서버에 저장된 데이터를 한달에 한번 다른 서버로 전송하게 스케줄링을 Shell스크립트를 가동하게
    구현할 수도 있음


 

 

'Linux' 카테고리의 다른 글

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


# getfacl /root <-- /root 디렉터리에 설정 된 ACL 정책을
      확인하겠다는 명령어

# setfacl -m u:test1:wx /test
  위 명령어는 /test 디렉터리에 test1이라는 계정 권한을
  w와 x를 허용하는 설정

# setfacl 명령어 옵션
 -R : 하위 디렉터리 전부 설정
 -b : 설정 된 ACL 전체 삭제
 -x : ACL 설정 개별 삭제


# cp 명령어로 복사하면 ACL 초기화 됨
# cp 명령어 옵션 p를 사용해서 복사하면 ACL 설정까지
  같이 복사 됨


# 디렉터리에 ACL 설정을 해 놨을 때 디렉터리에 새로 만들어지는 것에는 ACL이 적용 돼 있지 않게 됨

# 그렇다는 것은 만들 때 마다 ACL을 설정해야 한다는 의미임

# ACL 기본 값을 설정하면 새로 만들어지는 것에 기본으로 설정한 ACL이 적용되게 됨

# ACL 기본 값을 디렉터리에 설정하면 그 디렉터리 하위에 만들어지는 디렉터리에 ACL로 자동 설정되게 됨
ACL 관리에 효율성이 증대될 수 있게 됨


# Team1이라는 그룹에 우리 회사 1팀 전 직원 계정을 그룹에 소속 시켜 놨을 때 어떤 디렉터리 ACL을 설정하는 데,
g:Team1:rx를 부여하고 u:test:w


# du 명령어는 지정한 경로에 사용하고 있는 용량을 알려주는 명령어임
기본적으로 용량 단위는 KByte 단위로 출력 됨

# du 옵션 h는 용량 단위와 함께 출력

# du 명령어는 지정한 경로를 포함해서 하위 전체에 사용하고 있는 총 용량을 알려주게 됨
더불어서 하위 디렉터리 별로 각 각 얼만큼 용량을 사용하는 지도 개별적으로 알려주게 됨

# du 명령어는 하위 용량을 포함하고
  ls 명령어는 하위 용량을 포함하지 않고 알려주게 됨

# du 옵션 s는 하위 디렉터리 개별 용량은 알려주지 말고
  총 용량만 출력하라는 옵션임

# 압축 : 용량이 큰 것을 용량을 줄여주는 작업을 뜻 함


# tar -cf test.tar a b c d e
  위 명령어는 a b c d e를 test.tar라는 이름으로 압축
  하겠다는 명령어임

# tar -xf test.tar
  위 명령어는 test.tar를 내 현재위치에 압축을 풀겠다는
  명령어임

# tar -xf test.tar -C /root
  위 명령어는 test.tar를 /root에 압축을 풀겠다

# 압축한 파일에 이름에 .tar를 안 붙여도 압축은 되지만
  .tar를 안 붙이면 그게 압축파일인지 구분이 안 됨...
  그래서 되도록이면 .tar를 붙여 tar로 압축했음을
  의미시켜줘야 함

# tar 명령어 옵션 v를 사용하면 압축하거나 압축풀 때
  과정을 Shell에 보여주게 됨...
 
# tar로 압축하면 단순히 묶어주기만 함
  용량을 줄여주지 않음

# 그래서 tar로 압축하는 것은 금방 진행 됨
  tar를 압축을 푸는 것도 금방 진행 됨


# 파일에 이름이 .tar라고 tar로 압축되고
  .gzip이라고 gzip으로 압축하는 것이 아니라
  이름만 구분하기 위한 용도로 달아주는 것임..

# tar로 압축할 지 gzip으로 압축이될 지는 옵션으로 결정
  됨. 옵션 z를 사용하면 gzip 압축이고 z를 안 쓰면
  tar 압축이 됨


# tar -zcvf backup.gzip test
  위 명령어는 test 파일을 backup.gzip이라는 이름으로
  gzip 압축을 진행하게 됨

 

'Linux' 카테고리의 다른 글

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

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

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

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

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

 # 리눅스 권한은 읽기, 쓰기, 접근 및 실행 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

 # 계정 만료일 : 만들어져 있는 계정을 언제까지 사용할 수 있는지에 대한 설정.

 # 계정 만료일을 20180803로 지정하면 딱 그날짜까지만 그 계정을 로그인 할 수 있음.

 # usermod -e를 사용해서 만료일을 지정할 때 날짜로 지정할 수가 없음.
 1970년 01 월 01일 기준으로 몇초동안 사용할 수 있게 할지 초 단위로 지정해야함.

 # 계정이 만료된다고 계정이 삭제 되지는 않음.

 # usermod 명령어 옵션
 -c : 코맨트를 변경
 -d : 홈 디렉터리 변경
 -e : 만료일을 변경
 -u : UID 변경 (로그인중엔 변경 불가)
 -g : GID 변경
 -s : Shell 변경
 -l : 사용자이름 변경

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

 # HTML 문서 : 홈페이지를 띄워줄 때 사용하는 파일임.

 # http : 홈 페이지를 띄워주는 웹 서비스를 뜻 함.
  HTML문서를 보여주는 서비스임

 # 아파치 : http 서비스를 해 주는 HTTP Server 프로그램 (여러가지가 있음)

 # 도메인 주소를 사용할 수 있게 해주는 서비스를 DNS 서비스라고 함.
 # KT회사에서 DNS서버를 운영하고 있는데, KT DNS server IP : 168.126.63.1

 #### 도메인 사용할 수 있게 하는 방법
 # vi /etc/resolv.conf 파일은 장비가 도메인 주소를 사용할 때 이용할 DNS server를 지정하는 파일임.
 # 파일안에 nameserver 168.126.63.1 삽입하면 도메인 주소 사용 가능

 #### 아파치 설치 방법 (도메인을 사용할 수 있어야 함.)
  yum -y install httpd
 # 인스톨 후 서비스 시작 : systemctl start httpd
    바로 http 서비스가 시작됨

 # 익스플로러, 크롬 등 웹 사이트를 접속할 때 사용하는 프로그램을 HTTP Client 프로그램이라고 함.

 # Server : 무슨 서비스가 됫든 서비스를 제공하는 장비
 # Client : 무슨 서비스가 됫든 서비스를 이용하는 장비.

 # http://www.naver.com
  위 주소를 URL이라고 함.

 #http://100.100.100.110 하면 접속이 안됨. (방화벽때문)
 # http 서비스는 서비스 포트를 TCP/80번을 사용 함.
 # 웹 서비스를 진행하기 위해서는 방화벽에 80번 포트를 허용해야 함.

 # 방화벽 설정  vi /etc/firewalld/zones/public.xml
    내용안에   <port protocol="tcp" port="80"/> 추가 (80번 포트를 허용하겠다)
    적용 후 방화벽 서비스 재시작 systemctl restart firewalld

'Linux' 카테고리의 다른 글

Linux_21  (0) 2017.09.19
Linux_20  (0) 2017.09.19
Linux_18  (0) 2017.09.19
Linux_17  (0) 2017.09.19
Linux_16  (0) 2017.09.19

 # 계정을 생성하면 /home에 만든 계정에 홈 디렉터리가 같이 생성됨.
 
 # shell # 이라고 돼 있으면 관리자임을 의미하고, $라고 돼 있으면 일반 사용자임을 의미함.

 # ssh를 접속하면 자신에 홈 디렉터리로 접속이 됨.

 #  관리자 홈 디렉터리는 /root이고 일반 사용자 홈 디렉터리는 /home 안에 만들어짐

 # 홈 디렉터리는 다른 계정은 접근할 수 없게 막힘.
    자기 자신만 사용할 수 있는 폴더임

 # 리눅스 운영체제에서는 홈 디렉터리를 통해 계정별로 독립적인 공간을 제공 해주게 됨.

 # 관리자인 root는 어떤 계정의 홈 디렉터리이건 다 접근 할 수 있음.

 # useradd -d /test -m test3
    위 명령어는 test3 계정을 생성하는데 그 계정 홈 디렉터리를 /test로 지정하겠다는 명령어임

 # 계정을 만들 때 기본적으로 /home안에 홈 디렉터리가 만들어지지만 옵션을 사용해서
    원하는 홈 디렉터리로 지정 할 수 있음.

 # test3:x:1002:1002::/test:/bin/bash
    1번 : 사용자 이름
    2번 : 패스워드 정보. (x는 패스워드 정보를 기록해 놓지 않았음을 뜻함)
    3번 : 사용자 계정의 UID( UID : 사용자 고유 식별 번호)
    4번 : 사용자 계정의 GUI(GUI : 사용자가 소속 된 그룹의 고유 식별 번호)
    5번 : 주석 (설명을 작성 해 놓을 수 있는 필드)
    6번 : 계정의 홈 디렉터리 경로
    7번 : 로그인할때 사용할 shell

 # 사용자를 useradd 명령어를 통해 만들었을때 UID가 1000번 부터 부여됨

 # useradd -u 2000 test4

 #useradd 명령어에서 옵션을 u로 통해 맏느는 계정에 UID와 GUI를 지정해서 만들 수 있음

 # useradd 명령어 옵션 g f를 통해 Gui를 지정해서 계정을 만들 수 있음.

 # 옵션 u,g 같이 써도 됨.
  
 # useradd -s 를통해 계정이 사용할 shell을 지정할 수 있음. 기본값은 /bin/bash임

 # 계정이 사용할 shell을 /sbin/nologin로 지정하면 그 계정은 로그인을 할 수 없게됨.

 #useradd -c 를 통해 만드는 계정에 코멘트를 달아 놓을 수 있음.
    코멘트를 달아 놓는 이유는 계정 관리를 효과적으로 하기 위함.
    즉, 이 계정이 무슨 계정인지 구분하기 위해 코멘트를 다는거임.
  (useradd -c "홍길동 계정" test8)

 #useradd -D는 useradd 명령어 기본 값을 확인하는 옵션임.

 # skel 디렉터리라는 것은 계정을 생성할 때 그계정에 홈디렉터리에
    만들어 낼 파일 또는 디렉터리를 저장하고 있는 디렉터리임.

 # skel 디렉터리 기본 경로가 /etc/skel임

 # skel 디렉터리를 사용하는 목적은 계정 마다 사용해야 하는 파일 또는 디렉터리가
    존재 할 때 쉽게 홈 디렉터리 마다 만들어 주기 위함.


 # 그룹 : 사용자 계정들을 묶음화 할때 사용함.
 
 # 그룹을 사용하는 목적은 권한 설정의 효율성을 위함

 # cat /etc/group 파일은 만들어져 있는 그룹 정보가 기록 되있는 파일임.

 # /etc/group 파일에 내용
 # test:x:1000:
    1번 : 그룹의 이름
    2번 : 그룹 패스워드 정보
    3번 : GID
    4번 : 그룹의 구성원
 
 #  groupmod -n it test <-- 그룹이름이 test인 그룹을 it라는 이름으로 변경하겠다.
 # 그룹을 만들었을 때 GID는 자동으로 1000번 부터 넘버링 됨.
 # groupmod -g 1234 it <-- it라는 그룹에 GID를 1234로 변경 하겠다.
 # groupdel it <-- it라는 그룹을 삭제 하겠다.
 
 # useradd는 사용자 계정과 함께 group을 함께 만든다.

 # gpasswd -a test1 korea <-- korea라는 그룹에 test1이 라는 계정을 구성원으로 추가하겠다.
 # gpasswd -d test2 korea <-- korea 그룹에서 test2계정을 구성원에서 제거 하겠다.

 # 만약 어떤 그룹에 LG0001 ~ LG9999까지 계정을 구성원으로 포함하고 있을때..
    구성원을 다 빼버리고 LG0001 ~ LG0002까지만 남겨두고 싶다면.

    이럴 때는 그룹 구성원을 처음부터 다시 지정하는 옵션이 있음..
    gpasswd -M test1,test2 korea
    위에 명령어는 이전 설정이 덮어쓰기 되기 때문에 조심해서 사용해야함
    되돌릴 수 없음..

 # usermod -c "길동이" test1 <-- test1 계정에 코멘트를 길동이로 변경
 # usermod -d /aaa test1 <-- test1 계정 홈 디렉터리를 /aaa로 변경하겠다.

 # usermod 명령어로 계정 홈 디렉터리 경로를 바꿧을 때 지정한 경로로 폴더가 자동으로
    안 만들어짐.
 # 홈디렉터리를 변경 할 때 는 변경할 경로에 디렉터리를 만들어 놓고 변경을 진행 해야함.

 # 원래 홈 디렉터리에 존재하는 숨김 파일들을 복사 시켜야함.
  ( cp /home/test1/.* /bbb ) - /bbb로 복사 붙여 넣기.

 

'Linux' 카테고리의 다른 글

Linux_20  (0) 2017.09.19
Linux_19  (0) 2017.09.19
Linux_17  (0) 2017.09.19
Linux_16  (0) 2017.09.19
Linux_15  (0) 2017.09.17

 # 짝궁과 나의 가상 컴퓨터가 모두 NAT 네트워크 일 때
   내가 짝궁의 가상 컴퓨터로 SSH를 접속하기 위해서는..
   짝궁의 방화벽에서 TCP 22번 포트로 접속하는 것을 허용해야 함.

 # SSH는 TCP 22번 포트를 사용함.

 # 윈도우 계열 운영체제 방화벽 설정은 인바운드와 아웃바운드 설정으로 나뉨.

 # 시작 - "고급 보안" 검색 - 인바운드 - 새규칙 (SSH포트는 22번이기 떄문에 22번으로 설정)

 # 인바운드 설정이 realPC로 들어오는 데이터에 대한 설정
    아웃바운드 설정은 realPC가 내보내는 데이터에 대한 설정임

 # 나한테 목적지 port 22번이고 TCP 통신인 데이터가 들어오면
    차단하지 말고 허용하라는 설정임.

 # 윈도우 고급 보안 설정 후 vmware NAT setting
    port Forwarding - ADD - 가상컴퓨터에 셋팅한 IP, 포트는 22번 설정 후 OK

 # /etc/ssh/sshd_config 라는 파일은 SecureShell(SSH)

 # SSH 서비스 포트를 지정하지 않으면 기본적으로 22번 포트로 서비스를 함

 # sshd_config 파일에 "port 7777" 이라고 설정을 추가하면 ssh 서비스 포트가
    7777번 포트로 변경 됨.

 # 서비스 포트가 7777로 변경 되면 SSH 접속할 때 7777번으로 접속 해야 함.

 # CentOS7에는 기본적으로 SELinux라는 보안 프로그램이 설치 돼 있음.
 
 # SELinux 프로그램이 서비스 포트를 변경하는 것을 못 하게 막게 됨.

 # SSH 서비스 포트 변경을 목적으로 SELinux를 비 활성화 시킬 예정

 

 

 

 # ens33 네트워크 설정 ONBOOT = yes 네트워크 자동으로 잡기

 # 가상컴퓨터 복제하기 - 기존가상컴퓨터 우클릭 - manage - clone
 # 가상 컴퓨터 복제 종류
    - Link 복제 : 가상으로 만들어 놓은 하드웨어들 중에서 하드 디스크를 제외한
   하드웨어만 복제하고, 하드 디스크는 원본 가상 컴퓨터와
   복제 된 가상 컴퓨터가 하나에 하드 디스크를 같이 사용함

    - Full 복제 : 가상으로 만들어 놓은 모든 하드웨어를 전부 똑같이 복제 시킴.
   만들어 놓은 하드 디스크까지도 똑같이 복제 됨.
   그래서 기존에 하드 디스크가 용량을 10G를 사용하고
   있었다면 복제를 진행하면 10G를 추가로 더 사용되어지게 됨.

 - Link복제 장점 : 용량을 효율적으로 사용할 수 있게 됨.
  단점 : 성능이 저하 됨.
   원본 가상 컴퓨터와 복제 된 가상 컴퓨터가 항상 함꼐 있어야 함.

 - Full복제  장점 : 성능이 저하 되지 않음
  단점: 용량을 낭비하게 됨.
 
 # 가상컴퓨터를 복제 할때 자동으로 스냅샷을 찍고 복제 함.
 # 그리고 그 스냅샷은 지울 수 없게 막힘.

 # hostnamectl set-hostname SRV100 - 컴퓨터 이름 변경 - exit후 재로그인

 # SELinux라는 보안 프로그램이 운영체제에서 서비스 포트를 변경하는 것을 차단 하고 있음.

 # SELinux를 비활성화 시켜서 SSH서비스 포트를 변경할 수 있음.
 # vi /etc/selinux/config
 # SELINUX = disabled
 # SELinux를 비활성화를 적용시키려면 리붓 해야함.

 # ssh -p 7777 100.100.100.110
    위 명령어는 100.100.100.110 으로 ssh 접속을 7777번 포트로 하겠다 라는 의미

 # CentOs를 설치하면 방화벽이 기본적으로 22번 포트를 허용하게 됨.
    ssh 서비스 포트를 7777번으로 변경했으면 방화벽에 막히게 됨. 때문에 허용해야 함

 # /etc/firewalld/zones/public.xml

 # 방화벽설정에 <port protocol="tcp" port="7777"/>

 # 방화벽 재가동 systemctl restart firewalld

 

'Linux' 카테고리의 다른 글

Linux_19  (0) 2017.09.19
Linux_18  (0) 2017.09.19
Linux_16  (0) 2017.09.19
Linux_15  (0) 2017.09.17
Linux_14  (0) 2017.09.17


 # IP는 동적IP, 정적IP 2가지로 나뉘어 짐.

 # 동적(Dynamic)IP : DHCP 설정을 통해 자동으로 설정 된 IP를 의미함

 # 정적(Static)IP : IP를 직접 설정한 IP를 의미함.

 # ifcfg-ens33 외에도 리눅스에 있는 설정 파일에서 "#"은 주석처리라고 해서
    오른쪽에 있는 설정을 무시하고 설정하지 않게 됨.

 # ifcfg-ens33 파일에서 BOOTPRO 설정을 static이라고 하면 IP를 직접 설정하겠다.
    dhcp라고 설정하면 IP를 자동으로 설정하겠다.

 # 브릿지 잡은 가상 컴퓨터에 IP를 static으로 직접 설정할 때 gateway까지
    직접 설정해야 되는데, gateway는 RealPC에 설정 된 gateway를 똑같이 잡으면 댐

 # 브짓지 잡은 가상 컴퓨터에 IP는 RealPC와 동일한 대역으로 설정해야함.
    networkID를 동일하게 설정하면됨.
    hostID는 이미 사용하고 있는걸 사용하면 충돌

 # ip route <-- 명령어를 통해 설정된 gatewayIP를 확인 할 수 있음.

 # 서버 : 서비스를 하는 장비를 서버라 함.
 # 서버는 누군가한테 24시간 서비스를 함.
 # IP가 갑자기 바뀐다면..고객들이 접속을 못함.
 # 그래서 서버는 IP가 바뀌면 안됨.
 # DHCP를 통해서 IP를 자동으로 받아오면 IP가 언제든지 다른 것으로 바뀔 수 있음.
 # static설정으로 IP를 직접 지정하면 다시 자기가 바꾸지 않는 이상 IP가 고정됨.
 # 브릿지 네트워크를 이해해야 함.


 # 브릿지는 IP 자동 설정을 시키면 그 네트워크에 있는 실제 네트워크 장비가 IP를 설정 해줌

 # Hostonly는 IP 자동 설정을 시키면 VMware 설정에 따라 IP 설정됨.

 # VMware에서 DHCP 설정이 자동으로 사용 가능한 hostID중에 약 절반 정도만
    자동으로 설정할 때 사용하게 됨..
    절반 정도는 static으로 IP를 직접 설정하는 용도로 사용하라고,
    절반 정도만 DHCP를 통해 자동 설정을 함.

 # VMware에 hostonly 타입에 네트워크 설정 된 IP 대역을
    가상 컴퓨터에 static으로 IP를 잡을 때는 그 대역을 무시하고 아무 대역으로
    설정해도 상관 없음.
    그 IP 대역 설정 되 있는 것은 DHCP 관련 설정임.

 # hostonly 타입에 가상 컴퓨터에는 gateway로 사용할 네트워크 장비가 없음.
    hostonly는 폐쇄 네트워크임..
    나가는 문을 지정하는 gateway 설정을 할 문이 없음..


 # NAT 네트워크일때 가상 컴퓨터에 static으로 IP를 직접 설정해서 외부 통신이 가능하려면
    꼭 .. NAT네트워크 설정을 통해 subnet IP를 가상 컴퓨터가 사용할 IP대역과 일치 시켜야 함.
    그래야 통신이 가능함.

 # NAT 대역을 100.100.100.0/24 설정하면
    gate주소가 자동으로 설정한 대역에 hostID가 2로 설정됨.
    그래서 100.100.100.2가 gateway로 자동 지정 돼 있음.

 # IP 대역이 192.168.10.128/25 면 hostID 2를 쓸 수 없음..
    위 대역은 hostID를 129~254만 사용할 수 있음.

 # NAT에 gateway IP는 2번째 hostID로 자동 지정 됨.
    무조껀 2로 되지는 않음.

'Linux' 카테고리의 다른 글

Linux_18  (0) 2017.09.19
Linux_17  (0) 2017.09.19
Linux_15  (0) 2017.09.17
Linux_14  (0) 2017.09.17
Linux_13  (0) 2017.09.17

 #### IP
 # DHCP 서비스 : IP, SUBNET MASK, GATEWAY 등등 네트워크 설정을
    자동으로 진행 해 주는 서비스임..

 # 컴퓨터가 값을 표현하는 방법 : 전기를 보냈다가 안 보냈다가를 반복함으로써 값을 표현하게 됨.

 # 컴퓨터가 전기를 보내면 1을 표현하고, 전기를 안보내면 0을 표현함.

 # 2진수 : 2가지의 수를 의미 (0,1)
 
 # 결국 컴퓨터는 2진수를 전기를 통해 표현할 수 있음.

 # 10진수 : 10가지의 수를 의미함. (0,1,2,3,4,5,6,7,8,9)

 # 사람은 10진수를 사용함.

 # 컴퓨터 용량의 단위중에 가장 작은 단위가 bit라는 단위
 # 4bit라는 것은 전기를 보낸다/안 보낸다 중에 4번 하는 것을 의미함.

 # 2진수 1bit로 표현할 수 있는 경우의 수 0,1 두개.
 # 2진수 몇 비트일 때 나올 수 있는 경우의 수를 계산하는  공식
    = 2^bit 수
    예) 2진수 8bit일 때 나올 수 있는 경우의 수 : 2^8 = 256

 # IPv4는 4개의 옥탯으로 나눠서 사용하자고 약속 함.
    192.168.10.274  점사이에 1옥탯임
 # 하나의 옥탯을 표현하는데 8bit를 사용하자고 약속함.
    00000000 ~ 11111111 까지 옥택마다 사용할 수 있게 하자고 약속 함.

 # 2진수 0번 bit가 1이면 10진수로 2^0 = 1한 수를 표현
 # 2진수 1번 bit가 1이면 10진수로 2^1 = 2한 수를 표현
 # 2진수 2번 bit가 1이면 10진수로 2^2 = 4한 수를 표현
 # 2진수 3번 bit가 1이면 10진수로 2^3 = 8한 수를 표현
 # 2진수 4번 bit가 1이면 10진수로 2^4 = 16한 수를 표현
 # 2진수 5번 bit가 1이면 10진수로 2^5 = 32한 수를 표현
 # 2진수 6번 bit가 1이면 10진수로 2^6 = 64한 수를 표현
 # 2진수 7번 bit가 1이면 10진수로 2^7 = 128한 수를 표현 
 # ....


 #### 서브넷마스크 
 # IP주소와 서브넷 마스크라는 것은 항상 같이 사용됨. 바늘과 실  처럼
 # 서브넷 마스크도 4개의 옥탯을 사용 함.
    각 옥탯 마다 8bit를 사용함. 옥탯에 2진수로 0이 온 후에 1이 다시 올수 없음.
 # 서브넷마스크 옥탯에서 사용할 수 있는 수가 한정 적임.
    아래와 같이
    00000000 = 0
    10000000 = 128
    11000000 = 192
    11100000 = 224
    11110000 = 240
    11111000 = 248
    11111100 = 252
    11111110 = 254
    11111111 = 255
    위가 전부임.
 
 # 서브넷 마스크로 안되는 것.
 11111111. 11111110.11111100.0000000
 전체 옥탯에서도 0뒤에 1이 올 수 없음.

 # 서브넷 마스크로 가능 한 것.
 00000000.00000000.00000000.00000000
 11111111.11111111.11111111.11111111

 # 서브넷 마스크 : 서브넷마스크가 2진수로 1인 bit 부분을 IP에서 NetworkID임을 의미시키게 됨.
                서브넷마스크가 2진수로 0인 bit부분을 IP에서 HostID임을 의미시키게 됨.

 # IP주소에서도 IP만 보고 이 IP가 어느 네트워크에서 사용하는 주소인지 한눈에 구분할 수 있게 만들기
    위해 networkID(지역번호)와 hostID라는 것으로 나눠서 사용함. (전화번호 지역번호, 번호와 같이)
 
 # NetworkID : 어느 네트워크 인지를 식별하기 위해 씀
 # HostID : 고유 식별 번호 (이장비 저장비를 식별하기 위한)

 # 동일 networkID인데 hostID가 동일 할 수 없음.

 # IP : 192.192.2.4
 # SM : 255.255.255.0
 -------------------------------------------- 2진수로 변환
 # IP : 11000000.11000000.00000010.00000100
 # SM : 11111111.11111111.11111111.00000000

 NetworkID : 11000000.11000000.00000010 (서브넷 마스크 1인부분)
 HostID : 00000100 (서브넷 마스크 0인부분)

 # 범위 : 11000000.11000000.00000010.00000000 ~
  11000000.11000000.00000010.11111111

 # 대표 : 11000000.11000000.00000010.00000000
 # 대표IP : 모든 범위에 있는 IP주소를 뜻 하는 주소임.
  IP범위에 전체를 의미하는 주소.
  (대표 IP는 hostID가 2진수로 전부 0인 주소가 대표IP로 자동 지정 됨)

 # 브로드케스트 : 11000000.11000000.00000010.11111111
 # 브로드캐스트IP : 범위 전체에 장비와 통신할 때 사용하는 주소임.
   hostID가 전부 2진수로 1인것이 브로드캐스트 주소임.

 # 대표IP, 브로드캐스트IP 는 컴퓨터의 IP로 설정 못함.
 # 그러므로 사용 가능한 IP범위는
    11000000.11000000.00000010.00000001 ~
  11000000.11000000.00000010.11111110

 # 사용가능한 IP의 갯수 : 2^hostID로 사용하는 bit의 개수 - 2 = 254


 # IP : 128.128.128.128
 # SM : 255.255.255.128
  위아래 같은 의미.
 # IP : 128.128.128.128/25 (서브넷 마스크의 1의 갯수를 적는것. 25비트)
 ---------------------------------------
 # IP : 10000000.10000000.10000000.10000000
 # SM : 11111111.11111111.11111111.10000000
  (4옥탯에 1까지가 networkID 임)

 # 대표 : 10000000.10000000.10000000.10000000 
 # 브로드캐스트IP : 10000000.10000000.10000000.11111111

 # 범위 : 10000000.10000000.10000000.10000000  ~
  10000000.10000000.10000000.11111111

 # 사용가능 범위 : 10000000.10000000.10000000.10000001 ~
   10000000.10000000.10000000.11111110

 # 사용가능한 IP개수 : 2^7 - 2 = 126 (4옥텟에 0이 7개이므로 7승)

'Linux' 카테고리의 다른 글

Linux_17  (0) 2017.09.19
Linux_16  (0) 2017.09.19
Linux_14  (0) 2017.09.17
Linux_13  (0) 2017.09.17
Linux_12  (0) 2017.09.17

+ Recent posts