av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

【Debian參考手冊】第?6?章?網(wǎng)絡應用

目錄

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:主機域名、雅安服務器托管、營銷軟件、網(wǎng)站建設、弋陽網(wǎng)站維護、網(wǎng)站推廣。

6.1. 網(wǎng)頁瀏覽器
6.1.1. 偽裝用戶代理字符串
6.1.2. 瀏覽器擴展
6.2. 郵件系統(tǒng)
6.2.1. 電子郵件基礎
6.2.2. 現(xiàn)代郵件服務限制
6.2.3. 歷史郵件服務端期望
6.2.4. 郵件傳輸代理 (MTA)
6.2.4.1. exim4 的配置
6.2.4.2. 帶有 SASL 的 postfix 配置
6.2.4.3. 郵件地址配置
6.2.4.4. 基礎 MTA 操作
6.3. 服務器遠程訪問和工具 (SSH)
6.3.1. SSH 基礎
6.3.2. 遠程主機上的用戶名
6.3.3. 免密碼遠程連接
6.3.4. 處理其它 SSH 客戶端
6.3.5. 建立 ssh 代理
6.3.6. 從遠程主機發(fā)送郵件
6.3.7. SMTP/POP3 隧道的端口轉發(fā)
6.3.8. 怎樣通過 SSH 關閉遠程系統(tǒng)
6.3.9. SSH 故障排查
6.4. 打印服務和工具
6.5. 其它網(wǎng)絡應用服務
6.6. 其它網(wǎng)絡應用客戶端
6.7. 系統(tǒng)后臺守護進程(daemon)診斷

建立網(wǎng)絡連接后(參加 第 5 章 網(wǎng)絡設置),你可以運行各種網(wǎng)絡應用。

提示

對于現(xiàn)代的 Debian 網(wǎng)絡基礎設施的具體說明,閱讀 Debian 管理員手冊 —— 網(wǎng)絡基礎設施。

提示

在某些 ISP 下,如果你啟用“兩步驗證”,你可能需要獲取一個應用密碼以從你的程序訪問 POP 和 SMTP 服務。你也可能需要事先允許你的主機 IP 進行訪問。

6.1. 網(wǎng)頁瀏覽器

有許多網(wǎng)頁瀏覽器軟件包,使用超文本傳輸協(xié)議(HTTP)訪問遠程內(nèi)容。

表 6.1. 網(wǎng)頁瀏覽器列表

軟件包 流行度 大小 類型 網(wǎng)絡瀏覽器說明
chromium V:44, I:126 190445 X Chromium,(來自 Google 的開源瀏覽器)
firefox V:12, I:18 213304 同上 Firefox,(來自 Mozilla 的開源瀏覽器,僅在 Debian Unstable 中可用)
firefox-esr V:213, I:434 209831 同上 Firefox ESR(Firefox 延長支持版本)
epiphany-browser V:4, I:21 5571 同上 GNOME,兼容 HIG,Epiphany
konqueror V:20, I:95 21465 同上 KDE,Konqueror
dillo V:1, I:6 1536 同上 Dillo,(基于 FLTK 的輕量級瀏覽器)
w3m V:25, I:221 2367 文本 w3m
lynx V:16, I:113 1949 同上 Lynx
elinks V:5, I:25 1763 同上 ELinks
links V:5, I:35 2286 同上 Links(純文本)
links2 V:1, I:13 5459 圖像 Links(沒有 X 的控制臺圖像)

6.1.1. 偽裝用戶代理字符串

為了訪問一些過度限制的網(wǎng)站,你可能需要偽裝網(wǎng)頁瀏覽器程序返回的 User-Agent 字符串。參見:

  • MDN Web Docs: userAgent
  • Chrome Developers: Override the user agent string
  • How to change your user agent
  • How to Change User-Agent in Chrome, Firefox, Safari, and more
  • How to Change Your Browser’s User Agent Without Installing Any Extensions
  • How to change the User Agent in Gnome Web (epiphany)
小心

偽裝的用戶代理字符串可以會導致 來自 Java 的不良副作用。

6.1.2. 瀏覽器擴展

所有現(xiàn)代的 GUI(圖形用戶界面)瀏覽器支持基于 browser extension 的源代碼,它在按 web extensions 變成標準化。

6.2. 郵件系統(tǒng)

本章節(jié)關注于消費者級互聯(lián)網(wǎng)連接的典型的移動工作站。

小心

如果你想設置郵件服務器來直接通過互聯(lián)網(wǎng)交換郵件,你應該最好閱讀一下這個基本文檔。

6.2.1. 電子郵件基礎

