Linux
Kali 安装
Kali-WIFI密码(字典)
Armbian安装OMV(NAS)
NPS 内网穿透
CloudFlare
CloudFlare-免端口
CloudFlare-KV存储
API 使用
API-抓包信息使用
Linux-系统配置
Linux-更换源
Linux-一键更换源
Linux-权限
Linux-分区管理
Linux-网卡配置
Linux 端口转发
Linux 交换内存
Linux 进程优先级
Linux 共享打印机
Linux-自定义服务(支持Docker开机自启)
Linux-硬/软链接/挂载
Linux-系统时钟
Linux-清理命令记录
Linux-一键DD脚本
Linux-安装根证书
Linux-TheFuck(命令纠正)
Linux 服务器
Linux-面试鸭
Linux-Mall-Cook(商店可视化搭建)
Linux-Scratch
Linux-CasaOS(家庭云操作系统)
Linux-TiddlyWiki(非线性网页笔记)
Linux-拖拽式H5
Linux-鲁班H5
Linux-SSL证书续订
Linux-acme(SSL证书脚本)
SSL证书转换
SSL-httpsok
SSL-其它工具
Linux-LoveCards(表白墙)
Linux-游戏导航
Linux 常用命令
Linux-scp
Linux-打包/解压/压缩
Linux-SSH
Linux-portknocking(端口敲击)
Linux-获取当前公网IP
Linux-自动挂载盘
Linux-代理
Linux-nmap(局域网扫描)
Linux-jq(JSON处理)
Linux-DDNS(自制脚本)
Linux-shell传递参数
Linux-if(判断)
Linux-curl/wget
Linux-which(查看命令所在路径)
Linux-Maven
Linux-ncdu(清理日志)
Linux-共享
Linux-screen(终端切换)
Linux-Macchanger(MAC修改)
Linux-iptables(包过滤防火墙系统)
Linux-祸害人脚本
Linux-模拟网络延迟环境
Linux-Git
Linux-apt(安装软件)
Linux-crontab(定时任务)
Linux-nano/vi/vim 编辑器
Linux 环境安装
Linux 安装 Node.js
Node.js-创建通用执行
Linux 安装 Java
Linux 安装 Go
域名注册
MariaDB-相关操作
未测试开源项目
SQL 学习
SQL-常用指令
Ansible(自动化运维)
Zabbix(运维监控)
网络设备概述
备份概述
雷池WAF
Linux-新旧服务器同步rpm软件包
本文档使用 MrDoc 发布
-
+
首页
Linux-一键更换源
自制`更换源+开启SSH`一键脚本,主要用于解决使用 docker debian 每次都要配置源和开启ssh太麻烦 ```bash # 一键拉取并运行 wget http://nas.918178.xyz:3000/WJ/Script/raw/branch/master/sources_zwzw.sh && bash sources_zwzw.sh ``` `sources_zwzw.sh` ```bash #!/bin/bash # 检查脚本是否以root身份运行 if [ "$(id -u)" != "0" ]; then echo "请以root用户或使用sudo运行此脚本." exit 1 fi ######################################## 软件源修改 ########################################## # 用于修改软件源(自动区分Debian和Ubuntu) modify_sources() { local mirror=$1 # 软件源镜像地址 cp -n /etc/apt/sources.list /etc/apt/sources.list.backup # 备份原始软件源列表(已有不覆盖) echo "原始软件源列表备份至: /etc/apt/sources.list.backup" # 检查发行版并相应地修改软件源列表 if [ -f /etc/debian_version ]; then modify_debian_sources $mirror # Debian elif [ -f /etc/lsb-release ]; then . /etc/lsb-release if [ "$DISTRIB_ID" == "Ubuntu" ]; then modify_ubuntu_sources $mirror # Ubuntu else echo "不支持的发行版." exit 1 fi else echo "不支持的发行版." exit 1 fi # 更新软件包列表 apt update echo "已将软件源修改为使用 $mirror 镜像." } # 修改Debian的软件源列表 modify_debian_sources() { local sources=$1 # 获取第一个参数(软件源镜像地址) echo "正在修改 Debian 软件源列表..." sed -i -E "s#http://(ftp|deb).debian.org/#$sources#" /etc/apt/sources.list # 替换所有匹配的地址(-E表示支持扩展正则表达式) } # 修改Ubuntu的软件源列表 modify_ubuntu_sources() { local sources=$1 # 获取第一个参数(软件源镜像地址) echo "正在修改 Ubuntu 软件源列表..." sed -i "s#http://archive.ubuntu.com/#$sources#" /etc/apt/sources.list } ######################################## 主程序 ########################################## # 选择菜单 echo "请选择一个选项:" echo "1. 修改软件源" echo "2. 启用SSH并允许root登录" read -p "请输入您的选择 (1或2): " choice echo # 根据选择执行相应的操作 case $choice in 1) # 软件源菜单 echo "请选择一个选项:" echo "1. 清华大学" echo "2. 中国科技大" echo "3. 网易" echo "4. 腾讯" echo "5. 阿里" echo "6. 华为" echo "0. 恢复软件源备份" read -p "请输入您的选择: " choice_sources echo # 根据选择执行修改源操作 case $choice_sources in 0) if [ -f "/etc/apt/sources.list.backup" ]; then cp /etc/apt/sources.list.backup /etc/apt/sources.list apt update echo "已恢复软件源备份." else echo "未找到软件源备份." fi ;; 1) modify_sources "http://mirrors.tuna.tsinghua.edu.cn/" ;; 2) modify_sources "http://mirrors.ustc.edu.cn/" ;; 3) modify_sources "http://mirrors.163.com/" ;; 4) modify_sources "http://mirrors.cloud.tencent.com/" ;; 5) modify_sources "http://mirrors.aliyun.com/" ;; 6) modify_sources "http://mirrors.huaweicloud.com/" ;; esac ;; 2) read -p "请输入SSH开放端口 (默认22): " ssh_port ssh_port=${ssh_port:-22} apt install -y openssh-server # 安装 OpenSSH 服务 cp -n /etc/ssh/sshd_config /etc/ssh/sshd_config.backup # 备份配置文件 sed -i -E "s/#?Port [0-9]+/Port $ssh_port/" /etc/ssh/sshd_config # 自定义SSH端口(-E开启正则表达式,#?表示#可选) sed -i -E 's/#?PermitRootLogin (prohibit-password|yes)/PermitRootLogin yes/' /etc/ssh/sshd_config service ssh restart echo "安装并运行 SSH 登录端口为 $ssh_port" ;; *) echo "无效的选择.退出." exit 1 ;; esac ```
造物者W
2024年1月13日 20:36
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码