- -Secure Shell 사용 : Linux에 SSH를 설치하는 방법 및 유용한 명령

Secure Shell 사용 : Linux에 SSH를 설치하는 방법 및 유용한 명령

리눅스를 처음 사용하십니까? SSH가 무엇인지, 심지어 SSH로 무엇을 할 수 있는지 잘 모르시겠습니까? 이 기사에서는 Linux에서 SSH를 설정하고 사용하는 방법에 대해 설명합니다. 작동 방식 및 유용한 기능에 대해 살펴 보겠습니다. 시작하자!

SSH는 Linux에서 가장 많이 사용되는 도구 중 하나입니다플랫폼. 그럼에도 불구하고 대부분의 주류 Linux 배포판 (Fedora 및 OpenSUSE 제외)에서 제공되는 프로그램은 아닙니다. SSH 구성은 쉽습니다. SSH를 사용하여 원격 Linux PC에 연결하려는 경우 클라이언트 연결 도구를 설치하는 것이 가장 쉽습니다. 이 도구는 SSH 자체이므로 연결 서버를 실행할 필요가 없습니다.

여전히 SSH 서버를 설정하는 것이 좋습니다모든 Linux PC에서. 이런 식으로 항상 양방향 통신이 가능하며 모든 PC가 연결을 보내고받을 수도 있습니다. 실행하는 방법은 다음과 같습니다.

SSH 도구 설치

우분투

sudo apt install openssh-server

아치 리눅스

sudo pacman -S openssh
sudo systemctl enable sshd
sudo systemctl start sshd

데비안

sudo apt-get install openssh-server

페도라 / 오픈 수세

SSH가 이미 설치되어 있지만 서버를 사용하지 못할 수 있습니다. 이를 사용 가능하게하려면 터미널을 열고 다음을 입력하십시오.

sudo systemctl enable sshd
sudo systemctl start sshd

다른

여기에 언급되지 않은 다른 Linux 배포판모든 것이 작동하도록 SSH 도구가 필요합니다. 그렇지 않은 경우 사용중인 Linux 버전의 공식 설명서를 참조하는 것이 가장 좋습니다. 또는 일반적으로 프로그램을 설치하는 위치를 검색하고 openssh-server, ssh, sshd 등을 검색하십시오.

다음으로 SSH의 구성 파일을 열고 설정을 변경하십시오. 기본 포트는 기본 포트입니다. SSH는 즉시 사용 포트 22. 이것은 매우 잘 알려진 포트입니다. 결과적으로 해커 및 기타 악의적 인 행위자가이 포트를 방문하여 액세스하려고 시도 할 것입니다. 포트를 임의의 것으로 변경하십시오. 실제로 어떤 포트인지는 중요하지 않습니다. 다른 프로그램에서 이미 사용중인 포트가 아닌지 확인하십시오.

다음을 사용하여 구성 파일을 편집하십시오. sudo nano /etc/ssh/ssh_config

아래로 스크롤하여 파일에서 # Port 22를 찾으십시오. "#"을 삭제하고 번호를 "22"에서 원하는 포트로 변경하십시오. Ctrl + O를 눌러 변경 사항을 저장하십시오. 그런 다음 다음 명령을 사용하여 SSH를 다시 ​​시작하십시오.

우분투 / 데비안 :

service ssh restart

아치 / OpenSUSE / 페도라 :

sudo systemctl sshd restart

노트 : SSH 포트를 인터넷으로 포트 전달하지 않으려는 경우 SSH 포트를 변경할 필요가 없습니다. LAN에 있으면 괜찮습니다.

다음을 사용하여 SSH를 사용하여 서버에 연결하십시오. ssh -p portnumber remote@host

명령 줄 파일 전송

SSH는 원격으로 액세스해야 할 때 유용합니다다른 컴퓨터. 인터넷을 통해 액세스 할 수있는 컴퓨터이거나 같은 방에있는 컴퓨터 일 수 있습니다. 때로는 Linux PC에 원격으로 액세스 할 때 파일에 액세스해야 할 수도 있습니다. 구성 파일이거나 중요한 문서 일 수 있습니다. Linux 터미널에만 액세스 할 수있는 경우 원격 시스템으로 파일을 전송하는 것은 매우 지루할 수 있습니다.

