서버에서 서버로 화일백업할때 쓰는데 cron에 넣어서 자동백업을 할려고해요
rsync -avz -e "ssh -p22" 111.111.1.1:/var/lib/mysql /home <– 이렇게 치면
root@211.111.1.1's password: <- 암호넣는 라인이나오구요 암호넣고 엔터를 치면 일을해요.문자열 검색이나 딜레이를 써서 만들어도 될것같은데 쉘은 한번도 안써봐서 모르겠네요.
서버에서 서버로 화일백업할때 쓰는데 cron에 넣어서 자동백업을 할려고해요
문자열 검색이나 딜레이를 써서 만들어도 될것같은데 쉘은 한번도 안써봐서 모르겠네요.
[url:tkr7j9qn]http://www.stratigery.com/scripting.ftp.html[/url:tkr7j9qn]
요기 한번 참고해보세요.
봐도 이해가 잘 안되네요
비밀번호를 넣는 걸 자동화하고 싶으신 것 같은데요,
ssh rsa key를 사용하면 비밀번호를 안 넣을 수 있어요.
sshpass 쓰면 shell를 안쓰고 쉽게 되네요
http://www.linux.co.kr/home2/board/subb ... sca2=10959sshpass 패키지 설명에 이런 말이 있어요.
[quote:kunv4o2b]SECURITY NOTE: There is a reason openssh insists that passwords be typed interactively. Passwords are harder to store securely and to pass around securely between programs. If you have not looked into solving your needs using SSH’s "public key authentication", perhaps in conjunction with the ssh agent (RTFM ssh-add), please do so before being tempted into using this package.[/quote:kunv4o2b]
번역 : openssh가 비밀번호를 대화식으로 입력하도록 하는 것에는 한 가지 이유가 있다. 비밀번호는 안전하게 저장하고 프로그램 간에 안전하게 전달하기가 더 어렵기 때문이다. 당신이 만약 SSH의 "public key authentication"을 사용해서 – 아마도 ssh agent와 함께 (ssh-add 매뉴얼을 읽으삼) – 당신의 필요를 해소하는 것을 알아 보지 않았다면 이 패키지를 시도하기 전에 그걸 알아 보세요.
위에 다른 분들이 이야기하셨듯이 스크립트에 비밀번호 문자열을 넣어두는것은 보안상
좋은 일이 아닌것 같습니다.
…
하지만 경우에 따라서는 아래처럼 사용할때도 있을 수 있겠죠…
$ cat expect_test.sh
#!/usr/bin/expect
set timeout 10
spawn ssh ihavnoth@localhost
expect "ihavnoth@localhost’s password:" { send "비밀번호\r" }
interact
$ ./expect_test.sh
spawn ssh ihavnoth@localhost
ihavnoth@localhost’s password:
Linux paydos.co.kr 2.6.32-25-generic-pae #45-Ubuntu SMP Sat Oct 16 21:01:33 UTC 2010 i686 GNU/Linux
Ubuntu 10.04.2 LTS
Welcome to Ubuntu!
Last login: Fri Apr 15 13:55:08 2011 from localhost
$
expect라는 쉘이 있나보네요.
비번넣을때 써먹으면 되겠네요.