免费在线a视频-免费在线观看a视频-免费在线观看大片影视大全-免费在线观看的视频-色播丁香-色播基地

教你如何配置linux用戶實現禁止ssh登陸機器但可用sftp登錄!

:2019年07月26日 博客園
分享到:

最近有個這樣的訴求:基于對線上服務器的保密和安全,不希望開發人員直接登錄線上服務器,因為登錄服務器的權限太多難以管控,如直接修改代碼、系統配置,并且也直接連上mysql。因此希望能限制開發人員s...

構想和目標

最近有個這樣的訴求:基于對線上服務器的保密和安全,不希望開發人員直接登錄線上服務器,因為登錄服務器的權限太多難以管控,如直接修改代碼、系統配置,并且也直接連上mysql。因此希望能限制開發人員ssh登錄機器,但是通過ftp/sftp上傳代碼文件。

在網上找個各種各樣的方法,經過試驗做個匯總:

方法一
https://segmentfault.com/q/1010000000722462

這篇帖子的方法是搜索到的最通用的方法,方法是否可能呢,直接做個測試。

創建禁止登陸的用戶:

useradd test -M -s /sbin/nologin
試試ssh登陸:登陸失敗

[root@localhost app]# ssh test@172.19.194.30
test@172.19.194.30's password:
Last login: Tue Oct 11 15:28:07 2016 from 172.18.135.185
This account is currently not available.
Connection to 172.19.194.30 closed.
試試sftp登陸:同樣也提示登陸失敗!!!

[root@localhost app]# sftp test@172.19.194.30
test@172.19.194.30's password:
Received message too long 1416128883
[root@localhost app]#
可以看到,方法一,雖然限制了ssh登陸,但是同時也限制了sftp的連接,結論是此方法行不通。

方法二
http://jin771998569.blog.51cto.com/2147853/1067247

首先修改sshd的配置文件:
#vim /etc/ssh/sshd_config
#該行(上面這行)注釋掉
#Subsystem sftp /usr/lib/openssh/sftp-server

# 添加以下幾行
Subsystem sftp internal-sftp
Match group sftp
#Match user test
#匹配sftp組,如為單個用戶可用:Match user 用戶名;  設置此用戶登陸時的shell設為/bin/false,這樣它就不能用ssh只能用sftp
ChrootDirectory /home/test
#指定用戶被鎖定到的那個目錄,為了能夠chroot成功,該目錄必須屬主是root,并且其他用戶或組不能寫
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
添加用戶組和用戶
#添加用戶組
groupadd sftp

#添加用戶
useradd -d /home/test -m -s /bin/false -g sftp test

#修改密碼
passwd test

重啟SSH服務
service sshd restart

或者

/etc/init.d/ssh reload

測試ssh
[root@localhost etc]# ssh test@172.19.194.30
test@172.19.194.30's password:
Write failed: Broken pipe
登陸失敗,提示Write failed: Broken pipe錯誤

再測試sftp
[root@localhost etc]# sftp test@172.19.194.30
test@172.19.194.30's password:
Write failed: Broken pipe
Couldn't read packet: Connection reset by peer
同樣提示Write failed: Broken pipe

按理說此方法應該是靠譜的為什么會提示失敗呢,通過查找發現是目錄權限配置導致的:
https://my.oschina.net/davehe/blog/100280

目錄權限設置上要遵循2點:
ChrootDirectory設置的目錄權限及其所有的上級文件夾權限,屬主和屬組必須是root;
ChrootDirectory設置的目錄權限及其所有的上級文件夾權限,只有屬主能擁有寫權限,權限最大設置只能是755。

修改/home/test 目錄權限為755

chmod 755 /home/test -R

再次測試
[root@localhost etc]# ssh test@172.19.194.30
test@172.19.194.30's password:
Could not chdir to home directory /home/test: No such file or directory
This service allows sftp connections only.
Connection to 172.19.194.30 closed.
和預期一致:ssh嘗試連接失敗。

[root@localhost etc]# sftp test@172.19.194.30
test@172.19.194.30's password:
Connected to 172.19.194.30.
sftp> ls
a                a.log            authorized_keys  mysql.sh        
sftp>
sftp測試連接成功!

總結
這個東西雖然沒有太大的技術含量,但是通過網上查找的大多是雷同且行不通的,又或者是不完整的,過程中耽誤和浪費了不少時間,希望寫這篇博客做個驗證和匯總的作用。

參考:
如何關閉linux用戶的SSH權限,但還能登錄vsftpd
Linux openSSH 只能夠使用SFTP 不能使用ssh登陸
sftp服務限制用戶登錄家目錄
Linux_ftp_命令行下下載文件get與上傳文件put的命令應用

學習時的痛苦是暫時的 未學到的痛苦是終生的

[我要糾錯]
[ 編輯:宋聰喬 &發表于江蘇 ]
關鍵詞: 構想 目標 最近 有個 這樣

來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。

點個贊
0
踩一腳
0

您在閱讀:教你如何配置linux用戶實現禁止ssh登陸機器但可用sftp登錄!

Copyright©2013-2025 ?JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利

蘇公網安備32010402000125 蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司

南京思必達教育科技有限公司版權所有   百度統計

主站蜘蛛池模板: 三级在线免费 | 全色黄大色大片免费久久老太 | 亚洲国产高清视频 | 亚洲欧美人成网站综合在线 | 好色综合 | 日本韩国三级在线观看 | 在线国产视频观看 | 开心久久激情 | 国产成人精品免费午夜 | 91成年人免费视频 | 男人把女人靠到爽痛视频 | 中文字幕在线播放视频 | xxxx日本69xxxxx | 欧美日韩中文字幕免费不卡 | 欧美极品第一页 | 2020精品极品国产色在线观看 | 狠狠操成人 | 亚洲国产中文字幕在线观看 | 亚洲最黄网站 | 国产不卡免费 | 国产亚洲欧美日本一二三本道 | 欧美综合区自拍亚洲综合图区 | 色久天| 香蕉茄子视频 | 国产精品xxxav免费视频 | 免费在线不卡视频 | 日韩美女拍拍免费视频网站 | 五月天伊人| 国产综合一区二区 | 欧美一区二区三区不卡免费观看 | a级男女性高爱潮高清试 | 欧美成人看片一区二区三区尤物 | 亚洲视频四区 | 国产a网| 亚洲免费高清视频 | 一区二区精品久久 | 日批免费视频不要会员 | 国产美女无遮挡免费视频网站 | 黄网址在线观看 | 亚洲va中文va欧美va爽爽 | 成人午夜精品网站在线观看 |
最熱文章
最新文章
  • 阿里云上云鉅惠,云產品享最低成本,有需要聯系,
  • 卡爾蔡司鏡片優惠店,鏡片價格低
  • 蘋果原裝手機殼