OpenSSH是Linux上重要的遠端系統管理工具,以安全著稱。 相信大多數使用者已經熟知OpenSSH的使用,如使用SSH進行遠端連線,使用SCP、SFTP複製檔等。 但是OpenSSH的威力遠不止此,下面我們將為您予以展示。
1.X11轉發
使用-X選項,可以在本地顯示遠端Linux上的GUI程式。 登錄到遠端系統,並啟用X11轉發可以使用以下命令:
ssh -X user@host
當然,目標系統設定檔/etc/ssh/sshd_config的X11Forwarding參數應被設置為「Yes」,OpenSSH守護進程也應運行。
2.穿越防火牆
在公共網路中,要提防類似于Firesheep的惡意攻擊。 一個非常好的安全方法就是使用SSL/HTTPS加密,而不使用明文發送資訊。
我們還有另一種選擇。 如果我們想避開配置為不允許使用HTTP/SMTP協定的防火牆,並建立SSH安全通道,可以使用以下命令:
ssh -ND 9999 user@hostname
埠可以任意調整,以避免與其他服務衝突。
3.執行遠端命令
不必登陸,也可以在遠端系統上執行命令。 例如,可以用以下命令檢查磁碟空間:
$ssh host df
我們甚至可以使用管道,例如:
$ dd if=/dev/dsp | ssh -C user@host dd of=/dev/dsp
4.埠轉發
現在我們來討論一下埠轉發的話題。 OpenSSH埠轉發分為本地埠轉發和遠端埠轉發,它們的區別在於埠映射的方向。 我們利用埠轉發,可以輕而易舉的繞過防火牆。 例如,假定你所在的工作網路不允許訪問reddit.com。 請運行:
# ssh yourserver -L 80:reddit.com:80
這樣我們就可以通過「yourserver」間接訪問reddit.com。 如果使用-g參數,就可以允許工作區內的其他電腦通過你的電腦訪問reddit.com:
# ssh yourserver -L 80:reddit.com:80 -g
5.SSH檔案系統
通過FUSE專案和sshfs專案,我們可以講遠端SSH掛載到本地。 在Mac平臺可以使用Fuse4x。
可以使用如下命令簡化SSHFS的安裝:
$ sudo port install sshfs
我們可以使用如下命令掛載:
$ sshfs remote-host: local-mount-directory
OpenSSH還有許多強大的功能有待于我們挖掘,歡迎大家提出自己的見解。 (張志平/編譯)
(責任編輯:蒙遺善)