티스토리 뷰

IT 일반/맥북

맥에서 SCP/SFTP/SSH 사용하기

청년정신 2019. 3. 19. 15:28
맥에서 SCP/SFTP/SSH 사용하기

맥의 운영체제 MAC OSX는 Free BSD 기반의 운영체제로 리눅스/유닉스 관련 아키텍쳐와 매우 유사하다.
따라서 안전하게 원격으로 접속할 수 있는 SSH 와 암호화 전송 방식인 SCP/SFTP등을 지원한다.
필자는 SSH의 경우 내부의 서버들에 접속시 SSH Key 기반과 SSH config를 통해 여러대의 서버 및 네트워크 장비등에 접속한다.
또한 SFTP/SCP를 이용하여 서버와 파일을 주고 받기도 한다.
Sierra  버전 부터는 보안이 강화되면서 Telnet, FTP는 더 이상 서비스하지 않는다.

아래 사용방법을 소개한다.



[맥에서 공유설정하기]

먼저 맥에서 시스템 환경설정 - 공유 - 원격로그인 메뉴를 선택하여 공유설정을 활성화 한다.
이렇게 되면 SSH,SCP,SFTP 등이 활성화 된다.
최근 






[맥에서 SSH 사용하기]

리눅스에서 SSH Client, SSH Server를 사용하는 방식과 동일하다.
기본 Free BSD 운영체제를 사용하기 때문에 ssh 서비스를 사용할 수 있다.

사용명령
SSH Key 인증방식 / 패스워드 방식 - ssh UserID@서버호스트
1
2
3
4
5
6
7
8
9
10
11
12
~ $ ls -al ~/.ssh
total 40
drwx------   7 woohyungchoi  staff   224 Mar 19 10:28 .
drwxr-xr-x+ 45 woohyungchoi  staff  1440 Mar 19 14:08 ..
-rw-r--r--   1 woohyungchoi  staff   398 Mar 19 10:31 authorized_keys
-rwx------   1 woohyungchoi  staff   542 Mar 19 01:25 config
-rw-------   1 woohyungchoi  staff  1843 Mar 19 00:29 id_rsa
-rw-r--r--   1 woohyungchoi  staff   408 Mar 19 00:29 id_rsa.pub
-rw-r--r--   1 woohyungchoi  staff  1876 Mar 19 11:46 known_hosts
 
# id_rsa는 private key를, id_rsa.pub는 public key를 가지고 있다.
# 외부에서 자신의 맥으로 SSH 접속을 하기 위해서는 authorized_key 파일을 생성해서 , SSH Client의 Public Key를 저장해 두면 된다.
cs

[ STEP-1. SSH Key 생성 ]

1
2
3
4
5
6
7
8
9
10
11
12
13
~ $ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/woohyungchoi/.ssh/id_rsa):
/Users/woohyungchoi/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/woohyungchoi/.ssh/id_rsa.
Your public key has been saved in /Users/woohyungchoi/.ssh/id_rsa.pub.
# 이하 생략.
 
# rsa key를 생성한다.
# key가 생성되면 id_rsa에 Private Key가 저장되고, id_rsa.pub에 Public Key가 저장된다.
cs

[ STEP-2. 권한설정 (SSH 서버로 사용할 경우) ]
1
2
3
4
5
6
7
~ $ chmod 700 ~/.ssh/
~ $ chmod 644 ~/.ssh/authorized_keys 
~ $ chmod 644 ~/.ssh/id_rsa.pub
 
# id_rsa는 private key를, id_rsa.pub는 public key를 가지고 있다.
# 외부에서 자신의 맥으로 SSH 접속을 하기 위해서는 authorized_key 파일을 생성해서 , SSH Client의 Public Key를 저장해 두면 된다.
 
cs

