麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > Ubuntu > 正文

Ubuntu配置ssh server

2024-06-28 13:26:32
字體:
來源:轉載
供稿:網友
Ubuntu配置ssh server

SSH-Server配置指南

一、SSH簡介

SSH (Secure Shell)是一個應用程序中提供安全通信的協議,通過SSH協議可以安全地訪問服務器,因為SSH 具有成熟的公鑰加密體系,在數據進行傳輸時進行加密,保證數據在傳輸時不被惡意篡改、破壞和泄露,能有效防止網絡嗅探和ip欺騙等攻擊。

二、服務器端Ubuntu平臺下OpenSSH server的安裝

SSH是由芬蘭的一家公司開發的,但是因為受版權和加密算法的限制,現在很多人都轉而使用OpenSSH。OpenSSH是SSH的替代軟件,而且是免費的。

下以命令均是以管理員身份登錄使用

1. 在Ubuntu終端使用apt命令

# apt-get install openssh-server

如果下載失敗,可能是由于系統需要更新的緣故,嘗試更新一下,就可以了。使用一下命令:

#apt-get update

2. 配置openssh server,可以按照需求修改配置文件

# vi etc/ssh/ssh_config

3. 重啟服務器

# /etc/init.d/ssh restart

以上OpenSSH server就算安裝完成。

--------------------------------------------------------------------------------

配置“/etc/ssh/ssh_config”文件

“/etc/ssh/ssh_config” 文件是OpenSSH系統范圍的配置文件,允許你通過設置不同的選項來改變客戶端程序的運行方式。這個文件的每一行

包含“關鍵詞-值”的匹配,其中“關鍵詞”是忽略大小寫的。下面列出來的是最重要的關鍵詞,用man命令查看幫助頁(ssh (1))可以得到

詳細的列表。

編輯“ssh_config”文件(vi /etc/ssh/ssh_config),添加或改變下面的參數:

# Site-wide defaults for various optionsHost *ForwardAgent noForwardX11 noRhostsAuthentication noRhostsRSAAuthentication noRSAAuthentication yesPassWordAuthentication yesFallBackToRsh noUseRsh noBatchMode noCheckHostIP yesStrictHostKeyChecking noIdentityFile ~/.ssh/identityPort 22Cipher blowfishEscapeChar ~

下面逐行說明上面的選項設置:

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字符。

——————————————————————————–

配置“/etc/ssh/sshd_config”文件

“/etc/ssh/sshd_config”是OpenSSH的配置文件,允許設置選項改變這個daemon的運行。這個文件的每一行包含“關鍵詞-值”的匹配,其中

“關鍵詞”是忽略大小寫的。下面列出來的是最重要的關鍵詞,用man命令查看幫助頁(sshd (8))可以得到詳細的列表。

編輯“sshd_config”文件(vi /etc/ssh/sshd_config),加入或改變下面的參數:

# This is ssh server systemwide configuration file.Port 22ListenAddress 192.168.1.1HostKey /etc/ssh/ssh_host_keyServerKeyBits 1024LoginGraceTime 600KeyRegenerationInterval 3600PermitRootLogin noIgnoreRhosts yesIgnoreUserKnownHosts yesStrictModes yesX11Forwarding noPRintMotd yesSyslogFacility AUTHLogLevel INFORhostsAuthentication noRhostsRSAAuthentication noRSAAuthentication yesPasswordAuthentication yesPermitEmptyPasswords noAllowUsers admin

下面逐行說明上面的選項設置:

Port 22“Port”設置sshd監聽的端口號。

ListenAddress 192.168.1.1“ListenAddress”設置sshd服務器綁定的IP地址。

HostKey /etc/ssh/ssh_host_key

“HostKey”設置包含計算機私人密匙的文件。

ServerKeyBits 1024“ServerKeyBits”定義服務器密匙的位數。

LoginGraceTime 600“LoginGraceTime”設置如果用戶不能成功登錄,在切斷連接之前服務器需要等待的時間(以秒為單位)。

KeyRegenerationInterval 3600“KeyRegenerationInterval”設置在多少秒之后自動重新生成服務器的密匙(如果使用密匙)。重新生成密匙是為了防止用盜用的密匙解密被

截獲的信息。

PermitRootLogin no“PermitRootLogin”設置root能不能用ssh登錄。這個選項一定不要設成“yes”。

IgnoreRhosts yes“IgnoreRhosts”設置驗證的時候是否使用“rhosts”和“shosts”文件。

