欢迎各位的光临,鄙人以好酒好菜招待~~!!^_^

SSH + sftp - 加密 remote control 和 加密 FTP

上一篇 / 下一篇  2007-05-03 18:34:05

以前人人都會用 telnet 或 FTP 去 server 存取資料, 但因為這兩樣程式都用 plain text 傳送, 所以你的密碼會好容易在半途給人盜取了之後去刧 server,反而 SSH remote 和 sftp 就不同的, 因為傳送的封包都已加密, 所以想盜取你密碼會有些高難度。其實 SSH remote control 和 sftp 都是很好用的。Linux宝库Q z-^n~3u
Linux宝库wHK j `!l
不會難用過 telnet, 也好用過 FTP, 因為如果你有用防火牆, client 又用防火牆, 在這情況下好多時 client 都會有接駁問題, 除非你開一個大 range ports, 這樣又有了安全問題, 多開一個 port, 多一個風險給駭客入到去你 server 。
Z/p K"jq3~'J3B0多數 Linux Distribution 都有 sshd server, ssh client 和 sftp server 包在安裝程式中, 如果你想後加或升級你可以參考以下網址:Linux宝库,B?;In({ xGt}
(舊版 openssh version 3.6.1 以下是有安全漏洞, 所以一定要用新版本)
%eQ e*S3Ci7?Ut.B3n0http://www.openssh.com/Linux宝库Z7y2v*BaD0x9zQ

Linux宝库b1? ZeD ?'Hbys1C

在 Debian 安裝其實好簡單, 你只須打Linux宝库(j[%v+BL8o _1p
# apt-get install sshLinux宝库;DX8a j/Z8cQ
在安裝時會問你Linux宝库&M%_ @B9g)y,Y5R].MV
Allow SSH protocol 2 only ?Linux宝库 w WCE;cf
Yes
QlF:FP8vw:a0Do you want /usr/lib/ssh-keysign to be installed SUID rootLinux宝库4CFS6O"Giwj
Yes
7Wtc,\JZu5i4A0`.@&J0Do you want to run the sshd server ?
T R4["Rxcl0Yes

Y'n}(?%In3P;_A j3XK0

0V6?!bvoB/Z0在 Fedora Core 4 如果你在安裝作業系統時沒安裝 ssh, 你可以用 # yum search openssh, 之後用 # yum install 那幾個 openssh 程式就可以了。

J[f0s_kN0

IK8M/x(Y4L)n+{0安裝好後, 你會見到在 /etc 多了一個叫 ssh 的目錄, 我們須要改的是 sshd_config, 大多數 Linux Distribution 的 sshd_config script. 都是大同小異, 你只需改以下幾行就可以了。
qMEH|;p]e*H0# vi /etc/ssh/sshd_configLinux宝库u{j8} R

eL/g"]0Z6X t(CP-z0#在這裡我們可以改 port number, 當然這不能阻止駭客的攻擊, 但可以防止專攻 port 22 的蠕蟲或 script. kiddies。Linux宝库 snv`?\q
Port 9822
'F/~ E(y.qI0#Protocol 2,1 - 舊 ssh 是用 protocol 1 的, 但現在已全改用了 protocol 2, 除非你還有好舊的機才要用 protocol 1。Linux宝库 ITc-kt\ Q |7{
Protocol 2Linux宝库0x]1~6]x_4z
#如果你部機用的是 dynamic IP, 就要用以下四個零 IP, 但如果你用的是 static IP, 就把那四個零改用你部機的 IP。Linux宝库$J]g-WM&a6O
ListenAddress 0.0.0.0Linux宝库(Oj I0?6ejK:K
# HostKeys for protocol version 2
k#wT;geXn%V-\0HostKey /etc/ssh/ssh_host_rsa_keyLinux宝库Q)W2r%p/hB
HostKey /etc/ssh/ssh_host_dsa_keyLinux宝库~un`p-Yy
KeyRegenerationInterval 1h
8k'mZIW%U0ServerKeyBits 1024
Y-M ult"h*B0SyslogFacility AUTHLinux宝库q:A3y;aT ?U
LogLevel INFO
3_%x.JwWZ0LoginGraceTime 120

2gSnMd1W sdG0#為了安全最好不要讓 root 可以 login, 因為 root 一入到去什麼都可以做到。Linux宝库 T,k%@ njx'l
PermitRootLogin no
SXv;A {w/q'R!@,v0StrictModes yes
#m:A{Z"}edx h0RSAAuthentication yesLinux宝库2^!OK bp%o
RhostsRSAAuthentication noLinux宝库RmMTlW4}"t
HostbasedAuthentication noLinux宝库f)ANP8S4mo1C,s
IgnoreUserKnownHosts yes
t%^ j@"JWJ0IgnoreRhosts yes

6m%Ji$Ev'l ]dW0#PubkeyAuthentication yes - 如果你想用 key authentication 就要選這句, 如想用 password login 就要選下面那句
E!iO1?-k,S+p/`0PasswordAuthentication yes
zNk"UGp#F0PermitEmptyPasswords no
t4BL0fx0ChallengeResponseAuthentication no
Linux宝库n["IDP
#下面這兩句是在 Fedora Core 4 已預設, 在 Mandrake 同 Debian 是沒有的Linux宝库-Mf}4{0naP-W9N;p{u
GSSAPIAuthentication yesLinux宝库 S1k*V?0CA H^
GSSAPICleanupCredentials yes
Y8f-} g5J9iYP0UsePAM yes

,@6G[1}Q\7M0#AllowTcpForwarding yesLinux宝库UO.B,_Z%Yk5R ]
#GatewayPorts no
EmlS@0#X11Forwarding yes - 如果你想在第二部機開到你這部機的 Xwindow 你可以設 yes, 但不用了的時候要設回 no, 為了安全, 我們最好要設為 no。
mmp:_F(y*e'UyqZ0X11Forwarding noLinux宝库'vY | jY rU yf
#X11DisplayOffset 10
:c y'`$g%au0X0#X11UseLocalhost yesLinux宝库z;|C5CQfC ?0L
PrintMotd no
3?k|?"y;\6a-ra0PrintLastLog yes
.xm_3T]0TCPKeepAlive yesLinux宝库I3]g&h4@
UsePrivilegeSeparation yes

