Linux脚本编程:sudo命令下安装ssh服务并自定义端口和允许root登陆

Linux脚本编程:sudo命令下安装ssh服务并自定义端口和允许root登陆

题目要求

让普通用户使用sudo命令编写脚本完成以下操作:
(1)安装ssh服务。
(2)设置ssh的端口为22222。
(3)允许root登陆。
要求分别在本地和云端成功运行脚本。

编程平台

本地

本地操作系统:Windows 10
本地虚拟机运行平台:VMware Workstation Pro 14
本地虚拟机镜像:CentOS-7-x86_64-Minimal-1908.iso

云端

云服务器提供商:阿里云计算有限公司
Linux发行版本及版本号:CentOS 7.6 64位

代码实现

解决脚本

#! /bin/bash
# 安装ssh服务
sudo yum -y install openssh-server

# 添加端口22222到ssh的配置文件/etc/ssh/sshd_config中
cd /etc/ssh
sudo chmod o+rw sshd_config # 默认普通用户无读写权限,故需临时提高普通用户权限
echo 'Port 22222' >> sshd_config
sudo chmod o-rw sshd_config
cd ~

# 到ssh的配置文件/etc/ssh/sshd_config中设置允许root登陆
cd /etc/ssh
sudo chmod o+rw sshd_config # 默认普通用户无读写权限,故需临时提高普通用户权限
echo 'PermitRootLogin yes' >> sshd_config
sudo chmod o-rw sshd_config
cd ~

# 开启22222端口
systemctl restart firewalld.service # 重新开启防火墙
sudo firewall-cmd --zone=public --add-port=22222/tcp --permanent # 添加22222端口
sudo firewall-cmd --complete-reload # 重新加载防火墙,使端口生效

sudo service sshd restart # 开启ssh服务

注意事项

在云端运行脚本前,要在阿里云服务器控制台增加端口为22222的安全组规则。

如果文章内容出错或者您有更好的解决方法,欢迎到评论区指正和讨论!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答:根据您的要求,以下是每个要求的操作指示: 1. 关闭SELinux: 在终端中执行以下命令sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 2. 关闭防火墙: 执行以下命令sudo systemctl stop firewalld sudo systemctl disable firewalld 3. 同步时间的计划任务: 创建一个名为“sync_time.sh”的文件,将以下内容复制并粘贴: #!/bin/bash /sbin/hwclock --systohc /usr/sbin/ntpdate ntp1.aliyun.com /sbin/hwclock --systohc 将文件保存到“/usr/local/bin/”目录下,然后添加执行权限: sudo chmod +x /usr/local/bin/sync_time.sh 最后,将以下内容复制并粘贴到“/etc/crontab”文件中: * */2 * * * root /usr/local/bin/sync_time.sh > /dev/null 2>&1 4. 固定IP、网关、DNS和主机名: 可以通过修改“/etc/sysconfig/network-scripts/ifcfg-ens33”文件来实现。以下是一个样本文件: DEVICE=ens33 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=8.8.4.4 HOSTNAME=myserver.example.com 将上述文件中的所有参数替换为您自己的参数,保存并关闭文件。 5. 替换centos Base源: 执行以下命令sudo yum install epel-release sudo yum install -y yum-utils sudo yum-config-manager --disable base extras updates sudo yum-config-manager --enable base-source extras-source 6. 修改SSH配置: 打开“/etc/ssh/sshd_config”文件并按照以下方式修改: Port 44444 PermitRootLogin no UseDNS no 保存并关闭文件,然后重启ssh服务sudo systemctl restart sshd.service 以上是针对您提出的要求所需的操作指示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值