IgnoreUserKnownHosts yes“IgnoreUserKnownHosts”設置ssh daemon是否在進行RhostsRSAAuthentication安全驗證的時候忽略用戶的“$HOME/.ssh/known_hosts”

StrictModes yes“StrictModes”設置ssh在接收登錄請求之前是否檢查用戶家目錄和rhosts文件的權限和所有權。這通常是必要的,因為新手經常會把自己的

目錄和文件設成任何人都有寫權限。

X11Forwarding no“X11Forwarding”設置是否允許X11轉發。

PrintMotd yes“PrintMotd”設置sshd是否在用戶登錄的時候顯示“/etc/motd”中的信息。

SyslogFacility AUTH“SyslogFacility”設置在記錄來自sshd的消息的時候,是否給出“facility code”。

LogLevel INFO“LogLevel”設置記錄sshd日志消息的層次。INFO是一個好的選擇。查看sshd的man幫助頁,已獲取更多的信息。

RhostsAuthentication no“RhostsAuthentication”設置只用rhosts或“/etc/hosts.equiv”進行安全驗證是否已經足夠了。

RhostsRSAAuthentication no“RhostsRSA”設置是否允許用rhosts或“/etc/hosts.equiv”加上RSA進行安全驗證。

RSAAuthentication yes“RSAAuthentication”設置是否允許只有RSA安全驗證。

PasswordAuthentication yes“PasswordAuthentication”設置是否允許口令驗證。

PermitEmptyPasswords no“PermitEmptyPasswords”設置是否允許用口令為空的帳號登錄。

AllowUsers admin“AllowUsers”的后面可以跟著任意的數量的用戶名的匹配串(patterns)或user@host這樣的匹配串,這些字符串用空格隔開。主機名可以是

DNS名或IP地址。

使用SFTP代替FTP傳輸文件FTP(文件傳輸協議)是一種使用非常廣泛的在網絡中傳輸文件的方式,但是,它也同樣存在被網絡竊聽的危險,因為它也是以明文傳送用戶認證

信息。其實在SSH軟件包中,已經包含了一個叫作SFTP(Secure FTP)的安全文件傳輸子系統,SFTP本身沒有單獨的守護進程,它必須使用sshd守

護進程(端口號默認是22)來完成相應的連接操作,所以從某種意義上來說,SFTP并不像一個服務器程序,而更像是一個客戶端程序。SFTP同

樣是使用加密傳輸認證信息和傳輸的數據,所以,使用SFTP是非常安全的。但是,由于這種傳輸方式使用了加密/解密技術,所以傳輸效率比普

通的FTP要低得多,如果您對網絡安全性要求更高時,可以使用SFTP代替FTP。若要開啟 SFTP功能可以修改sshd2_config文件的下列內容:# subsystem-sftp sftp-server去掉行首的“#”,然后重新啟動SSH服務器,這樣在進行SSH連接時就可以同時使用SFTP傳輸文件。

關于客戶端設置以上是對服務器的設置,其實在SSH服務器中已經包含了一些客戶端工具(如SSH,SFTP工具)。但是,更多的客戶端用戶使用Windows系統,下

面就對Windows上的客戶端系統設置加以說明。首先從上文給出的網址下載“SSHSecureShellClient-3.2.3.exe”文件并安裝。安裝完成后,在桌面上會產成兩個快捷方式,一個是“SSH

Secure Shell Client”,用于遠程管理,另一個是“SSH Secure File Transfer Client”,用于和服務器進行文件傳輸。在工具欄中點擊

“quick connnect”,輸入正確的主機名和用戶名,然后在彈出的對話框中輸入密碼完成登錄,即可開始執行命令或者傳輸文件。在使用SFTP

時,默認只能顯示用戶的宿主目錄的內容和非隱藏文件。但是,有時候您可能還要查看其它目錄或者隱藏文件,這時只需要在菜單“eidt-

>setting-> file transfer”的選項中選中“show root directory”和“show hidden file”兩個選項即可。

使普通用戶僅使用SFTP而沒有使用Shell的權限默認情況下管理員給系統添加的賬號將同時具有SFTP和SSH的權限。讓普通用戶使用shell執行命令也是有很大的安全隱患的,如果能夠禁止用

戶使用shell執行命令而僅使用SFTP傳輸文件,就能消除這種安全隱患,完全實現FTP的功能,正如上文所述,SFTP沒有單獨的守護進程,只能借助于sshd守護進程,所以我們仍然需要使用SSH服務器,要保證sshd守護進程處于運行狀態。

