SSH(2017-11-25)

一:Linux系統中常見的服務名稱和軟件包名。
服務名稱                              軟件包名                 實現的功能
nfs                               nfs-utils                   實現文件的共享
bind                               named                    DNS域名解析系統
tftp                               tftp-server               迷你版的ftp文件服務器
vsftpd                              vsftpd                   文件共享
dhcpd                               dhcp                    動態的主機分配協議
smb                                Samba                    文件共享
apache                              httpd                      網站服務
sshd                               openssh-server             安全的shell ,可用於遠程管理
rsyslog                             rsyslog                    記錄日誌,日誌文件服務
pxe                         dhcp+tftp+kickstat+vsftpd/http    //自動化部署  (系統,初始化)

二:常見的網絡服務及其端口號
服務名              中文名                       端口號
ftp                 文本傳輸協議               21和20;其中21號端口是控制端口,20號端口是數據傳輸端口
dhcp              動態主機分配協議              67和68;其中67號端口爲服務器端,68號端口爲客戶端
DNS               域名解析系統                     53
http               超文本傳輸協議                   80
smpt              簡單的郵件傳輸協議                 25
pop3              郵局協議                       110
snmp             簡單網絡服務管理協議                 161

三:ssh;
ssh的目的和功能;ssh能夠實現安全的遠程鏈接和自動化運維。

Linux系統全部的服務及端口號的文件存放位置爲;  /etc//etc/services

服務端:
安裝:yum   -y   install   openssh-server
查看:rpm  -q    openssh-server   #查看是否安裝      
   rpm   -ql   openssh-server   #查看安裝後的文件列表
   rpm   -qc   openssh-server   #查看配置文件
服務端的主配置文件的位置是 :/etc/ssh/sshd_config

客戶端:
安裝:yum   -y      install    openssh-client
查看:rpm   -q     openssh-clients  #查看是否安裝
    rpm   -ql     openssh-clients   #查看安裝後的文件列表
    rpm   -qc   openssh-clients   #查看配置文件列表
客戶端的主配置文件位置爲:/etc/ssh/ssh_config

查看sshd服務是否開啓
lsof  -i :22
查看vsftpd是否開啓
lsof   -i  :21
netstat    -nutlp  | grep :21shell


四:配置文件
cat   /etc/ssh/sshd_config

#Port 22                            // 默認的端口22,行號17
#AddressFamily any            //支持任意地址簇(ipv4/ipv6),行號18
#ListenAddress 0.0.0.0        //監聽在任何ipv4地址上(即指定提供服務的IP地址),行號19
#ListenAddress ::               //監聽在任何ipv6地址上
Protocol 2                        //協議版本
SyslogFacility AUTHPRIV      //定義日誌的對象。日誌文件是/var/log/secure
#LogLevel INFO                //日誌的級別
#LoginGraceTime 2m         //2分鐘不輸入密碼就禁止的登錄
#PermitRootLogin yes           //容許管理員登錄(行號49)
#StrictModes yes               //請用嚴格模式
#MaxAuthTries 6              //最多能夠嘗試6次(行號51),建議設置爲1或2。防止暴力破解。
#MaxSessions 10               //容許最大會話10個(行號52)。建設設置小一點。防止太多用戶遠程鏈接。
#RSAAuthentication yes        //啓用RSA認證(行號54)。是採用密鑰文件認證。
#PubkeyAuthentication yes    //啓用公鑰認證(行號55)。是採用密鑰文件認證。
#PasswordAuthentication yes   //採用密碼認證
#PermitEmptyPasswords no    //密碼爲空不能登錄
P
#UseDNS yes                     //是否採用dns解析,建議設置成no,不然遠程鏈接時會卡好久
#PidFile /var/run/sshd.pid       //pid文件位置
GSSAPIAuthentication  yes         //啓用GSSAPI接口認證,建議設置爲no,不然遠程鏈接時可會卡好久。API是應用程序接口的縮寫。
X11Forwarding  yes                啓用X11轉發功能(行號115)。即支持在ssh客戶端調用xwindow桌面程序。
Subsystem sftp /usr/libexec/openssh/sftp-server    子系統,啓用sftp文件共享功能(行號146)

五:sshd服務
cnetos7系列;
啓動服務: systemctl     start       sshd
重啓服務: systemctl     restart    sshd
重載服務: systemctl     reload     sshd
開機自啓:systemctl      enable     sshd
永久禁用:systemctl      disable     sshd
查看狀態:systemctl      status     sshd

cnetos6系列
啓動服務: service        sshd       start
重啓服務: service        sshd       restart
重載服務: service        sshd       reload
開機自啓:chkconfig        sshd       on
永久禁用:chkconfig        sshd       off
查看狀態:service         sshd       status

chkconfig    --list   能夠查看全部服務的狀態

六:ssh遠程鏈接免密碼
客戶端生成密鑰
ssh-keygen   #密鑰的生成工具,一路回車便可 ,存放的位置爲:/usr/bin/ssh-keygen   ;能夠用whereis  查看路徑,也能夠查看客戶端的文件生成列表,即rpm   -ql  openssh

生成的密鑰保存在當前用戶的家目錄的.ssh目錄裏。
將公鑰傳到服務器;ssh-copy-id root@192.168.10.7  或ssh-copy-id   -i  id_rsa.pub root@192.168.10.7
公鑰會保存在root用戶家目錄的.ssh裏的authorized_keys裏面,下次遠程鏈接192.168.10.7這臺主機時就能夠免密碼了。apache


鏈接過程當中遇到的問題
1.若是把公鑰傳上去了還須要密碼,以下圖安全

1.png

解決方法:在客戶端執行ssh-add命名,就能夠免密碼登陸了。
2.網絡服務正常沒法鏈接
rm  -rf  ~/.ssh/known_hosts服務器

本站公眾號
   歡迎關注本站公眾號,獲取更多信息