반응형
######################################################################################
[방법 1] - 공개키 이용
######################################################################################
@@@@ 계정은 userId 으로 실행함.
A (192.168.1.10) 서버 : test.txt 라는 파일을 가지고 있는 서버
B (192.168.1.20) 서버 : A 라는 서버에서 파일을 받기 위한 서버
1. keygen 생성 - A 서버 설정 (test.txt 라는 파일을 가지고 있는서버)
~]# ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/userId/.ssh/id_dsa): Enter
Enter passphrase (empty for no passphrase): Enter
Enter same passphrase again: Enter
Your identification has been saved in /userId/.ssh/id_dsa. -> 개인키
Your public key has been saved in /userId/.ssh/id_dsa.pub. -> 공개키
The key fingerprint is:
99:d8:9f:78:99:91:91:20:b5:8b:ed:2e:37:ac:5d:91 userId@route.com
2. B라는 서버로 id_dsa 파일을 전송한다. (차후 삭제..) - A 서버 설정 (test.txt 라는 파일을 가지고 있는서버)
~]# scp /userId/.ssh/id_dsa.pub userId@192.168.1.20:/temp/
userId@192.168.1.20's password:
id_dsa.pub 100% 604 0.6KB/s 00:00
-----------------------------------------------------------
3. B (192.168.1.20) 서버로 접속한다. - B 서버 설정
userId ]# ls
id_dsa.pub
4. authorized_keys 라는 파일을 만든후 내용을 추가한다. B 서버 설정
==> authorized_keys 파일이 다른 컴퓨터의 키를 저장하고 있을 수 있기때문에, 파일에 이미 내용이 있다면 (새파일을 덮어쓰지않고) 공개키 파일 내용을 뒤에 추가해야 한다.
userId ]# cat id_dsa.pub >> /userId/.ssh/authorized_keys
userId ]# rm id_dsa.pub
5. 파일을 재확인한다. - B 서버 설정
userId ]# cat /userId/.ssh/authorized_keys
ssh-dss AAAAB3NzaC1kc3MAAACBAMVz/0dkViLOfLg7aXSwMKFA9hx+zYKpidMhGAtYbrKni3pfy1w3DaZ/f8/
/e4LAb5ICUrMg== userId7@192.168.1.xxx
6. 보안을 위해 퍼미션을 변경한다. - B 서버 설정
userId]# chmod 700 /userId/.ssh/
userId]# chmod 644 /userId/.ssh/authorized_keys
7. 마지막으로 테스스틀 해본다. (비밀번호 입력 없이 전송)- A 서버 설정 (test.txt 라는 파일을 가지고 있는서버)
A 서버에서 B 서버로의 파일 업로드시도
userId ]# scp test.txt 192.168.1.20:/userId
test.txt 100% 0 0.0KB/s 00:00
######################################################################################
[방법 2] - sshpass를 사용한다.
######################################################################################
1. wget http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/sshpass-1.05-1.el5.rf.x86_64.rpm -> download
2. rpm -ivh --nodeps --force *.rpm -> unpack
3. sshpass -p "userId" ssh -o StrictHostKeyChecking=no userId@175.126.33.203; -> ssh connect
4. exit; -> exit
5. sshpass -p "userId" scp /var/lib/jenkins/jobs/seller-dev/workspace/target/seller.war userId@175.126.33.203:/ ->비번no scp !!
######################################################################################
[방법 3] - expect 를 사용한다. http://visu4l.tistory.com/167
######################################################################################
반응형
'서버 Server' 카테고리의 다른 글
윈도우 심볼릭 링크 만들기 (1) | 2023.10.10 |
---|---|
Windows Server 2022 Standard FTP 서버 설정 방법 (0) | 2023.08.30 |
Linux 환경의 PHP MSSQL 연동 (0) | 2013.12.05 |
리눅스 서버 시간 설정 (0) | 2013.10.04 |
[아파치] Permission denied: access to / denied (0) | 2013.09.05 |