電子郵件 由三個部分組成,消息的信封,郵件頭及郵件正文。

  • SMTP 用電子郵件信封上的 "To" 和 "From" 信息來投遞郵件。(信封上的 "From" 信息也被叫做退回地址, 例如 From_ 等等)。

  • 電子郵件頭的"To" 和 "From" 信息,顯示在 電子郵件客戶端上. (在大部分情況下,這些信息是跟電子郵件信封一致,但并不全是這樣。)

  • 覆蓋郵件頭和正文數(shù)據(jù)的電子郵件消息格式被 多用途互聯(lián)網(wǎng)郵件擴展 (MIME) 擴展,從純文本的 ASCII 到其它字符編碼,包括作為附件的音頻、視頻、圖像和應用程序。

功能全面的基于 電子郵件客戶端的 GUI 程序使用基于 GUI 的直觀的配置,提供下列所有功能。

  • 為了處理正文數(shù)據(jù)類型及其編碼,它創(chuàng)建和使用多用途互聯(lián)網(wǎng)郵件擴展 (MIME)來解釋郵件標頭和郵件正文。

  • 它使用舊的 基礎訪問認證 或現(xiàn)代的 OAuth 2.0向 ISP(互聯(lián)網(wǎng)服務提供商)的 SMTP 和 IMAP 服務器認證它自己。 (對于 OAuth 2.0,通過桌面環(huán)境設置來設置它,例如,"Settings" -> "Online Accounts".)

  • 它發(fā)送消息到 ISP 的智能主機的 SMTP 服務監(jiān)聽的消息遞交端口(587)。

  • 從 TLS/IMAP4 端口(993)接收存儲在 ISP 的服務器上的消息。

  • 它能夠通過他們的屬性過濾郵件。

  • 它能夠提供額外的功能:聯(lián)系人、日歷、任務、備忘錄。

表 6.2. 郵件用戶代理列表 (MUA)

軟件包 流行度 大小 類型
evolution V:31, I:236 493 X GUI 程序 (GNOME3, groupware 套件)
thunderbird V:50, I:130 202238 X GUI 程序 (GTK, Mozilla Thunderbird)
kmail V:33, I:86 21237 X GUI 程序 (KDE)
mutt V:34, I:239 7022 很有可能與 vim 一起使用的字符終端程序
mew V:0, I:0 2334 (x)emacs 下的字符終端程序

6.2.2. 現(xiàn)代郵件服務限制

現(xiàn)代郵件服務器有一些限制來最小化暴露濫用(不希望和未被要求的電子郵件)問題。

  • 在消費者級的網(wǎng)絡上運行 SMTP 服務器來直接可靠的發(fā)送郵件到遠端主機是不現(xiàn)實的。

  • 一個郵件能夠被任何主機靜悄悄的拒絕,即使路由到了目的地,除非它盡可能看起來是經(jīng)過認證的。

  • 期望單個智能主機可靠的發(fā)送不相關的源郵件地址到遠程主機,這是不現(xiàn)實的。

這是因為:

  • 從消費者級網(wǎng)絡提供的主機連接到互聯(lián)網(wǎng)的 SMTP 端口(25)已經(jīng)被封鎖了。

  • 從互聯(lián)網(wǎng)的 SMTP 端口(25)連接到消費者級網(wǎng)絡提供的主機已經(jīng)被封鎖了。

  • 從消費者級網(wǎng)絡提供的主機發(fā)出到互聯(lián)網(wǎng)的消息,只能夠通過消息遞交端口(587)發(fā)送。

  • 像域名密鑰識別郵件 (DKIM)、發(fā)信者策略框架 (SPF) 和 基于域名的消息認證、報告和反應(DMARC) 這樣的反垃圾郵件技術廣泛用于電子郵件過濾。

  • 域名密鑰識別郵件服務可能會用于你的通過 smarthost 的電子郵件發(fā)送。

  • 智能主機可以在郵件頭重寫源電子郵件地址為你的郵件賬戶,來阻止電子郵件欺詐。

6.2.3. 歷史郵件服務端期望

一些在 Debian 上的程序,它們默認期望訪問 /usr/sbin/sendmail 命令來發(fā)送郵件,或者從一個個性化設置的 UNIX 系統(tǒng)郵件服務器來發(fā)送郵件,實現(xiàn)歷史的功能:

  • 郵件是由純文本文件創(chuàng)建。

  • 郵件是由 /usr/sbin/sendmail 命令處理。

  • 對于目的地址為同一主機,/usr/sbin/sendmail 命令進行郵件的本地分發(fā),將郵件附在 /var/mail/$username 文件后。

    • 期望這個特征的命令: apt-listchanges, cron, at, ...

  • 對于目的地址在遠程主機,/usr/sbin/sendmail 命令遠程傳輸郵件到目的主機,使用 SMTP 發(fā)現(xiàn) DNS MX 記錄。

    • 期望這個特征的命令:popcon, reportbug, bts, ...

