PDF 다운로드
PDF 다운로드
인터넷을 통해 다른 컴퓨터에 접속한다면, 보안에 신경 써야 할 것이다. SSH를 사용하면 된다. SSH를 사용하려면, 설정을 제대로 해야하고, 서버와 암호화된 연결을 생성해야 한다. 기억해야 할 것은 이 연결이 안전하려면, 양쪽 다 SSH를 사용하여야 한다는 것이다. 이 연결을 어떻게 설정하는지 알아 보자.
단계
-
2윈도우10 1주년 업데이트 버전이라면 SHH가 사전에 설치되어있는 리눅스용 윈도우 하위 시스템을 설치하자.
-
SSH를 실행한다. Cygwin을 설치하면서 같이 설치한 명령 프롬프트를 실행한다. 리눅스와 맥이라면 터미널을 연다. SSH는 다른 컴퓨터와 상호 작용 하기 위해서 터미널을 사용한다. SSH를 사용하는 GUI는 존재하지 않는다. 따라서 명령어에 익숙해져야 한다.
-
연결을 시험해 본다. 암호화된 키 생성 및 파일을 이동시켜 보기 전에 SSH가 제대로 설정이 되어 있는가 궁금할 것이다. <user_id> 부분은 서버 아이디로, <remote>는 서버 주소로 바꾼 후 다음 명령어를 입력해보자.
-
$ ssh <username>@<remote>
- 포트를 특정하고 싶다면
-p 0000
를 입력하자(0000 대신 포트 번호를 입력). - 연결이 시작되면 비밀번호를 입력해야한다. 비밀번호 입력 과정에는 커서가 보이지 않을 것이다.
- 이 과정이 실패했다면 컴퓨터에 SSH 설정이 잘못 되었거나, 서버가 SSH 연결을 허가하지 않는 것이다.
광고 -
-
SSH를 이용해서 파일 시스템을 둘러보자. 처음 접속하면, HOME 폴더에 위치할 것이다. 다른 폴더로 이동하고 싶다면, cd 명령어를 사용하면 된다. [1] X 출처 검색하기
- cd .. : 바로 위 폴더로 이동한다.
- cd <폴더 이름> : <폴더 이름>으로 지정한 폴더로 이동한다.
- cd /home/directory/path/ : /directory/path로 지정된 폴더로 이동한다.
- cd ~ : HOME 폴더로 이동한다.
-
현재 폴더에 있는 파일들의 목록을 확인하자. ls 명령어를 사용하면 된다. 참고로 LS지, IS가 아니다. [2] X 출처 검색하기
- ls : 파일과 폴더 목록을 표시한다.
- ls -l : 파일과 폴더 목록 외에 크기, 권한, 날짜 등을 표시한다.
- ls -a : 숨겨진 파일과 폴더도 표시한다.
-
파일을 서버로 복사하자. scp 명령어를 사용하면 된다.
- scp /localdirectory/example1.txt <user_id>@<remote>:<path> 자신의 컴퓨터에 있는 example1.txt를 서버의 <path> 위치로 복사하는 명령이다. <path>를 빈 칸으로 놔 두면, root 폴더로 복사된다.
- scp <user_id>@<remote>:/home/example1.txt : 서버의 /home/example1.txt 파일을 현재 위치로 복사한다.
-
파일을 복사하자. cp 명령어를 이용하면 된다.
- cp ex1.txt ex2.txt: ex1.txt를 복사해 같은 폴더의 ex2.txt로 복사한다.
- cp ex1.txt <directory>: ex1.txt를 복사해 <directory>로 옮긴다.
-
파일을 이동시키거나, 이름을 변경하자. mv 명령어를 사용하면 된다.
- mv ex1.txt ex2.txt : ex1.txt 파일의 이름이 ex2.txt로 변경될 것이다.
- mv dir1 dir2 : dir1의 폴더 이름이 dir2로 변경될 것이다.
- mv ex1.txt dir1/ : ex1.txt가 dir1으로 이동될 것이다.
- mv ex1.txt dir1/ex2.txt : ex1.txt가 dir1 폴더로 이동하며, 이름도 ex2.txt로 변경된다.
-
파일과 폴더를 삭제하자. rm 명령어를 이용하면 된다.
- rm ex1.txt : ex1.txt를 삭제한다.
- rm -l ex1.txt : 파일을 지우기 전에 확인을 한다.
- rm dir1/ : dir1/ 폴더 자체와 그 안에 있는 파일들을 지운다.
-
권한을 변경한다. chmod 명령어를 사용하면 된다.
- chmod u+w ex1.txt : 파일 사용자에게 쓰기(수정) 권한을 준다. u 대신 g를 쓰면, 파일이 소속된 그룹에 쓰기 권한을 주며, o를 쓰면, 누구나 파일에 내용을 쓸 수 있게 된다.
- chmod g+r ex1.txt : 파일이 속한 그룹에 읽기 권한을 준다.
- 시스템 보안을 위한 권한 설정 기능은 많이 있다. [3] X 출처 검색하기
-
기타 명령어들을 알아 놓자. 다음은 SSH를 쓰다 보면 많이 쓰게 될 명령어들이다.
- mkdir newdir : newdir이라는 새로운 폴더를 현재 위치에 생성한다.
- pwd: 현 위치를 표시한다.
- who : 지금 로그인한 id를 표시한다.
- pico newfile.txt 또는 vi newfile.txt : 새로운 파일을 생성하고 파일 편집기를 연다. 시스템에 따라서 설치된 파일 편집기는 다르다. 유명한 것은 pico, vi, nano 등이다. 어떤 파일 편집기를 쓰냐에 따라서 사용할 명령어가 달라진다.
-
명령어에 대한 정보 얻기. 어떤 명령어가 무슨 일을 하는지 알기 어렵다면, man 명령어를 이용해서 사용 예시와 매개 변수값들을 볼 수 있다.
- man <command>: <command>에 대한 정보를 보여 준다.
- man -k <keyword>: <keyword>가 들어간 man 페이지를 찾는다. [4] X 출처 검색하기
광고
-
SSH 키를 생성하자. 이 키들을 생성해 놓으면 서버에 암호를 매번 치지 않고도 접속이 가능하다. 이렇게 하는 것이 훨씬 더 안전한데, 이는 암호가 네트워크 상에서 공개가 되지 않기 때문이다.
- mkdir .ssh를 이용해서 키 폴더를 생성한다.
- ssh-keygen -t rsa를 이용해서 공개 키와 비밀 키를 생성한다.
- 키에 암호를 설정하고 싶은지 시스템에서 묻는 경우가 있는데, 원한다면 해도 되고, 안 해도 상관은 없다. 만들기 싫으면, 그냥 엔터를 누르면 된다. 그러면 .ssh 폴더에 id_rsa와 id_rsa.pub가 생성된 것을 볼 수 있을 것이다.
- 비밀 키의 권한을 변경하자. 자신만 읽을 수 있게 해 주기 위해서는 chmod 600 .ssh/id_rsa라고 해 주면 된다.
-
서버에 공개 키를 옮기자. 키가 생성되면, 공개 키를 서버에 옮겨 주어야 한다. 다음 명령어를 입력해 주면 된다.
- scp .ssh/id_rsa.pub <user_id>@<remote>:
- 마지막에 있는 ":"를 빠뜨리지 않도록 하자.
- 전송이 시작되기 전에 암호를 입력해야 할 것이다.
-
서버에 공개 키를 설치하자. 서버에 키가 전송되었으면, 제대로 작동하도록 설치해 주어야 한다. 단계 3에서처럼 서버에 접속해 준다.
- 서버에 SSH 폴더가 없다면 mkdir .ssh를 입력해 생성한다.
- 공개키를 붙여 넣자. 키가 없다면 cat id_rsa.pub를 이용하면 된다.
- chmod 700 .ssh를 이용해 SSH 폴더의 접근 권한을 변경하자.
-
접속이 되는지 확인하자. 키가 서버에 설치되면, 암호를 입력하지 않고 연결을 설정할 수 있어야 한다. 다음 코드를 이용해서 접속을 시도해 보자. ssh <user-id>@<remote>
- 암호 입력 없이 접속이 됐다면, 설정이 제대로 된 것이다.
광고
출처
이 위키하우에 대하여
이 문서는 18,042 번 조회 되었습니다.
광고