一 SSH命令使用技巧
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),臥龍企業(yè)網(wǎng)站建設(shè),臥龍品牌網(wǎng)站建設(shè),網(wǎng)站定制,臥龍網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,臥龍網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
- 遠(yuǎn)程登錄
ssh user@remote.machine
- 遠(yuǎn)程執(zhí)行
ssh user@remote.machine 'command ...'
- 遠(yuǎn)程復(fù)制
scp user@remote.machine:/remote/path /local/path
scp /local/path user@remote.machine:/remote/path
- X forward
ssh -X user@remote.machine
xcommand ...
- Tunnel / Portforward
ssh -L 1234:remote.machine:4321 user@remote.machine
ssh -R 1234:local.machine:4321 user@remote.machine
ssh -L 1234:other.machine:4321 user@remote.machine
二, 實(shí)作
1) 禁止 root 登錄
# vi /etc/ssh/sshd_config
PermitRootLogin no
2) 廢除密碼登錄, 強(qiáng)迫使用 RSA 驗(yàn)證(假設(shè) ssh 賬戶為 user1 )
# vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
# service sshd restart
# su - user1
$ mkdir ~/.ssh 2/dev/null
$ chmod 700 ~/.ssh
$ touch ~/.ssh/authorized_keys
$ chmod 644 ~/.ssh/authorized_keys
登入?端:
$ ssh-keygen -t rsa
(按三下 enter 完成﹔不需設(shè)密碼,除非您會(huì)用 ssh-agent 。)
$ scp ~/.ssh/id_rsa.pub user1@server.machine:id_rsa.pub
(若是 windows client, 可用 puttygen.exe 產(chǎn)生 public key,
然后復(fù)制到 server 端后修改之, 使其內(nèi)容成為單一一行.)
回到 server 端:
$ cat ~/id_rsa.pub ~/.ssh/authorized_keys
$ rm ~/id_rsa.pub
$ exit
3) 限制 su / sudo 名單:
# vi /etc/pam.d/su
auth required /lib/security/$ISA/pam_wheel.so use_uid
# visudo
%wheel ALL=(ALL) ALL
# gpasswd -a user1 wheel
4) 限制 ssh 使用者名單
# vi /etc/pam.d/sshd
auth required pam_listfile.so item=user sense=allow file=/etc/ssh_users ōnerr=fail
# echo user1 /etc/ssh_users
后臺(tái)無法登陸,出現(xiàn)Access denied指的是配置文件不正確,具體解決步驟如下:
1、當(dāng)在瀏覽器中進(jìn)行打開自己的一個(gè)網(wǎng)頁之后,提示Access denied for user 'root'@'localhost' (using password NO)提示了數(shù)據(jù)訪問的錯(cuò)誤信息。
2、需要更改root的權(quán)限遠(yuǎn)程的訪問的權(quán)限,進(jìn)行進(jìn)入到自己數(shù)據(jù)庫之后,進(jìn)入mysql數(shù)據(jù)庫中:use mysql。
3、進(jìn)行執(zhí)行update user set host='%' where user='root'? 的命令進(jìn)行執(zhí)行。
4、執(zhí)行了相關(guān)的命令之后,還是需要進(jìn)行執(zhí)行的flush privileges的命令。
5、還需要進(jìn)行修改的是在etc/sysconfig/selinux進(jìn)行編輯SELINUX=disabled中。
6、設(shè)置完成之后還是需要進(jìn)行重啟Linux,在訪問之后,不在顯示錯(cuò)誤的內(nèi)容。
不管你用什么用戶名登錄, 你的根目錄下都應(yīng)該有個(gè)自動(dòng)加載腳本:
cd ~
vi .bashrc (這個(gè)是bash的,如果是tcsh,文件該是.cshrc )
然后把你的執(zhí)行腳本的命令放進(jìn)去就行了,完了之后重啟或者執(zhí)行source .bashrc
比如:
root@alex:~# cat ~/.bashrc
# 執(zhí)行/usr/bin目錄下的abc.sh
/usr/bin/abc.sh
# 或者執(zhí)行當(dāng)前目錄下的abc.sh
./abc.sh
寫個(gè)腳本判斷是否用戶登錄 如果用戶登錄則腳本內(nèi)執(zhí)行任務(wù) 計(jì)劃任務(wù)設(shè)定時(shí)間去執(zhí)行一下腳本