6.2.4. 郵件傳輸代理 (MTA)

在理論上,在沒有 mail transfer agent (MTA) 程序提供 /usr/sbin/sendmail 命令的情況下,移動工作站可以正常工作。

Debian 系統(tǒng)通常安裝 MTA 來和 第 6.2.2 節(jié) “現(xiàn)代郵件服務限制” 與 第 6.2.3 節(jié) “歷史郵件服務端期望” 協(xié)作,即使移動工作站已經(jīng)安裝了基于 電子郵件客戶端 的功能全面的 GUI 程序。

對于移動工作站,典型的 MTA 選擇是 exim4-daemon-lightpostfix,并選擇類似這樣的安裝選項:“Mail sent by smarthost; received via SMTP or fetchmail”。這些是輕量 MTA 和 "/etc/aliases" 匹配。

提示

配置 exim4 來發(fā)送互聯(lián)網(wǎng)郵件,多個源電子郵件地址使用多個相應的智能主機,這是不尋常的。如果一些程序需要這樣的能力,使用 msmtp 來設置他們,它比較容易來設置多個源電子郵件地址。然后給主 MTA 僅僅保留單個電子郵件地址。

表 6.3. 基礎的郵件傳輸代理相關的軟件包列表

軟件包 流行度 大小 說明
exim4-daemon-light V:291, I:310 1563 Exim4 郵件傳輸代理 (MTA : Debian 默認的)
exim4-daemon-heavy V:7, I:8 1722 Exim4 郵件傳輸代理 (MTA : 靈活的替代品)
exim4-base V:299, I:318 1738 Exim4 文檔 (文本) 和通用文件
exim4-doc-html I:1 3667 Exim4 文檔 (html)
exim4-doc-info I:1 625 Exim4 文檔 (info)
postfix V:141, I:153 4010 Postfix 郵件傳輸代理 (MTA : 安全的替代品)
postfix-doc I:8 4580 Postfix 文檔 (html+text)
sasl2-bin V:5, I:17 457 Cyrus SASL API 實現(xiàn) (實現(xiàn) postfix SMTP 認證)
cyrus-sasl2-doc I:1 2216 Cyrus SASL - 文檔
msmtp V:6, I:12 586 輕量 MTA
msmtp-mta V:4, I:6 92 輕量 MTA (sendmail 兼容擴展到msmtp)
esmtp V:0, I:0 128 輕量 MTA
esmtp-run V:0, I:0 32 輕量 MTA(sendmail 兼容擴展到esmtp)
nullmailer V:8, I:10 479 部分功能 MTA,沒有本地郵件
ssmtp V:6, I:9 2 部分功能 MTA,沒有本地郵件
sendmail-bin V:14, I:15 1878 全功能 MTA(如果你已經(jīng)對它熟悉)
courier-mta V:0, I:0 2513 全功能 MTA(web 接口等.)

6.2.4.1. exim4 的配置

對于那些通過 smarthost 的網(wǎng)絡郵件,你應該按如下所示的 (重新) 配置 exim4-* 軟件包。

$ sudo systemctl stop exim4
$ sudo dpkg-reconfigure exim4-config

配置 "General type of mail configuration" 時,選擇 "mail sent by smarthost; received via SMTP or fetchmail"。

設置 "System mail name:" 為默認的 FQDN (參見第 5.1.1 節(jié) “主機名解析”)。

設置 "IP-addresses to listen on for incoming SMTP connections:" 為默認的 "127.0.0.1; ::1"。

"Other destinations for which mail is accepted:" 選項留空。

"Machines to relay mail for:" 選項留空。

設置 "IP address or host name of the outgoing smarthost:" 為 "smtp.hostname.dom:587"。