[ STEP-3. SSH Client Public Key 복사 (SSH 서버로 사용할 경우) ]
1
2
3
4
[whchoi@centos151 ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub woohyungchoi@mac_book_ip
 
# 자신의 맥북으로 접속을 허용하는 클라이언트에서 ssh-copy-id 또는 SCP를 이용하여 key를 authorized_keys 에 저장한다.
# 물론 이 과정이 없다면, SSH 접속 후 패스워드 인증방식으로 접속 할 수 있다.
cs

[ STEP-4. SSH config로 SSH Host 관리하기 ]

SSH config를 통해 맥북에서 다양한 서버와 네트워크 , 스토리지 장비 등으로 접속할 때 유용하게 사용할 수 있다.
접속하고자 하는 호스트와 User ID, 인증방식, 포트번호 등을 저장해 두면, 번거롭게 ip 주소와 User ID를 기억하지 않아도 곧바로 접속이 가능하다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
~ $ more ~/.ssh/config
Host centos151
        User whchoi
        HostName 10.72.78.151
        Port 22
        IdentityFile ~/.ssh/id_rsa
        Protocol 2
 
Host centos152
        User whchoi
        HostName 10.72.78.152
        Port 22
        IdentityFile ~/.ssh/id_rsa
        Protocol 2
 
Host centos153
        User whchoi
        HostName 10.72.78.152
        Port 22
        IdentityFile ~/.ssh/id_rsa
        Protocol 2
 
Host centrepo
        User whchoi
        HostName 10.72.78.253
        Port 22
        IdentityFile ~/.ssh/id_rsa
        Protocol 2
# ~/.ssh/config 파일에서 Host 이름과 User Name, IP 주소, Port 번호, 인증 방식, Protocol 등을 기술하면 간단하게 ssh hostname만 기술하면 곧바로 접속이 가능하다.
 
~ $ ssh centos151
Last login: Wed Mar 20 00:08:59 2019 from 10.70.233.41
[whchoi@centos151 ~]$
cs


[맥에서 SCP 사용하기]

원격지 접속을 허용하게 되면 SCP  서비스도 사용할 수 있다.
사용명령 : 
파일전송
scp "전송할 파일이름” “원격지서버UserID"@"원격지서버호스트명":"원격지서버 디렉토리

파일가져오기
scp -r “원격지서버UserID"@"원격지서버호스트명":"원격지서버 디렉토리” “저장할 로컬 디렉토리"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
~ $ scp scptext.txt whchoi@10.72.78.151:/home/whchoi
scptext.txt                                                                                                                                   100%    0     0.0KB/s   00:00
 
# 맥에서 원격지 서버로 파일을 전송한다.
 
~ $ scp -r whchoi@10.72.78.151:/home/whchoi/scptext.txt /Users/woohyungchoi/
scptext.txt                                                                                                                                   100%    0     0.0KB/s   00:00
 
# 맥에서 원격지 서버의 파일을 가져온다.
 
[whchoi@centos151 ~]$ scp scptext.txt woohyungchoi@mac_host:/Users/woohyungchoi
scptext.txt                                                                       100%    0     0.0KB/s   00:00
 
# 리눅스 서버에서 맥으로 파일을 전송한다.
[whchoi@centos151 ~]$ scp -r woohyungchoi@mac_host:/Users/woohyungchoi/scptext.txt /home/whchoi/
scptext.txt                                                                       100%    0     0.0KB/s   00:00
 
# 리눅스 서버에서 원격지 맥의 파일을 가져온다.  
cs



[맥에서 SFTP 사용하기]

sftp는 ftp 사용방식과 동일하며 내부적으로 암호화 된것을 제외하고는 사용방법은 간단하다.
1
2
3
[whchoi@centos151 ~]$ sftp woohyungchoi@mac_host
 
# 맥으로 원격 접속하여 원하는 파일을 전송 또는 가져온다.  
cs

추천 SFTP 프로그램.

window에서는 WinSCP라는 아주 유용한 SCP/SFTP 프로그램이 있었다.
아쉽게도 현재 맥용은 공식적으로 지원하지 않는다.
이것을 대체할 수 있는 무료 프로그램은 현재 크게 2가지 정도가 가장 우수해 보인다.
Cyberduck 와 Filezilla 2가지이다.
아래 사이트에서 필요에 따라 다운로드해서, SCP/SFTP를 편리하게 사용할 수 있다.


Cyberduck 스크린샷


File Zilla 스크린 샷


'IT 일반 > 맥북' 카테고리의 다른 글

맥용 시스템 자원관리 도구  (0) 2019.03.24
맥용 터미널 소개  (1) 2019.03.22
Mac에서 활성 상태 보기  (0) 2019.03.15
맥용 파워포인트 팁  (3) 2019.03.13
맥 파워포인트 단축키 모음  (2) 2019.03.13
공지사항