MY MEMO
[SERVER] 추가 본문
아 서버 너무 어렵다..
하지만 나같은 학생에 입문자는 한개만 알면 된다
권한!
서버에서 가장 중요한 것은 권한!
권한을 어떻게 주느냐에 따라서 접근할 수 있는 폴더가 달라진다
즉 권한을 이해하는 것이 가장 중요하다
1. 192.168.xxx.1 -> 이게 보통 연구 test로 쓰던 ip였는데 그것이 보편화가 되어 공유기가 되었다.
10.~으로 시작하는 것이 실제 기업이나 대학에서 쓰는 사설 IP이다
대학에서 주는 서버는 대학에서 포트 방화벽을 풀지 않는이상 할당받은 서버에서 방화벽을 풀더라도 실행되지 않는다.
2. 서버 내에서 vm을 깔 수 있는데
PC -> localhost(server) -> vm의 순서이다
localhost가 vm을 포함하고 있다고 생각하면 된다
보통 ip를 할당할때는 PC -> localhost : 192.168.xxx.1
localhost -> vm : 192.168.xxx.2
따라서 192.168.xxx.254로 192.168.xxx.2를 변경해주면
총3개의 IP를 사용할 수 있다. ( 192.168.xxx.1, 192.168.xxx.2, 192.168.xxx.254)
192.168.xxx.255는 broadcasting을 위한 ip이기 때문에 쓰면 안된다
3. well known port를 알면 port 할당시 매우 편리하다 (google에 찾아보면 된다)
4. OS 보안 프로그램
Ubuntu : firewall, UFW
CentOS : firewall, IPtable
5. 웹서버를 세팅하는 방법은 아래와 같다
Web server setting 순서 : apache -> jdk -> tomcat -> mysql -> jdbc (jdk가 있어야 tomcat이 설치 가능)
6. tip
: jsp로 웹을 만들면 apache와 tomcat을 연동해야하는데 centOS에서는 쉽지 않다
따라서 더욱 쉬운 방법인 port forwarding을 이용하면 된다.
=> 8080에서 80으로 바꾸면 관리자권한이 아니면 실행되지 않는다 (8080과 80 포트의 차이)
따라서 port forwarding을 통하여 80번 포트를 뚫으면 80번 포트가 apache를 대신해준다
7. centOS 수동 : rpm 자동 : yum
ubuntu 수동 : dpkg 자동 : apt -get
수동과 자동설치 파일 경로가 다르기 때문에 주의!
8. 서버를 받을 때 root권한을 받지 않아서 root권한이 아니더라도 install을 할 수 있게 하기 위해 sudoers에 등록하여 권한을 부여
=> 앞에 sudo를 붙임
(자신이 root 계정이라면 sudo를 생략)
9. 권한 부여 방법
예를 들어 my.cnf로 실행해보면
ls -al을 입력하면 my.cnf의 권한을 볼 수 있다.
-rw-r--r-- 이 나왔다. 소유자 - 그룹 - 공개 로 분류할 수 있는데 소유자만 writing이 가능하게 되어있다.
권한을 부여하는 방법은 "sudo chmod 숫자 권한을 부여할 파일 이름" 이다.
r : 4 w : 2 x : 1 이다 이 3개의 숫자를 더해서 숫자를 만든다
예를 들어 rw rw r을 할꺼면 664를 숫자에 넣어주면 가능하다
10. home directory 변경
add user -d (home directory 변경 명령어)
ftp 들어가면 ftp 전용 계정을 따로 생성해줌 (sudo에 보통 ftp를 주지 않음 -> 보안에 취약)
11. Solaris -> DB가 설치되어 있음 (장점 : 호환이 좋음 (DB가 중요한 금융권이 많이 사용) | 단점 : 비쌈)
12. CentOS는 64bit밖에 지원이 안됨
-> desktop gui로 사용하지 않기 (메모리가 너무 많이 필요하기 때문에 - 내컴퓨터는 용량이 작으니까)
vm에 centOS설치시 4개의 선택중 card라고 되어있는 부분은 설치하지 않음
13. Q) ftp에 접속했는데 permission denied로 파일 다운이 안되요.
os 깔 때 보통 root로 접속을 막음 (demon은 root권한을 사용할 수 없음 -> 보안상)
그래서 계정을 만들어야함
그리고 계정을 sudo권한을 줘야 root권한을 줄 수 있음 -> sudoers에 권한을 설정하면 sudo 권한을 줄 수 있음
(+ 현재 sudo 권한을 받은 사용자 계정을 이용 중
자신의 계정 이름이 root가 아니라면 사용자 계정)
21,22번 포트의 방화벽을 품
자신의 계정 아이디 이외의 폴더는 root권한 (자신의 root라면 어디든 접근 가능)
따라서 root권한의 폴더에 사용자 계정은 접근할 수 없음
해결 방법
1. 해당 폴더의 권한을 풀어줌
(-> 권한을 풀어주는 것은 신중해야하는 일!
-> 다른 파일까지 권한이 풀리거나 권한을 원래대로 돌려놓지 않으면 보안상 & 서버의 오류가 생길 수 있음)
2. ftp로 파일을 올린 다음에 mv로 올림
위의 방법은 실제 회사에서 사용하지 않음 (sudo 권한 등록 또한)
학생용에서는 사용이 가능
14. ssh는 두개가 있음 1) ssh 2) sftp
15. sudo rm -rf 은 절대 입력하면 안됨 -> sudo권한의 폴더 를 모두 삭제
'STUDYING > OS' 카테고리의 다른 글
[SERVER] WAR파일 배포하기 (0) | 2017.07.09 |
---|---|
[SERVER] CentOS7 apache+tomcat mysql 설치 (0) | 2017.07.07 |
[SERVER] CentOS7 웹 서버 setting (0) | 2017.07.04 |
[SERVER] cafe24 web hosting하기 (1) | 2017.06.30 |
[SERVER] ubuntu에 apm설치하기 (0) | 2017.06.08 |