設置 "Hide local mail name in outgoing mail?" 選項為 "NO"。(或者像第 6.2.4.3 節(jié) “郵件地址配置”描述的那樣使用 /etc/email-addresses" 代替)

選擇如下所示的其中一個來回答 "Keep number of DNS-queries minimal (Dial-on-Demand)?"。

  • "No" 如果啟動的時候,系統(tǒng)就連上了互聯(lián)網(wǎng)。

  • "Yes" 如果啟動的時候,系統(tǒng)沒有連上互聯(lián)網(wǎng)。

設置 "Delivery method for local mail:" 選項為 "mbox format in /var/mail/"。

"Split configuration into small files?:" 選項設為 "Yes"。

通過修改 "/etc/exim4/passwd.client" 文件,來創(chuàng)建用于 smarthost 的密碼條目。

$ sudo vim /etc/exim4/passwd.client
 ...
$ cat /etc/exim4/passwd.client
^smtp.*\.hostname\.dom:[email protected]:password

配置 exim4(8),在 "/etc/default/exim4" 文件中寫入 "QUEUERUNNER='queueonly'","QUEUERUNNER='nodaemon'" 等等,來最小化系統(tǒng)資源使用。(可選的)

通過如下所示的啟動 exim4。

$ sudo systemctl start exim4

"/etc/exim4/passwd.client" 文件中的主機名不應該是別名,你應該按如下所示的檢查真正的主機名。

$ host smtp.hostname.dom
smtp.hostname.dom is an alias for smtp99.hostname.dom.
smtp99.hostname.dom has address 123.234.123.89

我在 "/etc/exim4/passwd.client" 文件中使用正則表達式來繞過別名問題。即使 ISP 更改了別名所指向的主機名,SMTP AUTH 還是可能工作的。

你能夠通過如下所示的手動更新 exim4 配置:

  • 更新 "/etc/exim4/" 目錄下的 exim4 配置文件。

    • 創(chuàng)建 "/etc/exim4/exim4.conf.localmacros" 來設置宏命令和修改 "/etc/exim4/exim4.conf.template" 文件。(沒有分割的配置)

    • 在 ”/etc/exim4/exim4.conf.d" 子目錄中創(chuàng)建新文件或編輯已存在的文件。(分割的配置)

  • 運行 "systemctl reload exim4".

小心

如果 debconf 詢問 "Keep number of DNS-queries minimal (Dial-on-Demand)?" 這個問題時,選擇 了 "No" (默認值),那么啟動 exim4 會花很長時間并且系統(tǒng)在啟動的時候不會連接到互聯(lián)網(wǎng)。

請閱讀 "/usr/share/doc/exim4-base/README.Debian.gz" 官方指導和 update-exim4.conf(8)。

警告

從所有的實踐考慮,使用帶 STARTTLS 的 SMTP 端口 587,或者 SMTPS SSL (SMTPS) 端口 465, 代替純 SMTP 端口 25。

6.2.4.2. 帶有 SASL 的 postfix 配置

對于通過 smarthost 的網(wǎng)絡郵件,你應該首先閱讀 postfix 文檔和關鍵的手冊頁。

表 6.4. 重要的 postfix 手冊頁列表

命令 功能
postfix(1) Postfix 控制程序
postconf(1) Postfix 配置工具
postconf(5) Postfix 配置參數(shù)
postmap(1) Postfix 查找表維護
postalias(1) Postfix 別名數(shù)據(jù)庫維護

你應該按如下所示的 (重新) 配置 postfixsasl2-bin 軟件包。

$ sudo systemctl stop postfix
$ sudo dpkg-reconfigure postfix

選擇 "Internet with smarthost"。

設置 "SMTP relay host (blank for none):" 為 "[smtp.hostname.dom]:587" 并按如下所示配置。

$ sudo postconf -e 'smtp_sender_dependent_authentication = yes'
$ sudo postconf -e 'smtp_sasl_auth_enable = yes'
$ sudo postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
$ sudo postconf -e 'smtp_sasl_type = cyrus'
$ sudo vim /etc/postfix/sasl_passwd

為 smarthost 創(chuàng)建密碼條目。

$ cat /etc/postfix/sasl_passwd
[smtp.hostname.dom]:587     username:password
$ sudo postmap hush:/etc/postfix/sasl_passwd

通過如下所示的啟動 postfix

$ sudo systemctl start postfix

dpkg-reconfigure 會話中使用的 "[" 和 "]" 和 "/etc/postfix/sasl_passwd" 確保不去檢查 MX 記錄而是直接使用指定的明確主機名。參見 "/usr/share/doc/postfix/html/SASL_README.html" 里面的 "Enabling SASL authentication in the Postfix SMTP client" 條目。

6.2.4.3. 郵件地址配置

這里有一些用于郵件傳輸、投遞和用戶代理的郵件地址配置文件。

表 6.5. 與郵件地址相關的配置文件列表

文件 功能 應用
/etc/mailname 用于 (外發(fā)) 郵件的默認主機名 Debian 專用的,mailname(5)
/etc/email-addresses 用于外發(fā)郵件的主機名偽裝 exim(8) 專用的,exim4-config_files(5)
/etc/postfix/generic 用于外發(fā)郵件的主機名偽裝 postfix(1) 專用的,postmap(1) 命令執(zhí)行后激活。
/etc/aliases 用于接收郵件的賬戶別名 通用的,newaliases(1) 命令執(zhí)行后激活。

"/etc/mailname" 文件中的 mailname 通常是全稱域名 (FQDN),這個全程域名將會被解析成主機的 IP 地址。對于沒有可解析成 IP 地址的主機名的移動工作站,設置 mailname 為 "hostname -f" 的值。(這對于 exim4-*postfix 都是安全有效的選擇。)

提示

"/etc/mailname" 中的內(nèi)容被許多非 MTA 程序用作它們的默認行為。對于 mutt, 在~/muttrc 文件中設置 "hostname" 和 "from" 變量來覆蓋 mailname 值。對于 devscripts 軟件包的程序,例如 bts(1) 和 dch(1),導出環(huán)境變量 "$DEBFULLNAME" 和 "$DEBEMAIL" 的值來覆蓋它。

提示

popularity-contest 軟件包一般以 FQDN 形式的 root 賬戶發(fā)送郵件。你需要像 /usr/share/popularity-contest/default.conf 文件中描述的那樣去設置 /etc/popularity-contest.conf 文件中的 MAILFROM 值。否則,你的郵件會被 smarthost SMTP 服務器拒絕。盡管這些過程很乏味,這種方法比為所有通過 MTA 并且是以 root 用戶發(fā)送的郵件重寫源地址更安全。這也可以被其他守護進程或者是 cron 腳本使用。

當設置 mailname 為 "hostname -f" 的值時,通過 MTA 的源郵件地址的偽裝可以通過如下所示的來實現(xiàn)。

  • 用于 exim4(8) 的 "/etc/email-addresses" 文件,exim4-config_files(5) 手冊頁中有關于它的解釋

  • 用于 postfix(1) 的 "/etc/postfix/generic" 文件,generic(5) 手冊頁中有關于它的解釋

對于 postfix,接下來的額外步驟需要執(zhí)行。

# postmap hash:/etc/postfix/generic
# postconf -e 'smtp_generic_maps = hash:/etc/postfix/generic'
# postfix reload

你能夠通過如下所示的來測試郵件地址配置。

  • exim(8) 用 -brw, -bf, -bF, -bV, ... 選項

  • postmap(1) 用 -q 選項。

提示

Exim 帶有一些有用的程序,例如 exiqgrep(8) 和 exipick(8)。參見 "dpkg -L exim4-base|grep man8/" 來獲得可用的命令。

6.2.4.4. 基礎 MTA 操作

這里有一些基礎的 MTA 操作。有一些可能會通過 sendmail(1) 的兼容性接口來實現(xiàn)。

表 6.6. 基礎 MTA 操作列表

exim 命令 postfix 命令 說明
sendmail sendmail 從標準輸入讀取郵件并且安排投遞 (-bm)
mailq mailq 列出帶有狀態(tài)和隊列 ID 的郵件隊列 (-bq)
newaliases newaliases 初始化別名數(shù)據(jù)庫 (-I)
exim4 -q postqueue -f 刷新等待郵件 (-q)
exim4 -qf postsuper -r ALL deferred; postqueue -f 刷新所有郵件
exim4 -qff postsuper -r ALL; postqueue -f 刷新甚至已經(jīng)凍結的郵件
exim4 -Mg queue_id postsuper -h queue_id 通過郵件的隊列 ID 來凍結它
exim4 -Mrm queue_id postsuper -d queue_id 通過郵件的隊列 ID 來移除它
N/A postsuper -d ALL 移除所有郵件

提示

往 "/etc/ppp/ip-up.d/*" 里寫一個刷新所有郵件的腳本會是個不錯的主意。

6.3. 服務器遠程訪問和工具 (SSH)

Secure SHell (SSH) 是因特網(wǎng)上的 安全 連接方式。在 Debian 里面,有一個叫 OpenSSH 的免費 SSH 版本,在 openssh-clientopenssh-server 包里。

對于用戶來講, ssh(1) 功能比telnet(1) 更加智能和安全. 不像 telnet命令, ssh 命令不會在遇到 telnet 的退出字符(初始默認是 CTRL-])時停止.

表 6.7. 服務器遠程訪問和工具列表

軟件包 流行度 大小 工具 說明
openssh-client V:828, I:997 5650 ssh(1) SSH 客戶端
openssh-server V:709, I:832 1806 sshd(8) SSH 服務端
ssh-askpass V:2, I:31 107 ssh-askpass(1) 請求用戶輸入 ssh-add 密碼 (簡單的 X)
ssh-askpass-gnome V:0, I:5 301 ssh-askpass-gnome(1) 請求用戶輸入 ssh-add 密碼 (GNOME)
ssh-askpass-fullscreen V:0, I:0 50 ssh-askpass-fullscreen(1) 請求用戶輸入 ssh-add 密碼 (GNOME),有更好看的界面
shellinabox V:0, I:1 507 shellinaboxd(1) 瀏覽器訪問 VT100 終端模擬器 網(wǎng)頁服務器

雖然 shellinabox 不是一個 SSH 程序,它列在這里作為遠程終端訪問的一個有趣的替代。

連接到遠程 X 客戶端程序,參見:第 7.8 節(jié) “X 服務端連接”。

小心

如果你的 SSH 是從因特網(wǎng)來訪問,參見 第 4.6.3 節(jié) “互聯(lián)網(wǎng)額外的安全方式”。

提示

請使用 screen(1) 程序來讓遠程 shell 在中斷的連接上存活(參見 第 9.1.2 節(jié) “screen 程序”).

6.3.1. SSH 基礎

OpenSSH SSH 后臺守護進程(daemon)只支持 SSH 2協(xié)議。

請閱讀 "/usr/share/doc/openssh-client/README.Debian.gz"、 ssh(1)、 sshd(8)、 ssh-agent(1)、 ssh-keygen(1)、 ssh-add(1) 和 ssh-agent(1).

警告

如果想要運行 OpenSSH 服務,"/etc/ssh/sshd_not_to_be_run"必須不存在。

不要打開基于 rhost 的認證( /etc/ssh/sshd_config 中的 HostbasedAuthentication )。

表 6.8. SSH 配置文件列表

配置文件 配置文件描述
/etc/ssh/ssh_config SSH 客戶端默認, 參見 ssh_config(5)
/etc/ssh/sshd_config SSH 服務端默認, 參見 sshd_config(5)
~/.ssh/authorized_keys 該賬戶連接到這個服務器上的客戶端使用的默認 SSH 公鑰
~/.ssh/id_rsa 用戶的 SSH-2 RSA 私鑰
~/.ssh/id_key-type-name 用戶的 SSH-2 密鑰, key-type-nameecdsaed25519

從客戶端啟動一個 ssh(1) 連接.

表 6.9. SSH 客戶端啟動例子列表

命令 說明
ssh [email protected] 使用默認模式連接
ssh -v [email protected] 有詳細信息的默認連接模式
ssh -o PreferredAuthentications=password [email protected] SSH 2 版本,強制使用密碼
ssh -t [email protected] passwd 在遠程主機上運行 passwd 命令來更新密碼

6.3.2. 遠程主機上的用戶名

如果你在本地和遠程主機上使用相同的用戶名,你能夠省略輸入"username@"。

即使在本地和遠程主機使用不同的用戶名,你可以使用 "~/.ssh/config" 來省略輸入用戶名.對于 Debian Salsa 服務器,使用賬戶名 "foo-guest",你可以設置 "~/.ssh/config" 包含下面的內(nèi)容。

Host salsa.debian.org people.debian.org
User foo-guest

6.3.3. 免密碼遠程連接

使用"PubkeyAuthentication" (SSH-2 協(xié)議),人們可以避免記住遠程系統(tǒng)的密碼.

在遠程系統(tǒng)的"/etc/ssh/sshd_config"里,設置相應的條目, "PubkeyAuthentication yes"。

在本地生成授權秘鑰對,并安裝公鑰到遠程系統(tǒng)。

$ ssh-keygen -t rsa
$ cat .ssh/id_rsa.pub | ssh user1@remote "cat - >>.ssh/authorized_keys"

你可以在 "~/.ssh/authorized_keys" 里給條目增加選項來限制主機和運行特定的命令。參見 sshd(8)"AUTHORIZED_KEYS FILE FORMAT" 。

6.3.4. 處理其它 SSH 客戶端

其它平臺上有一些免費的 SSH 客戶端。

表 6.10. 其它平臺上免費 SSH 客戶端列表

