티스토리 뷰

아마존 EC2 리눅스 서버에 파일을 전송하기 위해 WinSCP 프로그램 세팅을 알아보도록 하겠습니다.

일반 유저인 ec2-user 로 접근하면 파일을 전송하기에 제약이 따르기 때문에 관리자(root) 권한으로 세팅하는 방법을 알아보겠습니다.

 

찾아보니 이런 문서가 있었습니다. 따라해 보니 정말 되더군요..

한번 따라해 볼께요..^^

먼저 Putty 프로그램을 통해서 ec2-user 사용자로 로그인을 합니다.

관리자 권한을 획득하기 위해서 sudo su root 해서 권리자 권한으로 변경합니다.

그리고는 위에 이미지의 설명대로 visudo 합니다.

쭉 명령어가 많이 나오고 주석이 대부분 되어 있는데..55번째 줄쯤에...

이런 문구를 찾습니다.

Defaults     requiretty   -> Defaults     !requiretty

로 변경을 해 줍니다. 앞에 !표시만 하나 넣어주고 저장을 하고 나옵니다. (wq 하고 나오면 되겠죠..)

그러고 나서는 WinSCP 프로그램을 실행시킵니다.

로그인 페이지가 나오면 중간부분에 Advanced 버튼을 누릅니다.

그러면 세부 설정이 나오는데, Enviroment - Shell 을 선택해서 Shell  값을 sudo su - 로 변경해 줍니다.

드롭박스에 그렇게 메뉴가 있기때문에 선택만 해 주면 됩니다. OK를 눌러주시구요.

그리고는 세션값을 변경해야 합니다.

세션값은 File protocol 값을 SCP로 변경해 주시면 됩니다. 그러면 이제 다 되었습니다.

이값들로 파일을 송수신이 가능하게 되었습니다.


간단한 파일 하나를 전송해 보겠습니다.

잘 넘어가네요..^^

제 컴퓨터에 desktop.ini 파일이 아마존 EC2 서버측으로 전송된 모습을 잘 보실수 있습니다.

권한도 root로 잘 넘어가 있네요..

그렇게 아마존에서 만든 서버에도 파일을 자유자제로 전송이 가능하답니다. ^^

 

여러분도 아마존에서 리눅스로 EC2서버를 만드셨다면 꼭 필요하실겁니다. ^^ 





+추가로 참고한 블로그

아마존 AWS 접속시 루트 관리자로 WinSCP(sFTP) 로그인 후 서버의 파일 바로 편집(수정/삭제/전송)하는 방법

1. putty로 아마존 AWS에 터미널 접속 및 로그인(일반사용자)   

2. 루트관리자 계정 만들기(root)
   $ sudo passwd
   처음엔 일반사용자 패스워드 입력.
   그 다음엔 루트사용자 패스워드 입력.
   완료되었다고 나오면 루트 관리자로 로그인 테스트
   $ su -

3. ssh 터미널에 루트관리자로 로그인하기 위한 ssh 환경설정파일 편집
   vi 에디터로 파일 열기( vi 대신 nano 사용 가능)
   $  vi /etc/ssh/sshd_config  또는 nano /etc/ssh/sshd_config

   PermitRootLogin without-password 라인을 아래와 같이 수정
   PermitRootLogin yes

   StrictModes yes 라인을 아래와 같이 수정(주석처리로 비활성화. 앞에 #만 붙이면 됨)
   #StrictModes yes

4. 아마존 AWS로 부터 받은 일반사용자 암호화키를 루트관리자 계정에도 복사(cp 명령어 사용 : cp는 copy를 의미)
   $ sudo cp /home/ubuntu/.ssh/authorized_keys   /root/.ssh

   * 위의 경로에서 /home/ubuntu는 윈도우 OS로 따지면 "C:\사용자\홍길동" 과 같음.
     따라서, 여기서 ubuntu는 아마존에서 인스턴스 생성시 자동으로 만들어진 사용자 계정의 기본 홈 폴더임.
     명칭이 다른 경우엔 당연히 /home/ 뒤에 해당 명칭을 입력해줘야 함.
     .ssh/authorized_keys는 보안을 위한 개인 암호화키가 해당 디렉토리에 들어있음을 표시.
     따라서, /home/ubuntu/.ssh/authorized_keys를 /root/.ssh 디렉토리에 복사하면 루트관리자 로그인시 일반사용자 로그인처럼 해당 암호화키를 사용해서 로그인할 수 있는 것임

5. ssh 서비스 재시작
   $ sudo service ssh restart

6. WinSCP 실행 후 아마존 AWS 아이피 입력하고 루트 계정(아이디 : root  / 암호 : 설정값) 입력

7. 루트 관리자 로그인

8. 서버 디렉토리가 열리면 수정이 필요한 파일 디렉토리로 이동

9. 해당 파일을 마우스 오른쪽 버튼 클릭해서 열기

10. 수정 후 저장 테스트

11. 완료

이후부터는 WinSCP를 통해서 루트 관리자로 로그인해서 바로 특정 파일들을 수정하거나 삭제, 다운로드 또는 업로드 할 수 있습니다.