‘壹’ 如何在linux下配置ssh和sftp使用不同的端口号
1、两个deamon
要实现ssh和sftp分离,分别监听不同的端口,可以通过创建两个‘/usr/sbin/sshd’后台程序,一个监听22端口(ssh),一个监听20022端口(sftp),为了区分ssh和sftp服务的后台程序,这里将ssh服务的后台程序保持为/usr/sbin/sshd,而将sftp服务的后台程序改为/usr/sbin/sftpd。/usr/sbin/sftpd是/usr/sbin/sshd的一个链接,其内容完全相同(ln
-sf /usr/sbin/sshd /usr/sbin/sftpd)。
2、两个service
SLES12使用systemd管理系统服务,ssh服务对应/usr/lib/systemd/system/sshd.service文件,实现sftp服务时可以将/usr/lib/systemd/system/sshd.service
复制到
/etc/systemd/system/sftpd.service,然后修改sftpd.service文件内容。(使用修改好的sftpd.service文件即可)
3、其他文件
系统的ssh服务是通过安装openssh实现的,可以通过rpm -ql openssh查看该rpm包含哪些文件。总结实现ssh和sftp分离的相关的文件有:
ssh服务 sftp服务
/usr/lib/systemd/system/sshd.service /etc/systemd/system/sftpd.service
(通过修改/usr/lib/systemd/system/sshd.service文件得到)
/etc/pam.d/sshd /etc/pam.d/sftpd (通过复制 /etc/pam.d/sshd文件得到)
/etc/ssh/sshd_config /etc/ssh/sftpd_config (通过复制/etc/ssh/sshd_config文件得到)
/usr/sbin/rcsshd /usr/sbin/rcsftpd (ln -sf /usr/sbin/service /usr/sbin/rcsftpd)
/usr/sbin/sshd /usr/sbin/sftpd (ln -sf /usr/sbin/sshd /usr/sbin/sftpd)
/etc/sysconfig/ssh /etc/sysconfig/sftp (通过修改/etc/sysconfig/ssh文件得到)
至此,我们已经实现了两个服务。
但是,ssh服务和sftp服务并没有真正的分离,此时已然可以通过22号端口使用ssh服务和sftp服务,而新开的20022端口也可以使用ssh服务(ssh
-p 20022 username@serverip )和sftp服务(sftp -o Port=20022
username@serverip )。
4、关闭22号端口下的sftp服务
编辑/usr/sbin/sshd的配置文件/etc/ssh/sshd_config文件,将Subsystem参数注释掉,然后重启sshd
同时也可以设置可访问22号端口的用户白名单:
编辑/etc/ssh/sshd_config文件,设置AllowGroups参数(假设设置为AllowGroups sshonly),限制仅AllowGroups组内的用户可通过22号端口ssh登录系统(对于需要ssh登录系统的用户可通过usermod -A sshonly <username>将其加入到AllowGroups组内)
5、“关闭20022号端口下的ssh服务”
sftp作为一个子服务,它的开启依赖于ssh服务,因此不能从本质上关闭ssh服务而只开启sftp服务。
可以用以下方式来规避:
/usr/sbin/sftpd的配置文件/etc/ssh/sftpd_config中包含Subsystem参数配置(推荐使用Subsystem sftp internal-sftp -l INFO -f AUTH)
/etc/ssh/sftpd_config中包含AllowGroups参数(假设为AllowGroups sftponly),限制仅AllowGroups组内的用户可以访问20022端口
将AllowGroups组内的用户的shell改为/bin/false(usermod -s /bin/false <username>),使AllowGroups组内的用户仅能sftp登录系统(如果一个用户即需要ssh,又需要sftp,则不能将其shell改为/bin/false)
6、用户白名单配置
配置之后,需将系统内需要ssh访问系统的用户加入到sshonly组内,需将系统内需要sftp访问系统的用户加入到sftponly组,同时需要ssh和sftp的用户则sshonly和sftponly组都要加入。
7、 重启ssh服务和sftp服务,并设置开机启动
service sshd restart
service sftpd restart
‘贰’ 如何修改Linux服务器ssh端口
ssh 服务器软件配置文件在 /etc/ssh/ 目录下 步骤如下
1.进入到此目录
# cd /etc/ssh
2.编辑其配置文件sshd_config
# vim sshd_config
3.在里边找到一行 #Port 22 此行很靠前,几乎就在文件的开头处不远,将此行的#号去掉
然后就是后边加你想要改成为的端口号 我这里就改成了2343
Port 2343
4.重新启动 sshd服务
# servicd sshd restart
5.到此ssh端口更改为2343
注意连接ssh时要相应更改端口号
如 ssh 192.168.11.122 2343
‘叁’ 系统之家Linux中修改SSH端口号的方法详解怎么办
1.SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。
2.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
Linux主机开启了ssh服务,就可以通过ssh来远程连接Linux。这个端口都是已经默认设置好的,port=22,建议不要修改。
修改方法:
找到ssh服务配置文件一般都是在 /etc/ssh这个目录下面:sshd_config
使用vim编辑器,打开sshd_config这个文件,搜索找到 port字段
将光标定位到port 22这行, yy 然后键盘 P复制一行, insert插入编辑22端口为2222
设置好之后,wq保存退出, 表示已经增加了一个2222端口号啦
然后当然是需要重启SSH服务了。
如果您有设置防火墙,请修改增加防火墙规则,或者直接关闭防火墙也行
‘肆’ Linux怎么修改SSH端口
#sudo apt install leafpad
#leafpad /etc/ssh/sshd.config
修改里面一项# port 22,把“#”去掉,并把22改成你需要开放的端口;
重启sshd服务:
service sshd restart
完成以上操作即可用自定义端口访问ssh拉
命令格式:ssh -p22 user@ip
‘伍’ 如何查看linux开放ssh端口
1、ssh是经常使用的连接远程linux服务器的端口,这个端口也是默认的端口号。
注意事项:
Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux操作系统不仅仅是被网络运维人员当作服务器使用,Linux既可以当作服务器,又可以当作网络防火墙是Linux的 一大亮点。
‘陆’ 如何修改linux系统ssh连接端口号
vi /etc/ssh/sshd_config 编辑ssh配置文档
找到这一行port 22(这个数值改为你想设置为的端口号)
:wq保存退出
service sshd restart 重启ssh服务。
netstat -nlpt | grep ssh 看看验证下ssh服务端口号是否修改。
关于更多Linux的学习,请查阅书籍《linux就该这么学》。
‘柒’ Linux中怎么修改SSH端口号
vi /etc/ssh/sshd_config,找到Port 22,然后将端口22改为你想要的端口号,重启SSH服务:/etc/init.d/sshd restart即可,然后测试ssh连接:ssh localhost -p 你的端口号,连接成功。
如果你希望保险起见,不至于因为一个端口连接不了(比如受到攻击)而不能使用ssh连接,那么你可以使用多个ssh连接端口,还是在配置文件/etc/ssh/sshd_config中修改,运行vi /etc/ssh/sshd_config,找到Port 端口号地方,然后在下面添加一行:Port 23,这样就又增加了一个新的连接端口,重启SSH服务,
测试ssh localhost -p 23,连接成功。
另外需要注意的是,如果本机测试没有问题,但还是不能使用第三房工具从外部SSH链接的话,需要关闭防火墙
,重新启动一下SSHD。 这样就可以。
‘捌’ 在linux下登录ssh如何指定端口
修改SSH端口号为制定端口即可。
‘玖’ SSH是什么Linux如何修改SSH端口号
先扯概念:
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
再说干货:
就是linux系统中,用来远程登录其他linux机器的命令。
安装了ssh服务的都可以使用,格式为:
ssh用户名@ip地址或主机名
查看命令参数可以:
ssh--help
ssh服务端口号默认22,可以在/etc/.ssh/sshd_config文件中修改,找到这一行:
#Port=22
把前面井号删掉,修改数字,重启ssh服务即可。