成人在线你懂的-成人在线免费小视频-成人在线免费网站-成人在线免费视频观看-日韩精品国产一区二区-日韩精品国产一区

掃一掃
關注微信公眾號

Linux系統中OpenSSH的安裝和配置(1)
2005-11-25   

概述 
許多網絡程序,如telnet、rsh、rlogin或rexec,用明文(plain text)傳送口令和秘密的信息,所以就可利用任何連接到網絡上的計算機監聽這些程序和服務器之間的通信并獲取口令和秘密信息。現在,telnet程序對于日常的管理工作是必不可少的,但是它又是不安全的,那么用什么來替代它呢?OpenSSH就是那些過時的、不安全的遠程登錄程序,如:telnet、rlogin、rsh、rdist或rcp的替代品。 
在OpenSSH的README文件中提到:ssh(Secure Shell)程序可以通過網絡登錄到遠程主機并執行命令。它提供了很強的安全驗證可以在不安全的網絡中進行安全的通信。 
我們把OpenSSH配置成支持TCP-Wrappers(inetd超級服務器),這樣能夠進一步地提高安全性而且也沒有必要把OpenSSH作為守護進程(daemon)在后臺運行。當客戶端的程序提出連接請求的時候,TCP-Wrappers守護進程就會在把連接重定向到OpenSSH之前,對連接請求進行驗證和授權。OpenSSH是自由軟件而且使用不受專利保護的加密算法。因此,我建議你使用OpenSSH(免費而且修正了一些bug),而不使用SSH1(免費但是有bug)和SSH2(現在使用商用的許可協議)。 
注意事項 
下面所有的命令都是Unix兼容的命令。 
源路徑都為“/var/tmp”(當然在實際情況中也可以用其它路徑)。 
安裝在RedHat Linux 6.1和6.2下測試通過。 
要用“root”用戶進行安裝。 
OpenSSH的版本是1.2.3。 
軟件包的來源 
OpenSSH的主頁:http://violet.ibs.com.au/openssh/。 
下載:openssh-1.2.3.tar.gz。 
準備工作 
編譯OpenSSH需要zlib-devel軟件包,這個軟件包包括頭文件和函數庫。編譯使用zlib的壓縮和解壓函數的程序,就要事先安裝這個軟件包。可以用RedHat 6.1或6.2的光盤安裝。 
l 用下面的命令驗證一下在系統中是否已經安裝了zlib-devel軟件包: 
[root@deep /]# rpm -qi zlib-devel 
l 用下面命令在系統中安裝zlib-devel軟件包: 
[root@deep /]# mount /dev/cdrom /mnt/cdrom/ 
[root@deep /]# cd /mnt/cdrom/RedHat/RPMS/ 
[root@deep RPMS]# rpm -Uvh zlib-devel-version.i386.rpm 
gd ################################################## 
[root@deep RPMS]# rpm -Uvh gd-devel-version.i386.rpm 
zlib-devel ################################################## 
[root@deep RPMS]# cd /; umount /mnt/cdrom/ 
在使用OpenSSH之前,還必須安裝OpenSSL。因為就算你不使用OpenSSL創建或保存加密文件,OpenSSH需要用OpenSSL的庫文件才能正常運行。 
安裝軟件包需要注意的問題 
最好在編譯前和編譯后都做一張系統中所有文件的列表,然后用“diff”命令去比較它們,找出其中的差別并知道到底把軟件安裝在哪里。只要簡單地在編譯之前運行一下命令“find /* >OpenSSH1”,在編譯和安裝完軟件之后運行命令“find /* > OpenSSH2”,最后用命令“diff OpenSSH1 OpenSSH2 > OpenSSH-Installed”找出變化。 
編譯和安裝 
把軟件包(tar.gz)解壓: 
[root@deep /]# cp openssh-version.tar.gz /var/tmp 
[root@deep /]# cd /var/tmp 
[root@deep tmp]# tar xzpf openssh-version.tar.gz 
編譯和優化 
第一步 
轉到OpenSSH的新目錄下,先設置編譯器的編譯參數: 
CC="egcs" \ 
CFLAGS="-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame- 
pointer -fno-exceptions" \ 
./configure \ 
--prefix=/usr \ 
--sysconfdir=/etc/ssh \ 
--with-tcp-wrappers \ 
--with-ipv4-default \ 
--with-ssl-dir=/usr/include/openssl 
這些設置告訴編譯器如何編譯OpenSSH: 
l 鏈接上libwrap函數庫并且加上對TCP Wrappers的支持 
l 禁止Linux/glibc-2.1.2中域名解析的延時,縮短建立連接的時間 
l 設置OpenSSL函數庫的路徑,這樣OpenSSH才能正常運行 
第二步 
現在,編譯和安裝OpenSSH: 
[root@deep openssh-1.2.3]# make 
[root@deep openssh-1.2.3]# make install 
[root@deep openssh-1.2.3]# make host-key 
[root@deep openssh-1.2.3]# install -m644 contrib/redhat/sshd.pam /etc/pam.d/sshd 
“make”命令把源文件編譯成可執行的二進制文件,“make install”把二進制文件和配置文件安裝在合適的目錄下。“make host-key”生成主機密匙,“install”命令在RedHat Linux上安裝對OpenSSH的PAM支持。 
清除不必要的文件 
用下面的命令刪除不必要的文件: 
[root@deep /]# cd /var/tmp 
[root@deep tmp]# rm -rf openssh-version/ openssh-version.tar.gz 
“rm”命令刪除所有編譯和安裝OpenSSH所需要的源程序,并且把OpenSSH軟件的壓縮包刪除掉。 
配置 
可以到這去下載“floppy.tgz”文件:http://www.openna.com/books/floppy.tgz。把“floppy.tgz”文件解開之后,可以在相應的目錄下發現我們在這本書中介紹的所有軟件的配置文件。這樣就沒有必要手工重新生成這些文件,或者用拷貝粘貼的方法把它們粘貼到配置文件中去。不管是打算自己動手生成配置文件還是拷貝現成的,你都要學會自己修改配置文件并且把配置文件拷貝到正確的目錄下。下面將具體說明。 
為了運行OpenSSH,必須創建或者把下面的文件拷貝到相應的目錄下: 
l 把“sshd_config”文件拷貝到“/etc/ssh”目錄下 
l 把“ssh_config”文件拷貝到“/etc/ssh”目錄下 
l 把“ssh”文件拷貝到“/etc/pam.d/”目錄下 
可以把“floppy.tgz”解壓之后,找到上面列出來的文件,并拷貝到合適的目錄下,或者用拷貝粘貼的方法從本書中直接粘貼出。 
配置“/etc/ssh/ssh_config”文件 
“/etc/ssh/ssh_config”文件是OpenSSH系統范圍的配置文件,允許你通過設置不同的選項來改變客戶端程序的運行方式。這個文件的每一行包含“關鍵詞-值”的匹配,其中“關鍵詞”是忽略大小寫的。下面列出來的是最重要的關鍵詞,用man命令查看幫助頁(ssh (1))可以得到詳細的列表。 
編輯“ssh_config”文件(vi /etc/ssh/ssh_config),添加或改變下面的參數: 
# Site-wide defaults for various options 
Host * 
ForwardAgent no 
ForwardX11 no 
RhostsAuthentication no 
RhostsRSAAuthentication no 
RSAAuthentication yes 
PasswordAuthentication yes 
FallBackToRsh no 
UseRsh no 
BatchMode no 
CheckHostIP yes 
StrictHostKeyChecking no 
IdentityFile ~/.ssh/identity 
Port 22 
Cipher blowfish 
EscapeChar ~ 
下面逐行說明上面的選項設置: 
Host * 
選項“Host”只對能夠匹配后面字串的計算機有效。“*”表示所有的計算機。 
ForwardAgent no 
“ForwardAgent”設置連接是否經過驗證代理(如果存在)轉發給遠程計算機。 
ForwardX11 no 
“ForwardX11”設置X11連接是否被自動重定向到安全的通道和顯示集(DISPLAY set)。 
RhostsAuthentication no 
“RhostsAuthentication”設置是否使用基于rhosts的安全驗證。 
RhostsRSAAuthentication no 
“RhostsRSAAuthentication”設置是否使用用RSA算法的基于rhosts的安全驗證。 
RSAAuthentication yes 
“RSAAuthentication”設置是否使用RSA算法進行安全驗證。 
PasswordAuthentication yes 
“PasswordAuthentication”設置是否使用口令驗證。 
FallBackToRsh no 
“FallBackToRsh”設置如果用ssh連接出現錯誤是否自動使用rsh。 
UseRsh no 
“UseRsh”設置是否在這臺計算機上使用“rlogin/rsh”。 
BatchMode no 
“BatchMode”如果設為“yes”,passphrase/password(交互式輸入口令)的提示將被禁止。當不能交互式輸入口令的時候,這個選項對腳本文件和批處理任務十分有用。 
CheckHostIP yes 
“CheckHostIP”設置ssh是否查看連接到服務器的主機的IP地址以防止DNS欺騙。建議設置為“yes”。 
StrictHostKeyChecking no 
“StrictHostKeyChecking”如果設置成“yes”,ssh就不會自動把計算機的密匙加入“$HOME/.ssh/known_hosts”文件,并且一旦計算機的密匙發生了變化,就拒絕連接。 
IdentityFile ~/.ssh/identity 
“IdentityFile”設置從哪個文件讀取用戶的RSA安全驗證標識。 
Port 22 
“Port”設置連接到遠程主機的端口。 
Cipher blowfish 
“Cipher”設置加密用的密碼。 
EscapeChar ~ 
“EscapeChar”設置escape字符。 

共2頁: 1 [2] 下一頁

熱詞搜索:

上一篇:SSH 實戰
下一篇:在兩臺linux服務器之間用RSA鍵對的方法SSH/SCP不需密碼

分享到: 收藏
主站蜘蛛池模板: 妈妈的朋字韩剧| 王者荣耀电视剧| 谭老板 电影| 电影《salawahan》| 散文诗二首批注| 韩国电影《真实》| 又什么又什么四字成语| 浙江卫视跑男官网| 杨功个人资料介绍| 二年级上学期口算题| 萧明| 凶宅幽灵| 喜福会电影| 11085| 欧美gv网站| 6套电影频道节目表| 觉醒年代免费看| 南方车站的聚会| 嘉兴19| 夫人电影| 教育向美而生读书心得体会| 1769视频在线播放免费观看| 好男当家 电视剧| 东方电视台节目表今日节目| 《父亲的爱》阅读理解答案| 李美琪主演的电影| 欧美黑人巨大精品videos| 北京卫视今晚节目表| 好好的电影| 我是传奇 电影| 林采薇| 南北腿王| 胡蕾| 钩织包包教程视频| 性裸体视频| 座头市 电影| 王宝强盲井| 死神来了电影| 电影一对一| 美丽交易| 《军官夫人》电影在线观看|