具體實現方法如下:首先,在編譯安裝時,編譯中一定要有“–enable-static” 選項。安裝成功后,在安裝目錄下的bin目錄中執行下面的命令:[root@localhost bin]# ls -l ssh-dummy-shell* sftp-server2*將看到下列輸出內容:-rwxr-xr-x 1 root root 1350417 Apr 28 16:30 sftp-server2-rwxr-xr-x 1 root root 3566890 Apr 28 16:30 sftp-server2.static-rwxr-xr-x 1 root root 72388 Apr 28 16:30 ssh-dummy-shell-rwxr-xr-x 1 root root 1813412 Apr 28 16:30 ssh-dummy-shell.static其中帶“static”后綴名,且比較大的兩個文件就是加上“–enable-static”選項后生成的,后面我們將用到這里兩個文件。下面以添加普通賬號test為例講述具體操作步驟。1.在“/home”目錄(或者將要存放普通用戶宿主目錄的目錄)下創建“bin”子目錄,并將兩個static文件復制到此目錄下(復制后改名去掉

static后綴),執行如下命令:[root@localhost bin]# cd /usr/local/ssh3.2/bin[root@localhost bin]#cp ssh-dummy-shell.static /home/bin/ssh-dummy-shell[root@localhost bin]# cp sftp-server2.static /home/bin/sftp-server[root@localhost bin]#chown -R root.root /home/bin[root@localhost bin]#chmod -R 755 /home/bin2.添加一個組,使以后所有禁止使用shell的用戶都屬于這個組,這樣便于管理更多的用戶:[root@localhost bin]#groupadd template3.在添加系統賬號時使用如下命令:[root@localhost root]#useradd -s /bin/ssh-dummy-shell -g template test[root@localhost root]#passwd test[root@localhost root]#mkdir /home/test/bin[root@localhost root]#cd /home/test/bin[root@localhost bin]#ln /home/bin/ssh-dummy-shell ssh-dummy-shell[root@localhost bin]#ln /home/bin/sftp-server sftp-server[root@localhost bin]#chown -R root.root /home/test/bin[root@localhost bin]#chmod -R 755 /home/test/bin3.用戶添加成功后,還需要修改/etc/ssh2/sshd2_config文件,將下列內容:#ChRootGroups sftp,guest改為:ChRootGroups sftp,guest,template修改上面這行內容,主要是為了禁止普通用戶查看系統的其它目錄,把其權限限制在自己的主目錄下。重新啟動SSH服務器程序,在客戶端使用

SSH Secure File Transfer Client登錄,即使選擇顯示根目錄,普通用戶也看不到其它的任何目錄,而是把自己的主目錄當作根目錄。注意,

這里使用的是按用戶所屬組限制,這樣可以使包含在template組內的所有用戶都可以實現此功能。若您只要限制個別用戶的話,可以修改下面

的內容:#ChRootUsers anonymous,ftp,guest

事實證明SSH是一種非常好的網絡安全解決方案,但是,目前仍有很多管理員使用Telnet或FTP這種非常不安全的工具,希望盡快轉移到SSH上來

,以減少網絡安全隱患。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄色成人小视频 | 伊人99在线 | 国产精品剧情一区二区在线观看 | 欧美性生视频 | 青青国产在线视频 | 国产精品99精品 | 国产手机av在线 | 欧美激情图区 | 亚洲欧美国产精品va在线观看 | 农村寡妇偷毛片一级 | 91精品国产成人 | 国产成人高清成人av片在线看 | 成人三级电影网站 | 亚洲最新黄色网址 | 亚洲精品欧美在线 | 国产一区日韩一区 | 亚洲va久久久噜噜噜久牛牛影视 | 午夜视频在线观看免费视频 | 中国洗澡偷拍在线播放 | 日韩精品dvd | 国产porn在线| 精品国产一区二区三区久久久 | 中国免费一级毛片 | 国产羞羞视频在线观看免费应用 | 亚洲第一视频在线 | 国产精品久久久久久影院8一贰佰 | 福利在线小视频 | 中文字幕一区在线观看视频 | 久久国产综合视频 | 国产亚洲黑人性受xxxx精品 | 成年人小视频在线观看 | 免费激情网站 | 狠狠操精品视频 | 失禁高潮抽搐喷水h | 欧洲精品久久 | 一级毛片免费一级 | 精品一区二区三区日本 | 欧美一级特黄特色大片免费 | 欧美日韩精品一区二区三区蜜桃 | 中文字幕在线观看1 | www嫩草|