그렇기 때문에 SSH가 SSH를 통해 파일을 쉽게 앞뒤로 전송할 수있는 기능이 내장되어 있습니다.

scp / path / to / files-or-folders user @ ipaddress : / path / to / destination

필요에 따라 / path / to / 등을 바꾸십시오. 예를 들어, 당신의 모습은 이렇습니다.

scp /home/derrik/importantfile.txt derrik@ubuntu-server:/home/derrik-server/files/

어디서나 안전한 FTP 서버

FTP는 오래된 기술이지만 그 의미가 아닙니다더 이상 유용하지 않습니다. 사실, FTP는 SSH와 관련하여 여전히 많이 사용됩니다. 왜? 파일 관리자 내에서 로컬로 전체 원격 Linux PC의 하드 드라이브에 매우 쉽게 액세스 할 수 있습니다. SFTP를 사용하기 위해 SSH를 구성 할 필요가 없습니다. SSH 서버가 실행중인 모든 Linux PC에도 SFTP가 있습니다. 액세스하려면 선택한 파일 관리자를 열고 "서버", "네트워크"또는 그 라인을 따라 무언가를 찾으십시오. 각 Linux 파일 관리자는 서로 다르므로이를 모두 설명 할 수는 없습니다.

sftp://username@hostname:portnumber

FTP 주소를 입력하면 비밀번호를 입력하고 SSH 서버의 키를 수락하라는 메시지가 표시됩니다.

참고 : 네트워크 외부에서 SFTP에 액세스하려면 SSH에 사용하는 포트를 전달해야합니다. 포트 포워드 방법을 배우려면 라우터 설명서를 참조하십시오.

원격 백업

SSH는 드라이브와 파티션을 원격으로 백업하는 등 많은 용도로 사용됩니다. 로컬 PC에서 하드 드라이브를 백업하고 SSH를 통해 네트워크를 통해 이미지를 보내려면 다음을 사용하십시오.

참고 :이 예에서 사용중인 하드 드라이브는 / dev / sda입니다. 필요에 따라 명령을 변경해야합니다.

파티션 백업

dd if=/dev/sda1 | gzip -1 - | ssh remote@host dd of=image.img.gz

전체 드라이브

dd if=/dev/sda | gzip -1 - | ssh remote@host dd of=image.img.gz

원격 드라이브의 하드 디스크 이미지 (또는 파티션)를 가져올 수도 있습니다.

파티션 백업

ssh remote@host "dd if=/dev/sda1 | gzip -1 -" | dd of=image.img.gz

전체 드라이브

Edit the config file with:ssh remote@host "dd if=/dev/sda | gzip -1 -" | dd of=image.img.gz

다음을 사용하여 이미지를 추출하십시오. gzip -d image.img.gz

로컬로 원격 프로그램보기

때로는 터미널이 충분하지 않을 때컴퓨터에 원격으로 액세스 다행히 SSH를 사용하면 X 윈도우 전달을 수행 할 수 있습니다. 즉, x11 GUI 서버를 사용하여 원격 창을 로컬 시스템으로 전달할 수 있습니다. 예를 들어 원격 Linux PC에서 웹 사이트를 테스트해야하는 경우 원격으로 Firefox를 시작하고 x11 Firefox 창을 Linux PC에 로컬로 전달할 수 있습니다.

ssh 구성 파일을 편집하여 X11 창 전달을 사용하십시오. sudo nano /etc/ssh/ssh_config

찾다 # ForwardX11 아니오,“제거#"및 변경"아니”에서““.

SSH 서비스를 다시 시작하십시오.

우분투 / 데비안 :

service ssh restart

아치 / OpenSUSE / 페도라 :

sudo systemctl sshd restart

SSH를 통해 연결할 때는 -X 스위치를 사용하십시오.

ssh -X -p portnumber remote@host

결론

SSH는 유용한 도구이지만 초보자는 아닙니다.리눅스 사용자는 이것을 알고 있습니다. 많은 용도가 있기 때문에 부끄러운 일입니다. 이 기사에서는 방금 표면을 긁었습니다. 보안 셸을 사용할 때 유일한 한계는 자신의 기술입니다.

코멘트