Linux(여기서는 Ubuntu 기준) 서버에 PuTTY를 이용한 SSH로 접속하거나 FileZilla와 같은 FTP로 접속을 하고자 할때 원격에서 FTP, SSH로 접속이 가능하도록 리눅스를 어떻게 구성할것인지에 대해 정리하고자 한다.
Ubuntu Server 버전에서는 기본적으로 SSH로 접속이 가능한지는 테스트해 보지 않아서 잘 모르겠으나(아마도 되는 것으로...) Ubuntu Desktop 버전에서는 최초 설치 상태에서 FTP(FileZilla)나 SSH(PuTTY)로 접속을 시도하면 당연히 연결 실패가 된다.
다음 과정을 통해서 원격에서 접속이 가능하도록 설정해 보자.
기본적인 전제로 root 계정이 생성되어 있고 일반 유저 계정으로 joe라는 계정이 생성되어 있다고 가정한다.
그리고 SFTP로 접속할수 있도록 설정할 것이다.
1. Ubuntu의 기본 FTP 서버용 패키지 설치
# apt-get install vsftpd
⇒ vsftpd만 설치했을 경우는 FileZilla에서 root가 아닌 일반 사용자 계정으로는 접속이 가능하다. 단 SFTP로는 안되고 FTP로 port 21번으로 접속하면 접속이 된다. 참고로 SFTP는 디폴트 포트번호가 22번이다. vsftpd의 다양한 설정에 대해서는 여기서는 생략. vsftpd의 환경 설정 경로는 /etc/vsftpd.conf 파일을 vi로 열어서 환경 설정을 통한 기능들을 조정할 수 있다.
2. SSH 서버 설치
# apt-get install openssh-server
⇒ 여기까지 실행하면 root 계정이 아닌 일반 계정에서는 SFTP로 접속이 가능해 진다.
3. root 계정으로도 SFTP 접속 가능하도록 설정하기
# vi /etc/ssh/sshd_config
⇒ 내용 중에서 PermitRootLogin의 값이 prohibit-password로 되어 있는 것을 yes로 다음과 같이 수정
PermitRootLogin yes
파일 저장 후 ssh restart하기
# service ssh restart
이후부터는 SFTP(port 22)로 정상적으로 접속이 가능해 진다.
이상의 FileZilla의 경우도 동일하게 putty에서도 동일하다.
putty는 접속 포트가 22이다.
그런데 SFTP나 SSH접속(putty)을 root 계정으로 굳이 접속 가능하도록 설정하는 것은 보안상 바람직한 것은 아니다. 왜냐하면 일반 계정으로 접속해서 su command를 이용하여 슈퍼유저로 로그인 해서 사용할수 있기 때문이다.
물론 이때는 root계정의 비번을 당연히 일반 계정의 비번과 다르게 해야겠지만...
'Linux' 카테고리의 다른 글
아파치 가상 호스트(Virtual host)를 이용한 하나의 서버에 여러개의 웹 서비스 구현하기 (0) | 2018.05.17 |
---|---|
심볼릭 링크로 심볼릭 파일 생성시 "그런 파일이나 디렉토리가 없습니다"(Nu such file or directory) 에러 발생시 (0) | 2018.05.14 |
VirtualBox의 Ubuntu와 동일 PC의 ping이 안될때 (0) | 2018.02.14 |
Ubuntu 장비의 고정 IP(static IP) 설정법 (0) | 2017.12.28 |
리눅스 Shell command를 이용한 Socket 통신하기 (0) | 2017.12.14 |