環(huán)境 免費 SSH 程序
Windows puTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/) (GPL)
Windows (cygwin) cygwin 里的 SSH (http://www.cygwin.com/) (GPL)
Macintosh 類 macSSH (http://www.macssh.com/) (GPL)
Mac OS X OpenSSH;在終端應用中使用 ssh (GPL)

6.3.5. 建立 ssh 代理

用密碼來保護你的 SSH 認證私鑰是安全的。如果密碼沒有設置,使用 "ssh-keygen -p" 來設置。

把你的公鑰 (比如:"~/.ssh/id_rsa.pub") 放到遠程主機的"~/.ssh/authorized_keys",這個遠程主機使用上面描述的基于密碼的連接方式。

$ ssh-agent bash
$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /home/username/.ssh/id_rsa:
Identity added: /home/username/.ssh/id_rsa (/home/username/.ssh/id_rsa)

從這里執(zhí)行接下來的命令,就不再需要密碼。

$ scp foo username@remote.host:foo

按 ^D 來終結 ssh 代理會話。

對于 X 服務端,通常的 Debian 啟動腳本會作為父進程執(zhí)行 ssh-agent。所以你只需要執(zhí)行一次 ssh-add。進一步的信息,請閱讀 ssh-agent(1) 和 ssh-add(1).

6.3.6. 從遠程主機發(fā)送郵件

如果你在一個正確設置 了DNS 的服務器上有一個 SSH shell 賬號,你能夠將在你本地工作站上生成的郵件,作為遠程服務器上的郵件,真正的從遠程服務器上發(fā)送。

$ ssh [email protected] /usr/sbin/sendmail -bm -ti -f "[email protected]" < mail_data.txt

6.3.7. SMTP/POP3 隧道的端口轉發(fā)

通過 ssh 建立一個這樣的管道連接,從 localhost 的 4025 端口到 remote-server 的 25 端口,并從 localhost 的 4110 端口到 remote-server 的 110 端口,請在本機執(zhí)行如下命令.

# ssh -q -L 4025:remote-server:25 4110:remote-server:110 username@remote-server

這是跨越因特網(wǎng)建立 SMTP/POP3 服務連接的安全方法。在遠程主機"/etc/ssh/sshd_config"里設置"AllowTcpForwarding"條目為 "yes".

6.3.8. 怎樣通過 SSH 關閉遠程系統(tǒng)

你可以使用 at(1) 命令 (參見 第 9.4.13 節(jié) “單次任務時間安排”)來從 SSH 終端里保護"shutdown -h now" (參見 第 1.1.8 節(jié) “怎樣關閉系統(tǒng)”)操作過程。

# echo "shutdown -h now" | at now

screen(1) (參見 第 9.1.2 節(jié) “screen 程序”) 會話里運行 "shutdown -h now",是另外一個方法來做這同樣的事情。

6.3.9. SSH 故障排查

如果你遇到問題,檢查配置文件的權限并用 "-v" 選項運行 ssh。

如果你是 root 賬戶,并有使用防火墻,使用 "-p" 選項; 這可以避免使用1 — 1023 之間的服務端口.

如果 ssh 連接到遠程站點突然停止工作,這也許是系統(tǒng)管理員胡亂操作的結果,可能是在系統(tǒng)維護時改變了 "host_key". 在確認這個情況后,并且沒有人試圖用聰明的黑客技術來篡改遠程主機,你可以在本機 "~/.ssh/known_hosts" 里刪除 "host_key" 條目來重新獲得連接。

6.4. 打印服務和工具

在老的類 Unix 系統(tǒng)中,BSD Line printer daemon(lpd) 行打印機后臺守護 曾經(jīng)是標準。傳統(tǒng)的自由軟件的標準打印輸出格式是 PostScript (PS)。為了能夠打印到非 PostScript 打印機,需要將一些過濾器系統(tǒng)和 Ghostscript 一道使用。參見 第 11.4.1 節(jié) “Ghostscript”。

在現(xiàn)代的 Debian 系統(tǒng)中,Common UNIX Printing System 通用 UNIX 打印系統(tǒng)是事實上的標準?,F(xiàn)代自由軟件的標準打印輸出格式是 Portable Document Format (PDF)可移植文件格式。

CUPS 使用 Internet Printing Protocol 互聯(lián)網(wǎng)打印協(xié)議 (IPP). IPP 現(xiàn)在已經(jīng)被其它操作系統(tǒng),如 Windows XP 和 Mac OS X 支持。它已經(jīng)變成新的具備雙向通信能力的跨平臺遠程打印的事實標準。

幸虧有 CUPS 系統(tǒng)的文件格式依賴自動轉化特征,簡單的發(fā)送任何數(shù)據(jù)到 lpr 命令,都將產(chǎn)生期望的打印輸出。(在 CUPS 里, lpr 能夠通過安裝 cups-bsd 軟件包來獲取.)

Debian 系統(tǒng)有一些不錯的軟件包用于打印服務和作為打印工具。

表 6.11. 打印服務和工具列表

軟件包 流行度 大小 端口 說明
lpr V:3, I:4 367 printer (515) BSD lpr/lpd (線性打印機后臺守護進程 daemon)
lprng V:0, I:1 3064 同上 , , (增強)
cups V:123, I:331 1133 IPP (631) 互聯(lián)網(wǎng)打印 CUPS 服務器
cups-client V:138, I:397 485 同上 用于 CUPS 的 System V 打印機命令: lp(1), lpstat(1), lpoptions(1), cancel(1), lpmove(8), lpinfo(8), lpadmin(8), …
cups-bsd V:34, I:296 126 同上 用于 CUPS 的 BSD 打印機命令: lpr(1), lpq(1), lprm(1), lpc(8)
printer-driver-gutenprint V:47, I:241 941 沒有使用 CUPS 打印機驅動

提示

你可以讓你的 web 瀏覽器訪問 "http://localhost:631/" 來配置 CUPS 系統(tǒng)。

6.5. 其它網(wǎng)絡應用服務

這里是其它網(wǎng)絡應用服務。

表 6.12. 其它網(wǎng)絡應用服務列表

軟件包 流行度 大小 協(xié)議 說明
telnetd V:0, I:2 114 TELNET TELNET 服務
telnetd-ssl V:0, I:0 169 同上 TELNET 服務( 支持SSL)
nfs-kernel-server V:46, I:74 635 NFS Unix 文件共享
samba V:101, I:148 16643 SMB Windows 文件和打印共享
netatalk V:1, I:3 2082 ATP Apple/Mac 文件和打印共享(AppleTalk)
proftpd-basic V:18, I:27 488 FTP 通用文件下載
apache2 V:236, I:298 620 HTTP 通用 web 服務器
squid V:12, I:13 9085 同上 通用 web 代理服務器
squid3 V:3, I:7 240 同上 同上
bind9 V:49, I:58 1170 DNS 其它主機的 IP 地址
isc-dhcp-server V:19, I:48 1467 DHCP 客戶端自身的 IP 地址

通用互聯(lián)網(wǎng)文件系統(tǒng)協(xié)議(CIFS) 和服務消息塊(SMB) 協(xié)議一樣,被微軟 Windows 廣泛應用。

提示

參見 第 4.5.2 節(jié) “現(xiàn)代的集中式系統(tǒng)管理” 服務系統(tǒng)集成。

提示

主機名解析通常由 DNS 服務提供. 對于由 DHCP 動態(tài)分配的主機 IP 地址, 動態(tài) DNS 能夠使用 bind9isc-dhcp-server 建立主機名解析,Debian wiki 的 DDNS 頁 有說明.

提示

使用 squid 之類的代理服務器,和使用 Debian 文檔庫的完全本地鏡像服務器相比,能夠大量節(jié)省帶寬。

6.6. 其它網(wǎng)絡應用客戶端

這里是其它網(wǎng)絡應用客戶端。

表 6.13. 網(wǎng)絡應用客戶端列表

軟件包 流行度 大小 協(xié)議 說明
netcat I:40 16 TCP/IP TCP/IP 瑞士軍刀
openssl V:810, I:994 1465 SSL 安全套接字層 (SSL)二進制和相關的加密工具
stunnel4 V:6, I:15 539 同上 通用 SSL 封裝
telnet V:62, I:901 166 TELNET TELNET 客戶端
telnet-ssl V:0, I:3 209 同上 TELNET 服務( 支持SSL)
nfs-common V:168, I:295 1098 NFS Unix 文件共享
smbclient V:18, I:192 2018 SMB 微軟 Windows 文件和打印共享客戶端
cifs-utils V:32, I:121 317 同上 遠程微軟 Windows 文件系統(tǒng)掛載和卸載命令
ftp V:13, I:210 55 FTP FTP 客戶端
lftp V:6, I:37 2377 同上 同上
ncftp V:2, I:19 1339 同上 全屏 FTP 客戶端
wget V:243, I:984 3581 HTTP 和 FTP web 下載工具
curl V:171, I:576 449 同上 同上
axel V:0, I:4 210 同上 下載加速器
aria2 V:2, I:19 1857 同上 BitTorrent 和 Metalink 支持的下載加速器
bind9-host V:156, I:946 384 DNS 來自 bind9 的 host(1), "Priority: standard"
dnsutils V:39, I:423 275 同上 來自 bind 的 dig(1), "Priority: standard"
isc-dhcp-client V:219, I:982 689 DHCP 獲得 IP 地址
ldap-utils V:13, I:73 757 LDAP 從 LDAP 服務獲取數(shù)據(jù)

6.7. 系統(tǒng)后臺守護進程(daemon)診斷

telnet 程序能夠手工連接到系統(tǒng)后臺守護進程(daemon),并進行診斷。

測試純 POP3 服務,嘗試用下面的操作

$ telnet mail.ispname.net pop3

部分 ISP 提供 TLS/SSL 加密的POP3 服務,為了測試它,你需要用到 telnet-ssl 包里支持 TLS/SSL 的 telnet 客戶端,或 openssl 軟件包。

$ telnet -z ssl pop.gmail.com 995
$ openssl s_client -connect pop.gmail.com:995

下面的 RFCs 提供每一個系統(tǒng)后臺守護進程(daemon)所需要的知識。

表 6.14. 常用 RFC 列表

RFC 說明
rfc1939 和 rfc2449 POP3 服務
rfc3501 IMAP4 服務
rfc2821 (rfc821) SMTP 服務
rfc2822 (rfc822) 郵件文件格式
rfc2045 多用途互聯(lián)網(wǎng)郵件擴展 (MIME)
rfc819 DNS 服務
rfc2616 HTTP 服務
rfc2396 URI 定義

在 "/etc/services" 里,描述了端口用途.


本文題目:【Debian參考手冊】第?6?章?網(wǎng)絡應用
分享地址:http://uogjgqi.cn/article/dhegohe.html
掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流