1f2Y [I oM/['Ob3G0#PermitUserEnvironment noLinux宝库Y\;CAe;{ _H
#Compression yes
U'j0]4X,i)\;n1w0#ClientAliveInterval 0
;cSJ}P e+F&es0#ClientAliveCountMax 3Linux宝库wo2mBW0L0d}T
#UseDNS yes
5r1vGo,\yZ F \0#PidFile /var/run/sshd.pid
zu3Z'AGP U9c0MaxStartups 10
.r+sqH~H0# override default of no subsystems - sftp-server 不須做任何設定已包在 ssh 內。
"B p]*Lu;w3Oy0Subsystem sftp /usr/libexec/openssh/sftp-serverLinux宝库*p)tc8M{C0~!_

Linux宝库*G*mP S0?"rs)y)Oy+~

改好 sshd_config 後須要 restart ssh server
`"| `dNF0# /etc/init.d/sshd restart
*M&]%V DV3o'D0本人沒有 uncomment 的句子是在普通運作不需用的, 你可以安自己需要 uncomment, 如果想知多些以上 script. 的內容, 可以參考以下網址
'Jr| Dg3? F'CJ0http://www.faqs.org/docs/linux_network/x-087-2-appl.remote.htmlLinux宝库8sOI9U V
http://endor.clublinux.org/RHCE-32.htmlLinux宝库j0K#b]"? z.lU

Linux宝库e8lkv.wVE%N ^

如果想用 public key authentication 我們首先要製個 public key 出來
On |R_0$ ssh-keygen -b 2048 -t rsaLinux宝库*F2|#c9s:Jd G)k`4nM

Linux宝库\iYT1Hf Er

