夢想的天空
一 個 屬 於 我 們 的 世 界
 
 DS WebmailDS Webmail   搜尋搜尋   會員列表會員列表   會員群組會員群組   新進文章   星座物語   網誌   會員註冊會員註冊 
 個人資料個人資料  Calendar月曆   DS WebTV   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 
 IP 38.107.179.226
我的最愛我的最愛
RSSRSS

[分享]SSH 小技巧

 
發表新主題   回覆主題    夢想的天空 首頁 ->作業系統與軟體 區->Linux/Unix Like/自由軟體
上一篇主題 :: 下一篇主題  
發表人 內容
Fily John
管 理 者
管 理 者


註冊時間: 2002-04-17
文章: 13675
來自: 宜蘭-羅東

發表1 發表於: 星期二 八月 31, 2010 5:27 pm    文章主題: [分享]SSH 小技巧 引言回覆


  • 保持連線
  • 提昇連線效率
  • 一行指令連入遠端區域網路內的其他主機
  • SOCKS 代理伺服器
  • SSH Tunnel
  • SSH 與 Pipeline 應用

    • 免密碼登入
    • 壓縮傳遞
    • 備份遠端 mysql 資料庫
    • 備份到遠端主機
    • 在本地還原備份資料
    • 傳送麥克風聲音到遠端主機喇叭




保持連線



vi ~/.ssh/config


KeepAlive yes
ServerAliveInterval 60


chmod 600 ~/.ssh/config



提昇連線效率



mkdir ~/.ssh/connections
chmod 700 ~/.ssh/connections
vi ~/.ssh/config


Host *
ControlMaster auto
ControlPath ~/.ssh/connections/%r_%h_%p


風險: 連線中, 再另外連入相同的 帳號@主機 將不再詢問密碼.



一行指令連入遠端區域網路內的其他主機



ssh -t someone@remote.host 'ssh someone@192.168.1.1'



SOCKS 代理伺服器



僅允許本機連線



ssh -f -N -D1080 someone@remote.host

於瀏覽器設定 SOCKS Host: localhost:1080
並瀏覽 http://whatismyip.com/ 查看自己的 IP 是否為遠端 sshd 主機的外部 IP


允許其他人連線



ssh -f -N -D 0.0.0.0:1080 someone@remote.host

於瀏覽器設定 SOCKS Host: ssh.client.ip:1080


SSH Tunnel


瀏覽遠端未開放網際網路連線的內部 web server
sudo ssh -L 8080:192.168.1.1:80 someone@remote.host

#只允許本機連線

sudo ssh -L 0.0.0.0:8080:192.168.1.1:80 someone@remote.host

#允許其他人連線

於本機打開瀏覽器, 輸入網址: http://localhost:8080/ 瀏覽遠端內部主機 192.168.1.1:80
在允許其他人連線的情況下, 別台電腦只要於瀏覽器輸入 http://ssh.client.ip:8080/ 就能透過這台 linux 主機連入遠端 192.168.1.1:80


SSH 與 Pipeline 應用



免密碼登入



ssh-keygen
cat ~/.ssh/id_rsa.pub | ssh someone@remote.host 'cat >> ~/.ssh/authorized_keys'
ssh someone@remote.host

替代方案:
ssh-copy-id someone@remote.host



壓縮傳遞



tar -cz fileORfolder | ssh someone@remote.host 'tar -xz -C /to/path'

替代方案:

rsync -az fileORfolder someone@remote.host:/to/path
scp -C file someone@remote.host:/to/path
scp -r -C folder someone@remote.host:/to/path



備份遠端 mysql 資料庫



ssh someone@remote.host 'mysqldump -uroot -psecret --all-databases' | \
dd of=~/mysqldump.sql



備份到遠端主機



dd if=/dev/sdc | ssh -c blowfish someone@remote.host 'dd of=/path/to/backup.img'

tar -cvj *.jpg | ssh someone@remote.host 'cat > /path/to/backup.tar.bz2'



在本地還原備份資料



ssh someone@remote.host 'dd if=/path/to/backup.img' | dd if=/dev/sdc

ssh someone@remote.host 'cat /path/to/backup.tar.bz2' | tar -xvjf -



傳送麥克風聲音到遠端主機喇叭



dd if=/dev/dsp | ssh someone@remote.host 'dd of=/dev/dsp'





回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN MessengerSkype
從之前的文章開始顯示:   
發表新主題   回覆主題    夢想的天空 首頁 -> Linux/Unix Like/自由軟體 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)



前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


新進文章
建議使用瀏覽DS
Powered by phpBB2 © 2001, 2002 phpBB Group
維護管理 DS - 管 理 團 隊    繁體中文由 竹貓星球PBB2中文強化開發小組 製作

主機運作時間: 219 日 9 小時 46 分鐘 | 平均負載值: 0.02, 0.09, 0.06

DS 共花費了 0.0801 秒載入完成 , 有 (PHP: 62% - SQL: 38%) 項資料被查詢 - 讀取資料庫: 17 次 - 壓縮加速 關閉 - 除錯模式 關閉