sshd服務


SSHD服務
介紹:SSH 協議:安全外殼協議。為 Secure Shell 的縮寫。SSH 為建立在應用層和傳輸層基礎上的安全協議。

作用
sshd服務使用SSH協議可以用來進行遠程控制, 或在計算機之間傳送文件
相比較之前用telnet方式來傳輸文件要安全很多,因為telnet使用明文傳輸,是加密傳輸。

SSH服務安裝
這里用yum安裝
[root@compy ~]# yum -y install openssh openssh-clients openssh-server openssh-askpass

SSH 配置文件
SH 常用配置文件有兩個/etc/ssh/ssh_config 和/etc/sshd_config。
ssh_config 為客戶端配置文件
sshd_config 為服務器端配置文件

服務啟動關閉腳本

[root@compy ~]# cd /etc/ssh [root@compy ssh]# pwd /etc/ssh [root@compy ssh]# service sshd restart
  • 1
  • 2
  • 3
  • 4

開機啟動服務

[root@compy ~]# chkconfig sshd on [root@compy ~]# chkconfig --list sshd sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  • 1
  • 2
  • 3

如何使用ssh來遠程連接主機
方法一
1、ssh [遠程主機用戶名] @[遠程服務器主機名或IP地址]
如果用root進程登錄遠程主
[root@compy ssh]# ssh 192.168.100.156
普通用戶:

[root@compy ~]# useradd compy && echo 123456 | passwd --stdin compy [root@compy ssh]# ssh compy@192.168.100.156 
  • 1
  • 2
  • 3

第一次登錄服務器時系統沒有保存遠程主機的信息,為了確認該主機身份會提示用戶是否繼續連
接,輸入yes 后登錄,這時系統會將遠程服務器信息寫入用戶主目錄下的$HOME/.ssh/known_hosts 文件中,下次再進行登錄時因為保存有該主機信息就不會再提示了

[root@compy ~]# cat /root/.ssh/known_hosts 192.168.100.155 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA7B2ow9G9mtjXOdFf0OaRGeJDgAjENY99fHd4Z2R1J7rJH0qpcCVGnIbyAGlZml6XYoUZ8yJunOgA5wh7wKCRUqlT2Xwo5LQ7GH21Q2oiDkeiGFbn0woshZJwsCxpBbcmfzT63RXdHKlBny5pC1rINmlzOnXzvSk/1Wxc8eNn8fMMbP4u2yn7sp9U27Gm5iHkGcIoyPqhP6G5oQ/LoRQFCzhiPQXFf8a8twYDy4jVBt1FJpFJiHBZdiXVlujTCucr0TFXw8UHt9Dq7ZRZrqd74ASz8f5Kp7XdagumpDgb1/DqAY6m/NLdT9qhG4TnhJwfIcjv+EI30raVgcMEYweM9w==
  • 1
  • 2

RSA算法基於一個十分簡單的數論事實:將兩個大素數相乘十分容易,但是想要對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰。

方法二
ssh -l [遠程主機用戶名] [遠程服務器主機名或IP 地址]
例:ssh -l compy 192.168.100.156
-l login_name

SSHD配置文件及安全配置
/etc/ssh/sshd_config 配置文件
Port 22
設置sshd 監聽端口號

注釋: SSH 預設使用 22 這個port,也可以使用多個port,即重復使用 port 這個設定項目! 例如想要開放 sshd
端口為 22和 2200 ,則多加一行內容為: Port 2200 即可 然后重新啟動 sshd 這樣就好了。 建議大家修改 port
number 為其它端口。防止別人暴力破解。

修改sshd服務默認監聽的端口為2200

[root@compy ~]# vim /etc/ssh/sshd_config
改:
Port 22
為:
Port 2200

[root@compy ssh]# service sshd restart #重啟服務 [root@compy ~]# netstat -tlunp | grep sshd #查看端口 tcp 0 0 0.0.0.0:2200 0.0.0.0:* LISTEN 4139/sshd tcp 0 0 :::2200 :::* LISTEN 4139/sshd 
  • 1
  • 2
  • 3
  • 4

修改完端口默認端口后,登錄方法:
[root@compy ~]# ssh -p 2200 192.168.100.156

ListenAddress 0.0.0.0

設置sshd 服務器綁定的IP 地址,0.0.0.0 表示偵聽所有地址 比如192.168.100.155這個機器只允許100.155來遠程登錄,那么可以設置
ListenAddress 192.168.100.155

Protocol 2

選擇的 SSH 協議版本,可以是 1 也可以是 2 ,CentOS 5.x 預設是僅支援 V2。 安全考慮,設置為最新的協議版本

SyslogFacility AUTHPRIV

當有人使用 SSH 登入系統的時候,SSH 會記錄信息,這個信息要記錄的類型為AUTHPRIV。

登錄系統的默認日志存/var/log/secure

LogLevel INFO

登錄記錄的等級!INFO級別以上。

LoginGraceTime 2m

當使用者連上 SSH server 之后,會出現輸入密碼的畫面,在該畫面中,
在多久時間內沒有成功連上 SSH server
就強迫斷線!若無單位則默認時間為秒! 可以根據實際情況來修改實際

PermitRootLogin yes

是否允許 root 登入!預設是允許的,但是建議設定成 no !
真實的生產環境服務器,是不允許root賬號登陸的!!!

PasswordAuthentication yes

密碼驗證當然是需要的!所以這里寫 yes,也可以設置為no
在真實的生產服務器上,根據不同安全級別要求,有的是設置不需要密碼登陸的,通過認證的秘鑰來登陸

PermitEmptyPasswords no

若上面那一項如果設定為 yes 的話,這一項就最好設定為 no
這個項目在是否允許以空的密碼登入!當然不許!

PrintMotd yes

登入后是否顯示出一些信息呢?例如上次登入的時間、地點等等,預設是 yes
亦即是打印出 /etc/motd 這個文檔的內容

給sshd服務添加一些警告信息
[root@compy ~]# cat /etc/motd
[root@compy ~]# echo 'Warning !
From now on, all of your operation has been 4record!'> /etc/motd

PrintLastLog yes

顯示上次登入的信息!預設也是 yes!

UseDNS yes

一般來說,為了要判斷客戶端來源是正常合法的,因此會使用 DNS 去反查客戶端的主機名
不過如果是在內網互連,這項目設定為 no會讓聯機速度比較快


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM