Tag Archives: ssh

Error: remote 서버 ssh 접속시 unicode 분해되서 표시

https://askubuntu.com/questions/144235/locale-variables-have-no-effect-in-remote-shell-perl-warning-setting-locale-f/144448#144448

이렇게 표시되는 경우..

archmagece@scripton-base:~$ ls
''$'\354\225\210\353\205\225' ''$'\355\214\214\354\235\274'

archmagece@scripton-base:~$ ls
안녕 파일

이 부분을 주석처리 해준다.

/etc/ssh/ssh_config
#    SendEnv LANG LC_*

클라이언트 접속시에 로컬의 언어설정을 가져가는건데
간혹 문제가 생길수도 있다.
그런데 요즘은 대부분 관리하는 서버 설정이 unicode일테니까

SSH public-private key 생성

윈도우즈

PuttyKeyGenerator(puttygen) 사용법

puttygen

키 페어 생성

  1. 암호화 수준 설정
  2. rsa방식 dsa방식 rsa보통사용한다
  3. 생성버튼 클릭 – 노란색 원안에서 마우스를 움직여주면 그걸 seed값으로 암호코드를 생성한다(필수)
  4. public key 저장    test_rsa
  5. private key 저장 test_rsa.ppk
  6. 파란색 2번 클릭해서 export open-ssh key 저장
  7. 키가 생성완료된 후 노란색 부분에 public key가 표시되는데 이걸 복사해서 따로 저장한다 test_rsa.pub  (이 부분 깜빡하고 넘어갔을 경우 putty gen에서 load클릭 후 test_rsa.ppk를 열면 다시 확인할 수 있다.

 

이렇게만 저장해놓으면 사용준비 끝.

리눅스보다 복잡하다.

 

리눅스

$ ssh-keygen -t rsa -b 4096

Pass Phrase를 치라고 하는데 귀찮으면 안써도 된다. 엔터

기본적으로 ~/.ssh/id_rsa, ~/.ssh/id_rsa.pub가 생성되는데 .pub파일을 원격 서버에 등록해 주면 된다.

 

public이 공개키 서버에 등록

private key 비밀키 나만 가지고 있는다

 

Linux SSH public-private key 인증으로 비밀번호 없이 사용하기

http://www.sdm-studio.it/setup-public-key-authentication-from-mac-to-ubuntu-server/

요기 참고했음

 

관리할 서버가 늘어나고 스크립트 사용시에 원격 서버에 비밀번호 없이 접속이 되야 편하기 때문에 설정하게 되었다.

 

1.  ssh키 생성하기

여기서 확인(http://memo.polypia.net/archives/2018)

 

 

2. 키를 타겟 서버로 카피하기

#클라이언트가 한개인경우
scp ~/.ssh/id_rsa.pub USERNAME@서버주소:.ssh/authorized_keys

#한 서버에 퍼블릭키를 여러개 등록할 경우 추가 방법
#그냥 잘라붙이기 하는거나 마찬가진데 명령어로 넣는 방법이다
cat ~/.ssh/id_rsa.pub | ssh USER@HOST "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

##디렉토리가 없어서 카피가 실패할 경우.. 타겟서버에 디렉토리 만들기
mkdir ~/.ssh
touch ~/.ssh/authorized_keys
exit

3. 접속하기 테스트

비밀번호를 안쓰고 SSH 접속이 되면 성공

ssh USERNAME@서버주소

 

4. 안되는 경우

이런 경우 서버의 .ssh 디렉토리 소유권과 권한을 재설정해본다.
chmod 700 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
ssh 서비스를 재시작
sudo service ssh restart

이렇게 해도 안되면 모르겠다.
gg
구글검색

 

CentOS의 경우 6.x 버전의 selinux버그로 인해 발생하는 문제

http://stackoverflow.com/questions/9741574/redhat-6-oracle-linux-6-is-not-allowing-key-authentication-via-ssh

cd ~
chmod g-w,u-rwx .
chmod 700 .ssh
cd .ssh
chmod 600 *
chmod 644 authorized_keys
chmod 644 known_hosts
chmod 644 config
restorecon -R -v ../.ssh

가장 쉬운 해결법인 복붙법. 권한문제는 아니다.

간혹가다가 rsa와 dsa방식중 한가지만 지원하는 서버도 잇다고 하니… 위의 방법이 안먹힌다면 해볼만하다.

 

5.  비밀번호 로그인 금지(키 로그인만 허용)

 

##우분투 배포판이 아니라면 경로가 다를 수 있음
$ sudo nano /etc/ssh/sshd_config

##이걸 찾아서 변경
#PasswordAuthentication yes
->>
PasswordAuthentication no

## 역시 명령이 다를 수 있음 tab자동완성을 이용하면 좀 달라서 알아서 찾아주기도 하고
## 아예 다른경우는 알아서
$ sudo service ssh restart

 

SSH, SFTP, FTP … Client 비교 및 추천

Putty http://www.chiark.greenend.org.uk/~sgtatham/putty/

가장 유명한 녀석으로 많이 사용된다.

드래그 복사에 익숙해지기 전의 불편함
전체화면 설정도 불편함
한글을 보기 위해 매번 UTF-8로 변경해줘야하는 귀찮음

이런 불편함이 있긴하지만 많이 사용된다.

 

xshell http://www.netsarang.co.kr/

netsarang.co.kr에서 개인사용자용으로 무료로 배포하고 있다.
탭으로 분류되며 화면 드래그 복사 등이 자유롭다는 장점이 있다.
제대로 써보지는 않았는데 한번 써 보려고 생각중이다.

 

WinScp http://winscp.net

아직 제대로 써 보지는 않았지만 복사는 편리해보인다.
terminal 기능은 없지만 putty를 연결해서 사용할 수 있다.

 

FileZilla http://filezilla-project.org/

유명한 오픈소스 ftp클라이언트, 자잘한 gui버그가 많지만 그럭저럭 괜찮다.

 

Terminal

맥이나 리눅스에서는 그냥 터미널 ssh client를 사용하는게 편하다.
ssh 192.168.0.100
이렇게 하면 접속이 가능하다.