Generating public/private rsa key pair.
.y4z `3veuj0Enter file in which to save the key (/home/user/.ssh/id_rsa):Linux宝库&I$N'F&h\Sr\4?x2?
Enter passphrase (empty for no passphrase):可以打你記得的句字入去或空白都可以
%nIK:^.?!K'}oE0Enter same passphrase again:Linux宝库}z?fkke1N sp
Your identification has been saved in /home/user/.ssh/id_rsa.Linux宝库;[)~4c/k:s;m
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
/GXZ4cY_N {n_8_ K8?0The key fingerprint is:Linux宝库@_Y;B\$LI
d7:bf:3e:50:4c:b8:52:5e:6c:82:c9:92:95:d6:be:67 user@yourdomain.comLinux宝库q5I"JE;NMi~;g%s

Linux宝库4a1[Q;qn4oG

把 /home/user/.ssh/id_rsa.pub 複製過去同對面 server /home/user/.ssh 及改名為 /home/user/.ssh/authorized_keysLinux宝库e#HYI!Nl7b{/}
# chmod 700 ~/.sshLinux宝库gr I,\\8R\J Jn
# chmod 600 ~/.ssh/authorized_keysLinux宝库zW/B#VP8K8t1A

PK~&D E1q S&}/i0參考網頁Linux宝库uWXbS-D
http://www.linuxlogin.com/linux/admin/openssh.php

(_$w*qt:{5S0

}G [2c'WFh _0U0接駁 ssh server 的方法
WTC(AC"\Yu y0

}#N7q'Kf)O+X%Z0Linux宝库GeB5O3I|)D&H

Windows 接駁去 Linux
gV*q@2w4`9@,b0Remote Control :Putty
m$VT _1B@c?0http://www.chiark.greenend.org.uk/~sgtatham/putty/Linux宝库X O!Z$c$XRj{
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.htmlLinux宝库(zw2L#iI`

Linux宝库D e0d"|x? P5S_d]

putty
q ] B&f!_J0我們可以用 putty 駁入去 Linux 機內和用 command line 控制部機如同坐在部機前一樣。

PP0A0V]T/J&k{-g0Linux宝库2O&M8X`0E/`WE

Sftp :winscpLinux宝库m;u8In R6[w5|
http://winscp.net/eng/index.php

pm'].Z"S+Y6y0

7igdd VI.Z~0winscp1Linux宝库 A-m["B QU;QoN6t
winscp2Linux宝库u bw6KRg N)m@7Y#pl&bZ

p"@[2l3kQU0用 winscp 我們可以把 Windows 機硬碟, 磁碟或 CD 碟內的資料和 map 了的 network drive 內的資料複製去 Linux 機或取存 Linux 機內的資料。Linux宝库G({7HhL@CI

4Vg.]{1i8xwcq0Samba 同 winscp 的分別
,Ea3sJ!F ?1dg%V0winscp 會用在 internet, 因為它有加密, 但 Samba 就會用在用了防火牆保謢的 internal network, 因為 winscp 要 encrypt 和 decrypt, 所以會慢過 Samba, 還有 Samba 也可以把不同 Linux 機內的資料互傳, 但在 winscp 就不能開 windows neighbourhood, 所以見不到那些 Linux 機。Linux宝库q6?q"Sp3\ R9`%xn.`

l:@f#H2ho0Linux 接駁去 LinuxLinux宝库BHI6O [ B I1k+q
我們會用 command line 接駁Linux宝库(Ti Pu"R

~0sU~U K7\0# ssh -D clientport -l loginname -p destinationport destinationIPLinux宝库 C!UHW8@6la'Q
# sftp -oPort=9822 user@host.domain.com

"hHN sw9|;_&f6J.f0

~ \Q,_.D|#~*[0ssh client 安全設定
p%}9rhV0http://www.hackinglinuxexposed.com/articles/20040705.htmlLinux宝库Gf7i%P} mjLgQ

z i(t&Q.@(zX2T~0作者: Lisa Soeng

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-09-06  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 77825
  • 日志数: 76
  • 图片数: 88
  • 文件数: 30
  • 书签数: 20
  • 建立时间: 2006-06-09
  • 更新时间: 2008-06-30

RSS订阅

Open Toolbar